summaryrefslogtreecommitdiffstats
path: root/Lib/packaging
diff options
context:
space:
mode:
authorÉric Araujo <merwok@netwok.org>2012-02-15 16:25:25 (GMT)
committerÉric Araujo <merwok@netwok.org>2012-02-15 16:25:25 (GMT)
commit4575afcb53db638232d897aed5e84bb629fc1ecf (patch)
tree5ba0a51e5cedde4b0f29731512b2c745c6775913 /Lib/packaging
parent1d175f776836ef0106d06ff2f264635df125340e (diff)
downloadcpython-4575afcb53db638232d897aed5e84bb629fc1ecf.zip
cpython-4575afcb53db638232d897aed5e84bb629fc1ecf.tar.gz
cpython-4575afcb53db638232d897aed5e84bb629fc1ecf.tar.bz2
Fix parsing of packaging’s build_ext --libraries option (#1326113)
Diffstat (limited to 'Lib/packaging')
-rw-r--r--Lib/packaging/command/build_ext.py3
-rw-r--r--Lib/packaging/tests/test_command_build_ext.py12
2 files changed, 7 insertions, 8 deletions
diff --git a/Lib/packaging/command/build_ext.py b/Lib/packaging/command/build_ext.py
index 4f375b6..4c85822 100644
--- a/Lib/packaging/command/build_ext.py
+++ b/Lib/packaging/command/build_ext.py
@@ -159,8 +159,7 @@ class build_ext(Command):
if plat_py_include != py_include:
self.include_dirs.append(plat_py_include)
- if isinstance(self.libraries, str):
- self.libraries = [self.libraries]
+ self.ensure_string_list('libraries')
# Life is easier if we're not forever checking for None, so
# simplify these options to empty lists if unset
diff --git a/Lib/packaging/tests/test_command_build_ext.py b/Lib/packaging/tests/test_command_build_ext.py
index 4883f38..161b000 100644
--- a/Lib/packaging/tests/test_command_build_ext.py
+++ b/Lib/packaging/tests/test_command_build_ext.py
@@ -141,21 +141,21 @@ class BuildExtTestCase(support.TempdirManager,
# make sure cmd.libraries is turned into a list
# if it's a string
cmd = build_ext(dist)
- cmd.libraries = 'my_lib'
+ cmd.libraries = 'my_lib, other_lib lastlib'
cmd.finalize_options()
- self.assertEqual(cmd.libraries, ['my_lib'])
+ self.assertEqual(cmd.libraries, ['my_lib', 'other_lib', 'lastlib'])
# make sure cmd.library_dirs is turned into a list
# if it's a string
cmd = build_ext(dist)
- cmd.library_dirs = 'my_lib_dir'
+ cmd.library_dirs = 'my_lib_dir%sother_lib_dir' % os.pathsep
cmd.finalize_options()
- self.assertIn('my_lib_dir', cmd.library_dirs)
+ self.assertEqual(cmd.library_dirs, ['my_lib_dir', 'other_lib_dir'])
# make sure rpath is turned into a list
- # if it's a list of os.pathsep's paths
+ # if it's a string
cmd = build_ext(dist)
- cmd.rpath = os.pathsep.join(['one', 'two'])
+ cmd.rpath = 'one%stwo' % os.pathsep
cmd.finalize_options()
self.assertEqual(cmd.rpath, ['one', 'two'])