[Python-checkins] r58155 - python/trunk/Lib/ctypes/util.py
thomas.heller
python-checkins at python.org
Fri Sep 14 21:40:36 CEST 2007
Author: thomas.heller
Date: Fri Sep 14 21:40:35 2007
New Revision: 58155
Modified:
python/trunk/Lib/ctypes/util.py
Log:
ctypes.util.find_library uses dump(1) instead of objdump(1) on Solaris.
Fixes issue #1777530; will backport to release25-maint.
Modified: python/trunk/Lib/ctypes/util.py
==============================================================================
--- python/trunk/Lib/ctypes/util.py (original)
+++ python/trunk/Lib/ctypes/util.py Fri Sep 14 21:40:35 2007
@@ -66,15 +66,27 @@
return None
return res.group(0)
- def _get_soname(f):
- # assuming GNU binutils / ELF
- if not f:
- return None
- cmd = "objdump -p -j .dynamic 2>/dev/null " + f
- res = re.search(r'\sSONAME\s+([^\s]+)', os.popen(cmd).read())
- if not res:
- return None
- return res.group(1)
+
+ if sys.platform == "sunos5":
+ # use /usr/ccs/bin/dump on solaris
+ def _get_soname(f):
+ if not f:
+ return None
+ cmd = "/usr/ccs/bin/dump -Lpv 2>/dev/null " + f
+ res = re.search(r'\[.*\]\sSONAME\s+([^\s]+)', os.popen(cmd).read())
+ if not res:
+ return None
+ return res.group(1)
+ else:
+ def _get_soname(f):
+ # assuming GNU binutils / ELF
+ if not f:
+ return None
+ cmd = "objdump -p -j .dynamic 2>/dev/null " + f
+ res = re.search(r'\sSONAME\s+([^\s]+)', os.popen(cmd).read())
+ if not res:
+ return None
+ return res.group(1)
if (sys.platform.startswith("freebsd")
or sys.platform.startswith("openbsd")
More information about the Python-checkins
mailing list