From 36ad64990bd249d48dc78ba59792e718790e1276 Mon Sep 17 00:00:00 2001 From: Donny Davies Date: Sun, 15 Feb 2004 08:04:24 +0000 Subject: samba-3.0.2a --- net-fs/samba/Manifest | 4 +- net-fs/samba/files/digest-samba-3.0.2a | 3 + net-fs/samba/files/smb.conf.example-samba3 | 6 +- net-fs/samba/samba-3.0.2a.ebuild | 419 +++++++++++++++++++++++++++++ 4 files changed, 428 insertions(+), 4 deletions(-) create mode 100644 net-fs/samba/files/digest-samba-3.0.2a create mode 100644 net-fs/samba/samba-3.0.2a.ebuild (limited to 'net-fs') diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest index 09e64ed938d0..3ca5fb348967 100644 --- a/net-fs/samba/Manifest +++ b/net-fs/samba/Manifest @@ -2,8 +2,8 @@ MD5 30190ad2dc86a988bb9ac7021e728577 samba-3.0.0-r1.ebuild 10882 MD5 11978d96cfebe10cabfbc2c6da2f04ee samba-2.2.8a.ebuild 10853 MD5 c60dc84e4426dc9c0dd4a350f15caed5 samba-3.0.1.ebuild 11341 MD5 1ae0da814c10f7df5be30c27d4273ebb samba-3.0.1-r1.ebuild 11369 -MD5 21a22779c79884efdfb43bb424ca2c77 samba-3.0.2a.ebuild 11476 -MD5 efbed29da5ab1682f1f71993586e9e06 ChangeLog 13625 +MD5 5991629f1fd030a74b0ec1b12e04a292 samba-3.0.2a.ebuild 11471 +MD5 701cc46d94b035136c96f03c408c1f10 ChangeLog 13622 MD5 eeb3ec0ae25e9d4f7ce62c32b52d5996 metadata.xml 466 MD5 cac4662bb25a75115b40c9558de26f26 files/winbind-init 503 MD5 9780745de080ee53a34c1b2f9fb1f228 files/digest-samba-2.2.8a 135 diff --git a/net-fs/samba/files/digest-samba-3.0.2a b/net-fs/samba/files/digest-samba-3.0.2a new file mode 100644 index 000000000000..87a8e61d1838 --- /dev/null +++ b/net-fs/samba/files/digest-samba-3.0.2a @@ -0,0 +1,3 @@ +MD5 72979a30ac450c8b0567c1ac9886884a samba-3.0.2a.tar.bz2 9289178 +MD5 acbcb28cff080dcf2ee732b7f2c0f949 samba-vscan-0.3.4.tar.bz2 131027 +MD5 34ef159fc49a2c30ff27b481dc8e1215 smbldap-tools-0.8.4.tgz 286290 diff --git a/net-fs/samba/files/smb.conf.example-samba3 b/net-fs/samba/files/smb.conf.example-samba3 index a801c571c1f4..c2432acdd202 100644 --- a/net-fs/samba/files/smb.conf.example-samba3 +++ b/net-fs/samba/files/smb.conf.example-samba3 @@ -338,9 +338,11 @@ # Enabling internationalization: # you can match a Windows code page with a UNIX character set. # Windows: 437 (US), 737 (GREEK), 850 (Latin1 - Western European), -# 852 (Eastern Eu.), 861 (Icelandic), 932 (Cyrillic - Russian), -# 936 (Japanese - Shift-JIS), 936 (Simpl. Chinese), 949 (Korean Hangul), +# 852 (Czech), 861 (???), 932 (Japanese), +# 936 (Simplified Chin.), 949 (Korean Hangul), # 950 (Trad. Chin.). +# More detail about code page is in +# "http://www.microsoft.com/globaldev/reference/oslocversion.mspx" # UNIX: ISO8859-1 (Western European), ISO8859-2 (Eastern Eu.), # ISO8859-5 (Russian Cyrillic), KOI8-R (Alt-Russ. Cyril.) # This is an example for french users: diff --git a/net-fs/samba/samba-3.0.2a.ebuild b/net-fs/samba/samba-3.0.2a.ebuild new file mode 100644 index 000000000000..40a8731dc619 --- /dev/null +++ b/net-fs/samba/samba-3.0.2a.ebuild @@ -0,0 +1,419 @@ +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.2a.ebuild,v 1.1 2004/02/15 08:04:15 woodchip 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.4 +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 + amd64? ( ) : ( ldap? ( kerberos? ( app-crypt/mit-krb5 ) ) ) + mysql? ( dev-db/mysql sys-libs/zlib ) + xml? ( dev-libs/libxml2 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 ~ppc64 ~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:' \ + -e 's:::' \ + ${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 && use ldap \ + && 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} +} -- cgit v1.2.3-65-gdbad