summaryrefslogtreecommitdiffstats
path: root/abs/core/samba
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/samba')
-rw-r--r--abs/core/samba/PKGBUILD129
1 files changed, 90 insertions, 39 deletions
diff --git a/abs/core/samba/PKGBUILD b/abs/core/samba/PKGBUILD
index 24b2dba..44996c6 100644
--- a/abs/core/samba/PKGBUILD
+++ b/abs/core/samba/PKGBUILD
@@ -1,39 +1,91 @@
-# $Id: PKGBUILD 37517 2009-05-02 16:35:12Z tpowa $
-# Maintainer: judd <jvinet@zeroflux.org>
-pkgname=samba
-pkgver=3.3.4
+# $Id: PKGBUILD 64318 2010-01-19 19:31:39Z tpowa $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+pkgbase=samba
+pkgname=('smbclient' 'samba')
+pkgver=3.4.5
# 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.3.4
-pkgrel=1
-pkgdesc="Tools to access a server's filespace and printers via SMB"
+_realver=3.4.5
+pkgrel=3
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.3.4' 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'tdb=3.3.4')
+makedepends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'talloc' 'tdb')
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)
+source=(http://us1.samba.org/samba/ftp/stable/${pkgbase}-${_realver}.tar.gz
+ samba samba.logrotate
+ swat.xinetd
+ samba.pam
+ samba.conf.d)
+### UNINSTALL dmapi package before building!!!
build() {
- cd ${srcdir}/${pkgname}-${_realver}/source
- patch -Np2 -i ${srcdir}/no-clients.patch || return 1
-
- ./configure --prefix=/usr --with-configdir=/etc/samba \
+ cd ${srcdir}/${pkgbase}-${_realver}/source3
+ ./configure --prefix=/usr \
+ --libdir=/usr/lib/ \
+ --localstatedir=/var \
+ --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 \
- --with-syslog --with-pam_smbpass \
- --localstatedir=/var --disable-dnssd \
- --disable-avahi --libdir=/usr/lib/samba --without-fam
+ --with-fhs \
+ --with-pam \
+ --with-pam_smbpass \
+ --with-pammodulesdir=/lib/security \
+ --with-ads \
+ --with-acl-support \
+ --with-cifsmount \
+ --with-libsmbclient \
+ --with-syslog \
+ --enable-external-libtalloc \
+ --disable-dnssd \
+ --disable-avahi \
+ --without-libtdb --disable-fam
make || return 1
+}
+
+package_smbclient () {
+pkgdesc="Tools to access a server's filespace and printers via SMB"
+depends=('readline>=5.0.00' 'popt' 'libldap>=2.4.11-1' 'libcap>=2.16' 'heimdal>=1.2-1' 'db>=4.7' 'e2fsprogs' 'tdb' 'talloc')
+ cd ${srcdir}/${pkgbase}-${_realver}/source3
+ mkdir -p ${pkgdir}/usr/bin ${pkgdir}/sbin ${pkgdir}/usr/lib
+ install -m755 bin/{smbclient,rpcclient,smbspool,smbtree,smbcacls,smbcquotas,smbget,net,nmblookup} ${pkgdir}/usr/bin/
+ install -m755 bin/{mount.cifs,umount.cifs} ${pkgdir}/sbin/
+ for i in libnetapi* libwbclient* libsmbclient*;do
+ cp -a bin/${i}*.so* ${pkgdir}/usr/lib/
+ done
+ install -m755 script/smbtar ${pkgdir}/usr/bin/
+ mkdir -p ${pkgdir}/usr/lib/cups/backend
+ ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb
+ mkdir -p ${pkgdir}/usr/include
+ install -m644 include/libsmbclient.h ${pkgdir}/usr/include/
+ install -m644 lib/netapi/netapi.h ${pkgdir}/usr/include/
+ mkdir -p ${pkgdir}/usr/share/man/man{1,7,8}
+ for man in smbspool \
+ umount.cifs mount.cifs net; do
+ install -m644 ../docs/manpages/${man}.8 ${pkgdir}/usr/share/man/man8/
+ done
+ for man in rpcclient smbcacls smbclient smbcquotas smbget \
+ smbtree smbtar nmblookup; do
+ install -m644 ../docs/manpages/${man}.1 ${pkgdir}/usr/share/man/man1/
+ done
+ install -m644 ../docs/manpages/libsmbclient.7 ${pkgdir}/usr/share/man/man7/
+}
+
+package_samba () {
+pkgdesc="Tools to access a server's filespace and printers via SMB"
+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>=$pkgver" 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'fam' 'gnutls>=2.4.1' 'e2fsprogs' 'tdb' 'talloc')
+ cd ${srcdir}/samba-${_realver}/source3
mkdir -p ${pkgdir}/var/log/samba
mkdir -p ${pkgdir}/etc/samba/private
chmod 700 ${pkgdir}/etc/samba/private
- make DESTDIR=$startdir/pkg install
+ make DESTDIR=${pkgdir} install || return 1
chmod 644 ${pkgdir}/usr/include/*.h
rm -rf ${pkgdir}/usr/var
(cd script; cp installbin.sh i; cat i | sed 's/\/sbin\///' > installbin.sh)
@@ -45,42 +97,41 @@ build() {
install -D -m644 ../../samba.logrotate ${pkgdir}/etc/logrotate.d/samba
install -D -m644 ../../swat.xinetd ${pkgdir}/etc/xinetd.d/swat
install -D -m644 ../../samba.pam ${pkgdir}/etc/pam.d/samba
- # symlink libs
- for i in ${pkgdir}/usr/lib/samba/libsmbshare*; do
- ln -sf samba/$(basename $i) ${pkgdir}/usr/lib/$(basename $i)
- done
# spool directory
install -d -m1777 ${pkgdir}/var/spool/samba
sed -i 's|/usr/spool/samba|/var/spool/samba|g' ${pkgdir}/etc/samba/smb.conf.default
# fix logrotate
sed -i -e 's|log.%m|%m.log|g' ${pkgdir}/etc/samba/smb.conf.default
# nsswitch libraries
- install -D -m755 nsswitch/libnss_wins.so ${pkgdir}/lib/libnss_wins.so
+ install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_wins.so ${pkgdir}/lib/libnss_wins.so
ln -s libnss_wins.so ${pkgdir}/lib/libnss_wins.so.2
- install -D -m755 nsswitch/libnss_winbind.so ${pkgdir}/lib/libnss_winbind.so
- install -D -m755 bin/pam_winbind.so ${pkgdir}/lib/security/pam_winbind.so
- # remove conflict files of smbclient and tdb
+ install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/lib/libnss_winbind.so
+ # remove conflict files of smbclient
for man in libsmbclient smbspool \
umount.cifs mount.cifs net; do
- rm -f ${pkgdir}/usr/share/man/man8/${man}.8
+ rm -f ${pkgdir}/usr/share/man/man8/${man}.8
+ done
+ for i in libnetapi* libwbclient* libsmbclient*;do
+ rm -f ${pkgdir}/usr/lib/$i
done
- for i in libnetapi* libtdb* libtalloc* libwbclient*; do
- rm -f ${pkgdir}/usr/lib/samba/$i
+ for bin in net \
+ nmblookup rpcclient smbcacls smbclient \
+ smbcquotas smbget smbspool smbtar smbtree; do
+ rm -f ${pkgdir}/usr/bin/$bin
done
- rm -f ${pkgdir}/usr/bin/tdbbackup
- rm -f ${pkgdir}/usr/include/{tdb.h,talloc.h,netapi.h}
+ rm -f ${pkgdir}/usr/include/netapi.h
for man in rpcclient smbcacls smbclient smbcquotas \
smbtree smbtar nmblookup smbget; do
- rm -f ${pkgdir}/usr/share/man/man1/${man}.1
+ rm -f ${pkgdir}/usr/share/man/man1/${man}.1
done
rm -f ${pkgdir}/usr/share/man/man7/libsmbclient.7
-
rm -f ${pkgdir}/usr/include/libsmbclient.h
+ # remove conflict files of tdb
+ rm -f ${pkgdir}/usr/bin/{tdbbackup,tdbdump,tdbtool}
# copy ldap example
- install -D -m644 ${srcdir}/${pkgname}-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema
+ install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema
}
-md5sums=('1443165edb7cb3f56f1e77aec1ee3266'
- 'ce3d88336ade7522e9a8f59bb306accd'
+md5sums=('8e8a484782f2b7716b6c6bd9a7d2bf71'
'e93533fa2296c07c1f645dfdd373657f'
'5697da77590ec092cc8a883bae06093c'
'a4bbfa39fee95bba2e7ad6b535fae7e6'