diff options
Diffstat (limited to 'Library/Formula/node.rb')
| -rw-r--r-- | Library/Formula/node.rb | 81 |
1 files changed, 70 insertions, 11 deletions
diff --git a/Library/Formula/node.rb b/Library/Formula/node.rb index 3eb8ada33..74a1e246f 100644 --- a/Library/Formula/node.rb +++ b/Library/Formula/node.rb @@ -36,8 +36,8 @@ class Node < Formula sha1 'd7c6a39dfa714eae1f8da7a00c9a07efd74a03b3' devel do - url 'http://nodejs.org/dist/v0.11.8/node-v0.11.8.tar.gz' - sha1 '21d3927c78adaaf3fe7cc9602ffb0a85de7f6ea0' + url 'http://nodejs.org/dist/v0.11.9/node-v0.11.9.tar.gz' + sha1 'b4fc0e38ccde4edae45db198f331499055d77ca2' end head 'https://github.com/joyent/node.git' @@ -53,15 +53,7 @@ class Node < Formula end # fixes gyp's detection of system paths on CLT-only systems - def patches - # Latest versions of NodeJS stable have changed gyp's xcode_emulation, so - # it requires a different patch than devel currently. This will probably go away soon - if build.stable? - 'https://gist.github.com/bbhoss/7439859/raw/9037240e90c62ce462383469874d4c269e3ead0d/xcode_emulation.patch' - else - 'https://gist.github.com/bbhoss/7439831/raw/47a37bfaf3ca50e604f8ca346c9946d10519f563/xcode_emulation.patch' - end - end + def patches; DATA; end def install args = %W{--prefix=#{prefix}} @@ -107,3 +99,70 @@ class Node < Formula end end end + +__END__ +diff --git a/tools/gyp/pylib/gyp/xcode_emulation.py b/tools/gyp/pylib/gyp/xcode_emulation.py +index f9cec33..4b3c035 100644 +--- a/tools/gyp/pylib/gyp/xcode_emulation.py ++++ b/tools/gyp/pylib/gyp/xcode_emulation.py +@@ -285,8 +285,14 @@ class XcodeSettings(object): + if sdk_root.startswith('/'): + return sdk_root + if sdk_root not in XcodeSettings._sdk_path_cache: +- XcodeSettings._sdk_path_cache[sdk_root] = self._GetSdkVersionInfoItem( +- sdk_root, 'Path') ++ try: ++ XcodeSettings._sdk_path_cache[sdk_root] = self._GetSdkVersionInfoItem( ++ sdk_root, 'Path') ++ except: ++ # if this fails it's because xcodebuild failed, which means ++ # the user is probably on a CLT-only system, where there ++ # is no valid SDK root ++ XcodeSettings._sdk_path_cache[sdk_root] = None + return XcodeSettings._sdk_path_cache[sdk_root] + + def _AppendPlatformVersionMinFlags(self, lst): +@@ -397,10 +403,11 @@ class XcodeSettings(object): + + cflags += self._Settings().get('WARNING_CFLAGS', []) + +- config = self.spec['configurations'][self.configname] +- framework_dirs = config.get('mac_framework_dirs', []) +- for directory in framework_dirs: +- cflags.append('-F' + directory.replace('$(SDKROOT)', sdk_root)) ++ if 'SDKROOT' in self._Settings(): ++ config = self.spec['configurations'][self.configname] ++ framework_dirs = config.get('mac_framework_dirs', []) ++ for directory in framework_dirs: ++ cflags.append('-F' + directory.replace('$(SDKROOT)', sdk_root)) + + self.configname = None + return cflags +@@ -647,10 +654,11 @@ class XcodeSettings(object): + for rpath in self._Settings().get('LD_RUNPATH_SEARCH_PATHS', []): + ldflags.append('-Wl,-rpath,' + rpath) + +- config = self.spec['configurations'][self.configname] +- framework_dirs = config.get('mac_framework_dirs', []) +- for directory in framework_dirs: +- ldflags.append('-F' + directory.replace('$(SDKROOT)', self._SdkPath())) ++ if 'SDKROOT' in self._Settings(): ++ config = self.spec['configurations'][self.configname] ++ framework_dirs = config.get('mac_framework_dirs', []) ++ for directory in framework_dirs: ++ ldflags.append('-F' + directory.replace('$(SDKROOT)', self._SdkPath())) + + self.configname = None + return ldflags +@@ -826,7 +834,10 @@ class XcodeSettings(object): + l = '-l' + m.group(1) + else: + l = library +- return l.replace('$(SDKROOT)', self._SdkPath(config_name)) ++ if self._SdkPath(): ++ return l.replace('$(SDKROOT)', self._SdkPath(config_name)) ++ else: ++ return l + + def AdjustLibraries(self, libraries, config_name=None): + """Transforms entries like 'Cocoa.framework' in libraries into entries like |
