From 7e6e39e562179fd655e1407bba89c957902b5a8b Mon Sep 17 00:00:00 2001 From: Joel Brobecker Date: Thu, 8 Jul 2010 22:12:44 +0000 Subject: [PATCH] Resync python-config.py with Python-2.7 version. This is just a copy of the Python 2.7 version of python-config.py. Tested with versions 2.5 and 2.6. It's nearly identical to the previous version, except it's written in a more pythonic way, so it should be fine for 2.4 as well. gdb/ChangeLog: * python/python-config.py: Resync with Python 2.7 version of this script. --- gdb/ChangeLog | 5 +++ gdb/python/python-config.py | 61 +++++++++++++++++++------------------ 2 files changed, 37 insertions(+), 29 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 969fc53e541..96009f781c0 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-07-08 Joel Brobecker + + * python/python-config.py: Resync with Python 2.7 version of this + script. + 2010-07-08 Joel Brobecker * NEWS: Fix typo in section name (s/GDB 7.1/GDB 7.2). diff --git a/gdb/python/python-config.py b/gdb/python/python-config.py index 285a2270426..0230eb4925c 100644 --- a/gdb/python/python-config.py +++ b/gdb/python/python-config.py @@ -1,16 +1,16 @@ # Program to fetch python compilation parameters. -# Copied from python-config of the 2.6.5 release. +# Copied from python-config of the 2.7 release. import sys import os import getopt from distutils import sysconfig -valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', +valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', 'ldflags', 'help'] def exit_with_usage(code=1): - print >>sys.stderr, "Usage: %s [%s]" % (sys.argv[0], + print >>sys.stderr, "Usage: %s [%s]" % (sys.argv[0], '|'.join('--'+opt for opt in valid_opts)) sys.exit(code) @@ -22,33 +22,36 @@ except getopt.error: if not opts: exit_with_usage() -opt = opts[0][0] - pyver = sysconfig.get_config_var('VERSION') getvar = sysconfig.get_config_var -if opt == '--help': - exit_with_usage(0) - -elif opt == '--prefix': - print sysconfig.PREFIX - -elif opt == '--exec-prefix': - print sysconfig.EXEC_PREFIX - -elif opt in ('--includes', '--cflags'): - flags = ['-I' + sysconfig.get_python_inc(), - '-I' + sysconfig.get_python_inc(plat_specific=True)] - if opt == '--cflags': - flags.extend(getvar('CFLAGS').split()) - print ' '.join(flags) - -elif opt in ('--libs', '--ldflags'): - libs = getvar('LIBS').split() + getvar('SYSLIBS').split() - libs.append('-lpython'+pyver) - # add the prefix/lib/pythonX.Y/config dir, but only if there is no - # shared library in prefix/lib/. - if opt == '--ldflags' and not getvar('Py_ENABLE_SHARED'): - libs.insert(0, '-L' + getvar('LIBPL')) - print ' '.join(libs) +opt_flags = [flag for (flag, val) in opts] + +if '--help' in opt_flags: + exit_with_usage(code=0) + +for opt in opt_flags: + if opt == '--prefix': + print sysconfig.PREFIX + + elif opt == '--exec-prefix': + print sysconfig.EXEC_PREFIX + + elif opt in ('--includes', '--cflags'): + flags = ['-I' + sysconfig.get_python_inc(), + '-I' + sysconfig.get_python_inc(plat_specific=True)] + if opt == '--cflags': + flags.extend(getvar('CFLAGS').split()) + print ' '.join(flags) + + elif opt in ('--libs', '--ldflags'): + libs = getvar('LIBS').split() + getvar('SYSLIBS').split() + libs.append('-lpython'+pyver) + # add the prefix/lib/pythonX.Y/config dir, but only if there is no + # shared library in prefix/lib/. + if opt == '--ldflags': + if not getvar('Py_ENABLE_SHARED'): + libs.insert(0, '-L' + getvar('LIBPL')) + libs.extend(getvar('LINKFORSHARED').split()) + print ' '.join(libs) -- 2.30.2