aboutsummaryrefslogtreecommitdiff
path: root/lang/python34
diff options
context:
space:
mode:
authorKubilay Kocak <koobs@FreeBSD.org>2014-08-23 03:53:25 +0000
committerKubilay Kocak <koobs@FreeBSD.org>2014-08-23 03:53:25 +0000
commit3e8425cb1e6f88545b8e2bb7a81fd25ddd5765ab (patch)
treeaaa61847212a0c7a033d86042d028519ea4c9283 /lang/python34
parent19b94bad775bb9a1f632a9f3218b3deeba02b257 (diff)
Notes
Diffstat (limited to 'lang/python34')
-rw-r--r--lang/python34/files/patch-issue2116674
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
+