* Giuseppe Iuculano <[email protected]>, 2010-07-13, 11:41:
$ gyp
Traceback (most recent call last):
  File "/usr/bin/gyp", line 18, in <module>
    sys.exit(gyp.main(sys.argv[1:]))
  File "/usr/lib/pymodules/python2.6/gyp/__init__.py", line 316, in main
    'sunos5':   'make',}[sys.platform] ]
KeyError: 'gnukfreebsd8'

Coould you try to apply this patch to
"/usr/lib/pymodules/python2.6/gyp/__init__.py" please?


--- a/pylib/gyp/__init__.py
+++ b/pylib/gyp/__init__.py
@@ -312,6 +312,7 @@ def main(args):
                           'cygwin':   'msvs',
                           'freebsd7': 'make',
                           'freebsd8': 'make',
+                           'gnukfreebsd8': 'make',
                           'linux2':   'make',
                           'openbsd4': 'make',
                           'sunos5':   'make',}[sys.platform] ]

Yes, this does the trick in my particular case, but doesn't scale well: you would have to add 'gnukfreebsd7', 'gnu0' and who knows what else[0]. The attached patch should do better job: it falls back to 'make' for everything else than win32, cygwin or darwin.

[0] In python2.5 there were e.g. 'linux2-alpha', 'linux2-hppa' and a few other platforms; thankfully, they are gone in python2.6 (AFAIK).

--
Jakub Wilk
--- gyp-0.1~svn824.orig/pylib/gyp/__init__.py
+++ gyp-0.1~svn824/pylib/gyp/__init__.py
@@ -309,12 +309,7 @@ def main(args):
       # Nothing in the variable, default based on platform.
       options.formats = [ {'darwin':   'xcode',
                            'win32':    'msvs',
-                           'cygwin':   'msvs',
-                           'freebsd7': 'make',
-                           'freebsd8': 'make',
-                           'linux2':   'make',
-                           'openbsd4': 'make',
-                           'sunos5':   'make',}[sys.platform] ]
+                           'cygwin':   'msvs'}.get(sys.platform, 'make') ]
 
   if not options.generator_output and options.use_environment:
     g_o = os.environ.get('GYP_GENERATOR_OUTPUT')

Attachment: signature.asc
Description: Digital signature

Reply via email to