summaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorJon Nall <nall@gentoo.org>2002-10-26 23:32:04 +0000
committerJon Nall <nall@gentoo.org>2002-10-26 23:32:04 +0000
commit79f4c90e9e9bfbecf4d5de7f45c8a1c055cf3225 (patch)
tree44c25f08dba9025adb5f77aa0239fab7fd1ba89f /net-fs
parentFixes #9615 (diff)
downloadgentoo-2-79f4c90e9e9bfbecf4d5de7f45c8a1c055cf3225.tar.gz
gentoo-2-79f4c90e9e9bfbecf4d5de7f45c8a1c055cf3225.tar.bz2
gentoo-2-79f4c90e9e9bfbecf4d5de7f45c8a1c055cf3225.zip
added a patch so samba will link libresolv.so if using ldap w/o sasl support
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/samba/ChangeLog13
-rw-r--r--net-fs/samba/files/digest-samba-2.2.6-r11
-rw-r--r--net-fs/samba/files/samba-2.2.6-libresolv.patch10
-rw-r--r--net-fs/samba/samba-2.2.6-r1.ebuild395
4 files changed, 416 insertions, 3 deletions
diff --git a/net-fs/samba/ChangeLog b/net-fs/samba/ChangeLog
index 3e78d396b4a5..1b9b1d407b94 100644
--- a/net-fs/samba/ChangeLog
+++ b/net-fs/samba/ChangeLog
@@ -1,13 +1,20 @@
# ChangeLog for net-fs/samba
# Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.17 2002/10/26 18:22:46 woodchip Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.18 2002/10/26 23:32:04 nall Exp $
- 26 Oct 2002; Donny Davies <woodchip@gentoo.org> : Fix openldap dependency :)
+*samba-2.2.6-r1 (Oct 26 2002)
+ 26 Oct 2002; Jon Nall <nall@gentoo.org> :
+ samba expects ldap to depend on sasl in order for libresolv.so to
+ get linked in, but ldap need not be compiled with sasl support. in
+ this case samba needs to link in libresolv.so
- 25 Oct 2002; Donny Davies <woodchip@gentoo.org> : Fix openldap dependency from #9249.
*samba-2.2.6 (Oct 24 2002)
+ 26 Oct 2002; Donny Davies <woodchip@gentoo.org> : Fix openldap dependency :)
+
+ 25 Oct 2002; Donny Davies <woodchip@gentoo.org> : Fix openldap dependency from #9249.
+
24 Oct 2002; Donny Davies <woodchip@gentoo.org> :
Chase latest release. New local USE vscan flag for building the
openantivirus project plugins. Added several more ldap files
diff --git a/net-fs/samba/files/digest-samba-2.2.6-r1 b/net-fs/samba/files/digest-samba-2.2.6-r1
new file mode 100644
index 000000000000..d8fd4d11ca88
--- /dev/null
+++ b/net-fs/samba/files/digest-samba-2.2.6-r1
@@ -0,0 +1 @@
+MD5 147efc95ecd4ca69ec679c73f246e5de samba-2.2.6.tar.bz2 4390352
diff --git a/net-fs/samba/files/samba-2.2.6-libresolv.patch b/net-fs/samba/files/samba-2.2.6-libresolv.patch
new file mode 100644
index 000000000000..68da94962a64
--- /dev/null
+++ b/net-fs/samba/files/samba-2.2.6-libresolv.patch
@@ -0,0 +1,10 @@
+--- source/configure.in.orig 2002-10-26 15:49:04.000000000 -0500
++++ source/configure.in 2002-10-26 15:49:51.000000000 -0500
+@@ -2088,6 +2088,7 @@
+ AC_DEFINE(WITH_LDAP_SAM)
+ LDAPLIBS="-lldap"
+ AC_CHECK_LIB(lber, ber_bvfree, [LDAPLIBS="$LDAPLIBS -llber"])
++ AC_CHECK_LIB(resolv, __res_query, [LDAPLIBS="-lresolv $LDAPLIBS"])
+ ## remove -lresolv as this should be included by the -lsasl dependency
+ ## in the OpenLDAP clients. By not requiring it specifically, we avoid
+ ## issues on platforms that don't have it
diff --git a/net-fs/samba/samba-2.2.6-r1.ebuild b/net-fs/samba/samba-2.2.6-r1.ebuild
new file mode 100644
index 000000000000..1df518c7c189
--- /dev/null
+++ b/net-fs/samba/samba-2.2.6-r1.ebuild
@@ -0,0 +1,395 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-2.2.6-r1.ebuild,v 1.1 2002/10/26 23:32:04 nall Exp $
+
+IUSE="tcpd ldap cups ssl acl vscan"
+
+inherit perl-module
+
+# please test/report your experiences with these new VFS plugins.
+VSCAN_VER=0.2.5e
+VSCAN_MODS="fprot mks openantivirus" #kaspersky sophos symantec trend
+#need libs/headers/extra support for these ones^^
+
+DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
+HOMEPAGE="http://www.samba.org"
+
+S=${WORKDIR}/${P}
+SRC_URI="vscan? mirror://sourceforge/openantivirus/${PN}-vscan-${VSCAN_VER}.tar.gz
+ http://us2.samba.org/samba/ftp/${P}.tar.bz2"
+
+DEPEND=">=sys-libs/pam-0.72
+ acl? ( sys-apps/acl )
+ cups? ( net-print/cups )
+ ldap? ( =net-nds/openldap-2* )
+ ssl? ( >=dev-libs/openssl-0.9.6 )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+ vscan? ( >=dev-libs/popt-1.6.3 )"
+KEYWORDS="~x86 ~ppc ~sparc64"
+LICENSE="GPL-2"
+SLOT="0"
+
+src_unpack() {
+ local i
+ unpack ${A} || die
+ cd ${S} || die
+
+ patch -p0 < ${FILESDIR}/samba-2.2.2-smbmount.diff || die
+ patch -p1 < ${FILESDIR}/samba-2.2.5-gp-reloc-fix.patch || die
+ cd source/client; patch -p0 < ${FILESDIR}/samba-2.2.6-smbumount_lazy.patch || die
+
+ if use portldap; then
+ cd ${S}/source
+ patch -p0 < $FILESDIR/nonroot-bind.diff || die
+ cd ${S}
+ fi
+
+ if use ldap ; then
+ if ! use sasl ; then
+ cd ${S}
+ patch -p0 < ${FILESDIR}/samba-2.2.6-libresolv.patch || die
+ fi
+ fi
+
+ # fix kerberos include file collision..
+ cd ${S}/source/include
+ mv profile.h smbprofile.h
+ sed -e "s:profile\.h:smbprofile.h:" includes.h > includes.h.new
+ mv includes.h.new includes.h
+
+ # for clean docs packaging sake, make a copy..
+ cp -a ${S}/examples ${S}/examples.bin
+ if use vscan; then
+ # prep source for selected vscan plugin modules..
+ for i in ${VSCAN_MODS}
+ do
+ cp -a ${WORKDIR}/${PN}-vscan-${VSCAN_VER}/$i \
+ ${S}/examples.bin/VFS
+ done
+ fi
+
+ cd ${S}/source
+ autoconf || die
+}
+
+src_compile() {
+ local i myconf
+ use acl && myconf="${myconf} --with-acl-support" || myconf="${myconf} --without-acl-support"
+ use ssl && myconf="${myconf} --with-ssl" || myconf="${myconf} --without-ssl"
+ use cups && myconf="${myconf} --enable-cups" || myconf="${myconf} --disable-cups"
+ use ldap && myconf="${myconf} --with-ldapsam" || myconf="${myconf} --without-ldapsam"
+
+ cd ${S}/source
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/sbin \
+ --libdir=/etc/samba \
+ --sbindir=/usr/sbin \
+ --sysconfdir=/etc/samba \
+ --localstatedir=/var/log \
+ --with-configdir=/etc/samba \
+ --with-mandir=/usr/share/man \
+ --with-piddir=/var/run/samba \
+ --with-lockdir=/var/run/samba \
+ --with-swatdir=/usr/share/swat \
+ --with-privatedir=/etc/samba/private \
+ --with-codepagedir=/var/lib/samba/codepages \
+ --with-pam --with-pam_smbpass \
+ --without-sambabook \
+ --without-automount \
+ --without-spinlocks \
+ --with-libsmbclient \
+ --with-smbwrapper \
+ --with-netatalk \
+ --with-smbmount \
+ --with-profile \
+ --with-quotas \
+ --with-syslog \
+ --with-msdfs \
+ --with-utmp \
+ --with-vfs \
+ --host=${CHOST} ${myconf} || die "bad ./configure"
+
+ # compile samba..
+ make all smbfilter smbwrapper smbcacls pam_smbpass \
+ nsswitch nsswitch/libnss_wins.so debug2html
+ assert "samba compile problem"
+
+ # compile the bundled vfs modules..
+ cd ${S}/examples.bin/VFS
+ ./configure \
+ --prefix=/usr \
+ --mandir=/usr/share/man || die "bad ./configure"
+ make || die "VFS modules compile problem"
+
+ # compile mkntpasswd in examples/LDAP/ for smbldaptools..
+ if use ldap; then
+ cd ${S}/examples.bin/LDAP/smbldap-tools/mkntpwd
+ make || die "mkntpwd compile problem"
+ fi
+
+ # compile the selected antivirus vfs plugins..
+ if use vscan; then
+ for i in ${VSCAN_MODS}
+ do
+ cd ${S}/examples.bin/VFS/$i && make
+ assert "problem building $i vscan module"
+ done
+ fi
+}
+
+src_install() {
+ local i
+
+ # we may as well do this all manually since it was starting
+ # to get out of control and samba _does_ have some rather
+ # silly installation quirks ;) much of this was adapted
+ # from mandrake's .spec file..
+ #
+ # // woodchip - 5 May 2002
+
+
+ # install standard binary files..
+ for i in nmblookup smbclient smbpasswd smbstatus testparm testprns \
+ make_smbcodepage make_unicodemap make_printerdef rpcclient \
+ smbspool smbcacls smbclient smbmount smbumount smbsh wbinfo
+ do
+ exeinto /usr/bin
+ doexe source/bin/${i}
+ done
+ # make users lives easier..
+ fperms 4755 /usr/bin/smbumount
+
+
+ # libraries..
+ exeinto /usr/lib
+ doexe source/bin/smbwrapper.so
+ doexe source/bin/libsmbclient.so
+ insinto /usr/lib
+ doins source/bin/libsmbclient.a
+ exeinto /lib/security
+ doexe source/bin/pam_smbpass.so
+ doexe source/nsswitch/pam_winbind.so
+
+
+ # vfs modules..
+ exeinto /usr/lib/samba/vfs
+ doexe examples.bin/VFS/audit.so
+ doexe examples.bin/VFS/block/block.so
+ doexe examples.bin/VFS/recycle/recycle.so
+ use vscan && doexe examples.bin/VFS/*/vscan-*.so
+
+
+ # some utility scripts..
+ for i in mksmbpasswd.sh smbtar convert_smbpasswd
+ do
+ exeinto /usr/bin
+ doexe source/script/${i}
+ done
+ # and this handy one..
+ doexe packaging/Mandrake/findsmb
+
+
+ # secure binary files..
+ for i in smbd nmbd swat smbfilter debug2html smbmnt smbcontrol winbindd
+ do
+ exeinto /usr/sbin
+ doexe source/bin/${i}
+ done
+ # make users lives easier..
+ fperms 4755 /usr/sbin/smbmnt
+
+
+ # man pages..
+ doman docs/manpages/*
+
+
+ # codepage source files
+ for i in 437 737 775 850 852 857 861 862 866 932 936 949 950 1125 1251
+ do
+ insinto /var/lib/samba/codepages/src
+ doins source/codepages/codepage_def.${i}
+ done
+ for i in 437 737 775 850 852 857 861 862 866 932 936 949 950 1125 1251 \
+ ISO8859-1 ISO8859-2 ISO8859-5 ISO8859-7 \
+ ISO8859-9 ISO8859-13 ISO8859-15 KOI8-R KOI8-U
+ do
+ insinto /var/lib/samba/codepages/src
+ doins source/codepages/CP${i}.TXT
+ done
+
+
+ # build codepage load files..
+ for i in 437 737 775 850 852 857 861 862 866 932 936 949 950 1125 1251
+ do
+ ${D}/usr/bin/make_smbcodepage c ${i} \
+ ${D}/var/lib/samba/codepages/src/codepage_def.${i} \
+ ${D}/var/lib/samba/codepages/codepage.${i}
+ done
+
+
+ # build unicode load files..
+ for i in 437 737 775 850 852 857 861 862 866 932 936 949 950 1125 1251 \
+ ISO8859-1 ISO8859-2 ISO8859-5 ISO8859-7 \
+ ISO8859-9 ISO8859-13 ISO8859-15 KOI8-R KOI8-U
+ do
+ ${D}/usr/bin/make_unicodemap ${i} \
+ ${D}/var/lib/samba/codepages/src/CP${i}.TXT \
+ ${D}/var/lib/samba/codepages/unicode_map.${i}
+ done
+ rm -rf ${D}/var/lib/samba/codepages/src
+
+
+ # install the nsswitch library extension files..
+ 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 )
+
+
+ # 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 the O'Reilly "Using Samba" book..
+ for i in docs/htmldocs/using_samba/*.html
+ do
+ insinto /usr/share/swat/using_samba
+ doins ${i}
+ done
+ for i in docs/htmldocs/using_samba/gifs/*.gif
+ do
+ insinto /usr/share/swat/using_samba/gifs
+ doins ${i}
+ done
+ for i in docs/htmldocs/using_samba/figs/*.gif
+ do
+ insinto /usr/share/swat/using_samba/figs
+ doins ${i}
+ done
+
+
+ # install the utilities from LDAP/smbldap-tools
+ if use ldap; then
+ exeinto /usr/share/samba/smbldap-tools
+ doexe examples/LDAP/smbldap-tools/*.pl
+ doexe examples/LDAP/smbldap-tools/smbldap_tools.pm
+ doexe examples/LDAP/{import,export}_smbpasswd.pl
+ chmod 0700 ${D}/usr/share/samba/smbldap-tools/{import,export}_smbpasswd.pl
+ exeinto /usr/sbin
+ doexe examples.bin/LDAP/smbldap-tools/mkntpwd/mkntpwd
+ #dodir /usr/lib/perl5/site_perl/5.6.1
+ eval `perl '-V:installarchlib'`
+ dodir ${installarchlib}
+ dosym /etc/samba/smbldap_conf.pm ${installarchlib}
+ dosym /usr/share/samba/smbldap-tools/smbldap_tools.pm ${installarchlib}
+ fi
+
+
+ # we don't want two copies of the book or manpages
+ rm -rf docs/htmldocs/using_samba docs/manpages
+ # attempt to install all the docs as easily as possible :/
+ dodoc COPYING Manifest README Roadmap WHATSNEW.txt
+ docinto full_docs
+ cp -a docs/* ${D}/usr/share/doc/${PF}/full_docs
+ docinto examples
+ cp -a examples/* ${D}/usr/share/doc/${PF}/examples
+ prepalldocs
+ # keep this next line *after* prepalldocs!
+ dosym /usr/share/swat/using_samba /usr/share/doc/${PF}/using_samba
+ # 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 vscan; then
+ docinto vscan-modules
+ cd ${WORKDIR}/${PN}-vscan-${VSCAN_VER}
+ dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
+ for i in ${VSCAN_MODS}
+ do
+ docinto vscan-modules/$i
+ dodoc $i/INSTALL
+ done
+ fi
+ cd ${S} # hyaah; thems a lotta docs!
+
+
+ # 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
+
+
+ # make a symlink on /usr/lib/smbwrapper.so in /usr/sbin
+ # to fix smbsh problem. #6936
+ dosym /usr/lib/smbwrapper.so /usr/sbin/smbwrapper.so
+
+
+ # now the config files..
+ insinto /etc
+ doins ${FILESDIR}/nsswitch.conf-winbind
+ doins ${FILESDIR}/nsswitch.conf-wins
+
+ insinto /etc/samba
+ doins ${FILESDIR}/smbusers
+ doins ${FILESDIR}/smb.conf.example
+ doins ${FILESDIR}/lmhosts
+ doins ${FILESDIR}/recycle.conf
+ if use ldap; then
+ doins ${FILESDIR}/smbldap_conf.pm
+ doins ${FILESDIR}/samba-slapd-include.conf
+ fi
+
+ 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
+}
+
+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/run/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}
+}