New samba ebuilds

git-svn-id: svn+ssh://svnintern.kmrc.de/projects/gentoo/iwm-overlay@9277 cbe59ace-07ea-0310-918e-868702b5370d
This commit is contained in:
2009-04-29 14:13:26 +00:00
parent 3294b067c0
commit aeecf11791
13 changed files with 105 additions and 1125 deletions
+4
View File
@@ -11,4 +11,8 @@ AUX samba-conf 1291 RMD160 326fb4beee8105d839d23e37f4989d7e332c996b SHA1 af7cd69
AUX samba-init 1133 RMD160 77a084e8f78665af0233f19dc9c4a49693360da1 SHA1 09d7f1d676856289b61e890396a9976e2ccc794a SHA256 3b41d16daf02f9a1ab12e62c4c915f58e7801c07be48e2a94086eb288bb86aad
AUX samba-xinetd 286 RMD160 c90bd8518082eb4c182d5f7bd223a76f8e3c7fab SHA1 b250c5ca539187d8b481bcfb6ea3a915d7e8b26b SHA256 964d06dc33beff38978a8f03cd12b05c33d8258ed73aa9ffbf137fe226de25b8
DIST samba-3.3.0.tar.gz 25942368 RMD160 1ef899e9c64f75e0eb3fdca838696b85309af64d SHA1 8685e3c703073cbbfbeb9ee6e6f77690a8cff862 SHA256 b00ca360e9b414744eff33ca4567f3eb1a28d32914e20f00b6672fbc141c9beb
DIST samba-4.0.0alpha7.tar.gz 11927771 RMD160 551aface24e04e8b5665c1d2e12ec8bc7a725d0f SHA1 f59bedd40e0fd5a85e31ea4a06e8a4a874c6c9b7 SHA256 744d97ad7fc964efa27f02bdc4f93b533269e4e5e27639035ae80942510c743e
DIST samba-vscan-0.3.6c-beta5.tar.gz 248183 RMD160 6929c30b57e342c4bdf6a6b432fbe41c2ac70a74 SHA1 9e1b37225246ff2f19e37aceb97a680afc82cdda SHA256 bfe910d54add8dcb87d5babdf50127a6dcf079e0e90ad9947b4cbfdbe3e3037d
EBUILD samba-3.3.0.ebuild 7736 RMD160 7872a31da441d4a93363bfc3a4f7cf2ec2a69379 SHA1 9e825a80db3989bf09d2bdbb177f7b5eae51c415 SHA256 9f3a573f1f6ea84d4d21276bd3631cfe04e635467cbc98a5dc9acc2e3a503328
EBUILD samba-4.0.0_alpha7.ebuild 10073 RMD160 3dbdf0b6de0f150ea722c3fd9b6fe9d964117457 SHA1 6232ad5bc5e1e9dfbaa8a3df0eca3464e69baaca SHA256 aa5b2409cacd5d6646f0f4e4bee3fc70cc2c0e164feb92a53df0a584e7d2fc98
MISC samba-9999.ebuild.old_svn 8339 RMD160 863bcbf1d8ebec56ae70eb428d1c99d1567ff2e3 SHA1 dfbcadc3241baaac7c9aea62d72ecae5924a0d3d SHA256 132bba6308140f951bae6d5e7860e40a212de58708ff3a7053045d5ba0656469
+350
View File
@@ -0,0 +1,350 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.34.ebuild,v 1.1 2009/03/29 16:49:58 patrick Exp $
inherit autotools eutils pam python multilib versionator confutils
VSCAN_P="samba-vscan-0.3.6c-beta5"
MY_P=${PN}-${PV/_/}
DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX"
HOMEPAGE="http://www.samba.org/"
SRC_URI="mirror://samba/samba4/${MY_P}.tar.gz
oav? ( http://www.openantivirus.org/download/${VSCAN_P}.tar.gz )"
LICENSE="GPL-3 oav? ( GPL-2 LGPL-2.1 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
IUSE="acl ads async automount caps cups debug doc examples ipv6 kernel_linux ldap fam
pam quotas readline selinux swat syslog winbind oav"
RDEPEND="dev-libs/popt
virtual/libiconv
acl? ( kernel_linux? ( sys-apps/acl ) )
cups? ( net-print/cups )
ipv6? ( sys-apps/xinetd )
ads? ( virtual/krb5 )
ldap? ( net-nds/openldap )
pam? ( virtual/pam )
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}"
# Tests are broken now :-(
RESTRICT="test nomirror"
S=${WORKDIR}/${MY_P}
CONFDIR=${FILESDIR}/config
PRIVATE_DST=/var/lib/samba/private
pkg_setup() {
confutils_use_depend_all ads ldap
}
src_unpack() {
unpack ${A}
cd "${S}/source4"
# lazyldflags.patch: adds "-Wl,-z,now" to smb{mnt,umount}
# invalid-free-fix.patch: Bug #196015 (upstream: #5021)
#epatch \
# "${FILESDIR}/3.0.26a-lazyldflags.patch" \
# "${FILESDIR}/3.0.26a-invalid-free-fix.patch" \
# "${FILESDIR}/3.0.28-fix_broken_readdir_detection.patch" \
# "${FILESDIR}/3.0.28a-wrong_python_ldflags.patch"
#eautoconf -I. -Ilib/replace
# Ok, agreed, this is ugly. But it avoids a patch we
# need for every samba version and we don't need autotools
sed -i \
-e 's|"lib32" ||' \
-e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \
configure || die "sed failed"
rm "${S}/docs/manpages"/{mount,umount}.cifs.8
}
src_compile() {
cd "${S}/source4"
local myconf
local mylangs
local mymod_shared
python_version
myconf="--with-python=no"
use python && myconf="--with-python=${python}"
use winbind && mymod_shared="--with-shared-modules=idmap_rid"
if use ldap ; then
myconf="${myconf} $(use_with ads)"
use winbind && mymod_shared="${mymod_shared},idmap_ad"
fi
[[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
use hppa && myconf="${myconf} --disable-pie"
use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no
# Otherwise we get the whole swat stuff installed
if ! use swat ; then
sed -i \
-e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \
Makefile.in || die "sed failed"
fi
econf \
--with-fhs \
--sysconfdir=/etc/samba \
--localstatedir=/var \
--with-configdir=/etc/samba \
--with-libdir=/usr/$(get_libdir)/samba \
--with-pammodulesdir=$(getpam_mod_dir) \
--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 \
--enable-socket-wrapper \
--with-cifsmount=no \
--enable-fhs \
$(use_with acl acl-support) \
$(use_with async aio-support) \
$(use_with automount) \
$(use_enable cups) \
$(use_enable debug) \
$(use_enable fam) \
$(use_with ads krb5) \
$(use_with ldap) \
$(use_with pam) $(use_with pam pam_smbpass) \
$(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}
emake proto || die "emake proto failed"
emake everything || die "emake everything failed"
if use python ; then
emake python_ext || die "emake python_ext failed"
fi
if use oav ; then
# maintainer-info:
# - there are no known releases of mks or kavdc,
# setting to builtin to disable auto-detection
cd "${WORKDIR}/${VSCAN_P}"
econf \
--with-fhs \
--with-samba-source="${S}/source4" \
--with-libmksd-builtin \
--with-libkavdc-builtin \
--without-symantec \
--with-filetype \
--with-fileregexp \
$(use_enable debug)
emake || die "emake oav plugins failed"
fi
}
src_test() {
cd "${S}/source4"
emake test || die "tests failed"
}
src_install() {
cd "${S}/source4"
emake DESTDIR="${D}" install || die "emake install failed"
# Extra rpctorture progs
local extra_bins="rpctorture"
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
# Removing executable bits from header-files
fperms 644 /usr/include/lib{msrpc,smbclient}.h
# Nsswitch extensions. Make link for wins and winbind resolvers
if use winbind ; then
dolib.so nsswitch/libnss_wins.so
dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
dolib.so nsswitch/libnss_winbind.so
dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
fi
if use kernel_linux ; then
# Warning: this can byte you if /usr is
# on a separate volume and you have to mount
# a smb volume before the local mount
dosym ../usr/bin/smbmount /sbin/mount.smbfs
fperms 4755 /usr/bin/smbmnt
fperms 4755 /usr/bin/smbumount
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
if use python ; then
emake DESTDIR="${D}" python_install || die "emake installpython failed"
# We're doing that manually
find "${D}/usr/$(get_libdir)/python${PYVER}/site-packages" -iname "*.pyc" -delete
fi
cd "${S}/source4"
# General config files
insinto /etc/samba
doins "${CONFDIR}"/{smbusers,lmhosts}
newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example
newpamd "${CONFDIR}/samba.pam" samba
use winbind && dopamd "${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 "${S}/examples/LDAP/samba.schema"
fi
if use ipv6 ; then
insinto /etc/xinetd.d
newins "${FILESDIR}/samba-xinetd" smb
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,X64,IA64,COLOR}
keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
# docs
dodoc "${FILESDIR}/README.gentoo"
dodoc "${S}"/{MAINTAINERS,README,Roadmap,WHATSNEW.txt}
dodoc "${CONFDIR}/nsswitch.conf-wins"
use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind"
if use examples ; then
insinto /usr/share/doc/${PF}
doins -r "${S}/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
if use python ; then
insinto /usr/share/doc/${PF}/python
doins -r "${S}/source/python/examples"
fi
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
else
cd "${S}/docs"
insinto /usr/share/doc/${PF}
doins *.pdf
doins -r registry
dohtml -r htmldocs/*
fi
if use oav ; then
cd "${WORKDIR}/${VSCAN_P}"
emake DESTDIR="${D}" install || die "emake install oav plugins failed"
docinto samba-vscan
dodoc AUTHORS ChangeLog FAQ INSTALL NEWS README TODO
find . -iname "*.conf" -print0 | xargs -0 dodoc
fi
}
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 python ; then
python_version
python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/samba
fi
if use swat ; then
einfo "swat must be enabled by xinetd:"
einfo " change the /etc/xinetd.d/swat configuration"
fi
if use ipv6 ; then
einfo "ipv6 support must be enabled by xinetd:"
einfo " change the /etc/xinetd.d/smb configuration"
fi
elog "It is possible to start/stop daemons separately:"
elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to"
elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start"
elog " the daemons configured in /etc/conf.d/samba"
elog "The mount/umount.cifs helper applications are not included anymore."
elog "Please install net-fs/mount-cifs instead."
if use oav ; then
elog "The configure snippets for various antivirus plugins are available here:"
elog " /usr/share/doc/${PF}/samba-vscan"
fi
ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to"
ewarn "restart your clients to clear any cached information about the server."
ewarn "Otherwise they might not be able to connect to the volumes."
}
pkg_postrm() {
if use python ; then
python_version
python_mod_cleanup /usr/$(get_libdir)/python${PYVER}/site-packages/samba
fi
}