1. Carl Meyer
  2. python-distutils

Commits

Tarek Ziadé  committed c7a66ca

Issue #6163: Fixed HP-UX runtime library dir options in distutils.unixcompiler

  • Participants
  • Parent commits f34def8
  • Branches default

Comments (0)

Files changed (2)

File tests/test_unixccompiler.py

View file
 
         # 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'

File unixccompiler.py

View file
             # 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]
         elif compiler[:3] == "gcc" or compiler[:3] == "g++":