summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTarek Ziadé <ziade.tarek@gmail.com>2009-09-09 09:07:13 +0000
committerTarek Ziadé <ziade.tarek@gmail.com>2009-09-09 09:07:13 +0000
commitef8a8beab140ab41f06993ade1117a87017e3d2c (patch)
tree28e2b9a4c45bbb3f5224f17bb08cba8ce8fe765f
parent9739b05ab1d6c0e2a2dc8d2ff1d0f3ec53aad4a1 (diff)
downloadcpython-git-ef8a8beab140ab41f06993ade1117a87017e3d2c.tar.gz
Merged revisions 74730 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r74730 | tarek.ziade | 2009-09-09 10:48:07 +0200 (Wed, 09 Sep 2009) | 9 lines Merged revisions 74728 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r74728 | tarek.ziade | 2009-09-09 10:14:20 +0200 (Wed, 09 Sep 2009) | 1 line Issue #6163: Fixed HP-UX runtime library dir options in distutils.unixcompiler ........ ................
-rw-r--r--Lib/distutils/tests/test_unixccompiler.py18
-rw-r--r--Lib/distutils/unixccompiler.py4
-rw-r--r--Misc/NEWS4
3 files changed, 24 insertions, 2 deletions
diff --git a/Lib/distutils/tests/test_unixccompiler.py b/Lib/distutils/tests/test_unixccompiler.py
index 94e9edfc09..be2df5c6e3 100644
--- a/Lib/distutils/tests/test_unixccompiler.py
+++ b/Lib/distutils/tests/test_unixccompiler.py
@@ -36,7 +36,23 @@ class UnixCCompilerTestCase(unittest.TestCase):
# hp-ux
sys.platform = 'hp-ux'
- self.assertEqual(self.cc.rpath_foo(), '+s -L/foo')
+ old_gcv = sysconfig.get_config_var
+ def gcv(v):
+ return 'xxx'
+ sysconfig.get_config_var = gcv
+ self.assertEqual(self.cc.rpath_foo(), ['+s', '-L/foo'])
+
+ def gcv(v):
+ return 'gcc'
+ sysconfig.get_config_var = gcv
+ self.assertEqual(self.cc.rpath_foo(), ['-Wl,+s', '-L/foo'])
+
+ def gcv(v):
+ return 'g++'
+ sysconfig.get_config_var = gcv
+ self.assertEqual(self.cc.rpath_foo(), ['-Wl,+s', '-L/foo'])
+
+ sysconfig.get_config_var = old_gcv
# irix646
sys.platform = 'irix646'
diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py
index c11544d828..8bbdb4b329 100644
--- a/Lib/distutils/unixccompiler.py
+++ b/Lib/distutils/unixccompiler.py
@@ -283,7 +283,9 @@ class UnixCCompiler(CCompiler):
# MacOSX's linker doesn't understand the -R flag at all
return "-L" + dir
elif sys.platform[:5] == "hp-ux":
- return "+s -L" + dir
+ if "gcc" in compiler or "g++" in compiler:
+ return ["-Wl,+s", "-L" + dir]
+ return ["+s", "-L" + dir]
elif sys.platform[:7] == "irix646" or sys.platform[:6] == "osf1V5":
return ["-rpath", dir]
else:
diff --git a/Misc/NEWS b/Misc/NEWS
index 31a8e0ed32..85fad1cbad 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -983,6 +983,10 @@ Core and Builtins
Library
-------
+- Issue #6163: Fixed HP-UX runtime library dir options in
+ distutils.unixcompiler. Initial patch by Sridhar Ratnakumar and
+ Michael Haubenwallner.
+
- Issue #6545: Removed assert statements in distutils.Extension, so the
behavior is similar when used with -O.