summaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorTiziano Müller <dev-zero@gentoo.org>2007-04-09 08:17:46 +0000
committerTiziano Müller <dev-zero@gentoo.org>2007-04-09 08:17:46 +0000
commitcf61e0f43d49a5ad29cab14e41843d58e3ca5de5 (patch)
treed2f6c6c7bf0ef6678010d3db209c02a84190806f /net-fs
parentStable on amd64 wrt bug 173793 (diff)
downloadgentoo-2-cf61e0f43d49a5ad29cab14e41843d58e3ca5de5.tar.gz
gentoo-2-cf61e0f43d49a5ad29cab14e41843d58e3ca5de5.tar.bz2
gentoo-2-cf61e0f43d49a5ad29cab14e41843d58e3ca5de5.zip
Removed obsolete patches. Moved conf.d/init.d files out of the tarball. Fixed bug #170072 (thanks to Roy Marples)
(Portage version: 2.1.2.2)
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/samba/ChangeLog9
-rw-r--r--net-fs/samba/files/digest-samba-3.0.24-r19
-rw-r--r--net-fs/samba/files/samba-conf28
-rw-r--r--net-fs/samba/files/samba-init50
-rw-r--r--net-fs/samba/samba-3.0.24-r1.ebuild299
5 files changed, 394 insertions, 1 deletions
diff --git a/net-fs/samba/ChangeLog b/net-fs/samba/ChangeLog
index 2445e9e3d1bf..9843c9cb4fbe 100644
--- a/net-fs/samba/ChangeLog
+++ b/net-fs/samba/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-fs/samba
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.275 2007/03/01 11:53:00 dragonheart Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.276 2007/04/09 08:17:46 dev-zero Exp $
+
+*samba-3.0.24-r1 (09 Apr 2007)
+
+ 09 Apr 2007; Tiziano Müller <dev-zero@gentoo.org> +files/samba-conf,
+ +files/samba-init, +samba-3.0.24-r1.ebuild:
+ Removed obsolete patches. Moved conf.d/init.d files out of the tarball.
+ Fixed bug #170072 (thanks to Roy Marples)
01 Mar 2007; Daniel Black <dragonheart@gentoo.org> Manifest:
digest fix - bug #168842
diff --git a/net-fs/samba/files/digest-samba-3.0.24-r1 b/net-fs/samba/files/digest-samba-3.0.24-r1
new file mode 100644
index 000000000000..00360d37af2c
--- /dev/null
+++ b/net-fs/samba/files/digest-samba-3.0.24-r1
@@ -0,0 +1,9 @@
+MD5 ca3b7f83de0204ab79a9f0aea5a5051d samba-3-gentoo-0.3.16.tar.bz2 14291
+RMD160 c8388239352e981c03f7e99ff02dbaa13ad77e2a samba-3-gentoo-0.3.16.tar.bz2 14291
+SHA256 fe0ae6f8c2833cfdbab82a5ae2087045da4f27f6f07daba6fdc829a93b4e6508 samba-3-gentoo-0.3.16.tar.bz2 14291
+MD5 89273f67a6d8067cbbecefaa13747153 samba-3.0.24.tar.gz 17708128
+RMD160 f208dca645d07a195169e005a50fb4c4879254eb samba-3.0.24.tar.gz 17708128
+SHA256 c4e8de3426fbbcee7f338f5cf09052cbdf9a36ae638aeeeca10498ef8d5343e2 samba-3.0.24.tar.gz 17708128
+MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
+RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
+SHA256 14f78b624b047b90ddf4965998e7115d3b3ac97b3229154a302637d8e49adcd4 samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/files/samba-conf b/net-fs/samba/files/samba-conf
new file mode 100644
index 000000000000..b67595ade6cb
--- /dev/null
+++ b/net-fs/samba/files/samba-conf
@@ -0,0 +1,28 @@
+#add "winbind" to the daemon_list if you also want winbind to start
+daemon_list="smbd nmbd"
+
+#----------------------------------------------------------------------------
+# Daemons calls: <daemon_name>_<command_option>
+#----------------------------------------------------------------------------
+my_service_name="samba"
+my_service_PRE="unset TMP TMPDIR"
+my_service_POST=""
+
+#----------------------------------------------------------------------------
+# Daemons calls: <daemon_name>_<command_option>
+#----------------------------------------------------------------------------
+smbd_start_options="-D"
+smbd_start="start-stop-daemon --start --quiet --exec /usr/sbin/smbd -- ${smbd_start_options}"
+smbd_stop="start-stop-daemon --stop --quiet --pidfile /var/run/samba/smbd.pid"
+smbd_reload="killall -HUP smbd"
+
+nmbd_start_options="-D"
+nmbd_start="start-stop-daemon --start --quiet --exec /usr/sbin/nmbd -- ${nmbd_start_options}"
+nmbd_stop="start-stop-daemon --stop --quiet --pidfile /var/run/samba/nmbd.pid"
+nmbd_reload="killall -HUP nmbd"
+
+winbind_start_options=""
+winbind_start="start-stop-daemon --start --quiet --exec /usr/sbin/winbindd -- ${winbind_start_options}"
+winbind_stop="start-stop-daemon --stop --quiet --oknodo --exec /usr/sbin/winbindd"
+winbind_reload="killall -HUP winbindd"
+
diff --git a/net-fs/samba/files/samba-init b/net-fs/samba/files/samba-init
new file mode 100644
index 000000000000..d1f17b882c00
--- /dev/null
+++ b/net-fs/samba/files/samba-init
@@ -0,0 +1,50 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/samba-init,v 1.13 2007/04/09 08:17:46 dev-zero Exp $
+
+opts="reload"
+
+depend() {
+ after slapd
+ need net
+ use cupsd
+}
+
+signal_do() {
+ local signal="$1"
+ [ -z "${signal}" ] && return 0
+
+ local result=0 last_result=0 daemon= cmd_exec=
+ for daemon in ${daemon_list} ; do
+ eval cmd_exec=\$${daemon}_${signal}
+ if [ -n "${cmd_exec}" ]; then
+ ebegin "${my_service_name} -> ${signal}: ${daemon}"
+ #echo ${cmd} '->' ${!cmd}
+ ${cmd_exec} > /dev/null
+ last_result=$?
+ eend ${last_result}
+ fi
+ result=$(( ${result} + ${last_result} ))
+ done
+ return ${result}
+}
+start() {
+ ${my_service_PRE}
+ signal_do start && return 0
+
+ eerror "Error: starting services (see system logs)"
+ signal_do stop
+ return 1
+}
+stop() {
+ ${my_service_PRE}
+ if signal_do stop ; then
+ ${my_service_POST}
+ return 0
+ fi
+}
+reload() {
+ ${my_service_PRE}
+ signal_do reload
+}
diff --git a/net-fs/samba/samba-3.0.24-r1.ebuild b/net-fs/samba/samba-3.0.24-r1.ebuild
new file mode 100644
index 000000000000..f23ecef4325d
--- /dev/null
+++ b/net-fs/samba/samba-3.0.24-r1.ebuild
@@ -0,0 +1,299 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.24-r1.ebuild,v 1.1 2007/04/09 08:17:46 dev-zero Exp $
+
+WANT_AUTOCONF="latest"
+WANT_AUTOMAKE="none"
+
+inherit eutils autotools versionator pam
+
+IUSE_LINGUAS="ja pl"
+IUSE="acl async automount caps cups doc examples kerberos kernel_linux ldap fam
+ linguas_ja linguas_pl
+ oav pam python quotas readline selinux swat syslog winbind"
+
+VSCAN_VER="0.3.6b"
+PATCH_VER="0.3.16"
+MY_P=${PN}-${PV/_/}
+MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
+S2=${WORKDIR}/${MY_P}
+S=${S2}/source
+PFVSCAN=${PN}-vscan-${VSCAN_VER}
+
+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"
+SRC_URI="mirror://gentoo/${MY_PP}.tar.bz2
+ mirror://samba/${MY_P}.tar.gz
+ mirror://samba/old-versions/${MY_P}.tar.gz
+ oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+
+RDEPEND="dev-libs/popt
+ virtual/libiconv
+ acl? ( kernel_linux? ( sys-apps/acl ) )
+ cups? ( net-print/cups )
+ ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
+ pam? ( virtual/pam )
+ python? ( dev-lang/python )
+ readline? ( sys-libs/readline )
+ selinux? ( sec-policy/selinux-samba )
+ swat? ( sys-apps/xinetd )
+ syslog? ( virtual/logger )
+ fam? ( virtual/fam )
+ caps? ( sys-libs/libcap )"
+DEPEND="${RDEPEND}"
+
+PRIVATE_DST=/var/lib/samba/private
+PATCHDIR=${WORKDIR}/patches
+CONFDIR=${WORKDIR}/configs
+
+src_unpack() {
+ unpack ${A}
+ cd "${S2}"
+
+ export EPATCH_SUFFIX="patch"
+ epatch ${PATCHDIR}/general
+ if use oav ; then
+ cd ${WORKDIR}
+ if [[ -d ${PATCHDIR}/vscan ]] ; then
+ epatch ${PATCHDIR}/vscan
+ fi
+ cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
+ fi
+
+ # patches screw with autotool files
+ cd "${S}"
+ eautoconf
+}
+
+src_compile() {
+ local myconf
+ local mylangs
+ local mymod_shared
+
+ mylangs="--with-manpages-langs=en"
+ use linguas_ja && mylangs="${mylangs},ja"
+ use linguas_pl && mylangs="${mylangs},pl"
+
+ use winbind && mymod_shared="--with-shared-modules=idmap_rid"
+ if use ldap ; then
+ myconf="${myconf} $(use_with kerberos ads)"
+ use winbind && mymod_shared="${mymod_shared},idmap_ad"
+ fi
+
+ [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
+ use hppa && myconf="${myconf} --disable-pie"
+
+ use fam && export ac_cv_header_fam_h=yes || export ac_cv_header_fam_h=no
+ use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no
+
+ econf \
+ --with-fhs \
+ --sysconfdir=/etc/samba \
+ --localstatedir=/var \
+ --with-configdir=/etc/samba \
+ --with-libdir=/usr/$(get_libdir)/samba \
+ --with-swatdir=/usr/share/doc/${PF}/swat \
+ --with-piddir=/var/run/samba \
+ --with-lockdir=/var/cache/samba \
+ --with-logfilebase=/var/log/samba \
+ --with-privatedir=${PRIVATE_DST} \
+ --with-libsmbclient \
+ --without-spinlocks \
+ --enable-socket-wrapper \
+ $(use_with acl acl-support) \
+ $(use_with async aio-support) \
+ $(use_with automount) \
+ $(use_enable cups) \
+ $(use_with kerberos krb5) \
+ $(use_with ldap) \
+ $(use_with pam) $(use_with pam pam_smbpass) \
+ $(use_with python) \
+ $(use_with quotas) $(use_with quotas sys-quotas) \
+ $(use_with readline) \
+ $(use_with kernel_linux smbmount) \
+ $(use_with syslog) \
+ $(use_with winbind) \
+ ${myconf} ${mylangs} ${mymod_shared} || die
+
+ emake proto || die "SAMBA make proto error"
+ emake everything || die "SAMBA make everything error"
+
+ emake rpctorture >& rpctorture.log || ewarn "rpctorture didn't build [that's ok!]"
+
+ if use python ; then
+ python python/setup.py build
+ fi
+
+ # Build samba-vscan plugins
+ if use oav ; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ econf \
+ --with-fhs \
+ --libdir=/usr/$(get_libdir)/samba \
+ || die "${PFVSCAN} ./configure failed"
+ emake || die "Failed to make ${PFVSCAN}"
+ fi
+
+}
+
+src_install() {
+ local extra_bins="rpctorture"
+
+ emake DESTDIR="${D}" install-everything || die
+
+ # Extra rpctorture progs
+ for i in ${extra_bins} ; do
+ [[ -x ${S}/bin/${i} ]] && dobin "${S}"/bin/${i}
+ done
+
+ # remove .old stuff from /usr/bin:
+ rm -f "${D}"/usr/bin/*.old
+
+ # Nsswitch extensions. Make link for wins and winbind resolvers
+ if use winbind ; then
+ dolib.so "${S}"/nsswitch/libnss_wins.so || die
+ dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
+ dolib.so "${S}"/nsswitch/libnss_winbind.so || die
+ dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
+ fi
+
+ if use pam ; then
+ exeinto /$(get_libdir)/security
+ doexe "${S}"/bin/pam_smbpass.so || die
+ if use winbind ; then
+ exeinto /$(get_libdir)/security
+ doexe "${S}"/bin/pam_winbind.so || die
+ fi
+ fi
+
+ if use kernel_linux ; then
+ # mount backend
+ dodir /sbin
+ dosym ../usr/bin/smbmount /sbin/mount.smbfs
+ dosym ../usr/bin/mount.cifs /sbin/mount.cifs
+ fi
+
+ # bug #46389: samba doesn't create symlink anymore
+ # beaviour seems to be changed in 3.0.6, see bug #61046
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
+
+ # make the smb backend symlink for cups printing support (bug #133133)
+ if use cups ; then
+ dodir $(cups-config --serverbin)/backend
+ dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb
+ fi
+
+ # VFS plugin modules
+ if use oav ; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ make install DESTDIR=${D} || die "VFS: vscan error"
+ insinto /etc/samba
+ doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
+ fi
+
+ # Python extensions
+ if use python ; then
+ cd ${S}
+ python python/setup.py install --root=${D} || die
+ fi
+
+ # General config files
+ insinto /etc/samba
+ doins ${CONFDIR}/smbusers
+ newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
+ doins ${CONFDIR}/lmhosts
+
+ newpamd ${CONFDIR}/samba.pam samba
+ use winbind && doins ${CONFDIR}/system-auth-winbind
+ if use swat ; then
+ insinto /etc/xinetd.d
+ newins ${CONFDIR}/swat.xinetd swat
+ else
+ rm -f "${D}"/usr/sbin/swat
+ rm -f "${D}"/usr/share/man/man8/swat.8
+ fi
+ newinitd "${FILESDIR}/samba-init" samba
+ newconfd "${FILESDIR}/samba-conf" samba
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins ${S2}/examples/LDAP/samba.schema
+ fi
+
+ # dirs
+ diropts -m0700 ; keepdir ${PRIVATE_DST}
+ diropts -m1777 ; keepdir /var/spool/samba
+
+ diropts -m0755
+ keepdir /var/{log,run,cache}/samba
+ keepdir /var/lib/samba/{netlogon,profiles}
+ keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
+ keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
+
+ # docs
+ dodoc ${FILESDIR}/README.gentoo
+ dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
+ dodoc ${CONFDIR}/nsswitch.conf-wins
+ use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
+
+ if use oav ; then
+ docinto ${PFVSCAN}
+ cd ${WORKDIR}/${PFVSCAN}
+ dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
+ dodoc */*.conf
+ fi
+
+ if use examples ; then
+ docinto examples
+ cp -pPR ${S2}/examples/* "${D}"/usr/share/doc/${PF}/examples
+ find "${D}"/usr/share/doc/${PF} -type d -print0 | xargs -0 chmod 755
+ find "${D}"/usr/share/doc/${PF}/examples ! -type d -print0 | xargs -0 chmod 644
+ fi
+
+ if ! use doc ; then
+ if ! use swat ; then
+ rm -rf "${D}"/usr/share/doc/${PF}/swat
+ else
+ rm -rf "${D}"/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
+ rm -rf "${D}"/usr/share/doc/${PF}/swat/using_samba
+ fi
+ fi
+
+ # Patch ChangeLog
+ docinto gentoo
+ dodoc ${PATCHDIR}/ChangeLog
+}
+
+pkg_preinst() {
+ local PRIVATE_SRC=/etc/samba/private
+ if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
+ && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]] ; then
+ ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
+ mkdir -p "${D}"/${PRIVATE_DST}
+ cp -pPRf "${ROOT}"/${PRIVATE_SRC}/* "${D}"/${PRIVATE_DST}/
+ eend $?
+ fi
+
+ if [[ ! -f ${ROOT}/etc/samba/smb.conf ]] ; then
+ touch "${D}"/etc/samba/smb.conf
+ fi
+}
+
+pkg_postinst() {
+ if use swat ; then
+ einfo "swat must be enabled by xinetd:"
+ einfo " change the /etc/xinetd.d/swat configuration"
+ fi
+ einfo "Latest info: README.gentoo in documentation directory"
+}
+
+pkg_postrm(){
+ # If stale docs, and one isn't re-emerging the latest version, removes
+ # (this is actually a portage bug, though)
+ [[ -n ${PF} && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
+ rm -rf "${ROOT}"/usr/share/doc/${PF}
+}