Patch #1161914: Add python-config.

This commit is contained in:
Martin v. Löwis 2006-04-15 08:13:05 +00:00
parent adcd25e7fa
commit c90b17ec82
3 changed files with 56 additions and 0 deletions

View File

@ -826,6 +826,11 @@ libainstall: all
$(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config
$(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup
$(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh
# Substitution happens here, as the completely-expanded BINDIR
# is not available in configure
sed -e "s,@BINDIR@,$(BINDIR)," < $(srcdir)/Misc/python-config.in >python-config
$(INSTALL_SCRIPT) python-config $(BINDIR)/python-config
rm python-config
@if [ -s Modules/python.exp -a \
"`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \
echo; echo "Installing support files for building shared extension modules on AIX:"; \

View File

@ -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

50
Misc/python-config.in Normal file
View File

@ -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)