diff options
author | Kubilay Kocak <koobs@FreeBSD.org> | 2014-08-23 03:53:25 +0000 |
---|---|---|
committer | Kubilay Kocak <koobs@FreeBSD.org> | 2014-08-23 03:53:25 +0000 |
commit | 3e8425cb1e6f88545b8e2bb7a81fd25ddd5765ab (patch) | |
tree | aaa61847212a0c7a033d86042d028519ea4c9283 /lang/python34 | |
parent | 19b94bad775bb9a1f632a9f3218b3deeba02b257 (diff) |
Notes
Diffstat (limited to 'lang/python34')
-rw-r--r-- | lang/python34/files/patch-issue21166 | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/lang/python34/files/patch-issue21166 b/lang/python34/files/patch-issue21166 new file mode 100644 index 000000000000..04bcd0406048 --- /dev/null +++ b/lang/python34/files/patch-issue21166 @@ -0,0 +1,74 @@ +# HG changeset patch +# User Ned Deily <nad@acm.org> +# Date 1408739569 25200 +# Node ID e52d85f2e2846453dd0503613d28cf6967f113d7 +# Parent d99014320220951707f79d114ae33f8c5a372a87 +Issue #21166: Prevent possible segfaults and other random failures of +python --generate-posix-vars in pybuilddir.txt build target by ensuring +that pybuilddir.txt is always regenerated when configure is run and +that the newly built skeleton python does not inadvertently import +modules from previously installed instances. + +diff --git a/Makefile.pre.in b/Makefile.pre.in +--- Makefile.pre.in ++++ Makefile.pre.in +@@ -546,8 +546,18 @@ platform: $(BUILDPYTHON) pybuilddir.txt + # Create build directory and generate the sysconfig build-time data there. + # pybuilddir.txt contains the name of the build dir and is used for + # sys.path fixup -- see Modules/getpath.c. ++# Since this step runs before shared modules are built, try to avoid bootstrap ++# problems by creating a dummy pybuildstr.txt just to allow interpreter ++# initialization to succeed. It will be overwritten by generate-posix-vars ++# or removed in case of failure. + pybuilddir.txt: $(BUILDPYTHON) +- $(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars ++ @echo "none" > ./pybuilddir.txt ++ $(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars ;\ ++ if test $$? -ne 0 ; then \ ++ echo "generate-posix-vars failed" ; \ ++ rm -f ./pybuilddir.txt ; \ ++ exit 1 ; \ ++ fi + + # Build the shared modules + # Under GNU make, MAKEFLAGS are sorted and normalized; the 's' for +diff --git a/Misc/NEWS b/Misc/NEWS +--- Misc/NEWS ++++ Misc/NEWS +@@ -242,6 +242,9 @@ Build + + - Issue #21811: Anticipated fixes to support OS X versions > 10.9. + ++- Issue #21166: Prevent possible segfaults and other random failures of ++ python --generate-posix-vars in pybuilddir.txt build target. ++ + IDLE + ---- + +diff --git a/configure b/configure +--- configure ++++ configure +@@ -2950,6 +2950,9 @@ case $host_os in *\ *) host_os=`echo "$h + + + ++# pybuilddir.txt will be created by --generate-posix-vars in the Makefile ++rm -f pybuilddir.txt ++ + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for python interpreter for cross build" >&5 + $as_echo_n "checking for python interpreter for cross build... " >&6; } +diff --git a/configure.ac b/configure.ac +--- configure.ac ++++ configure.ac +@@ -53,6 +53,9 @@ AC_CANONICAL_HOST + AC_SUBST(build) + AC_SUBST(host) + ++# pybuilddir.txt will be created by --generate-posix-vars in the Makefile ++rm -f pybuilddir.txt ++ + if test "$cross_compiling" = yes; then + AC_MSG_CHECKING([for python interpreter for cross build]) + if test -z "$PYTHON_FOR_BUILD"; then + |