mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-05-13 22:04:37 +02:00
834 lines
23 KiB
Text
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
|
|
"
|