diff options
author | Andrew M. Kuchling <amk@amk.ca> | 2001-03-17 20:15:41 (GMT) |
---|---|---|
committer | Andrew M. Kuchling <amk@amk.ca> | 2001-03-17 20:15:41 (GMT) |
commit | 7620bbdcbf92eab9c99fc08bbf8e9daaf677e410 (patch) | |
tree | 06edb11094f3302540600e4c872c9380091d7209 | |
parent | 898f099dc61c3efbaa28cc727f5dbfd773d38444 (diff) | |
download | cpython-7620bbdcbf92eab9c99fc08bbf8e9daaf677e410.zip cpython-7620bbdcbf92eab9c99fc08bbf8e9daaf677e410.tar.gz cpython-7620bbdcbf92eab9c99fc08bbf8e9daaf677e410.tar.bz2 |
Fix bug #233253: the --define and --undef options didn't work, whether
specified on the command-line or in setup.cfg. The option processing
leaves them as strings, but they're supposed to be lists.
-rw-r--r-- | Lib/distutils/command/build_ext.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 8666975..f732373 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -177,6 +177,21 @@ class build_ext (Command): # building python standard extensions self.library_dirs.append('.') + # The argument parsing will result in self.define being a string, but + # it has to be a list of 2-tuples. All the preprocessor symbols + # specified by the 'define' option will be set to '1'. Multiple + # symbols can be separated with commas. + + if self.define: + defines = string.split(self.define, ',') + self.define = map(lambda symbol: (symbol, '1'), defines) + + # The option for macros to undefine is also a string from the + # option parsing, but has to be a list. Multiple symbols can also + # be separated with commas here. + if self.undef: + self.undef = string.split(self.undef, ',') + # finalize_options () |