buildrootschalter/package/samba4/samba4-0004-build-allow-some-python-variable-overrides.patch
Gustavo Zacarias dee1cf0cdf samba4: new package
Samba 4.1.x uses the waf build system which isn't very cross-compile
friendly, and also some tests are formulated in a way that isn't
cross-build friendly either by needing to run them.

For this reason the samba4 build system includes a way to define
answers for many of the tests, but this support isn't complete
and some tests still want to be executed.

Samba 4.1.x also requires a proper answers file for each architecture,
and at the moment i've only tested for ARM and PowerPC so only those
architectures are supported to begin with. To add support for another
architecture basically copy one of the cache files to the proper name,
enable it in Config.in and adjust endianess and all of the "size of"
answers. I'm in the process of automating the sizeof and endianess
answers within the samba build system to make them cross friendly
to simplify the answers file to just one generic linux variant.
The 3.6.x branch is still security supported for the forseeable future.

I'm currently working with samba upstream to solve many of these
issues but this will probably happen with the yet unreleased
4.2 branch only.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-02 15:20:47 +01:00

48 lines
2.0 KiB
Diff

From fdbdf04a9ab3f3a204e95106c4f8f6729d0bab1a Mon Sep 17 00:00:00 2001
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
Date: Tue, 4 Feb 2014 14:11:52 -0300
Subject: [PATCH] build: allow some python variable overrides
The python variables (settings) are fetched from a running python
interpreter which usually isn't the target one when cross compiling,
hence libraries and flags aren't the same and can pollute the target
build.
Allow some of these variables to be redefined via environment variables
in order to aid cross-compiling.
According to testing python_LDFLAGS and python_LIBDIR should be enough.
Status: upstream for next branch.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
buildtools/wafadmin/Tools/python.py | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/buildtools/wafadmin/Tools/python.py b/buildtools/wafadmin/Tools/python.py
index ab1e817..35c61c2 100644
--- a/buildtools/wafadmin/Tools/python.py
+++ b/buildtools/wafadmin/Tools/python.py
@@ -193,6 +193,19 @@ MACOSX_DEPLOYMENT_TARGET = %r
""" % (python, python_prefix, python_SO, python_SYSLIBS, python_LDFLAGS, python_SHLIBS,
python_LIBDIR, python_LIBPL, INCLUDEPY, Py_ENABLE_SHARED, python_MACOSX_DEPLOYMENT_TARGET))
+ # Allow some python overrides from env vars for cross-compiling
+ os_env = dict(os.environ)
+
+ override_python_LDFLAGS = os_env.get('python_LDFLAGS', None)
+ if override_python_LDFLAGS is not None:
+ conf.log.write("python_LDFLAGS override from environment = %r\n" % (override_python_LDFLAGS))
+ python_LDFLAGS = override_python_LDFLAGS
+
+ override_python_LIBDIR = os_env.get('python_LIBDIR', None)
+ if override_python_LIBDIR is not None:
+ conf.log.write("python_LIBDIR override from environment = %r\n" % (override_python_LIBDIR))
+ python_LIBDIR = override_python_LIBDIR
+
if python_MACOSX_DEPLOYMENT_TARGET:
conf.env['MACOSX_DEPLOYMENT_TARGET'] = python_MACOSX_DEPLOYMENT_TARGET
conf.environ['MACOSX_DEPLOYMENT_TARGET'] = python_MACOSX_DEPLOYMENT_TARGET
--
1.8.3.2