diff options
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-connectivity/samba')
8 files changed, 295 insertions, 91 deletions
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch new file mode 100644 index 000000000..de7f31183 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch @@ -0,0 +1,30 @@ +From 3a935c638605bfb392ca7780d22c08c1a0a71e71 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 5 Sep 2019 21:37:33 -0700 +Subject: [PATCH 1/2] lib/replace/wscript: Avoid generating nested main + function + +clang is not happy when it sees another main nested inside the main +function and fails the test for prctl syscall, therefore avoid adding +implicit main() here + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + lib/replace/wscript | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lib/replace/wscript b/lib/replace/wscript +index a7fd25d..d6767fc 100644 +--- a/lib/replace/wscript ++++ b/lib/replace/wscript +@@ -137,6 +137,7 @@ def configure(conf): + } + ''', + 'HAVE_PRCTL', ++ addmain=False, + headers='sys/prctl.h', + msg='Checking for prctl syscall') + +-- +2.23.0 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch new file mode 100644 index 000000000..fb12a10e2 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch @@ -0,0 +1,42 @@ +From fcb8ecd530b2d151e373974741601483326f7528 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 27 Jun 2019 11:09:47 +0800 +Subject: [PATCH] samba: fix musl lib without innetgr + +Upstream-Status: Pending + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + lib/util/access.c | 2 +- + source3/auth/user_util.c | 2 +- + 2 file changed, 2 insertion(+), 2 deletion(-) + +diff --git a/lib/util/access.c b/lib/util/access.c +index 7da0573..b94949e 100644 +--- a/lib/util/access.c ++++ b/lib/util/access.c +@@ -112,7 +112,7 @@ static bool string_match(const char *tok,const char *s) + return true; + } + } else if (tok[0] == '@') { /* netgroup: look it up */ +-#ifdef HAVE_NETGROUP ++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR) + DATA_BLOB tmp; + char *mydomain = NULL; + char *hostname = NULL; +diff --git a/source3/auth/user_util.c b/source3/auth/user_util.c +index a76b5d4..30f523d 100644 +--- a/source3/auth/user_util.c ++++ b/source3/auth/user_util.c +@@ -148,7 +148,7 @@ static void store_map_in_gencache(TALLOC_CTX *ctx, const char *from, const char + + bool user_in_netgroup(TALLOC_CTX *ctx, const char *user, const char *ngname) + { +-#ifdef HAVE_NETGROUP ++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR) + static char *my_yp_domain = NULL; + char *lowercase_user = NULL; + +-- +2.7.4 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch new file mode 100644 index 000000000..23b35a814 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch @@ -0,0 +1,62 @@ +From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Fri, 25 Jan 2019 15:00:59 +0800 +Subject: [PATCH] waf: add support of cross_compile + +After upgrade, waf also upgraded + +on 1.5.19, for cross_compile, subprocess.Popen is set to be +samba_cross.cross_Popen, which will not execute testprog on +host, but only read result from cross-answers.txt which is +passed by option --cross-answer + +part of old code: + args = Utils.to_list(kw.get('exec_args', [])) + proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE) + +but on new version, exec_args is not used and cause do_configure +failed with Exec format error + +fixed by append cross anser related args to cmd + +Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + third_party/waf/waflib/Tools/c_config.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py +index 7608215..767cf33 100644 +--- a/third_party/waf/waflib/Tools/c_config.py ++++ b/third_party/waf/waflib/Tools/c_config.py +@@ -660,20 +660,21 @@ class test_exec(Task.Task): + """ + color = 'PINK' + def run(self): ++ args = self.generator.bld.kw.get('exec_args', []) + if getattr(self.generator, 'rpath', None): + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) +- else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args) ++ else: ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args) + else: + env = self.env.env or {} + env.update(dict(os.environ)) + for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): + env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env) + + @feature('test_exec') + @after_method('apply_link') +-- +2.7.4 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch new file mode 100644 index 000000000..6fc849337 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch @@ -0,0 +1,58 @@ +From c62a6f32ab965de2ec77a614f20f04568116835b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 5 Sep 2019 21:39:05 -0700 +Subject: [PATCH 2/2] util_sec.c: Move __thread variable to global scope + +Make clang happy otherwise it complains about variable scope + +fixes + +source3/./lib/util_sec.c:470:4: error: '__thread' variables must have global storage + } __thread cache; + ^ + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + source3/lib/util_sec.c | 19 +++++++++++-------- + 1 file changed, 11 insertions(+), 8 deletions(-) + +diff --git a/source3/lib/util_sec.c b/source3/lib/util_sec.c +index 9408269..7390318 100644 +--- a/source3/lib/util_sec.c ++++ b/source3/lib/util_sec.c +@@ -444,6 +444,17 @@ void become_user_permanently(uid_t uid, gid_t gid) + assert_gid(gid, gid); + } + ++#ifdef HAVE___THREAD ++ struct cache_t { ++ bool active; ++ uid_t uid; ++ gid_t gid; ++ size_t setlen; ++ uintptr_t gidset; ++ }; ++ ++static __thread struct cache_t cache; ++#endif + /********************************************************** + Function to set thread specific credentials. Leave + saved-set uid/gid alone.Must be thread-safe code. +@@ -461,14 +472,6 @@ int set_thread_credentials(uid_t uid, + * available. + */ + #ifdef HAVE___THREAD +- static struct { +- bool active; +- uid_t uid; +- gid_t gid; +- size_t setlen; +- uintptr_t gidset; +- } __thread cache; +- + if (cache.active && + cache.uid == uid && + cache.gid == gid && +-- +2.23.0 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch index e112b3b40..3f2921ed3 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch @@ -1,21 +1,32 @@ -Some modules such as dynamic library maybe cann't be imported while cross compile, -we just check whether does the module exist. +From cc0576405803bcae45ee353c4333c449cead9207 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Tue, 25 Jun 2019 14:25:08 +0800 +Subject: [PATCH] do not import target module while cross compile + +Some modules such as dynamic library maybe cann't be imported +while cross compile, we just check whether does the module exist. Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> -Index: samba-4.4.2/buildtools/wafsamba/samba_bundled.py -=================================================================== ---- samba-4.4.2.orig/buildtools/wafsamba/samba_bundled.py -+++ samba-4.4.2/buildtools/wafsamba/samba_bundled.py -@@ -2,6 +2,7 @@ - - import sys - import Build, Options, Logs -+import imp, os - from Configure import conf - from samba_utils import TO_LIST +update to version 4.10.5, and switch to python3 +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++-------- + 1 file changed, 18 insertions(+), 8 deletions(-) + +diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py +index 60ce7da..5468a36 100644 +--- a/buildtools/wafsamba/samba_bundled.py ++++ b/buildtools/wafsamba/samba_bundled.py +@@ -4,6 +4,7 @@ import sys + from waflib import Build, Options, Logs + from waflib.Configure import conf + from wafsamba import samba_utils ++import importlib.util, os -@@ -230,17 +231,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, li + def PRIVATE_NAME(bld, name, private_extension, private_library): + '''possibly rename a library to include a bundled extension''' +@@ -249,17 +250,27 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'): # versions minversion = minimum_library_version(conf, libname, minversion) @@ -25,34 +36,32 @@ Index: samba-4.4.2/buildtools/wafsamba/samba_bundled.py - found = False - else: + # Find module in PYTHONPATH -+ stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]]) -+ if stuff: ++ spec = importlib.util._find_spec_from_path(modulename, [os.environ["PYTHONPATH"]]) ++ if spec: try: - version = m.__version__ - except AttributeError: -+ m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2]) ++ module = importlib.util.module_from_spec(spec) ++ spec.loader.load_module(module) + except ImportError: found = False + + if conf.env.CROSS_COMPILE: + # Some modules such as dynamic library maybe cann't be imported + # while cross compile, we just check whether the module exist -+ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1])) ++ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (spec.name)) + found = True else: - found = tuplize_version(version) >= tuplize_version(minversion) + try: -+ version = m.__version__ ++ version = module.__version__ + except AttributeError: + found = False + else: + found = tuplize_version(version) >= tuplize_version(minversion) -+ finally: -+ if stuff[0]: -+ stuff[0].close() -+ else: -+ found = False -+ if not found and not conf.LIB_MAY_BE_BUNDLED(libname): Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion)) sys.exit(1) +-- +2.7.4 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch index 6a7f8facc..46a6f0626 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch @@ -1,54 +1,40 @@ -From 9a2d6315ff206b2a47100dfd85afe3af56576995 Mon Sep 17 00:00:00 2001 -From: Wenzong Fan <wenzong.fan@windriver.com> -Date: Thu, 10 Dec 2015 04:20:51 -0500 +From 87bc8e7eafc7d12a1d3a143ebb9e43cf5fbafb72 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 20 Jun 2019 14:11:16 +0800 Subject: [PATCH] Add config option without-valgrind Upstream-Status: Pending Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> +Update patch to version 4.10.5 +Signed-off-by: Changqing Li <changqing.li@windriver.com> --- - lib/replace/wscript | 4 +++- - source3/wscript | 5 ++++- + lib/replace/wscript | 5 +++-- wscript | 4 ++++ - 3 files changed, 11 insertions(+), 2 deletions(-) + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index f0040b1..aca73af 100644 +index a7fd25d..a19ae68 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -101,7 +101,9 @@ def configure(conf): +@@ -110,8 +110,9 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') +- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') +- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') + if not Options.options.disable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') -+ ++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') ++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') -diff --git a/source3/wscript b/source3/wscript -index bac3dd5..a5c51ea 100644 ---- a/source3/wscript -+++ b/source3/wscript -@@ -1070,7 +1070,10 @@ syscall(SYS_setgroups32, 0, NULL); - Logs.warn("--with-dnsupdate=yes but gssapi support not sufficient") - else: - conf.DEFINE('WITH_DNS_UPDATES', 1) -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') -+ -+ if not Options.options.disable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') -+ - if Options.options.developer: - if conf.CONFIG_SET('HAVE_VALGRIND_H') or conf.CONFIG_SET('HAVE_VALGRIND_VALGRIND_H'): - conf.DEFINE('VALGRIND', '1') diff --git a/wscript b/wscript -index 542a60c..22e6116 100644 +index e38a8e9..38b7230 100644 --- a/wscript +++ b/wscript -@@ -86,6 +86,10 @@ def set_options(opt): +@@ -105,6 +105,10 @@ def options(opt): help=("Disable RELRO builds"), action="store_false", dest='enable_relro') @@ -58,7 +44,7 @@ index 542a60c..22e6116 100644 + gr = opt.option_group('developer options') - opt.tool_options('python') # options for disabling pyc or pyo compilation + opt.load('python') # options for disabling pyc or pyo compilation -- -1.9.1 +2.7.4 diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch index 894bc8bb2..d07ec0df1 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch @@ -1,15 +1,28 @@ -Index: samba-4.6.2/ctdb/tests/src/test_mutex_raw.c -=================================================================== ---- samba-4.6.2.orig/ctdb/tests/src/test_mutex_raw.c -+++ samba-4.6.2/ctdb/tests/src/test_mutex_raw.c -@@ -166,8 +166,10 @@ int main(int argc, const char **argv) - if (ret == 0) { - pthread_mutex_unlock(mutex); +From 062cf74b498c1d12fd76f9d9bca926ac806e0b99 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 20 Jun 2019 14:15:18 +0800 +Subject: [PATCH] glibc only fix + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + ctdb/tests/src/test_mutex_raw.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/ctdb/tests/src/test_mutex_raw.c b/ctdb/tests/src/test_mutex_raw.c +index 926a525..814343f 100644 +--- a/ctdb/tests/src/test_mutex_raw.c ++++ b/ctdb/tests/src/test_mutex_raw.c +@@ -291,8 +291,10 @@ int main(int argc, const char **argv) + "failed\n"); + exit (EXIT_FAILURE); } +#ifdef __GLIBC__ } else if (ret == EBUSY) { - printf("pid=%u\n", mutex->__data.__owner); + printf("INFO: pid=%u\n", mutex->__data.__owner); +#endif } else if (ret == 0) { pthread_mutex_unlock(mutex); } +-- +2.7.4 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.12.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.8.bb index 762a5bc61..d824eacf9 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.12.bb +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.8.bb @@ -23,26 +23,27 @@ SRC_URI = "${SAMBA_MIRROR}/stable/samba-${PV}.tar.gz \ file://dnsserver-4.7.0.patch \ file://smb_conf-4.7.0.patch \ file://volatiles.03_samba \ + file://0001-waf-add-support-of-cross_compile.patch \ + file://0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch \ + file://0002-util_sec.c-Move-__thread-variable-to-global-scope.patch \ " SRC_URI_append_libc-musl = " \ file://samba-pam.patch \ file://samba-4.3.9-remove-getpwent_r.patch \ file://cmocka-uintptr_t.patch \ + file://0001-samba-fix-musl-lib-without-innetgr.patch \ " -SRC_URI[md5sum] = "25de700c8f1148fd13973a49a51c059e" -SRC_URI[sha256sum] = "c162d519101e15d1a1d76df063bfefe8d1656f57fb74e1ef19fe05d341a65d8f" +SRC_URI[md5sum] = "f3c722bbcd903479008fa1b529f56365" +SRC_URI[sha256sum] = "c41f05fb567f7359998b451543501c7690a2bf6551d658a76bd6916316a410f4" -UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.8(\.\d+)+).tar.gz" +UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.10(\.\d+)+).tar.gz" inherit systemd waf-samba cpan-base perlnative update-rc.d # remove default added RDEPENDS on perl RDEPENDS_${PN}_remove = "perl" -DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libbsd libaio libpam" - -RCONFLICTS_${PN} = "libldb" -RCONFLICTS_${PN}-python = "pyldb" +DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libldb libbsd libaio libpam libtasn1 jansson" inherit distro_features_check REQUIRED_DISTRO_FEATURES = "pam" @@ -64,10 +65,14 @@ SYSTEMD_SERVICE_winbind = "winbind.service" # https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller SYSTEMD_AUTO_ENABLE_${PN}-ad-dc = "disable" +#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen +#to cross Popen +export WAF_NO_PREFORK="yes" + # Use krb5. Build active domain controller. # PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd zeroconf', d)} \ - acl ad-dc cups gnutls ldap mitkrb5 \ + acl cups ad-dc gnutls ldap mitkrb5 \ " RDEPENDS_${PN}-ctdb-tests += "bash util-linux-getopt" @@ -84,6 +89,8 @@ PACKAGECONFIG[valgrind] = ",--without-valgrind,valgrind," PACKAGECONFIG[lttng] = "--with-lttng, --without-lttng,lttng-ust" PACKAGECONFIG[archive] = "--with-libarchive, --without-libarchive, libarchive" PACKAGECONFIG[libunwind] = ", , libunwind" +PACKAGECONFIG[gpgme] = ",--without-gpgme,," +PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb," # Building the AD (Active Directory) DC (Domain Controller) requires GnuTLS, # And ad-dc doesn't work with mitkrb5 for versions prior to 4.7.0 according to: @@ -108,17 +115,7 @@ SAMBA4_MODULES="${SAMBA4_IDMAP_MODULES},${SAMBA4_PDB_MODULES},${SAMBA4_AUTH_MODU # .so files so there will not be a conflict. This is not done consistantly, so be very careful # when adding to this list. # -SAMBA4_LIBS="heimdal,cmocka,ldb,pyldb-util,NONE" - -# interim packages: As long as ldb/pyldb-util are in SAMBA4_LIBS we need to pack -# bundled libraries in seperate packages. Otherwise they are auto-packed in -# package 'samba' which RDEPENDS on lots of packages not wanted e.g autostarting -# nmbd/smbd daemons -# Once 'ldb,pyldb-util' are removed from SAMBA4_LIBS the bundled packages can -# be removed again. -PACKAGES =+ "${PN}-bundled-ldb ${PN}-bundled-pyldb-util" -FILES_${PN}-bundled-ldb = "${libdir}/samba/libldb${SOLIBS}" -FILES_${PN}-bundled-pyldb-util = "${libdir}/samba/libpyldb-util${SOLIBS}" +SAMBA4_LIBS="heimdal,cmocka,NONE" EXTRA_OECONF += "--enable-fhs \ --with-piddir=/run \ @@ -179,8 +176,6 @@ do_install_append() { install -d ${D}${sysconfdir}/default install -m644 packaging/systemd/samba.sysconfig ${D}${sysconfdir}/default/samba - # install ctdb config file and test cases - install -D -m 0644 ${S}/ctdb/tests/onnode/nodes ${D}${sysconfdir}/ctdb/nodes # the items are from ctdb/tests/run_tests.sh for d in onnode takeover tool eventscripts cunit simple complex; do testdir=${D}${datadir}/ctdb-tests/$d @@ -196,9 +191,17 @@ do_install_append() { chmod 0750 ${D}${sysconfdir}/sudoers.d rm -rf ${D}/run ${D}${localstatedir}/run ${D}${localstatedir}/log + + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba-gpupdate + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_upgradedns + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_spnupdate + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_kcc + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_dnsupdate + sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${bindir}/samba-tool + } -PACKAGES =+ "${PN}-python ${PN}-pidl \ +PACKAGES =+ "${PN}-python3 ${PN}-pidl \ ${PN}-dsdb-modules ${PN}-testsuite registry-tools \ winbind \ ${PN}-common ${PN}-base ${PN}-ad-dc ${PN}-ctdb-tests \ @@ -227,8 +230,8 @@ python samba_populate_packages() { PACKAGESPLITFUNCS_prepend = "samba_populate_packages " PACKAGES_DYNAMIC = "samba-auth-.* samba-pdb-.*" -RDEPENDS_${PN} += "${PN}-base ${PN}-python ${PN}-dsdb-modules" -RDEPENDS_${PN}-python += "pytalloc python-tdb" +RDEPENDS_${PN} += "${PN}-base ${PN}-python3 ${PN}-dsdb-modules python3" +RDEPENDS_${PN}-python3 += "pytalloc python3-tdb" FILES_${PN}-base = "${sbindir}/nmbd \ ${sbindir}/smbd \ @@ -261,6 +264,7 @@ FILES_${PN} += "${libdir}/vfs/*.so \ ${libdir}/charset/*.so \ ${libdir}/*.dat \ ${libdir}/auth/*.so \ + ${datadir}/ctdb/events/* \ " FILES_${PN}-dsdb-modules = "${libdir}/samba/ldb" @@ -286,7 +290,7 @@ FILES_winbind = "${sbindir}/winbindd \ ${sysconfdir}/init.d/winbind \ ${systemd_system_unitdir}/winbind.service" -FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}" +FILES_${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}" FILES_smbclient = "${bindir}/cifsdd \ ${bindir}/rpcclient \ @@ -307,7 +311,7 @@ RDEPENDS_${PN}-client = "\ winbind \ registry-tools \ ${PN}-pidl \ - " + " ALLOW_EMPTY_${PN}-client = "1" @@ -315,7 +319,7 @@ RDEPENDS_${PN}-server = "\ ${PN} \ winbind \ registry-tools \ - " + " ALLOW_EMPTY_${PN}-server = "1" |