]> granicus.if.org Git - python/commitdiff
Changed 'build_extensions()' so 'sources' can be a list or tuple; and
authorGreg Ward <gward@python.net>
Sun, 12 Dec 1999 17:01:01 +0000 (17:01 +0000)
committerGreg Ward <gward@python.net>
Sun, 12 Dec 1999 17:01:01 +0000 (17:01 +0000)
  call CCompiler method 'compile()' with 'include_dirs' not 'includes'.
Fixed stupid typo in 'get_source_files()'.

Lib/distutils/command/build_ext.py

index f284092b3e7b7d45345921144b9fd303e450e731..d38cb18b5ca7819b3064e43b8581a7fca3859410 100644 (file)
@@ -179,7 +179,7 @@ class BuildExt (Command):
         filenames = []
 
         # Wouldn't it be neat if we knew the names of header files too...
-        for (extension_name, build_info) in extensions:
+        for (extension_name, build_info) in self.extensions:
             sources = build_info.get ('sources')
             if type (sources) in (ListType, TupleType):
                 filenames.extend (sources)
@@ -191,10 +191,11 @@ class BuildExt (Command):
 
         for (extension_name, build_info) in extensions:
             sources = build_info.get ('sources')
-            if sources is None or type (sources) is not ListType:
+            if sources is None or type (sources) not in (ListType, TupleType):
                 raise DistutilsValueError, \
                       "in ext_modules option, 'sources' must be present " + \
                       "and must be a list of source filenames"
+            sources = list (sources)
 
             # First step: compile the source code to object files.  This
             # drops the object files in the current directory, regardless
@@ -205,7 +206,7 @@ class BuildExt (Command):
             include_dirs = build_info.get ('include_dirs')
             self.compiler.compile (sources,
                                    macros=macros,
-                                   includes=include_dirs)
+                                   include_dirs=include_dirs)
 
             # Now link the object files together into a "shared object" --
             # of course, first we have to figure out all the other things