diff options
Diffstat (limited to 'net-fs/samba/samba-3.0.1-r1.ebuild')
-rw-r--r-- | net-fs/samba/samba-3.0.1-r1.ebuild | 417 |
1 files changed, 0 insertions, 417 deletions
diff --git a/net-fs/samba/samba-3.0.1-r1.ebuild b/net-fs/samba/samba-3.0.1-r1.ebuild deleted file mode 100644 index 9373f7072712..000000000000 --- a/net-fs/samba/samba-3.0.1-r1.ebuild +++ /dev/null @@ -1,417 +0,0 @@ -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.1-r1.ebuild,v 1.8 2004/06/24 22:43:47 agriffis Exp $ - -inherit eutils - -IUSE="kerberos mysql xml acl cups ldap pam readline python" -IUSE="${IUSE} oav" - -DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX" -HOMEPAGE="http://www.samba.org/ - http://www.openantivirus.org/projects.php" - -SMBLDAP_TOOLS_VER=0.8.2 -VSCAN_VER=0.3.4 -VSCAN_MODS=${VSCAN_MODS:=fprot mks openantivirus sophos trend icap clamav} #kapersky -# To build the "kapersky" plugin, the kapersky lib must be installed. - -_CVS="-${PV/_/}" -S=${WORKDIR}/${PN}${_CVS} - -SRC_URI="mirror://samba/${PN}${_CVS}.tar.bz2 - oav? mirror://sourceforge/openantivirus/${PN}-vscan-${VSCAN_VER}.tar.bz2 - ldap? http://samba.idealx.org/dist/smbldap-tools-${SMBLDAP_TOOLS_VER}.tgz" - -_COMMON_DEPS="dev-libs/popt - readline? sys-libs/readline - kerberos? ( app-crypt/mit-krb5 ) - mysql? ( dev-db/mysql sys-libs/zlib ) - acl? sys-apps/acl - cups? net-print/cups - ldap? net-nds/openldap - pam? sys-libs/pam - python? dev-lang/python" -DEPEND="sys-devel/autoconf - >=sys-apps/sed-4 - ${_COMMON_DEPS}" -#IDEALX scripts are now using Net::LDAP -RDEPEND="ldap? dev-perl/perl-ldap ${_COMMON_DEPS}" - -KEYWORDS="~x86 ppc ~sparc ~mips ~hppa ~amd64 ia64 ~alpha" -LICENSE="GPL-2" -SLOT="0" - -src_unpack() { - local i - unpack ${A} || die - cd ${S} || die - - # Clean up CVS - find . -name .cvsignore | xargs rm -f - find . -name CVS | xargs rm -rf - - # Add patch(es) - #Next one is from eger@cc.gatech.edu :) - patch -p1 <${FILESDIR}/samba-3.0.0-python-setup.patch || die - #Fix for bug #27858 - if [ "${ARCH}" = "sparc" -o "${ARCH}" = "ppc" ] - then - cd ${S}/source/include - epatch ${FILESDIR}/samba-2.2.8-statfs.patch - fi - #Bug #36200; sys-kernel/linux-headers dependent - sed -i -e 's:#define LINUX_QUOTAS_2:#define LINUX_QUOTAS_1:' \ - ${S}/source/smbd/quotas.c - - # For clean docs packaging sake. - rm -rf ${S}/examples.bin - cp -a ${S}/examples ${S}/examples.bin - - # Prep samba-vscan source. - if use oav - then - cp -a ${WORKDIR}/${PN}-vscan-${VSCAN_VER} \ - ${S}/examples.bin/VFS - fi - - cd ${S}/source - echo "Running autoconf ..." - autoconf || die -} - -src_compile() { - local i - local myconf - local mymods - - #this is deprecated... - #mymods="nisplussam" - use xml && mymods="xml,${mymods}" - use mysql && mymods="mysql,${mymods}" - - myconf="--with-expsam=${mymods}" - - use acl \ - && myconf="${myconf} --with-acl-support" \ - || myconf="${myconf} --without-acl-support" - - use pam \ - && myconf="${myconf} --with-pam --with-pam_smbpass" \ - || myconf="${myconf} --without-pam --without-pam_smbpass" - - use cups \ - && myconf="${myconf} --enable-cups" \ - || myconf="${myconf} --disable-cups" - - use ldap \ - && myconf="${myconf} --with-ldap" \ - || myconf="${myconf} --without-ldap" - #this is for old samba 2.x compat - #myconf="${myconf} --with-ldapsam" - myconf="${myconf} --without-ldapsam" - - if [ "${ARCH}" != "amd64" ] - then - use kerberos \ - && myconf="${myconf} --with-ads" \ - || myconf="${myconf} --without-ads" - else - myconf="${myconf} --without-ads" - fi - - use python \ - && myconf="${myconf} --with-python=yes" \ - || myconf="${myconf} --with-python=no" - - use readline \ - && myconf="${myconf} --with-readline" \ - || myconf="${myconf} --without-readline" - - einfo "\$myconf is: $myconf" - - #default_{static,shared}_modules|source/configure - #/usr/lib/samba/auth/............. AUTH_MODULES - #/usr/lib/samba/charset/ CHARSET_MODULES - #/usr/lib/samba/pdb/.............. PDB_MODULES - #/usr/lib/samba/rpc/ RPC_MODULES - #/usr/lib/samba/vfs/.............. VFS_MODULES|source/Makefile - #/usr/lib/samba/lowcase.dat - #/usr/lib/samba/upcase.dat - #/usr/lib/samba/valid.dat - - cd source - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc/samba \ - --localstatedir=/var \ - --libdir=/usr/lib/samba \ - --with-privatedir=/etc/samba/private \ - --with-lockdir=/var/cache/samba \ - --with-piddir=/var/run/samba \ - --with-swatdir=/usr/share/swat \ - --with-configdir=/etc/samba \ - --with-logfilebase=/var/log/samba \ - \ - --enable-static --enable-shared \ - --with-manpages-langs=en \ - --without-spinlocks \ - --with-libsmbclient \ - --with-automount \ - --with-smbmount \ - --with-winbind \ - --with-quotas \ - --with-syslog \ - --with-idmap \ - --host=${CHOST} ${myconf} || die - - # Compile main SAMBA pieces. - make everything || die "SAMBA pieces" - make rpctorture || ewarn "rpctorture didnt build" - - # Build selected samba-vscan plugins. - if use oav - then - cd ${S}/examples.bin/VFS/${PN}-vscan-${VSCAN_VER} - ./configure - assert "bad ${PN}-vscan-${VSCAN_VER} ./configure" - - for i in ${VSCAN_MODS} - do - cd ${S}/examples.bin/VFS/${PN}-vscan-${VSCAN_VER}/$i - make USE_INCLMKSDLIB=1 #needed for the mks build - assert "problem building $i vscan module" - done - fi - - # Build mkntpasswd from the smbldap-tools. - if use ldap - then - cd ${WORKDIR}/smbldap-tools-${SMBLDAP_TOOLS_VER} - tar --no-same-owner -zxf mkntpwd.tar.gz - cd mkntpwd - VISUAL="" make || die "mkntpwd compile problem" - fi - - # Build mount.cifs - cd ${S}/source - gcc ${CFLAGS} client/mount.cifs.c -o bin/mount.cifs - assert "mount.cifs compile problem" -} - -src_install() { -# For testing brokeness of make install -# cd source -# make DESTDIR=${D} install installmodules install_python -# assert "It would be nice if that just worked." - - # Install standard binary files. - for i in smbclient net smbspool testparm testprns smbstatus \ - smbcontrol smbtree tdbbackup nmblookup pdbedit \ - smbpasswd rpcclient smbcacls profiles ntlm_auth \ - smbcquotas smbmount smbmnt smbumount wbinfo \ - debug2html smbfilter talloctort mount.cifs #smbsh editreg - do - exeinto /usr/bin - doexe source/bin/${i} - done - doexe source/script/{smbtar,findsmb} - - # TORTURE_PROGS / Testing stuff, if they built they will come. - for i in smbtorture msgtest masktest locktest locktest2 \ - nsstest vfstest rpctorture - do - if [ -x source/bin/${i} ] - then - exeinto /usr/bin - doexe source/bin/${i} - fi - done - - # Installing these setuid-root allows users to (un)mount smbfs/cifs. - fperms 4111 /usr/bin/smbumount - fperms 4111 /usr/bin/smbmnt - fperms 4111 /usr/bin/mount.cifs - - # Install server binaries. - for i in smbd nmbd swat winbindd # wrepld - do - exeinto /usr/sbin - doexe source/bin/${i} - done - - # Libraries. - exeinto /usr/lib - #broken for a while now with some wacky glibc issue - #doexe source/bin/smbwrapper.so - doexe source/bin/libsmbclient.so - insinto /usr/lib - doins source/bin/libsmbclient.a - insinto /usr/include - doins source/include/libsmbclient.h - exeinto /lib/security - doexe source/nsswitch/pam_winbind.so - use pam && doexe source/bin/pam_smbpass.so - - # Nsswitch extensions. - for i in wins winbind - do - exeinto /lib - doexe source/nsswitch/libnss_${i}.so - done - # make link for wins and winbind resolvers.. - ( cd ${D}/lib ; ln -s libnss_wins.so libnss_wins.so.2 ) - ( cd ${D}/lib ; ln -s libnss_winbind.so libnss_winbind.so.2 ) - - # Python extensions. - if use python - then - cd source - python python/setup.py install --root=${D} || die - cd .. - fi - - # VFS plugin modules. - exeinto /usr/lib/samba/vfs - if use oav - then - doexe examples.bin/VFS/${PN}-vscan-${VSCAN_VER}/*/vscan-*.so - fi - for i in audit cap default_quota extd_audit fake_perms \ - netatalk readonly recycle - do - if [ -x source/bin/${i}.so ] - then - doexe source/bin/${i}.so - fi - done - - # Passdb modules. - exeinto /usr/lib/samba/pdb - use mysql && doexe source/bin/mysql.so - use xml && doexe source/bin/xml.so - - # Install codepage data files. - insinto /usr/lib/samba - doins source/codepages/*.dat - - # Install SWAT helper files. - for i in swat/help/*.html docs/htmldocs/*.html - do - insinto /usr/share/swat/help - doins ${i} - done - for i in swat/images/*.gif - do - insinto /usr/share/swat/images - doins ${i} - done - for i in swat/include/*.html - do - insinto /usr/share/swat/include - doins ${i} - done - - # Install IDEALX scripts for LDAP backend administration. - if use ldap; then - cd ${WORKDIR}/smbldap-tools-${SMBLDAP_TOOLS_VER} - exeinto /usr/share/samba/scripts ; doexe smbldap-*.pl - exeinto /usr/sbin ; doexe mkntpwd/mkntpwd - insinto /etc/samba ; doins smbldap_conf.pm - exeinto /etc/samba ; doexe smbldap_tools.pm - eval `perl '-V:installarchlib'` - dodir ${installarchlib} - dosym /etc/samba/smbldap_conf.pm ${installarchlib} - dosym /etc/samba/smbldap_conf.pm /usr/share/samba/scripts - dosym /etc/samba/smbldap_tools.pm ${installarchlib} - dosym /etc/samba/smbldap_tools.pm /usr/share/samba/scripts - cd ${S} - fi - - # Install man pages. - doman docs/manpages/* - - # SAMBA has a lot of docs, so this just basically - # installs them all! We don't want two copies of - # the book or manpages though, so: - rm -rf docs/htmldocs/using_samba docs/manpages - # - dodoc COPYING Manifest README Roadmap WHATSNEW.txt - docinto full_docs - cp -a docs/* ${D}/usr/share/doc/${PF}/full_docs - docinto examples - dodoc ${FILESDIR}/nsswitch.conf-{wins,winbind} - cp -a examples/* ${D}/usr/share/doc/${PF}/examples - prepalldocs - # and we should unzip the html docs.. - gunzip ${D}/usr/share/doc/${PF}/full_docs/faq/* - gunzip ${D}/usr/share/doc/${PF}/full_docs/htmldocs/* - if use oav; then - docinto ${PN}-vscan-${VSCAN_VER} - cd ${WORKDIR}/${PN}-vscan-${VSCAN_VER} - dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO - dodoc */*.conf - cd ${S} - fi - if use ldap; then - docinto smbldap-tools-${SMBLDAP_TOOLS_VER} - cd ${WORKDIR}/smbldap-tools-${SMBLDAP_TOOLS_VER} - dodoc CONTRIBUTORS COPYING ChangeLog FILES INFRA INSTALL README TODO - cd ${S} - fi - chown -R root:root ${D}/usr/share/doc/${PF} - - # link /usr/bin/smbmount to /sbin/mount.smbfs which allows it - # to work transparently with the standard 'mount' command.. - dodir /sbin - dosym /usr/bin/smbmount /sbin/mount.smbfs - - # make the smb backend symlink for cups printing support.. - if use cups; then - dodir /usr/lib/cups/backend - dosym /usr/bin/smbspool /usr/lib/cups/backend/smb - fi - - # Now the config files. - insinto /etc - insinto /etc/samba - doins ${FILESDIR}/smbusers - newins ${FILESDIR}/smb.conf.example-samba3 smb.conf.example - doins ${FILESDIR}/lmhosts - doins ${FILESDIR}/recycle.conf - - insinto /etc/pam.d - newins ${FILESDIR}/samba.pam samba - doins ${FILESDIR}/system-auth-winbind - - exeinto /etc/init.d - newexe ${FILESDIR}/samba-init samba - newexe ${FILESDIR}/winbind-init winbind - - insinto /etc/xinetd.d - newins ${FILESDIR}/swat.xinetd swat - - if use ldap; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi -} - -pkg_postinst() { - # touch /etc/samba/smb.conf so that people installing samba just - # to mount smb shares don't get annoying warnings all the time.. - if [ ! -e ${ROOT}/etc/samba/smb.conf ] ; then - touch ${ROOT}/etc/samba/smb.conf - fi - - # empty dirs.. - install -m0700 -o root -g root -d ${ROOT}/etc/samba/private - install -m1777 -o root -g root -d ${ROOT}/var/spool/samba - install -m0755 -o root -g root -d ${ROOT}/var/log/samba - install -m0755 -o root -g root -d ${ROOT}/var/log/samba3 - install -m0755 -o root -g root -d ${ROOT}/var/run/samba - install -m0755 -o root -g root -d ${ROOT}/var/cache/samba - install -m0755 -o root -g root -d ${ROOT}/var/lib/samba/{netlogon,profiles} - install -m0755 -o root -g root -d \ - ${ROOT}/var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC} -} |