]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Issue #19553: PEP 453 - "make install" and "make altinstall" now install or
authorNed Deily <nad@acm.org>
Fri, 22 Nov 2013 07:01:59 +0000 (23:01 -0800)
committerNed Deily <nad@acm.org>
Fri, 22 Nov 2013 07:01:59 +0000 (23:01 -0800)
upgrade pip by default, using the bundled pip provided by the new ensurepip
module.  A new configure option, --with-ensurepip[=upgrade|install|no], is
available to override the default ensurepip "--upgrade" option.  The option
can also be set with "make [alt]install ENSUREPIP=[upgrade|install\no]".

Mac/Makefile.in
Makefile.pre.in
Misc/NEWS
configure
configure.ac

index c40ad1a455a2a6f6274177ff49b579029cf3bb0e..03ec738e34323316489b756e00e72a57e08a2766 100644 (file)
@@ -5,6 +5,7 @@
 VERSION=@VERSION@
 ABIFLAGS=@ABIFLAGS@
 LDVERSION=@LDVERSION@
+ENSUREPIP=@ENSUREPIP@
 builddir = ..
 srcdir=@srcdir@
 prefix=@prefix@
@@ -92,6 +93,16 @@ installunixtools:
                        $(LN) -s $(BINDIR)/$${fn} $${fn} ;\
                done ;\
        fi
+       -if test "x$(ENSUREPIP)" != "xno"  ; then \
+               cd "$(DESTDIR)$(FRAMEWORKUNIXTOOLSPREFIX)/bin" && \
+               for fn in \
+                               pip3 \
+                               ; \
+               do \
+                       rm -f $${fn} ;\
+                       $(LN) -s $(BINDIR)/$${fn} $${fn} ;\
+               done ;\
+       fi
 
 #
 # Like installunixtools, but only install links to the versioned binaries.
@@ -133,6 +144,17 @@ altinstallunixtools:
                        $(LN) -s $(BINDIR)/$${fn} $${fn} ;\
                done ;\
        fi
+       -if test "x$(ENSUREPIP)" != "xno"  ; then \
+               cd "$(DESTDIR)$(FRAMEWORKUNIXTOOLSPREFIX)/bin" && \
+               for fn in \
+                               easy_install-$(VERSION) \
+                               pip$(VERSION) \
+                               ; \
+               do \
+                       rm -f $${fn} ;\
+                       $(LN) -s $(BINDIR)/$${fn} $${fn} ;\
+               done ;\
+       fi
 
 pythonw: $(srcdir)/Tools/pythonw.c Makefile
        $(CC) $(LDFLAGS) -DPYTHONFRAMEWORK='"$(PYTHONFRAMEWORK)"' -o $@ \
index 0e75bbece1dd6b3fa15cfa7397ceda1fa5a4ddf7..0ccf755768addf870ae0e69bd2e342a3fa3b39b1 100644 (file)
@@ -160,6 +160,9 @@ OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@
 # Environment to run shared python without installed libraries
 RUNSHARED=       @RUNSHARED@
 
+# ensurepip options
+ENSUREPIP=      @ENSUREPIP@
+
 # Modes for directories, executables and data files created by the
 # install process.  Default to user-only-writable for all file types.
 DIRMODE=       755
@@ -961,10 +964,30 @@ quicktest:        all platform
                $(TESTRUNNER) $(QUICKTESTOPTS)
 
 
-install: @FRAMEWORKINSTALLFIRST@ altinstall bininstall maninstall @FRAMEWORKINSTALLLAST@
+install: @FRAMEWORKINSTALLFIRST@ commoninstall bininstall maninstall @FRAMEWORKINSTALLLAST@
+       if test "x$(ENSUREPIP)" != "xno"  ; then \
+               case $(ENSUREPIP) in \
+                       upgrade) ensurepip="--upgrade" ;; \
+                       install|*) ensurepip="" ;; \
+               esac; \
+               $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
+                       $$ensurepip --root=$(DESTDIR)/ ; \
+       fi
+
+altinstall: commoninstall
+       if test "x$(ENSUREPIP)" != "xno"  ; then \
+               case $(ENSUREPIP) in \
+                       upgrade) ensurepip="--altinstall --upgrade" ;; \
+                       install|*) ensurepip="--altinstall" ;; \
+               esac; \
+               $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
+                       $$ensurepip --root=$(DESTDIR)/ ; \
+       fi
 
