aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/python/files/3.3/05_all_regenerate_platform-specific_modules.patch')
-rw-r--r--dev-lang/python/files/3.3/05_all_regenerate_platform-specific_modules.patch123
1 files changed, 123 insertions, 0 deletions
diff --git a/dev-lang/python/files/3.3/05_all_regenerate_platform-specific_modules.patch b/dev-lang/python/files/3.3/05_all_regenerate_platform-specific_modules.patch
new file mode 100644
index 0000000..68f33f7
--- /dev/null
+++ b/dev-lang/python/files/3.3/05_all_regenerate_platform-specific_modules.patch
@@ -0,0 +1,123 @@
+http://bugs.python.org/issue12619
+
+--- Lib/plat-aix4/regen
++++ Lib/plat-aix4/regen
+@@ -5,4 +5,4 @@
+ exit 1;;
+ esac
+ set -v
+-h2py.py -i '(u_long)' /usr/include/netinet/in.h
++python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h
+--- Lib/plat-linux/regen
++++ Lib/plat-linux/regen
+@@ -5,4 +5,4 @@
+ exit 1;;
+ esac
+ set -v
+-h2py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/dlfcn.h
++python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/dlfcn.h /usr/include/linux/cdrom.h
+--- Lib/plat-sunos5/regen
++++ Lib/plat-sunos5/regen
+@@ -5,5 +5,4 @@
+ exit 1;;
+ esac
+ set -v
+-h2py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/sys/stropts.h /usr/include/dlfcn.h
+-
++python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/sys/stropts.h /usr/include/dlfcn.h
+--- Lib/plat-unixware7/regen
++++ Lib/plat-unixware7/regen
+@@ -5,5 +5,5 @@
+ exit 1;;
+ esac
+ set -v
+-h2py -i '(u_long)' /usr/include/netinet/in.h
+-h2py /usr/include/sys/stropts.h
++python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h
++python$EXE ../../Tools/scripts/h2py.py /usr/include/sys/stropts.h
+--- Makefile.pre.in
++++ Makefile.pre.in
+@@ -444,7 +444,7 @@
+
+ # Default target
+ all: build_all
+-build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed
++build_all: $(BUILDPYTHON) oldsharedmods sharedmods platformspecificmods gdbhooks Modules/_testembed
+
+ # Compile a binary with gcc profile guided optimization.
+ profile-opt:
+@@ -500,6 +500,32 @@
+ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
+
++# Build the platform-specific modules
++platformspecificmods: $(BUILDPYTHON) sharedmods
++ @PLATDIR=$(PLATDIR); \
++ if test ! -f $(srcdir)/Lib/$(PLATDIR)/regen; then \
++ $(INSTALL) -d $(srcdir)/Lib/$(PLATDIR); \
++ if test -f $(srcdir)/Lib/$${PLATDIR%?}/regen; then \
++ cp $(srcdir)/Lib/$${PLATDIR%?}/regen $(srcdir)/Lib/$(PLATDIR)/regen; \
++ else \
++ cp $(srcdir)/Lib/plat-generic/regen $(srcdir)/Lib/$(PLATDIR)/regen; \
++ fi \
++ fi
++ @EXE="$(BUILDEXE)"; export EXE; \
++ PATH="`pwd`:$$PATH"; export PATH; \
++ PYTHONPATH="`pwd`/Lib"; export PYTHONPATH; \
++ if [ -n "$(MULTIARCH)" ]; then MULTIARCH=$(MULTIARCH); export MULTIARCH; fi; \
++ if [ "$(BUILD_GNU_TYPE)" = "$(HOST_GNU_TYPE)" ]; then \
++ PYTHON_FOR_BUILD="$(BUILDPYTHON)"; \
++ else \
++ PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)"; \
++ fi; export PYTHON_FOR_BUILD; \
++ cd $(srcdir)/Lib/$(PLATDIR); \
++ $(RUNSHARED) ./regen || exit 1; \
++ for module in *.py; do \
++ $(RUNSHARED) $(BUILDPYTHON) -c "with open('$$module', 'rb') as module: compile(module.read(), '$$module', 'exec')" || exit 1; \
++ done
++
+ # Build static library
+ # avoid long command lines, same as LIBRARY_OBJS
+ $(LIBRARY): $(LIBRARY_OBJS)
+@@ -1074,7 +1100,7 @@
+ unittest unittest/test unittest/test/testmock \
+ venv venv/scripts venv/scripts/posix \
+ curses pydoc_data $(MACHDEPS)
+-libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
++libinstall: build_all $(srcdir)/Modules/xxmodule.c
+ @for i in $(SCRIPTDIR) $(LIBDEST); \
+ do \
+ if test ! -d $(DESTDIR)$$i; then \
+@@ -1157,23 +1183,6 @@
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt
+
+-# Create the PLATDIR source directory, if one wasn't distributed..
+-$(srcdir)/Lib/$(PLATDIR):
+- mkdir $(srcdir)/Lib/$(PLATDIR)
+- cp $(srcdir)/Lib/plat-generic/regen $(srcdir)/Lib/$(PLATDIR)/regen
+- export PATH; PATH="`pwd`:$$PATH"; \
+- export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \
+- export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \
+- export EXE; EXE="$(BUILDEXE)"; \
+- if [ -n "$(MULTIARCH)" ]; then export MULTIARCH; MULTIARCH=$(MULTIARCH); fi; \
+- export PYTHON_FOR_BUILD; \
+- if [ "$(BUILD_GNU_TYPE)" = "$(HOST_GNU_TYPE)" ]; then \
+- PYTHON_FOR_BUILD="$(BUILDPYTHON)"; \
+- else \
+- PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)"; \
+- fi; \
+- 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
+@@ -1476,7 +1485,7 @@
+ Python/thread.o: @THREADHEADERS@
+
+ # Declare targets that aren't real files
+-.PHONY: all build_all sharedmods oldsharedmods test quicktest
++.PHONY: all build_all sharedmods oldsharedmods platformspecificmods test quicktest
+ .PHONY: install altinstall oldsharedinstall bininstall altbininstall
+ .PHONY: maninstall libinstall inclinstall libainstall sharedinstall
+ .PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure