120 lines
4.9 KiB
Diff
120 lines
4.9 KiB
Diff
diff -Naurp Python-2.7.15/Modules/Setup.dist.orig Python-2.7.15/Modules/Setup.dist
|
|
--- Python-2.7.15/Modules/Setup.dist.orig 2018-04-30 00:47:33.000000000 +0200
|
|
+++ Python-2.7.15/Modules/Setup.dist 2018-11-17 20:40:20.153518694 +0100
|
|
@@ -464,7 +464,7 @@
|
|
# Andrew Kuchling's zlib module.
|
|
# This require zlib 1.1.3 (or later).
|
|
# See http://www.gzip.org/zlib/
|
|
-#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
|
|
+zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
|
|
|
|
# Interface to the Expat XML parser
|
|
#
|
|
diff -Naurp Python-2.7.15.orig/Makefile.pre.in Python-2.7.15/Makefile.pre.in
|
|
--- Python-2.7.15.orig/Makefile.pre.in 2018-04-30 00:47:33.000000000 +0200
|
|
+++ Python-2.7.15/Makefile.pre.in 2018-11-18 00:43:58.777379280 +0100
|
|
@@ -20,6 +20,7 @@
|
|
|
|
# === Variables set by makesetup ===
|
|
|
|
+MODNAMES= _MODNAMES_
|
|
MODOBJS= _MODOBJS_
|
|
MODLIBS= _MODLIBS_
|
|
|
|
diff -Naurp Python-2.7.15.orig/Modules/_ctypes/libffi/src/arm/sysv.S Python-2.7.15/Modules/_ctypes/libffi/src/arm/sysv.S
|
|
--- Python-2.7.15.orig/Modules/_ctypes/libffi/src/arm/sysv.S 2018-04-30 00:47:33.000000000 +0200
|
|
+++ Python-2.7.15/Modules/_ctypes/libffi/src/arm/sysv.S 2018-11-17 22:28:50.925456603 +0100
|
|
@@ -396,7 +396,7 @@ LSYM(Lbase_args):
|
|
beq LSYM(Lepilogue_vfp)
|
|
|
|
cmp r3, #FFI_TYPE_SINT64
|
|
- stmeqia r2, {r0, r1}
|
|
+ stmiaeq r2, {r0, r1}
|
|
beq LSYM(Lepilogue_vfp)
|
|
|
|
cmp r3, #FFI_TYPE_FLOAT
|
|
diff -Naurp Python-2.7.15.orig/Modules/makesetup Python-2.7.15/Modules/makesetup
|
|
--- Python-2.7.15.orig/Modules/makesetup 2018-04-30 00:47:33.000000000 +0200
|
|
+++ Python-2.7.15/Modules/makesetup 2018-11-18 00:43:10.289379743 +0100
|
|
@@ -110,6 +110,7 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' |
|
|
# Rules appended by makedepend
|
|
" >$rulesf
|
|
DEFS=
|
|
+ NAMES=
|
|
MODS=
|
|
SHAREDMODS=
|
|
OBJS=
|
|
@@ -181,7 +182,7 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' |
|
|
*.*) echo 1>&2 "bad word $arg in $line"
|
|
exit 1;;
|
|
-u) skip=libs; libs="$libs -u";;
|
|
- [a-zA-Z_]*) mods="$mods $arg";;
|
|
+ [a-zA-Z_]*) NAMES="$NAMES $arg"; mods="$mods $arg";;
|
|
*) echo 1>&2 "bad word $arg in $line"
|
|
exit 1;;
|
|
esac
|
|
@@ -284,6 +285,7 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' |
|
|
echo "1i\\" >$sedf
|
|
str="# Generated automatically from $makepre by makesetup."
|
|
echo "$str" >>$sedf
|
|
+ echo "s%_MODNAMES_%$NAMES%" >>$sedf
|
|
echo "s%_MODOBJS_%$OBJS%" >>$sedf
|
|
echo "s%_MODLIBS_%$LIBS%" >>$sedf
|
|
echo "/Definitions added by makesetup/a$NL$NL$DEFS" >>$sedf
|
|
diff -Naurp Python-2.7.15.orig/setup.py Python-2.7.15/setup.py
|
|
--- Python-2.7.15.orig/setup.py 2018-04-30 00:47:33.000000000 +0200
|
|
+++ Python-2.7.15/setup.py 2018-11-18 00:40:50.021381080 +0100
|
|
@@ -217,7 +217,11 @@ class PyBuildExt(build_ext):
|
|
# Python header files
|
|
headers = [sysconfig.get_config_h_filename()]
|
|
headers += glob(os.path.join(sysconfig.get_path('include'), "*.h"))
|
|
- for ext in self.extensions[:]:
|
|
+ # The sysconfig variable built by makesetup, listing the already
|
|
+ # built modules as configured by the Setup files.
|
|
+ modnames = sysconfig.get_config_var('MODNAMES').split()
|
|
+ removed_modules = []
|
|
+ for ext in self.extensions:
|
|
ext.sources = [ find_module_file(filename, moddirlist)
|
|
for filename in ext.sources ]
|
|
if ext.depends is not None:
|
|
@@ -231,10 +235,10 @@ class PyBuildExt(build_ext):
|
|
# platform specific include directories
|
|
ext.include_dirs.extend(incdirlist)
|
|
|
|
- # If a module has already been built statically,
|
|
- # don't build it here
|
|
- if ext.name in sys.builtin_module_names:
|
|
- self.extensions.remove(ext)
|
|
+ # If a module has already been built by the Makefile,
|
|
+ # don't build it here.
|
|
+ if ext.name in modnames:
|
|
+ removed_modules.append(ext)
|
|
|
|
# Parse Modules/Setup and Modules/Setup.local to figure out which
|
|
# modules are turned on in the file.
|
|
@@ -249,8 +253,9 @@ class PyBuildExt(build_ext):
|
|
input.close()
|
|
|
|
for ext in self.extensions[:]:
|
|
- if ext.name in remove_modules:
|
|
- self.extensions.remove(ext)
|
|
+ if removed_modules:
|
|
+ self.extensions = [x for x in self.extensions if x not in
|
|
+ removed_modules]
|
|
|
|
# When you run "make CC=altcc" or something similar, you really want
|
|
# those environment variables passed into the setup.py phase. Here's
|
|
@@ -290,6 +295,13 @@ class PyBuildExt(build_ext):
|
|
" detect_modules() for the module's name.")
|
|
print
|
|
|
|
+ if removed_modules:
|
|
+ print("The following modules found by detect_modules() in"
|
|
+ " setup.py, have been")
|
|
+ print("built by the Makefile instead, as configured by the"
|
|
+ " Setup files:")
|
|
+ print_three_column([ext.name for ext in removed_modules])
|
|
+
|
|
if self.failed:
|
|
failed = self.failed[:]
|
|
print
|