diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2006-04-15 08:13:05 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2006-04-15 08:13:05 (GMT) |
commit | c90b17ec8233009e4745dd8f77401f52c5d4a8d5 (patch) | |
tree | d92962c214b958b54437664cc1c3812ced231636 /Misc | |
parent | adcd25e7facaf107bd2b94f33f6b9f818ab6a177 (diff) | |
download | cpython-c90b17ec8233009e4745dd8f77401f52c5d4a8d5.zip cpython-c90b17ec8233009e4745dd8f77401f52c5d4a8d5.tar.gz cpython-c90b17ec8233009e4745dd8f77401f52c5d4a8d5.tar.bz2 |
Patch #1161914: Add python-config.
Diffstat (limited to 'Misc')
-rw-r--r-- | Misc/NEWS | 1 | ||||
-rw-r--r-- | Misc/python-config.in | 50 |
2 files changed, 51 insertions, 0 deletions
@@ -82,6 +82,7 @@ Library Build ----- +- Patch #1161914: Add a python-config script. - Patch #1324762:Remove ccpython.cc; replace --with-cxx with --with-cxx-main. Link with C++ compiler only if --with-cxx-main was specified. (Can be overridden by explicitly setting LINKCC.) Decouple diff --git a/Misc/python-config.in b/Misc/python-config.in new file mode 100644 index 0000000..24e699e --- /dev/null +++ b/Misc/python-config.in @@ -0,0 +1,50 @@ +#!@BINDIR@/python + +import sys +import os +import getopt +from distutils import sysconfig + +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], + '|'.join('--'+opt for opt in valid_opts)) + sys.exit(code) + +try: + opts, args = getopt.getopt(sys.argv[1:], '', valid_opts) +except getopt.error: + exit_with_usage() + +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'+dir for dir in getvar('INCLDIRSTOMAKE').split()] + if opt == '--cflags': + flags.extend(getvar('CFLAGS').split()) + print ' '.join(flags) + +elif opt in ('--libs', '--ldflags'): + libs = sysconfig.get_config_var('LIBS').split() + libs.append('-lpython'+pyver) + if opt == '--ldflags': + libs.insert(0, '-L' + getvar('LIBPL')) + print ' '.join(libs) + |