Date: Wed, 22 Oct 2025 14:31:17 GMT From: Mateusz Piotrowski <0mp@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: d195b82a96a1 - main - net/samba422: Do not keep ldb private Message-ID: <202510221431.59MEVHgs081445@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by 0mp: URL: https://cgit.FreeBSD.org/ports/commit/?id=d195b82a96a17d2911e0d3121c6adb4432178f63 commit d195b82a96a17d2911e0d3121c6adb4432178f63 Author: Mateusz Piotrowski <0mp@FreeBSD.org> AuthorDate: 2025-10-22 14:21:12 +0000 Commit: Mateusz Piotrowski <0mp@FreeBSD.org> CommitDate: 2025-10-22 14:24:59 +0000 net/samba422: Do not keep ldb private Since version 4.22, Samba requires ldb to be bundled. This is problematic for packaging because ldb is also used by ports such as security/sssd2. In the past, we used a standalone ldb port to address that. Luckily, it turns out that Samba can turn its private libraries into public ones via its configure script. This commit makes Samba's ldb public. PR: 289272 Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52377 --- net/samba422/Makefile | 35 +++++++------------- net/samba422/pkg-plist | 87 ++++++++++++++++++++++---------------------------- 2 files changed, 51 insertions(+), 71 deletions(-) diff --git a/net/samba422/Makefile b/net/samba422/Makefile index 5451fc1ac479..e949a7b6c746 100644 --- a/net/samba422/Makefile +++ b/net/samba422/Makefile @@ -192,7 +192,6 @@ SAMBA4_BUNDLED_CMOCKA?= no SAMBA4_BUNDLED_TALLOC?= no SAMBA4_BUNDLED_TEVENT?= no SAMBA4_BUNDLED_TDB?= no -SAMBA4_BUNDLED_LDB?= yes # cmocka .if defined(SAMBA4_BUNDLED_CMOCKA) && ${SAMBA4_BUNDLED_CMOCKA} == yes SAMBA4_BUNDLED_LIBS+= cmocka @@ -244,31 +243,21 @@ RUN_DEPENDS+= tdb1413>=1.4.13:databases/tdb1413 PLIST_SUB+= SAMBA4_BUNDLED_TDB="@comment " SUB_LIST+= SAMBA4_BUNDLED_TDB="@comment " .endif -# ldb -.if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes -SAMBA4_BUNDLED_LDB= yes -SAMBA4_BUNDLED_LIBS+= ldb -CONFLICTS_INSTALL+= ldb-* ldb2-* -PLIST_SUB+= SAMBA4_BUNDLED_LDB="" -SUB_LIST+= SAMBA4_BUNDLED_LDB="" -SAMBA4_MODULEDIR= ${SAMBA4_LIBDIR}/modules -.else -SAMBA4_BUNDLED_LIBS+= !ldb -BUILD_DEPENDS+= ldb29>=2.9.1:databases/ldb29 -RUN_DEPENDS+= ldb29>=2.9.1:databases/ldb29 -PLIST_SUB+= SAMBA4_BUNDLED_LDB="@comment " -SUB_LIST+= SAMBA4_BUNDLED_LDB="@comment " -SAMBA4_MODULEDIR= ${PREFIX}/lib/shared-modules -.endif .if (defined(SAMBA4_BUNDLED_TALLOC) && ${SAMBA4_BUNDLED_TALLOC} == yes) \ || (defined(SAMBA4_BUNDLED_TDB) && ${SAMBA4_BUNDLED_TDB} == yes) \ - || (defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes) \ || (defined(SAMBA4_BUNDLED_TEVENT) && ${SAMBA4_BUNDLED_TEVENT} == yes) SAMBA4_BUNDLED_LIBS+= replace .endif # Don't use external libcom_err SAMBA4_BUNDLED_LIBS+= com_err + +### Public libraries +# ldb +SAMBA4_PRIVATE_LIBS+= !ldb +CONFLICTS_INSTALL+= ldb-* ldb2[0-9]-* +SAMBA4_MODULEDIR= ${SAMBA4_LIBDIR}/modules + # Set the test environment variables TEST_USES= python TEST_ENV= PYTHON="${PYTHON_CMD}" \ @@ -472,17 +461,17 @@ SAMBA4_BUNDLED_LIBS+= pytdb SAMBA4_BUNDLED_LIBS+= !pytdb . endif -. if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes SAMBA4_BUNDLED_LIBS+= pyldb pyldb-util -. else -SAMBA4_BUNDLED_LIBS+= !pyldb !pyldb-util -. endif .endif .if defined(WANT_EXP_MODULES) && !empty(WANT_EXP_MODULES) SAMBA4_MODULES+= ${WANT_EXP_MODULES} .endif +.if defined(SAMBA4_PRIVATE_LIBS) && !empty(SAMBA4_PRIVATE_LIBS) +CONFIGURE_ARGS+= --private-libraries="${SAMBA4_PRIVATE_LIBS:Q:C|(\\\\ )+|,|g:S|\\||g}" +.endif + .if defined(SAMBA4_BUNDLED_LIBS) && !empty(SAMBA4_BUNDLED_LIBS) CONFIGURE_ARGS+= --bundled-libraries="${SAMBA4_BUNDLED_LIBS:Q:C|(\\\\ )+|,|g:S|\\||g}" .endif @@ -512,7 +501,7 @@ DEBUG_FLAGS?= -g -ggdb3 -O0 ############################################################################## # Only for 64-bit architectures .if ${ARCH} != armv6 && ${ARCH} != armv7 && ${ARCH} != i386 && ${ARCH} != mips && ${ARCH} != powerpc && ${ARCH} != powerpcspe -. if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes && (${PORT_OPTIONS:MAD_DC} || ${PORT_OPTIONS:MDEVELOPER}) +. if (${PORT_OPTIONS:MAD_DC} || ${PORT_OPTIONS:MDEVELOPER}) # LMDB SAMBA4_LMDB_DEPENDS= lmdb>=0.9.16:databases/lmdb PLIST_FILES+= ${SAMBA4_LIBDIR}/private/libldb-mdb-int-private-samba.so \ diff --git a/net/samba422/pkg-plist b/net/samba422/pkg-plist index 72885f7e8fea..3739bca65d48 100644 --- a/net/samba422/pkg-plist +++ b/net/samba422/pkg-plist @@ -221,11 +221,8 @@ libexec/samba/samba-dcerpcd %%SAMBA4_LIBDIR%%/private/libdbwrap-private-samba.so %%SAMBA4_LIBDIR%%/private/libutil-crypt-private-samba.so %%SAMBA4_LIBDIR%%/private/libdcerpc-pkt-auth-private-samba.so -%%SAMBA4_LIBDIR%%/private/libdcerpc-private-samba.so %%SAMBA4_LIBDIR%%/private/libdcerpc-samba-private-samba.so %%SAMBA4_LIBDIR%%/private/libdcerpc-samba4-private-samba.so -%%SAMBA4_LIBDIR%%/private/libdcerpc-samr-private-samba.so -%%SAMBA4_LIBDIR%%/private/libdcerpc-server-private-samba.so %%SAMBA4_LIBDIR%%/private/libdnsserver-common-private-samba.so %%SAMBA4_LIBDIR%%/private/libdsdb-module-private-samba.so %%SAMBA4_LIBDIR%%/private/libevents-private-samba.so @@ -276,19 +273,7 @@ libexec/samba/samba-dcerpcd %%GSSAPI_BUILTIN%%%%SAMBA4_LIBDIR%%/private/libroken-private-samba.so %%SAMBA4_LIBDIR%%/private/libRPC-SERVER-LOOP-private-samba.so %%SAMBA4_LIBDIR%%/private/libRPC-WORKER-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-credentials-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-cluster-support-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-debug-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-hostconfig-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-modules-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-net-join%%PYTHON_TAG%%-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-net-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-policy-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-security-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba-sockets-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamba3-util-private-samba.so %%SAMBA4_LIBDIR%%/private/libsamdb-common-private-samba.so -%%SAMBA4_LIBDIR%%/private/libsamdb-private-samba.so %%SAMBA4_LIBDIR%%/private/libsecrets3-private-samba.so %%SAMBA4_LIBDIR%%/private/libserver-id-db-private-samba.so %%SAMBA4_LIBDIR%%/private/libserver-role-private-samba.so @@ -303,7 +288,6 @@ libexec/samba/samba-dcerpcd %%SAMBA4_LIBDIR%%/private/libsys-rw-private-samba.so %%SAMBA4_LIBDIR%%/private/libtalloc-report-printf-private-samba.so %%SAMBA4_LIBDIR%%/private/libtalloc-report-private-samba.so -%%SAMBA4_LIBDIR%%/private/libtevent-util-private-samba.so %%SAMBA4_LIBDIR%%/private/libtdb-wrap-private-samba.so %%SAMBA4_LIBDIR%%/private/libtime-basic-private-samba.so %%SAMBA4_LIBDIR%%/private/libtorture-private-samba.so @@ -312,6 +296,14 @@ libexec/samba/samba-dcerpcd %%SAMBA4_LIBDIR%%/private/libutil-tdb-private-samba.so %%GSSAPI_BUILTIN%%%%SAMBA4_LIBDIR%%/private/libwind-private-samba.so %%SAMBA4_LIBDIR%%/private/libxattr-tdb-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-cluster-support-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-debug-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-modules-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-net-join%%PYTHON_TAG%%-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-net-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-security-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba-sockets-private-samba.so +%%SAMBA4_LIBDIR%%/private/libsamba3-util-private-samba.so @dir %%SAMBA4_LIBDIR%%/private @dir %%SAMBA4_LIBDIR%% %%PKGCONFIGDIR%%/ndr.pc @@ -443,38 +435,37 @@ libexec/samba/samba-dcerpcd @dir %%SAMBA4_BINDDNSDIR%% @comment Use bundled libraries %%SAMBA4_BUNDLED_CMOCKA%%%%SAMBA4_LIBDIR%%/private/libcmocka-private-samba.so -%%SAMBA4_BUNDLED_LDB%%%%PYTHON3%%%%PYTHON_SITELIBDIR%%/_ldb_text.py -%%SAMBA4_BUNDLED_LDB%%%%PYTHON3%%%%PYTHON_SITELIBDIR%%/ldb%%PYTHON_TAG%%.so -%%SAMBA4_BUNDLED_LDB%%%%PYTHON3%%%%SAMBA4_LIBDIR%%/private/libpyldb-util%%PYTHON_TAG%%-private-samba.so -%%SAMBA4_BUNDLED_LDB%%bin/ldbadd -%%SAMBA4_BUNDLED_LDB%%bin/ldbdel -%%SAMBA4_BUNDLED_LDB%%bin/ldbedit -%%SAMBA4_BUNDLED_LDB%%bin/ldbmodify -%%SAMBA4_BUNDLED_LDB%%bin/ldbrename -%%SAMBA4_BUNDLED_LDB%%bin/ldbsearch -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_LIBDIR%%/private/libldb-cmdline-private-samba.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_LIBDIR%%/private/libldb-key-value-private-samba.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_LIBDIR%%/private/libldb-private-samba.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_LIBDIR%%/private/libldb-tdb-err-map-private-samba.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_LIBDIR%%/private/libldb-tdb-int-private-samba.so -%%AD_DC%%%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/count_attrs.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/asq.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/ildap.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/ldb.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/ldbsamba_extensions.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/paged_searches.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/rdn_name.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/sample.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/server_sort.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/skel.so -%%SAMBA4_BUNDLED_LDB%%%%SAMBA4_MODULEDIR%%/ldb/tdb.so -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man3/ldb.3.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbadd.1.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbdel.1.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbedit.1.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbmodify.1.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbrename.1.gz -%%MANPAGES%%%%SAMBA4_BUNDLED_LDB%%share/man/man1/ldbsearch.1.gz +%%PYTHON3%%%%PYTHON_SITELIBDIR%%/_ldb_text.py +%%PYTHON3%%%%PYTHON_SITELIBDIR%%/ldb%%PYTHON_TAG%%.so +%%PYTHON3%%%%SAMBA4_LIBDIR%%/private/libpyldb-util%%PYTHON_TAG%%-private-samba.so +bin/ldbadd +bin/ldbdel +bin/ldbedit +bin/ldbmodify +bin/ldbrename +bin/ldbsearch +%%SAMBA4_LIBDIR%%/private/libldb-cmdline-private-samba.so +%%SAMBA4_LIBDIR%%/private/libldb-key-value-private-samba.so +%%SAMBA4_LIBDIR%%/private/libldb-tdb-err-map-private-samba.so +%%SAMBA4_LIBDIR%%/private/libldb-tdb-int-private-samba.so +%%AD_DC%%%%SAMBA4_MODULEDIR%%/ldb/count_attrs.so +%%SAMBA4_MODULEDIR%%/ldb/asq.so +%%SAMBA4_MODULEDIR%%/ldb/ildap.so +%%SAMBA4_MODULEDIR%%/ldb/ldb.so +%%SAMBA4_MODULEDIR%%/ldb/ldbsamba_extensions.so +%%SAMBA4_MODULEDIR%%/ldb/paged_searches.so +%%SAMBA4_MODULEDIR%%/ldb/rdn_name.so +%%SAMBA4_MODULEDIR%%/ldb/sample.so +%%SAMBA4_MODULEDIR%%/ldb/server_sort.so +%%SAMBA4_MODULEDIR%%/ldb/skel.so +%%SAMBA4_MODULEDIR%%/ldb/tdb.so +%%MANPAGES%%share/man/man3/ldb.3.gz +%%MANPAGES%%share/man/man1/ldbadd.1.gz +%%MANPAGES%%share/man/man1/ldbdel.1.gz +%%MANPAGES%%share/man/man1/ldbedit.1.gz +%%MANPAGES%%share/man/man1/ldbmodify.1.gz +%%MANPAGES%%share/man/man1/ldbrename.1.gz +%%MANPAGES%%share/man/man1/ldbsearch.1.gz %%MANPAGES%%%%SAMBA4_BUNDLED_TDB%%share/man/man8/tdbbackup.8.gz %%MANPAGES%%%%SAMBA4_BUNDLED_TDB%%share/man/man8/tdbdump.8.gz %%MANPAGES%%%%SAMBA4_BUNDLED_TDB%%share/man/man8/tdbrestore.8.gzhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202510221431.59MEVHgs081445>
