diff -r c426da77695f Lib/distutils/command/build_ext.py --- a/Lib/distutils/command/build_ext.py Mon Dec 08 18:01:15 2014 -0500 +++ b/Lib/distutils/command/build_ext.py Wed Dec 10 05:18:24 2014 +0800 @@ -170,6 +170,7 @@ self.include_dirs.append(plat_py_include) self.ensure_string_list('libraries') + self.ensure_string_list('link_objects') # Life is easier if we're not forever checking for None, so # simplify these options to empty lists if unset diff -r c426da77695f Lib/distutils/tests/test_build_ext.py --- a/Lib/distutils/tests/test_build_ext.py Mon Dec 08 18:01:15 2014 -0500 +++ b/Lib/distutils/tests/test_build_ext.py Wed Dec 10 05:18:24 2014 +0800 @@ -195,6 +195,13 @@ cmd.finalize_options() self.assertEqual(cmd.rpath, ['one', 'two']) + # make sure cmd.link_objects is turned into a list + # if it's a string + cmd = self.build_ext(dist) + cmd.link_objects = 'one two,three' + cmd.finalize_options() + self.assertEqual(cmd.link_objects, ['one', 'two', 'three']) + # XXX more tests to perform for win32 # make sure define is turned into 2-tuples