aports/main/samba/APKBUILD
2025-03-27 13:20:03 +01:00

834 lines
23 KiB
Text

# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=samba
pkgver=4.21.4
pkgrel=3
pkgdesc="Tools to access a server's filespace and printers via SMB"
url="https://www.samba.org/"
arch="all"
license="GPL-3.0-or-later AND LGPL-3.0-or-later"
options="!check" # fixme: missing dependencies for '--enable-selftest'
subpackages="
$pkgname-dev
$pkgname-doc
$pkgname-server-openrc
libwbclient
$pkgname-util-libs:_util_libs
ldb
ldb-tools:_ldb_tools
py3-ldb:_py3_ldb
$pkgname-common:_common:noarch
$pkgname-common-tools:_common_tools
$pkgname-common-server-libs:_common_server_libs
libsmbclient
$pkgname-client
$pkgname-client-libs:_client_libs
$pkgname-winbind
$pkgname-winbind-clients:_winbind_clients
$pkgname-winbind-krb5-locator:_winbind_krb5_locator
$pkgname-libnss-winbind:_libnss_winbind
pam-winbind:_pam_winbind
$pkgname-dc
$pkgname-dc-libs:_dc_libs
$pkgname-server
$pkgname-server-libs:_server_libs
$pkgname-pidl::noarch
py3-$pkgname:_py3
$pkgname-test:_test
$pkgname-libs-py3:_libs_py3
libauth-$pkgname:_libauth
$pkgname-libs
"
depends="
$pkgname-server=$pkgver-r$pkgrel
$pkgname-client=$pkgver-r$pkgrel
$pkgname-common-tools=$pkgver-r$pkgrel
"
_dc_deps="py3-dnspython py3-markdown tdb"
# note that heimdal is required (over mit krb5) for AD DC functionality
makedepends="
acl-dev
attr-dev
bind-dev
bison
cups-dev
dbus-dev
docbook-xsl
e2fsprogs-dev
flex
gnutls-dev
icu-dev
iniparser-dev
jansson-dev
libarchive-dev
libcap-dev
libtirpc-dev
liburing-dev
linux-pam-dev
lmdb-dev
musl-nscd-dev
ncurses-dev
openldap-dev
perl
perl-parse-yapp
popt-dev
py3-tdb
py3-tevent
python3-dev
readline-dev
rpcgen
subunit-dev
talloc-dev
tdb-dev
tevent-dev
util-linux-dev
zlib-dev
$_dc_deps
"
#checkdepends="
# bash
# py3-asn1
# py3-cryptography
# py3-iso8601
# py3-setproctitle
# "
source="
https://download.samba.org/pub/samba/stable/samba-$pkgver.tar.gz
disable-compile-error-test.patch
ldb-tests.patch
musl_uintptr.patch
default-config.patch
s3-notifyd.patch
sys-types-h.patch
$pkgname.initd
$pkgname.confd
$pkgname.logrotate
"
pkggroups="winbind"
# secfixes:
# 4.18.9-r0:
# - CVE-2018-14628
# 4.18.8-r0:
# - CVE-2023-3961
# - CVE-2023-4091
# - CVE-2023-4154
# - CVE-2023-42669
# - CVE-2023-42670
# 4.18.1-r0:
# - CVE-2023-0225
# 4.17.0-r0:
# - CVE-2022-1615
# - CVE-2022-32743
# 4.16.7-r0:
# - CVE-2022-42898
# 4.16.6-r0:
# - CVE-2022-3437
# - CVE-2022-3592
# 4.15.9-r0:
# - CVE-2022-2031
# - CVE-2021-3670
# - CVE-2022-32744
# - CVE-2022-32745
# - CVE-2022-32746
# - CVE-2022-32742
# 4.15.2-r0:
# - CVE-2016-2124
# - CVE-2020-25717
# - CVE-2020-25718
# - CVE-2020-25719
# - CVE-2020-25721
# - CVE-2020-25722
# - CVE-2021-23192
# - CVE-2021-3738
# 4.15.0-r0:
# - CVE-2021-3671
# 4.14.4-r0:
# - CVE-2021-20254
# 4.14.2-r0:
# - CVE-2020-27840
# - CVE-2021-20277
# 4.12.9-r0:
# - CVE-2020-14318
# - CVE-2020-14323
# - CVE-2020-14383
# 4.12.7-r0:
# - CVE-2020-1472
# 4.12.5-r0:
# - CVE-2020-10730
# - CVE-2020-10745
# - CVE-2020-10760
# - CVE-2020-14303
# 4.12.2-r0:
# - CVE-2020-10700
# - CVE-2020-10704
# 4.11.5-r0:
# - CVE-2019-14902
# - CVE-2019-14907
# - CVE-2019-19344
# 4.11.3-r0:
# - CVE-2019-14861
# - CVE-2019-14870
# 4.11.2-r0:
# - CVE-2019-10218
# - CVE-2019-14833
# 4.10.8-r0:
# - CVE-2019-10197
# 4.10.5-r0:
# - CVE-2019-12435
# - CVE-2019-12436
# 4.10.3-r0:
# - CVE-2018-16860
# 4.8.11-r0:
# - CVE-2018-14629
# - CVE-2019-3880
# 4.8.7-r0:
# - CVE-2018-16841
# - CVE-2018-16851
# - CVE-2018-16853
# 4.8.4-r0:
# - CVE-2018-1139
# - CVE-2018-1140
# - CVE-2018-10858
# - CVE-2018-10918
# - CVE-2018-10919
# 4.7.6-r0:
# - CVE-2018-1050
# - CVE-2018-1057
# 4.7.3-r0:
# - CVE-2017-14746
# - CVE-2017-15275
# 4.7.0-r0:
# - CVE-2017-12150
# - CVE-2017-12151
# - CVE-2017-12163
# 4.6.1-r0:
# - CVE-2017-2619
build() {
local _idmap_modules=idmap_ad,idmap_rid,idmap_ldap,idmap_hash,idmap_tdb2
local _pdb_modules=pdb_tdbsam,pdb_ldapsam,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4
local _auth_modules=auth_unix,auth_wbc,auth_server,auth_script,auth_samba4
local _vfs_modules=vfs_dfs_samba4
# pclose, ..
export CFLAGS="$CFLAGS -O2 -flto=auto"
./configure \
--prefix=/usr \
--sysconfdir=/etc/$pkgname \
--with-configdir=/etc/$pkgname \
--localstatedir=/var \
--libexecdir=/usr/lib \
--enable-fhs \
--with-lockdir=/var/cache/$pkgname \
--with-piddir=/run/$pkgname \
--with-logfilebase=/var/log/$pkgname \
--with-pam \
--without-systemd \
--with-ads \
--with-shared-modules=$_idmap_modules,$_pdb_modules,$_auth_modules,$_vfs_modules \
--enable-cups \
--without-gettext \
--private-libraries=!ldb \
--bundled-libraries=!talloc,!pytalloc,!pytalloc-util,!tdb,!pytdb,!tevent,!pytevent,!popt \
--disable-rpath-install \
--without-gpgme \
--disable-fault-handling
make
# Build pidl
cd "$builddir"/pidl
perl Makefile.PL PREFIX=/usr
}
check() {
make check
}
package() {
make DESTDIR="$pkgdir" install
install -d "$pkgdir"/var/log/$pkgname \
"$pkgdir"/usr/share/doc/$pkgname
install -dm755 "$pkgdir"/var/lib/$pkgname/sysvol
install -Dm644 examples/smb.conf.default \
"$pkgdir"/etc/$pkgname/smb.conf
install -m744 packaging/printing/smbprint \
"$pkgdir"/usr/bin/smbprint
install -Dm644 "$srcdir"/$pkgname.logrotate \
"$pkgdir"/etc/logrotate.d/$pkgname
install -Dm755 "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
install -Dm644 "$srcdir/$pkgname.confd" "$pkgdir/etc/conf.d/$pkgname"
rm -r "$pkgdir"/run
# Install pidl
cd "$builddir"/pidl
make DESTDIR="$pkgdir" install_vendor
}
_common() {
pkgdesc="Samba common files for both client an servers"
depends=
amove etc var
install -d -m700 "$subpkgdir"/var/lib/$pkgname/private
}
# samba-libs-py3 is an attempt to avoid libpython dependency for libsmbclient
_libs_py3() {
pkgdesc="Libraries that require libpython"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
py3-ldb=$pkgver-r$pkgrel
"
amove \
usr/lib/$pkgname/libsamba-net*private-samba.so \
usr/lib/$pkgname/libsamba-python*private-samba.so \
usr/lib/$pkgname/libpyldb-util*private-samba.so
}
# may depend on samba-common-server-libs but not samba-server-libs
_common_tools() {
pkgdesc="Tools for Samba servers and clients"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/bin/net \
usr/bin/pdbedit \
usr/bin/profiles \
usr/bin/samba-log-parser \
usr/bin/smbcontrol \
usr/bin/smbpasswd \
usr/bin/testparm \
usr/lib/$pkgname/libgpext-private-samba.so \
usr/lib/$pkgname/libnet-keytab-private-samba.so
}
# should not depend on client libs
_common_server_libs() {
pkgdesc="Samba libraries shared by common-tools and servers" # not shared with clients
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
"
amove \
usr/lib/libdcerpc-server-core.so.* \
usr/lib/libnetapi.so.* \
usr/lib/$pkgname/libRPC-SERVER-LOOP-private-samba.so \
usr/lib/$pkgname/libdfs-server-ad-private-samba.so \
usr/lib/$pkgname/libprinting-migrate-private-samba.so \
usr/lib/$pkgname/libsmbd-base-private-samba.so \
usr/lib/$pkgname/libsmbldaphelper-private-samba.so \
usr/lib/$pkgname/pdb
}
libsmbclient() {
pkgdesc="The SMB client library"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
"
amove \
usr/lib/libsmbclient.so.*
}
# should only depend on samba-util-libs, libwbclient and samba-libs
_client_libs() {
pkgdesc="Samba libraries used by clients"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
"
amove \
usr/lib/$pkgname/libad-claims-private-samba.so \
usr/lib/$pkgname/libauthn-policy-util-private-samba.so \
usr/lib/$pkgname/libcli-ldap-private-samba.so \
usr/lib/$pkgname/libcmdline-contexts-private-samba.so \
usr/lib/$pkgname/libdsdb-garbage-collect-tombstones-private-samba.so \
usr/lib/$pkgname/libdsdb-module-private-samba.so \
usr/lib/$pkgname/libgpo-private-samba.so \
usr/lib/$pkgname/libhttp-private-samba.so \
usr/lib/$pkgname/libmscat-private-samba.so \
usr/lib/$pkgname/libnetif-private-samba.so \
usr/lib/$pkgname/libprinter-driver-private-samba.so \
usr/lib/$pkgname/libregistry-private-samba.so \
usr/lib/$pkgname/libsmbclient-raw-private-samba.so \
usr/lib/libdcerpc.so.*
}
client() {
pkgdesc="Samba client programs"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libsmbclient=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/bin/cifsdd \
usr/bin/dumpmscat \
usr/bin/dbwrap_tool \
usr/bin/mdsearch \
usr/bin/mvxattr \
usr/bin/nmblookup \
usr/bin/oLschema2ldif \
usr/bin/regdiff \
usr/bin/regpatch \
usr/bin/regshell \
usr/bin/regtree \
usr/bin/rpcclient \
usr/bin/samba-regedit \
usr/bin/sharesec \
usr/bin/smbcacls \
usr/bin/smbclient \
usr/bin/smbcquotas \
usr/bin/smbget \
usr/bin/smbprint \
usr/bin/smbspool \
usr/bin/smbtar \
usr/bin/smbtree \
usr/bin/wspsearch \
usr/lib/$pkgname/smbspool_krb5_wrapper
}
# should not pull in samba-client-libs
_server_libs() {
pkgdesc="Samba libraries shared by server and windbind"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
"
amove \
usr/lib/$pkgname/libdcerpc-samba4-private-samba.so \
usr/lib/$pkgname/libidmap-private-samba.so \
usr/lib/$pkgname/libnss-info-private-samba.so
}
# should not pull in samba-client-libs
winbind() {
pkgdesc="Samba user and group resolver"
depends="
$pkgname-common=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-server-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
"
install="winbind.pre-install winbind.pre-upgrade winbind.post-install
winbind.post-upgrade"
amove \
usr/sbin/winbindd \
usr/lib/$pkgname/idmap \
usr/lib/$pkgname/nss_info
install -d -g winbind -m 750 \
"$subpkgdir"/var/cache/$pkgname/winbindd_privileged
}
# should not depend on any other samba package
_util_libs() {
pkgdesc="Samba utility libraries"
depends=
amove \
usr/lib/libsamba-util.so.* \
usr/lib/$pkgname/libgenrand-private-samba.so \
usr/lib/$pkgname/libsocket-blocking-private-samba.so \
usr/lib/$pkgname/libsamba-debug-private-samba.so \
usr/lib/$pkgname/libtime-basic-private-samba.so \
usr/lib/$pkgname/libsys-rw-private-samba.so \
usr/lib/$pkgname/libiov-buf-private-samba.so \
usr/lib/$pkgname/libcom-err-private-samba.so \
usr/lib/$pkgname/libreplace-private-samba.so \
usr/lib/$pkgname/libstable-sort-private-samba.so
}
# ldb is provided as a separate library for dependant packages such as sssd
ldb() {
pkgdesc="Schema-less, ldap like, API and database"
depends="$pkgname-util-libs=$pkgver-r$pkgrel"
amove \
usr/lib/libldb.so.* \
usr/lib/$pkgname/libldb-key-value-private-samba.so \
usr/lib/$pkgname/libldb-tdb-err-map-private-samba.so \
usr/lib/$pkgname/libldb-tdb-int-private-samba.so \
usr/lib/$pkgname/ldb/asq.so \
usr/lib/$pkgname/ldb/ldb.so \
usr/lib/$pkgname/ldb/paged_searches.so \
usr/lib/$pkgname/ldb/rdn_name.so \
usr/lib/$pkgname/ldb/sample.so \
usr/lib/$pkgname/ldb/server_sort.so \
usr/lib/$pkgname/ldb/skel.so \
usr/lib/$pkgname/ldb/tdb.so
# only on 64 bit hosts
if [ -e "$pkgdir/usr/lib/$pkgname/libldb-mdb-int-private-samba.so" ]; then
amove usr/lib/$pkgname/libldb-mdb-int-private-samba.so
fi
if [ -e "$pkgdir/usr/lib/$pkgname/ldb/mdb.so" ]; then
amove usr/lib/$pkgname/ldb/mdb.so
fi
}
_ldb_tools() {
pkgdesc="Tools to manage LDB files"
depends="ldb=$pkgver-r$pkgrel"
amove \
usr/bin/ldbadd \
usr/bin/ldbdel \
usr/bin/ldbedit \
usr/bin/ldbmodify \
usr/bin/ldbrename \
usr/bin/ldbsearch \
usr/lib/$pkgname/libldb-cmdline-private-samba.so
}
_py3_ldb() {
pkgdesc="Python 3 binding for the ldb library"
depends="ldb=$pkgver-r$pkgrel"
amove \
usr/lib/python3*/site-packages/_ldb_text.py \
usr/lib/python3*/site-packages/ldb.*
}
# should only depend on samba-util-libs
libwbclient() {
pkgdesc="Samba winbind client libraries"
depends=
amove usr/lib/libwbclient.so.*
}
_winbind_clients() {
pkgdesc="Samba winbind client tools"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/bin/ntlm_auth \
usr/bin/wbinfo
}
_libnss_winbind() {
pkgdesc="Samba winbind NSS plugin"
depends=
amove \
usr/lib/libnss_winbind.so* \
usr/lib/libnss_wins.so*
}
_winbind_krb5_locator() {
pkgdesc="Samba winbind krb5 locator"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/lib/samba/krb5
}
_pam_winbind() {
pkgdesc="PAM module for winbind"
depends=
amove usr/lib/security
}
dc() {
pkgdesc="Samba AD Domain Controller"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-common-tools=$pkgver-r$pkgrel
$pkgname-dc-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-server=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
$pkgname-winbind=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
py3-$pkgname=$pkgver-r$pkgrel
$_dc_deps
"
amove \
usr/bin/samba-tool \
usr/sbin/samba* \
usr/share/$pkgname \
usr/lib/$pkgname/auth/samba4.so \
usr/lib/$pkgname/gensec \
usr/lib/$pkgname/ldb \
usr/lib/$pkgname/libsmbpasswdparser-private-samba.so \
usr/lib/$pkgname/vfs/posix_eadb.so
}
_dc_libs() {
pkgdesc="Samba AD Domain Controller libraries"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-server-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/lib/libdcerpc-samr.so.* \
usr/lib/libdcerpc-server.so.* \
usr/lib/libsamba-policy.* \
usr/lib/$pkgname/bind9 \
usr/lib/$pkgname/libHDB-SAMBA4-private-samba.so \
usr/lib/$pkgname/libLIBWBCLIENT-OLD-private-samba.so \
usr/lib/$pkgname/libauth-unix-token-private-samba.so \
usr/lib/$pkgname/libauth4-private-samba.so \
usr/lib/$pkgname/libdb-glue-private-samba.so \
usr/lib/$pkgname/libdnsserver-common-private-samba.so \
usr/lib/$pkgname/libgss-preauth-private-samba.so \
usr/lib/$pkgname/libhdb-private-samba.so* \
usr/lib/$pkgname/libkdc-private-samba.so* \
usr/lib/$pkgname/libpac-private-samba.so \
usr/lib/$pkgname/libposix-eadb-private-samba.so \
usr/lib/$pkgname/libprocess-model-private-samba.so \
usr/lib/$pkgname/libscavenge-dns-records-private-samba.so \
usr/lib/$pkgname/libservice-private-samba.so \
usr/lib/$pkgname/libshares-private-samba.so \
usr/lib/$pkgname/process_model \
usr/lib/$pkgname/service
}
server() {
pkgdesc="Samba server"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
acl
"
amove \
usr/sbin/nmbd \
usr/sbin/smbd \
usr/sbin/eventlogadm \
usr/bin/smbstatus \
\
usr/lib/$pkgname/auth \
usr/lib/$pkgname/libREG-FULL-private-samba.so \
usr/lib/$pkgname/libRPC-WORKER-private-samba.so \
usr/lib/$pkgname/libxattr-tdb-private-samba.so \
usr/lib/$pkgname/rpcd_* \
usr/lib/$pkgname/samba-bgqd \
usr/lib/$pkgname/samba-dcerpcd \
usr/lib/$pkgname/vfs
}
pidl() {
pkgdesc="Perl IDL compiler"
depends="perl"
amove \
usr/bin/pidl \
usr/share/perl*
rm -r "$pkgdir"/usr/lib/perl*
}
_py3() {
pkgdesc="Samba python libraries"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-dc-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-libs-py3=$pkgver-r$pkgrel
$pkgname-server-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
py3-tdb
"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
}
_test() {
pkgdesc="Samba server and client testing tools"
depends="
$pkgname-client-libs=$pkgver-r$pkgrel
$pkgname-common-server-libs=$pkgver-r$pkgrel
$pkgname-dc=$pkgver-r$pkgrel
$pkgname-dc-libs=$pkgver-r$pkgrel
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-libs-py3=$pkgver-r$pkgrel
$pkgname-server-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libauth-$pkgname=$pkgver-r$pkgrel
libsmbclient=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove \
usr/bin/gentest \
usr/bin/locktest \
usr/bin/masktest \
usr/bin/ndrdump \
usr/bin/smbtorture \
usr/lib/$pkgname/libdlz-bind9-for-torture-private-samba.so \
usr/lib/$pkgname/libtorture-private-samba.so
}
# avoid samba-libs and libsmbclient depending on pam
_libauth() {
pkgdesc="Samba auth library shared by common-tools, server and clients"
depends="
$pkgname-libs=$pkgver-r$pkgrel
$pkgname-util-libs=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
amove usr/lib/$pkgname/libauth-private-samba.so
}
# should only depend on samba-util-libs, ldb and libwbclient
libs() {
pkgdesc="Samba core libraries shared by common-tools, server and clients"
depends="
$pkgname-util-libs=$pkgver-r$pkgrel
ldb=$pkgver-r$pkgrel
libwbclient=$pkgver-r$pkgrel
"
# heimdal libs
amove \
usr/lib/$pkgname/libasn1-private-samba.so* \
usr/lib/$pkgname/libgssapi-private-samba.so* \
usr/lib/$pkgname/libhcrypto-private-samba.so* \
usr/lib/$pkgname/libheimbase-private-samba.so* \
usr/lib/$pkgname/libheimntlm-private-samba.so* \
usr/lib/$pkgname/libhx509-private-samba.so* \
usr/lib/$pkgname/libkrb5-private-samba.so* \
usr/lib/$pkgname/libroken-private-samba.so* \
usr/lib/$pkgname/libwind-private-samba.so*
amove \
usr/lib/$pkgname/libCHARSET3-private-samba.so \
usr/lib/$pkgname/libMESSAGING-SEND-private-samba.so \
usr/lib/$pkgname/libMESSAGING-private-samba.so \
usr/lib/$pkgname/libaddns-private-samba.so \
usr/lib/$pkgname/libads-private-samba.so \
usr/lib/$pkgname/libasn1util-private-samba.so \
usr/lib/$pkgname/libauthkrb5-private-samba.so \
usr/lib/$pkgname/libcli-cldap-private-samba.so \
usr/lib/$pkgname/libcli-ldap-common-private-samba.so \
usr/lib/$pkgname/libcli-nbt-private-samba.so \
usr/lib/$pkgname/libcli-smb-common-private-samba.so \
usr/lib/$pkgname/libcli-spoolss-private-samba.so \
usr/lib/$pkgname/libcliauth-private-samba.so \
usr/lib/$pkgname/libclidns-private-samba.so \
usr/lib/$pkgname/libcluster-private-samba.so \
usr/lib/$pkgname/libcmdline-private-samba.so \
usr/lib/$pkgname/libcmocka-private-samba.so \
usr/lib/$pkgname/libcommon-auth-private-samba.so \
usr/lib/$pkgname/libdbwrap-private-samba.so \
usr/lib/$pkgname/libdcerpc-pkt-auth-private-samba.so \
usr/lib/$pkgname/libdcerpc-samba-private-samba.so \
usr/lib/$pkgname/libevents-private-samba.so \
usr/lib/$pkgname/libflag-mapping-private-samba.so \
usr/lib/$pkgname/libgensec-private-samba.so \
usr/lib/$pkgname/libgse-private-samba.so \
usr/lib/$pkgname/libinterfaces-private-samba.so \
usr/lib/$pkgname/libkrb5samba-private-samba.so \
usr/lib/$pkgname/libldbsamba-private-samba.so \
usr/lib/$pkgname/liblibcli-lsa3-private-samba.so \
usr/lib/$pkgname/liblibcli-netlogon3-private-samba.so \
usr/lib/$pkgname/liblibsmb-private-samba.so \
usr/lib/$pkgname/libmessages-dgm-private-samba.so \
usr/lib/$pkgname/libmessages-util-private-samba.so \
usr/lib/$pkgname/libmsghdr-private-samba.so \
usr/lib/$pkgname/libmsrpc3-private-samba.so \
usr/lib/$pkgname/libndr-samba-private-samba.so \
usr/lib/$pkgname/libndr-samba4-private-samba.so \
usr/lib/$pkgname/libnpa-tstream-private-samba.so \
usr/lib/$pkgname/libsamba-cluster-support-private-samba.so \
usr/lib/$pkgname/libsamba-modules-private-samba.so \
usr/lib/$pkgname/libsamba-security-private-samba.so \
usr/lib/$pkgname/libsamba-sockets-private-samba.so \
usr/lib/$pkgname/libsamba3-util-private-samba.so \
usr/lib/$pkgname/libsamdb-common-private-samba.so \
usr/lib/$pkgname/libsecrets3-private-samba.so \
usr/lib/$pkgname/libserver-id-db-private-samba.so \
usr/lib/$pkgname/libserver-role-private-samba.so \
usr/lib/$pkgname/libsmb-transport-private-samba.so \
usr/lib/$pkgname/libsmbd-shim-private-samba.so \
usr/lib/$pkgname/libtalloc-report-printf-private-samba.so \
usr/lib/$pkgname/libtalloc-report-private-samba.so \
usr/lib/$pkgname/libtdb-wrap-private-samba.so \
usr/lib/$pkgname/libutil-crypt-private-samba.so \
usr/lib/$pkgname/libutil-reg-private-samba.so \
usr/lib/$pkgname/libutil-setid-private-samba.so \
usr/lib/$pkgname/libutil-tdb-private-samba.so \
usr/lib/libdcerpc-binding.so.* \
usr/lib/libndr-krb5pac.so.* \
usr/lib/libndr-nbt.so.* \
usr/lib/libndr-standard.so.* \
usr/lib/libndr.so.* \
usr/lib/libsamba-credentials.so.* \
usr/lib/libsamba-errors.so.* \
usr/lib/libsamba-hostconfig.so.* \
usr/lib/libsamba-passdb.so.* \
usr/lib/libsamdb.so.* \
usr/lib/libsmbconf.so.* \
usr/lib/libsmbldap.so.* \
usr/lib/libtevent-util.so.*
# exit with error if some stuff stayed at main pack
local leftovers="$(find "$pkgdir" -type f)"
if [ -n "$leftovers" ]; then
error "files left in main package:"
echo "$leftovers" >&2
return 1
fi
}
dev() {
default_dev
provides="ldb-dev"
}
sha512sums="
eed6bfe8b9122198fb44cb0bbb30e7f0c9936147d88f731a79146617edf76b1d5773b36972ac96813feb57effd29825d77e72ad705027eb93ce3b5b7fd196102 samba-4.21.4.tar.gz
ef26ef5d6e45c40e8752739cc5a7968a4b9371bb17a7b76fd69cde0b163956a70c893a482c72dc17ab1dd55b695f229b9250195cdca8cd50f75ba02d48058cb5 disable-compile-error-test.patch
102469afc438985809543bf906655ddcbdb059455ab9dca301f7a2254f4740adfde4f8eed69c6b7a18a080b622d0a317cd34ef13d49d772543848ec605263fab ldb-tests.patch
b7906d66fe55a980a54161ee3f311b51bcbce76b8d4c8cc1ba6d0c5bdf98232cb192b9d2c1aa7b3e2742f5b9848c6cf429347940eefe66c3e0eda1d5aac1bf93 musl_uintptr.patch
14666954aec4a0bc7a6730ba3a9afdbd4e27c083a038d9a1f5a033e4f0a42bc8408906612ea51f74bf743ff8a225242e54b0a518367fe526b110639bfbfdd071 default-config.patch
a07aaf2520e8f3f8938913c38ebfe3a518048f2d1b95413edbb194b071af678b5dd3853c4443f3ada1ad7f6f5ccef51cc634adce24f41476ed423795a47e2499 s3-notifyd.patch
4c2d566300f4aaf57d5eadbc4aafeb8f4beafa3fc3ee345f0b7027ce8e6f098c23c9352a4c3fc5a19f3546307584c50da88d8d13fc62e771e60b1c4bb019e787 sys-types-h.patch
fdd31d53cd96bf4f67f74abd770493d04f6330f31654ad445e69f4c445b97e211db30049ddf51591e3ab733c4b62bef3436725da89c566c5d8e17e1b26b1fb19 samba.initd
e5a4022aad21be7ad6bd067d60dd7bf447ae7191aecdd4081ccf5f08565ee5e13f592777749bc460773a20a830ef59c47faa322c55253b6ce4160f8285f74c46 samba.confd
ec6b47d452c53cdac973d0bdd926e5c07a4f8dafb04033ec1e778de8c2ca34525cd494cc00cf87492058a5fad014473abf37e9f6f3399bba165dfb67fcba877b samba.logrotate
"