89 lines
3.7 KiB
Diff
89 lines
3.7 KiB
Diff
--- Makefile.pre.in
|
|
+++ Makefile.pre.in
|
|
@@ -1000,12 +1002,12 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
|
|
$(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
|
|
$(DESTDIR)$(LIBDEST)/distutils/tests ; \
|
|
fi
|
|
- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
$(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
-d $(LIBDEST) -f \
|
|
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
|
|
$(DESTDIR)$(LIBDEST)
|
|
- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
$(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
-d $(LIBDEST) -f \
|
|
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
|
|
@@ -1133,11 +1135,13 @@ libainstall: all python-config
|
|
# Install the dynamically loadable modules
|
|
# This goes into $(exec_prefix)
|
|
sharedinstall: sharedmods
|
|
+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
|
+ --skip-build \
|
|
--prefix=$(prefix) \
|
|
- --install-scripts=$(BINDIR) \
|
|
- --install-platlib=$(DESTSHARED) \
|
|
- --root=$(DESTDIR)/
|
|
+ --install-scripts=$(DESTDIR)$(BINDIR) \
|
|
+ --install-platlib=$(DESTDIR)$(DESTSHARED) \
|
|
+ --root=/
|
|
-rm $(DESTDIR)$(DESTSHARED)/_sysconfigdata.py*
|
|
|
|
# Here are a couple of targets for MacOSX again, to install a full
|
|
--- setup.py.orig 2013-11-10 08:36:41.000000000 +0100
|
|
+++ setup.py 2013-11-18 21:27:27.222000786 +0100
|
|
@@ -17,7 +17,7 @@ from distutils.command.install import in
|
|
from distutils.command.install_lib import install_lib
|
|
from distutils.spawn import find_executable
|
|
|
|
-cross_compiling = "_PYTHON_HOST_PLATFORM" in os.environ
|
|
+cross_compiling = ("_PYTHON_HOST_PLATFORM" in os.environ) or ('PYTHONXCPREFIX' in os.environ)
|
|
|
|
def get_platform():
|
|
# cross build
|
|
@@ -324,6 +324,9 @@ class PyBuildExt(build_ext):
|
|
|
|
# Don't try to load extensions for cross builds
|
|
if cross_compiling:
|
|
+ self.announce(
|
|
+ 'WARNING: skipping import check for cross-compiled: "%s"' %
|
|
+ ext.name)
|
|
return
|
|
|
|
try:
|
|
@@ -478,7 +481,7 @@ class PyBuildExt(build_ext):
|
|
for directory in reversed(options.dirs):
|
|
add_dir_to_list(dir_list, directory)
|
|
|
|
- if os.path.normpath(sys.prefix) != '/usr' \
|
|
+ if os.path.normpath(sys.prefix) != '/usr' and not cross_compiling \
|
|
and not sysconfig.get_config_var('PYTHONFRAMEWORK'):
|
|
# OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework
|
|
# (PYTHONFRAMEWORK is set) to avoid # linking problems when
|
|
@@ -554,6 +557,11 @@ class PyBuildExt(build_ext):
|
|
if host_platform in ['darwin', 'beos']:
|
|
math_libs = []
|
|
|
|
+ # Insert libraries and headers from XBPS_CROSS_BASE
|
|
+ if 'XBPS_CROSS_BASE' in os.environ:
|
|
+ lib_dirs += [os.environ['XBPS_CROSS_BASE'] + '/usr/lib']
|
|
+ inc_dirs += [os.environ['XBPS_CROSS_BASE'] + '/usr/include']
|
|
+
|
|
# XXX Omitted modules: gl, pure, dl, SGI-specific modules
|
|
|
|
#
|
|
@@ -2020,6 +2028,11 @@ class PyBuildExt(build_ext):
|
|
|
|
# Pass empty CFLAGS because we'll just append the resulting
|
|
# CFLAGS to Python's; -g or -O2 is to be avoided.
|
|
+ if cross_compiling:
|
|
+ cmd = "cd %s && env CFLAGS='' '%s/configure' --host=%s --build=%s %s" \
|
|
+ % (ffi_builddir, ffi_srcdir, os.environ.get('HOSTARCH'),
|
|
+ os.environ.get('BUILDARCH'), " ".join(config_args))
|
|
+ else:
|
|
cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \
|
|
% (ffi_builddir, ffi_srcdir, " ".join(config_args))
|
|
|