]> granicus.if.org Git - python/commitdiff
Merged revisions 79082,79084 via svnmerge from
authorCollin Winter <collinw@gmail.com>
Fri, 19 Mar 2010 21:17:17 +0000 (21:17 +0000)
committerCollin Winter <collinw@gmail.com>
Fri, 19 Mar 2010 21:17:17 +0000 (21:17 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79082 | collin.winter | 2010-03-18 17:00:30 -0700 (Thu, 18 Mar 2010) | 1 line

  Add a separate python-config make target, useful for testing changes to Misc/python-config.in.
........
  r79084 | collin.winter | 2010-03-18 17:08:44 -0700 (Thu, 18 Mar 2010) | 1 line

  Make python-config support multiple option flags on the same command line, rather than requiring one invocation per flag.
........

Makefile.pre.in
Misc/NEWS
Misc/python-config.in

index 8eab038c40054d3ed2967edea89cc0326c6986c8..0bfaa8fcbdb005cc88a730553142e0829bd3c63a 100644 (file)
@@ -941,6 +941,11 @@ $(srcdir)/Lib/$(PLATDIR):
        export EXE; EXE="$(BUILDEXE)"; \
        cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen
 
+python-config: $(srcdir)/Misc/python-config.in
+       # Substitution happens here, as the completely-expanded BINDIR
+       # is not available in configure
+       sed -e "s,@EXENAME@,$(BINDIR)/python$(VERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config
+
 # Install the include files
 INCLDIRSTOMAKE=$(INCLUDEDIR) $(CONFINCLUDEDIR) $(INCLUDEPY) $(CONFINCLUDEPY)
 inclinstall:
@@ -966,7 +971,7 @@ LIBPL=              $(LIBP)/config
 # pkgconfig directory
 LIBPC=         $(LIBDIR)/pkgconfig
 
-libainstall:   all
+libainstall:   all python-config
        @for i in $(LIBDIR) $(LIBP) $(LIBPL) $(LIBPC); \
        do \
                if test ! -d $(DESTDIR)$$i; then \
@@ -997,9 +1002,6 @@ libainstall:       all
        $(INSTALL_DATA) Misc/python.pc $(DESTDIR)$(LIBPC)/python-$(VERSION).pc
        $(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,@EXENAME@,$(BINDIR)/python$(VERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config
        $(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(VERSION)-config
        rm python-config
        @if [ -s Modules/python.exp -a \
index b68f8126793c165533e13ef1e760d6a7513c77f4..7c8c7119e45b375be55ccfa7befb162b03da0bb9 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -889,6 +889,8 @@ Build
 - Issue #7541: when using ``python-config`` with a framework install the
   compiler might use the wrong library.
 
+- python-config now supports multiple options on the same command line.
+
 Documentation
 ------------
 
index 47ea669bd52aa22a8fdfe673f3b4134bda6d4264..c03b4fa84329a8c6596366c074e2b825eaf02ca8 100644 (file)
@@ -21,33 +21,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))