-altinstall:    @FRAMEWORKALTINSTALLFIRST@ altbininstall libinstall inclinstall libainstall \
-                sharedinstall oldsharedinstall altmaninstall @FRAMEWORKALTINSTALLLAST@
+commoninstall:  @FRAMEWORKALTINSTALLFIRST@ \
+               altbininstall libinstall inclinstall libainstall \
+               sharedinstall oldsharedinstall altmaninstall \
+               @FRAMEWORKALTINSTALLLAST@
 
 # Install shared libraries enabled by Setup
 DESTDIRS=      $(exec_prefix) $(LIBDIR) $(BINLIBDEST) $(DESTSHARED)
@@ -1570,7 +1593,7 @@ Python/thread.o: @THREADHEADERS@
 .PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure
 .PHONY: frameworkinstallmaclib frameworkinstallapps frameworkinstallunixtools
 .PHONY: frameworkaltinstallunixtools recheck autoconf clean clobber distclean
-.PHONY: smelly funny patchcheck touch altmaninstall
+.PHONY: smelly funny patchcheck touch altmaninstall commoninstall
 .PHONY: gdbhooks
 
 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY
index 6d453fec880b0ef370b84650d01abcbd7e83684b..92d902af9cfc57fcba3896e3d876a1ea812be9dd 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -363,6 +363,12 @@ Build
   installed for 64-bit/32-bit universal builds.  The obsolete and
   undocumented pythonw* symlinks are no longer installed anywhere.
 
+- Issue #19553: PEP 453 - "make install" and "make altinstall" now install or
+  upgrade pip by default, using the bundled pip provided by the new ensurepip
+  module.  A new configure option, --with-ensurepip[=upgrade|install|no], is
+  available to override the default ensurepip "--upgrade" option.  The option
+  can also be set with "make [alt]install ENSUREPIP=[upgrade|install\no]".
+
 Tools/Demos
 -----------
 
index b40058aea0313d9e68bf556a0de043b85c66fba5..5d666ed93eb47b84372755807205ac5dabe03dc3 100755 (executable)
--- a/configure
+++ b/configure
@@ -623,6 +623,7 @@ ac_includes_default="\
 #endif"
 
 ac_subst_vars='LTLIBOBJS
+ENSUREPIP
 SRCDIRS
 THREADHEADERS
 LIBPL
@@ -815,6 +816,7 @@ with_libm
 with_libc
 enable_big_digits
 with_computed_gotos
+with_ensurepip
 '
       ac_precious_vars='build_alias
 host_alias
@@ -1498,6 +1500,8 @@ Optional Packages:
   --with(out)-computed-gotos
                           Use computed gotos in evaluation loop (enabled by
                           default on supported compilers)
+  --with(out)-ensurepip=[=upgrade]
+                          "install" or "upgrade" using bundled pip
 
 Some influential environment variables:
   MACHDEP     name for machine-dependent library files
@@ -15344,6 +15348,31 @@ $as_echo "#define HAVE_IPA_PURE_CONST_BUG 1" >>confdefs.h
     esac
 fi
 
+# ensurepip option
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ensurepip" >&5
+$as_echo_n "checking for ensurepip... " >&6; }
+
+# Check whether --with-ensurepip was given.
+if test "${with_ensurepip+set}" = set; then :
+  withval=$with_ensurepip;
+else
+  with_ensurepip=upgrade
+fi
+
+case $with_ensurepip in #(
+  yes|upgrade) :
+    ENSUREPIP=upgrade ;; #(
+  install) :
+    ENSUREPIP=install ;; #(
+  no) :
+    ENSUREPIP=no ;; #(
+  *) :
+    as_fn_error $? "--with-ensurepip=upgrade|install|no" "$LINENO" 5 ;;
+esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENSUREPIP" >&5
+$as_echo "$ENSUREPIP" >&6; }
+
+
 # generate output files
 ac_config_files="$ac_config_files Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh"
 
index 02f481eb4ca30fc97604775075397ad797bcde29..14b3aef6046c905a85f899fa3a897fe6125f8859 100644 (file)
@@ -4767,6 +4767,21 @@ if test "$have_gcc_asm_for_x87" = yes; then
     esac
 fi
 
+# ensurepip option
+AC_MSG_CHECKING(for ensurepip)
+AC_ARG_WITH(ensurepip,
+    [AS_HELP_STRING([--with(out)-ensurepip=@<:@=upgrade@:>@],
+        ["install" or "upgrade" using bundled pip])],
+    [],
+    [with_ensurepip=upgrade])
+AS_CASE($with_ensurepip,
+    [yes|upgrade],[ENSUREPIP=upgrade],
+    [install],[ENSUREPIP=install],
+    [no],[ENSUREPIP=no],
+    [AC_MSG_ERROR([--with-ensurepip=upgrade|install|no])])
+AC_MSG_RESULT($ENSUREPIP)
+AC_SUBST(ENSUREPIP)
+
 # generate output files
 AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh)
 AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])