From 46a3588d3fca3a5dd702ce6e9b4a108b884a9cf8 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 14 Jan 2011 17:20:01 +1100 Subject: [PATCH] waf: use PYTHONARCHDIR for installing python shared libs Pair-Programmed-With: Andrew Bartlett Autobuild-User: Andrew Tridgell Autobuild-Date: Fri Jan 14 08:19:40 CET 2011 on sn-devel-104 --- buildtools/wafsamba/samba_python.py | 2 +- buildtools/wafsamba/wafsamba.py | 4 ++-- source4/dynconfig/dynconfig.c | 1 + source4/dynconfig/dynconfig.h | 1 + source4/dynconfig/wscript | 3 ++- source4/scripting/python/modules.c | 4 ++++ source4/wscript | 2 ++ 7 files changed, 13 insertions(+), 4 deletions(-) diff --git a/buildtools/wafsamba/samba_python.py b/buildtools/wafsamba/samba_python.py index a663b1910d0..e9afa939a3e 100644 --- a/buildtools/wafsamba/samba_python.py +++ b/buildtools/wafsamba/samba_python.py @@ -63,7 +63,7 @@ def SAMBA_PYTHON(bld, name, link_name=link_name, pyembed=True, target_type='PYTHON', - install_path='${PYTHONDIR}', + install_path='${PYTHONARCHDIR}', enabled=enabled) Build.BuildContext.SAMBA_PYTHON = SAMBA_PYTHON diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py index 571cd480c76..050777fe5d3 100644 --- a/buildtools/wafsamba/wafsamba.py +++ b/buildtools/wafsamba/wafsamba.py @@ -634,8 +634,8 @@ def install_file(bld, destdir, file, chmod=MODE_644, flat=False, if python_fixup: # fixup the python path it will use to find Samba modules inst_file = file + '.inst' - if bld.env["PYTHONDIR"] not in sys.path: - regex = "s|\(sys.path.insert.*\)bin/python\(.*\)$|\\1${PYTHONDIR}\\2|g" + if bld.env["PYTHONARCHDIR"] not in sys.path: + regex = "s|\(sys.path.insert.*\)bin/python\(.*\)$|\\1${PYTHONARCHDIR}\\2|g" else: # Eliminate updating sys.path if the target python dir is already # in python path. diff --git a/source4/dynconfig/dynconfig.c b/source4/dynconfig/dynconfig.c index 0c23452cc33..9fbfed05434 100644 --- a/source4/dynconfig/dynconfig.c +++ b/source4/dynconfig/dynconfig.c @@ -92,4 +92,5 @@ DEFINE_DYN_CONFIG_PARAM(WINBINDD_SOCKET_DIR) DEFINE_DYN_CONFIG_PARAM(WINBINDD_PRIVILEGED_SOCKET_DIR) DEFINE_DYN_CONFIG_PARAM(NTP_SIGND_SOCKET_DIR) DEFINE_DYN_CONFIG_PARAM(PYTHONDIR) +DEFINE_DYN_CONFIG_PARAM(PYTHONARCHDIR) DEFINE_DYN_CONFIG_PARAM(SCRIPTSBINDIR) diff --git a/source4/dynconfig/dynconfig.h b/source4/dynconfig/dynconfig.h index c7590813a4e..579f45b3f16 100644 --- a/source4/dynconfig/dynconfig.h +++ b/source4/dynconfig/dynconfig.h @@ -56,4 +56,5 @@ DEFINE_DYN_CONFIG_PROTO(WINBINDD_SOCKET_DIR) DEFINE_DYN_CONFIG_PROTO(WINBINDD_PRIVILEGED_SOCKET_DIR) DEFINE_DYN_CONFIG_PROTO(NTP_SIGND_SOCKET_DIR) DEFINE_DYN_CONFIG_PROTO(PYTHONDIR) +DEFINE_DYN_CONFIG_PROTO(PYTHONARCHDIR) DEFINE_DYN_CONFIG_PROTO(SCRIPTSBINDIR) diff --git a/source4/dynconfig/wscript b/source4/dynconfig/wscript index 375d4a14ea2..00580471826 100644 --- a/source4/dynconfig/wscript +++ b/source4/dynconfig/wscript @@ -32,6 +32,7 @@ dyn_cflags = { 'NTP_SIGND_SOCKET_DIR' : '${NTP_SIGND_SOCKET_DIR}', 'NCALRPCDIR' : '${LOCALSTATEDIR}/ncalrpc', 'PYTHONDIR' : '${PYTHONDIR}', + 'PYTHONARCHDIR' : '${PYTHONARCHDIR}', 'MODULESDIR' : '${PREFIX}/modules', 'INCLUDEDIR' : '${PREFIX}/include', 'PKGCONFIGDIR' : '${LIBDIR}/pkgconfig', @@ -62,7 +63,7 @@ dyn_cflags_fhs = { 'WINBINDD_PRIVILEGED_SOCKET_DIR' : '${LOCALSTATEDIR}/run/samba/winbindd_privileged', 'NTP_SIGND_SOCKET_DIR' : '${LOCALSTATEDIR}/run/samba/ntp_signd', 'NCALRPCDIR' : '${LOCALSTATEDIR}/ncalrpc', - 'PYTHONDIR' : '${PYTHONDIR}', + 'PYTHONARCHDIR' : '${PYTHONARCHDIR}', 'MODULESDIR' : '${LIBDIR}/samba', 'LIBEXECDIR' : '${MODULESDIR}', 'INCLUDEDIR' : '${INCLUDEDIR}/samba-4.0', diff --git a/source4/scripting/python/modules.c b/source4/scripting/python/modules.c index 18253758b8c..960239e8636 100644 --- a/source4/scripting/python/modules.c +++ b/source4/scripting/python/modules.c @@ -50,6 +50,10 @@ bool py_update_path(const char *bindir) return false; } + if (!PySys_PathPrepend(py_path, dyn_PYTHONARCHDIR)) { + return false; + } + if (!PySys_PathPrepend(py_path, dyn_PYTHONDIR)) { return false; } diff --git a/source4/wscript b/source4/wscript index 8c1bc71f9e1..3fdeb3c14e4 100644 --- a/source4/wscript +++ b/source4/wscript @@ -122,6 +122,8 @@ def configure(conf): # we don't want PYTHONDIR in config.h, as otherwise changing # --prefix causes a complete rebuild del(conf.env.defines['PYTHONDIR']) + del(conf.env.defines['PYTHONARCHDIR']) + conf.SAMBA_CONFIG_H('include/config.h') -- 2.34.1