aports/testing/samba/APKBUILD
2013-08-22 09:30:01 +02:00

277 lines
7.2 KiB
Plaintext

# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=samba
pkgver=4.0.9
pkgrel=0
pkgdesc="Tools to access a server's filespace and printers via SMB"
url="http://www.samba.org"
arch="all"
license="GPL3"
subpackages="$pkgname-dev $pkgname-doc $pkgname-common $pkgname-initscript
libsmbclient $pkgname-client
$pkgname-dc $pkgname-dc-libs:_dc_libs
$pkgname-winbind libwbclient $pkgname-winbind-clients:_winbind_clients
$pkgname-winbind-krb5-locator:_winbind_krb5_locator
$pkgname-pidl py-$pkgname:_py $pkgname-test:_test
$pkgname-libs"
depends="$pkgname-initscript $pkgname-client"
makedepends="popt-dev ncurses-dev openldap-dev heimdal-dev e2fsprogs-dev
libiconv-dev talloc-dev tdb-dev ldb-dev cups-dev python-dev libcap-dev
perl"
source="http://us1.samba.org/samba/ftp/stable/samba-$pkgver.tar.gz
samba.initd
samba.confd
samba.logrotate
"
pkggroups="winbind"
_builddir="$srcdir"/samba-$pkgver
prepare() {
cd "$_builddir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
}
build() {
cd "$_builddir"
local _jobs=$JOBS
if [ -z "$_jobs" ]; then
_jobs=$(awk '/^core id/ {n++} END{print n}' /proc/cpuinfo)
fi
./configure --prefix=/usr \
--jobs=${_jobs:-2} \
--sysconfdir=/etc/samba \
--with-configdir=/etc/samba \
--localstatedir=/var \
--enable-fhs \
--with-lockdir=/var/cache/samba \
--with-piddir=/var/run/samba \
--with-logfilebase=/var/log/samba \
--without-pam \
--with-ads \
--with-shared-modules=idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2,pdb_tdbsam,pdb_ldap,pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4,auth_unix,auth_wbc,auth_server,auth_netlogond,auth_script,auth_samba4 \
--enable-cups \
|| return 1
make || return 1
}
package() {
cd "$_builddir"
make DESTDIR="$pkgdir" install
install -d "$pkgdir"/var/log/samba \
"$pkgdir"/usr/share/doc/samba \
|| return 1
install -D packaging/RHEL/setup/smbusers "$pkgdir"/etc/samba/smbusers \
|| return 1
install -m 0744 packaging/printing/smbprint "$pkgdir"/usr/bin/smbprint \
|| return 1
install -Dm644 "$srcdir"/samba.logrotate "$pkgdir"/etc/logrotate.d/samba
}
initscript() {
pkgdesc="Init script for Samba"
depends=""
install -Dm755 $srcdir/samba.initd "$subpkgdir"/etc/init.d/samba
install -Dm644 $srcdir/samba.confd "$subpkgdir"/etc/conf.d/samba
}
_mv_files() {
local i
for i in "$@"; do
mkdir -p "$subpkgdir"/${i%/*}
mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
done
}
common() {
pkgdesc="Samba common files for both client an servers"
depends=
# we have moved libnetapi to samba-common
replaces="winbind samba"
cd "$pkgdir"
_mv_files \
usr/bin/net \
usr/bin/pdbedit \
usr/bin/profiles \
usr/bin/smbcontrol \
usr/bin/testparm \
usr/share/samba/codepages \
usr/lib/libnetapi.so.* \
var/run/samba \
var/cache/samba \
var/log/samba \
|| return 1
install -d -m 700 "$subpkgdir"/var/lib/samba/private
}
libsmbclient() {
pkgdesc="The SMB client library"
replaces="samba"
depends=
cd "$pkgdir"
_mv_files \
usr/lib/libsmbclient.so.* \
usr/lib/libsmbsharemodes.so.* \
|| return 1
}
client() {
pkgdesc="Samba client program"
replaces="samba"
depends=
cd "$pkgdir"
_mv_files \
usr/bin/cifsdd \
usr/bin/dbwrap_tool \
usr/bin/nmblookup \
usr/bin/nmblookup4 \
usr/bin/oLschema2ldif \
usr/bin/regdiff \
usr/bin/regpatch \
usr/bin/regshell \
usr/bin/regtree \
usr/bin/rpcclient \
usr/bin/sharesec \
usr/bin/smbcacls \
usr/bin/smbclient \
usr/bin/smbclient4 \
usr/bin/smbcquotas \
usr/bin/smbget \
usr/bin/smbpasswd \
usr/bin/smbprint \
usr/bin/smbspool \
usr/bin/smbta-util \
usr/bin/smbtar \
usr/bin/smbtree \
|| return 1
}
dc() {
pkgdesc="Samba AD Domain Controller"
cd "$pkgdir"
_mv_files \
usr/bin/samba-tool \
usr/sbin/samba* \
usr/lib/samba/ldb \
usr/lib/samba/libheimntlm*.so.* \
usr/lib/samba/libpac.so \
usr/lib/samba/gensec \
usr/lib/samba/bind9/dlz_bind9.so \
usr/lib/mit_samba.so \
|| return 1
install -d -m 0755 "$subpkgdir"/var/lib/samba/sysvol || return 1
}
_dc_libs() {
pkgdesc="Samba AD Domain Controller libraries"
cd "$pkgdir"
_mv_files \
usr/lib/samba/bind9/dlz_bind9_9.so \
usr/lib/samba/libprocess_model.so \
usr/lib/samba/libservice.so \
usr/lib/samba/service \
usr/lib/samba/libdsdb-module.so \
usr/lib/samba/libntvfs.so \
usr/lib/samba/libposix_eadb.so \
usr/lib/libdcerpc-server.so.* \
|| return 1
}
winbind() {
pkgdesc="Samba user and group resolver"
depends=
install="winbind.pre-install winbind.pre-upgrade winbind.post-install
winbind.post-upgrade"
replaces="winbind"
cd "$pkgdir"
_mv_files \
usr/sbin/winbindd \
usr/lib/samba/idmap \
usr/lib/samba/nss_info \
usr/lib/samba/libidmap.so \
|| return 1
install -d -g winbind -m 750 \
"$subpkgdir"/var/cache/samba/winbindd_privileged
}
libwbclient() {
pkgdesc="Samba winbind client libraries"
# we have moved libwbclient from samba-common
replaces="samba-common winbind"
cd "$pkgdir"
_mv_files \
usr/lib/libwbclient.so.* \
usr/lib/samba/libwinbind-client.so \
|| return 1
}
_winbind_clients() {
pkgdesc="Samba winbind clients"
replaces="winbind"
cd "$pkgdir"
_mv_files \
usr/bin/ntlm_auth \
usr/bin/wbinfo \
usr/lib/libnss_winbind.so* \
usr/lib/libnss_wins.so* \
|| return 1
}
_winbind_krb5_locator() {
pkgdesc="Samba winbind krb5 locator"
cd "$pkgdir"
_mv_files \
usr/lib/winbind_krb5_locator.so \
|| return 1
}
pidl() {
pkgdesc="Perl IDL compiler"
mkdir -p "$subpkgdir"/usr/share
mv "$pkgdir"/usr/share/perl* "$subpkgdir"/usr/share/
}
_py() {
pkgdesc="Samba python libraries"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
}
_test() {
pkgdesc="Samba server and client testing tools"
mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib/samba
mv "$pkgdir"/usr/bin/*test \
"$pkgdir"/usr/bin/ndrdump \
"$pkgdir"/usr/bin/smbtorture \
"$subpkgdir"/usr/bin/ || return 1
mv "$pkgdir"/usr/lib/libtorture.so.* \
"$subpkgdir"/usr/lib/ || return 1
mv "$pkgdir"/usr/lib/samba/*torture* \
"$subpkgdir"/usr/lib/samba/ || return 1
}
libs() {
pkgdesc="Samba libraries"
cd "$pkgdir"
_mv_files \
usr/lib/lib*.so.* \
usr/lib/samba/lib* \
|| return 1
}
md5sums="f5f2ad0e2aabf024e2e3e2f297a0631a samba-4.0.9.tar.gz
044c756d3c33c2d610c40bcd76cfb75c samba.initd
c150433426e18261e6e3eed3930e1a76 samba.confd
b7cafabfb4fa5b3ab5f2e857d8d1c733 samba.logrotate"
sha256sums="d1d6c0fa077a82550f2e80c8302ca407413da605906b7184ca98fe6846c362a5 samba-4.0.9.tar.gz
86646cb845aababd9e8655994379526f03327a2cc33b489c3a7dea83ab689c8f samba.initd
1d12f98a7727967b04eb123109b34cfffef320822dc0e8059286b6e3394c3fc0 samba.confd
4c2b7d529126b2fc4f62fb09d99e49a87632d723a2d9d289a61e37dd84145be1 samba.logrotate"
sha512sums="4c00ad62e972276d60f53058796de28fb3cd03f243006da0f6ee995826011f957e73602c5925551d03980924b27cac7203656bdf2ab69d5d456e41eb765ffda8 samba-4.0.9.tar.gz
59d05252b8ebbe6ba6a419edc86b66b9541d0bac9dbe810cccb20e64f6044e2900cc6c0979e077741ed00fbbf2d51f9184c83715013299782707b44e39aa99b1 samba.initd
4faf581ecef3ec38319e3c4ab6d3995c51fd7ba83180dc5553a2ff4dfb92efadb43030c543292130c4ed0c281dc0972c6973d52d48062c5edb39bb1c4bbb6dd6 samba.confd
f88ebe59ca3a9e9b77dd5993c13ef3e73a838efb8ed858088b464a330132d662f33e25c27819e38835389dee23057a3951de11bae1eef55db8ff5e1ec6760053 samba.logrotate"