diff options
Diffstat (limited to 'abs/core-testing/samba/PKGBUILD')
-rw-r--r-- | abs/core-testing/samba/PKGBUILD | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/abs/core-testing/samba/PKGBUILD b/abs/core-testing/samba/PKGBUILD new file mode 100644 index 0000000..b3ea7ca --- /dev/null +++ b/abs/core-testing/samba/PKGBUILD @@ -0,0 +1,77 @@ +# $Id: PKGBUILD 14140 2008-10-04 09:43:47Z tpowa $ +# Maintainer: judd <jvinet@zeroflux.org> +pkgname=samba +pkgver=3.2.4 +# We use the 'A' to fake out pacman's version comparators. Samba chooses +# to append 'a','b',etc to their subsequent releases, which pamcan +# misconstrues as alpha, beta, etc. Bad samba! +_realver=3.2.4 +pkgrel=3 +pkgdesc="Tools to access a server's filespace and printers via SMB" +arch=(i686 x86_64) +url="http://www.samba.org" +license=('GPL3') +backup=(etc/logrotate.d/samba etc/pam.d/samba etc/samba/smb.conf etc/xinetd.d/swat etc/conf.d/samba) +depends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' 'smbclient=3.2.4' 'libcap' 'heimdal>=1.2-1' 'pam' 'fam' 'gnutls>=2.4.1' 'tdb=3.2.4') +options=(!makeflags) +source=(http://us1.samba.org/samba/ftp/stable/${pkgname}-${_realver}.tar.gz \ + no-clients.patch samba samba.logrotate swat.xinetd samba.pam samba.conf.d) + +build() { + cd ${startdir}/src/${pkgname}-${_realver}/source + patch -Np2 -i ${startdir}/src/no-clients.patch || return 1 + + ./configure --prefix=/usr --with-configdir=/etc/samba \ + --with-lockdir=/var/cache/samba \ + --with-piddir=/var/run/samba \ + --with-fhs --with-pam --with-ads --with-acl-support \ + --without-cifsmount --without-libsmbclient \ + --localstatedir=/var --disable-dnssd --libdir=/usr/lib/samba + make || return 1 + mkdir -p $startdir/pkg/var/log/samba + mkdir -p $startdir/pkg/etc/samba/private + chmod 700 $startdir/pkg/etc/samba/private + make DESTDIR=$startdir/pkg install + chmod 644 $startdir/pkg/usr/include/*.h + rm -rf $startdir/pkg/usr/var + (cd script; cp installbin.sh i; cat i | sed 's/\/sbin\///' > installbin.sh) + install -D -m755 ../../samba $startdir/pkg/etc/rc.d/samba + install -D -m644 ../../samba.conf.d $startdir/pkg/etc/conf.d/samba + mkdir -p $startdir/pkg/etc/samba + cat ../examples/smb.conf.default | \ + sed 's|log file = .*$|log file = /var/log/samba/log.%m|g' >$startdir/pkg/etc/samba/smb.conf.default + install -D -m644 ../../samba.logrotate $startdir/pkg/etc/logrotate.d/samba + install -D -m644 ../../swat.xinetd $startdir/pkg/etc/xinetd.d/swat + install -D -m644 ../../samba.pam $startdir/pkg/etc/pam.d/samba + # symlink libs + for i in ${startdir}/pkg/usr/lib/samba/libsmbshare*; do + ln -sf samba/$(basename $i) ${startdir}/pkg/usr/lib/$(basename $i) + done + # spool directory + install -d -m1777 $startdir/pkg/var/spool/samba + sed -i 's|/usr/spool/samba|/var/spool/samba|g' $startdir/pkg/etc/samba/smb.conf.default + # fix logrotate + sed -i -e 's|log.%m|%m.log|g' $startdir/pkg/etc/samba/smb.conf.default + # nsswitch libraries + install -D -m755 nsswitch/libnss_wins.so $startdir/pkg/lib/libnss_wins.so + ln -s libnss_wins.so $startdir/pkg/lib/libnss_wins.so.2 + install -D -m755 nsswitch/libnss_winbind.so $startdir/pkg/lib/libnss_winbind.so + install -D -m755 bin/pam_winbind.so $startdir/pkg/lib/security/pam_winbind.so + # remove conflict files of smbclient and tdb + for man in libsmbclient smbspool \ + umount.cifs mount.cifs net; do + rm -f ${startdir}/pkg/usr/share/man/man8/${man}.8 + done + for i in libnetapi* libtdb* libtalloc* libwbclient*; do + rm -f ${startdir}/pkg/usr/lib/samba/$i + done + rm -f ${startdir}/pkg/usr/bin/tdbbackup + rm -f ${startdir}/pkg/usr/include/{tdb.h,talloc.h,netapi.h} + for man in rpcclient smbcacls smbclient smbcquotas \ + smbtree smbtar nmblookup smbget; do + rm -f ${startdir}/pkg/usr/share/man/man1/${man}.1 + done + rm -f ${startdir}/pkg/usr/share/man/man7/libsmbclient.7 + + rm -f ${startdir}/pkg/usr/include/libsmbclient.h +} |