From: Andrew Tridgell Date: Thu, 1 Apr 2010 13:13:26 +0000 (+1100) Subject: s4-waf: updates for the new python installer from jelmer X-Git-Url: http://git.samba.org/idra/samba.git/?p=idra%2Fsamba.git;a=commitdiff_plain;h=4fa9c3187df4c8bfb40d57d2fb3c107b9b20bf47 s4-waf: updates for the new python installer from jelmer --- diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py index 4658c59aeb6..dc91336c903 100644 --- a/buildtools/wafsamba/wafsamba.py +++ b/buildtools/wafsamba/wafsamba.py @@ -534,7 +534,7 @@ Build.BuildContext.SAMBA_SCRIPT = SAMBA_SCRIPT def install_file(bld, destdir, file, chmod=0644, flat=False, - python_fixup=False, destname=None): + python_fixup=False, destname=None, base_name=None): '''install a file''' destdir = bld.EXPAND_VARIABLES(destdir) if not destname: @@ -550,27 +550,37 @@ def install_file(bld, destdir, file, chmod=0644, flat=False, source=file, target=inst_file) file = inst_file + if base_name: + file = os.path.join(base_name, file) bld.install_as(dest, file, chmod=chmod) def INSTALL_FILES(bld, destdir, files, chmod=0644, flat=False, - python_fixup=False, destname=None): + python_fixup=False, destname=None, base_name=None): '''install a set of files''' for f in TO_LIST(files): install_file(bld, destdir, f, chmod=chmod, flat=flat, - python_fixup=python_fixup, destname=destname) + python_fixup=python_fixup, destname=destname, + base_name=base_name) Build.BuildContext.INSTALL_FILES = INSTALL_FILES def INSTALL_WILDCARD(bld, destdir, pattern, chmod=0644, flat=False, - python_fixup=False, exclude=None): + python_fixup=False, exclude=None, trim_path=None): '''install a set of files matching a wildcard pattern''' files=TO_LIST(bld.path.ant_glob(pattern)) + if trim_path: + files2 = [] + for f in files: + files2.append(os_path_relpath(f, trim_path)) + files = files2 + if exclude: for f in files[:]: if fnmatch.fnmatch(f, exclude): files.remove(f) - INSTALL_FILES(bld, destdir, files, chmod=chmod, flat=flat, python_fixup=python_fixup) + INSTALL_FILES(bld, destdir, files, chmod=chmod, flat=flat, + python_fixup=python_fixup, base_name=trim_path) Build.BuildContext.INSTALL_WILDCARD = INSTALL_WILDCARD diff --git a/source4/scripting/python/samba_external/wscript_build b/source4/scripting/python/samba_external/wscript_build deleted file mode 100644 index 45e00d062af..00000000000 --- a/source4/scripting/python/samba_external/wscript_build +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env python - -# work out what external modules need to be installed -external_list = [] -try: - import dns.resolver -except: - external_list.append("dnspython") - -for e in external_list: - bld.INSTALL_WILDCARD('${PYTHONDIR}/samba_external', e + '/**/*', flat=False, exclude='*.pyc') diff --git a/source4/scripting/python/wscript_build b/source4/scripting/python/wscript_build index 0d0fabd54e7..2a09869a210 100644 --- a/source4/scripting/python/wscript_build +++ b/source4/scripting/python/wscript_build @@ -39,6 +39,4 @@ bld.SAMBA_SCRIPT('samba_python', pattern='samba/**/*.py', installdir='python') -bld.BUILD_SUBDIR('samba_external') - bld.INSTALL_WILDCARD('${PYTHONDIR}', 'samba/**/*.py', flat=False) diff --git a/source4/wscript_build b/source4/wscript_build index a8b0375d2fd..f3b20eab36e 100644 --- a/source4/wscript_build +++ b/source4/wscript_build @@ -116,3 +116,4 @@ bld.BUILD_SUBDIR('../codepages') bld.BUILD_SUBDIR('setup') bld.BUILD_SUBDIR('scripting') bld.BUILD_SUBDIR('../pidl') +bld.BUILD_SUBDIR('../lib')