diff options
Diffstat (limited to 'net-fs/samba/samba-3.6.25.ebuild')
-rw-r--r-- | net-fs/samba/samba-3.6.25.ebuild | 483 |
1 files changed, 0 insertions, 483 deletions
diff --git a/net-fs/samba/samba-3.6.25.ebuild b/net-fs/samba/samba-3.6.25.ebuild deleted file mode 100644 index 79925e39e6fd..000000000000 --- a/net-fs/samba/samba-3.6.25.ebuild +++ /dev/null @@ -1,483 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=5 - -inherit pam versionator multilib multilib-minimal eutils flag-o-matic systemd - -MY_PV=${PV/_/} -MY_P="${PN}-${MY_PV}" - -DESCRIPTION="Library bits of the samba network filesystem" -HOMEPAGE="http://www.samba.org/" -SRC_URI="mirror://samba/stable/${MY_P}.tar.gz" -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux" -IUSE="acl addns ads +aio avahi caps +client cluster cups debug dmapi doc examples fam - ldap ldb +netapi pam quota +readline selinux +server +smbclient smbsharemodes - swat syslog +winbind" - -DEPEND="dev-libs/popt - >=sys-libs/talloc-2.0.8-r1[${MULTILIB_USEDEP}] - >=sys-libs/tdb-1.2.13[${MULTILIB_USEDEP}] - >=sys-libs/tevent-0.9.19[${MULTILIB_USEDEP}] - >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] - ads? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] sys-fs/e2fsprogs - client? ( sys-apps/keyutils ) ) - avahi? ( net-dns/avahi[dbus] ) - caps? ( >=sys-libs/libcap-2.22-r2[${MULTILIB_USEDEP}] ) - client? ( !net-fs/mount-cifs - >=dev-libs/iniparser-3.1-r1:0[${MULTILIB_USEDEP}] ) - cluster? ( >=dev-db/ctdb-1.13 ) - cups? ( net-print/cups ) - debug? ( dev-libs/dmalloc ) - dmapi? ( sys-apps/dmapi ) - fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] ) - ldap? ( >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}] ) - ldb? ( sys-libs/ldb ) - pam? ( >=virtual/pam-0-r1[${MULTILIB_USEDEP}] - winbind? ( >=dev-libs/iniparser-3.1-r1:0[${MULTILIB_USEDEP}] ) - ) - readline? ( >=sys-libs/readline-5.2:= ) - syslog? ( virtual/logger )" - -RDEPEND="${DEPEND} - kernel_linux? ( ads? ( net-fs/cifs-utils[ads] ) - client? ( net-fs/cifs-utils ) ) - selinux? ( sec-policy/selinux-samba ) -" - -# Disable tests since we don't want to build that much here -RESTRICT="test" - -SBINPROGS="" -BINPROGS="" -KRBPLUGIN="" -PLUGINEXT=".so" -SHAREDMODS="" - -S=${WORKDIR}/${MY_P} - -# TODO: -# - enable iPrint on Prefix/OSX and Darwin? -# - selftest-prefix? selftest? -# - AFS? - -CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" - -REQUIRED_USE=" - ads? ( ldap ) - swat? ( server ) -" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use winbind && - [[ $(tc-getCC)$ == *gcc* ]] && - [[ $(gcc-major-version)$(gcc-minor-version) -lt 43 ]] - then - eerror "It is a known issue that ${P} will not build with " - eerror "winbind use flag enabled when using gcc < 4.3 ." - eerror "Please use at least the latest stable gcc version." - die "Using sys-devel/gcc < 4.3 with winbind use flag." - fi - fi -} - -pkg_setup() { - if use server ; then - SBINPROGS="${SBINPROGS} bin/smbd bin/nmbd" - BINPROGS="${BINPROGS} bin/testparm bin/smbstatus bin/smbcontrol bin/pdbedit - bin/profiles bin/sharesec bin/eventlogadm bin/smbta-util - $(usex client "" "bin/smbclient")" - - use swat && SBINPROGS="${SBINPROGS} bin/swat" - use winbind && SBINPROGS="${SBINPROGS} bin/winbindd" - use ads && use winbind && KRBPLUGIN="${KRBPLUGIN} bin/winbind_krb5_locator" - fi - - if use client ; then - BINPROGS="${BINPROGS} bin/smbclient bin/net bin/smbget bin/smbtree - bin/nmblookup bin/smbpasswd bin/rpcclient bin/smbcacls bin/smbcquotas - bin/ntlm_auth" - - fi - - use cups && BINPROGS="${BINPROGS} bin/smbspool" -# use ldb && BINPROGS="${BINPROGS} bin/ldbedit bin/ldbsearch bin/ldbadd bin/ldbdel bin/ldbmodify bin/ldbrename"; - - if use winbind ; then - BINPROGS="${BINPROGS} bin/wbinfo" - SHAREDMODS="${SHAREDMODS}idmap_rid,idmap_hash" - use ads && SHAREDMODS="${SHAREDMODS},idmap_ad" - use cluster && SHAREDMODS="${SHAREDMODS},idmap_tdb2" - use ldap && SHAREDMODS="${SHAREDMODS},idmap_ldap,idmap_adex" - fi -} - -src_prepare() { - cp "${FILESDIR}/samba-3.4.2-lib.tevent.python.mk" "lib/tevent/python.mk" - - # ensure that winbind has correct ldflags (QA notice) - sed -i \ - -e 's|LDSHFLAGS="|LDSHFLAGS="\\${LDFLAGS} |g' \ - source3/configure || die "sed failed" - epatch "${CONFDIR}"/smb.conf.default.patch - - #bug #399141 wrap newer iniparser version - has_version ">=dev-libs/iniparser-3.0.0:0" && \ - append-cppflags "-Diniparser_getstr\(d,i\)=iniparser_getstring\(d,i,NULL\)" - - multilib_copy_sources -} - -multilib_src_configure() { - local myconf=() - - # we can't alter S since build system writes to '../' and therefore - # we need to duplicate the whole structure - cd source3 || die - - # Filter out -fPIE - [[ ${CHOST} == *-*bsd* ]] && myconf+=( --disable-pie ) - - #Allowing alpha/s390/sh to build - if use alpha || [[ ${ABI} == s390 ]] || use sh ; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O? -O1 - fi - - # http://wiki.samba.org/index.php/CTDB_Setup - use cluster && myconf+=( --disable-pie ) - - # Upstream refuses to make this configurable - myconf+=( ac_cv_header_sys_capability_h=$(usex caps) ) - - # Notes: - # - automount is only needed in conjunction with NIS and we don't have that - # anymore => LDAP? - # - --without-dce-dfs and --without-nisplus-home can't be passed to configure but are disabled by default - econf "${myconf[@]}" \ - --with-piddir="${EPREFIX}"/var/run/samba \ - --sysconfdir="${EPREFIX}"/etc/samba \ - --localstatedir="${EPREFIX}"/var \ - $(multilib_native_use_enable debug developer) \ - --enable-largefile \ - --enable-socket-wrapper \ - --enable-nss-wrapper \ - $(multilib_native_use_enable swat) \ - $(multilib_native_use_enable debug dmalloc) \ - $(multilib_native_use_enable cups) \ - --disable-iprint \ - $(use_enable fam) \ - --enable-shared-libs \ - --disable-dnssd \ - $(multilib_native_use_enable avahi) \ - --with-fhs \ - --with-privatedir="${EPREFIX}"/var/lib/samba/private \ - --with-rootsbindir="${EPREFIX}"/var/cache/samba \ - --with-lockdir="${EPREFIX}"/var/cache/samba \ - --with-swatdir="${EPREFIX}"/usr/share/doc/${PF}/swat \ - --with-configdir="${EPREFIX}"/etc/samba \ - --with-logfilebase="${EPREFIX}"/var/log/samba \ - --with-pammodulesdir=$(getpam_mod_dir) \ - $(multilib_native_use_with dmapi) \ - --without-afs \ - --without-fake-kaserver \ - --without-vfs-afsacl \ - $(use_with ldap) \ - $(use_with ads) \ - $(use_with ads krb5 "${EPREFIX}"/usr) \ - $(use_with ads dnsupdate) \ - --without-automount \ - $(use_with pam) \ - $(use_with pam pam_smbpass) \ - $(use_with syslog) \ - $(use_with quota quotas) \ - $(use_with quota sys-quotas) \ - --without-utmp \ - --without-lib{talloc,tdb} \ - $(use_with netapi libnetapi) \ - $(use_with smbclient libsmbclient) \ - $(use_with smbsharemodes libsmbsharemodes) \ - $(use_with addns libaddns) \ - $(use_with cluster ctdb "${EPREFIX}"/usr) \ - $(use_with cluster cluster-support) \ - $(multilib_native_use_with acl acl-support) \ - $(use_with aio aio-support) \ - --with-sendfile-support \ - $(use_with winbind) \ - --with-shared-modules=${SHAREDMODS} \ - --without-included-popt \ - --without-included-iniparser -} - -multilib_src_compile() { - cd source3 || die - - # compile libs - if use addns ; then - einfo "make addns library" - emake libaddns - fi - if use netapi ; then - einfo "make netapi library" - emake libnetapi - fi - if use smbclient ; then - einfo "make smbclient library" - emake libsmbclient - fi - if use smbsharemodes ; then - einfo "make smbsharemodes library" - emake libsmbsharemodes - fi - - # compile modules - emake modules - - # compile pam moudles - if use pam ; then - einfo "make pam modules" - emake pam_modules - fi - - # compile winbind nss modules - if use winbind ; then - einfo "make nss modules" - emake nss_modules - fi - - # compile utilities - if multilib_is_native_abi; then - if [ -n "${BINPROGS}" ] ; then - einfo "make binprogs" - emake ${BINPROGS} - fi - if [ -n "${SBINPROGS}" ] ; then - einfo "make sbinprogs" - emake ${SBINPROGS} - fi - fi - - if [ -n "${KRBPLUGIN}" ] ; then - einfo "make krbplugin" - emake ${KRBPLUGIN}${PLUGINEXT} - fi -} - -multilib_src_install() { - cd source3 || die - - # pkgconfig files installation needed, bug #464818 - local pkgconfigdir=/usr/$(get_libdir)/pkgconfig - - # install libs - if use addns ; then - einfo "install addns library" - emake installlibaddns DESTDIR="${D}" - fi - if use netapi ; then - einfo "install netapi library" - emake installlibnetapi DESTDIR="${D}" - insinto $pkgconfigdir - doins pkgconfig/netapi.pc - fi - if use smbclient ; then - einfo "install smbclient library" - emake installlibsmbclient DESTDIR="${D}" - insinto $pkgconfigdir - doins pkgconfig/smbclient.pc - fi - if use smbsharemodes ; then - einfo "install smbsharemodes library" - emake installlibsmbsharemodes DESTDIR="${D}" - insinto $pkgconfigdir - doins pkgconfig/smbsharemodes.pc - fi - - # install modules - emake installmodules DESTDIR="${D}" - - if use pam ; then - einfo "install pam modules" - emake installpammodules DESTDIR="${D}" - - if use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - doman ../docs/manpages/pam_winbind.8 - # bug #376853 - insinto /etc/security - doins ../examples/pam_winbind/pam_winbind.conf || die - fi - - newpamd "${CONFDIR}/samba.pam" samba - dodoc pam_smbpass/README - fi - - # Nsswitch extensions. Make link for wins and winbind resolvers - if use winbind ; then - einfo "install libwbclient" - emake installlibwbclient DESTDIR="${D}" - 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 - insinto $pkgconfigdir - doins pkgconfig/wbclient.pc - einfo "install libwbclient related manpages" - doman ../docs/manpages/idmap_rid.8 - doman ../docs/manpages/idmap_hash.8 - if use ldap ; then - doman ../docs/manpages/idmap_adex.8 - doman ../docs/manpages/idmap_ldap.8 - fi - if use ads ; then - doman ../docs/manpages/idmap_ad.8 - fi - fi - - # install binaries - if multilib_is_native_abi; then - insinto /usr - for prog in ${SBINPROGS} ; do - dosbin ${prog} - doman ../docs/manpages/${prog/bin\/}* - done - - for prog in ${BINPROGS} ; do - dobin ${prog} - doman ../docs/manpages/${prog/bin\/}* - done - - # install scripts - if use client ; then - dobin script/findsmb - doman ../docs/manpages/findsmb.1 - fi - fi - - # install krbplugin - if [ -n "${KRBPLUGIN}" ] ; then - if has_version app-crypt/mit-krb5 ; then - insinto /usr/$(get_libdir)/krb5/plugins/libkrb5 - doins ${KRBPLUGIN}${PLUGINEXT} - elif has_version app-crypt/heimdal ; then - insinto /usr/$(get_libdir)/plugin/krb5 - doins ${KRBPLUGIN}${PLUGINEXT} - fi - insinto /usr - for prog in ${KRBPLUGIN} ; do - doman ../docs/manpages/${prog/bin\/}* - done - fi -} - -multilib_src_install_all() { - # install server components - if use server ; then - doman docs/manpages/vfs* docs/manpages/samba.7 - - diropts -m0700 - keepdir /var/lib/samba/private - - diropts -m1777 - keepdir /var/spool/samba - - diropts -m0755 - keepdir /var/{cache,log}/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/{auth,pdb,rpc,idmap,nss_info,gpext} - - newconfd "${CONFDIR}/samba.confd" samba - newinitd "${CONFDIR}/samba.initd" samba - - insinto /etc/samba - doins "${CONFDIR}"/{smbusers,lmhosts} - - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - if use swat ; then - insinto /etc/xinetd.d - newins "${CONFDIR}/swat.xinetd" swat - script/installswat.sh "${ED}" "${EROOT}/usr/share/doc/${PF}/swat" "${S}" - fi - - dodoc MAINTAINERS.txt README* Roadmap WHATSNEW.txt docs/THANKS - fi - - # install the spooler to cups - if use cups ; then - dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb - fi - - # install misc files - insinto /etc/samba - doins examples/smb.conf.default - doman docs/manpages/smb.conf.5 - - insinto /usr/"$(get_libdir)"/samba - doins codepages/{valid.dat,upcase.dat,lowcase.dat} - - # install docs - if use doc ; then - dohtml -r docs/htmldocs/. - dodoc docs/*.pdf - fi - - # install examples - if use examples ; then - insinto /usr/share/doc/${PF}/examples - - if use smbclient ; then - doins -r examples/libsmbclient - fi - - if use winbind ; then - doins -r examples/pam_winbind examples/nss - fi - - if use server ; then - cd examples || die - doins -r auth autofs dce-dfs LDAP logon misc pdb \ - perfcounter printer-accounting printing scripts tridge \ - validchars VFS - fi - fi - - # Remove empty installation directories - rmdir --ignore-fail-on-non-empty \ - "${ED}/usr/$(get_libdir)/samba" \ - "${ED}/usr"/{sbin,bin} \ - "${ED}/usr/share"/{man,locale,} \ - "${ED}/var"/{run,lib/samba/private,lib/samba,lib,cache/samba,cache,} \ - # || die "tried to remove non-empty dirs, this seems like a bug in the ebuild" - - systemd_dotmpfilesd "${FILESDIR}"/samba.conf - systemd_dounit "${FILESDIR}"/nmbd.service - systemd_dounit "${FILESDIR}"/smbd.{service,socket} - systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' - systemd_dounit "${FILESDIR}"/winbindd.service -} - -pkg_postinst() { - elog "Samba 3.6 has adopted a number of improved security defaults that" - elog "will impact on existing users of Samba." - elog " client ntlmv2 auth = yes" - elog " client use spnego principal = no" - elog " send spnego principal = no" - elog "" - elog "SMB2 protocol support in 3.6.0 is fully functional and can be " - elog "enabled by setting 'max protocol = smb2'. SMB2 is a new " - elog "implementation of the SMB protocol used by Windows Vista and higher" - elog "" - elog "For further information make sure to read the release notes at" - elog "http://samba.org/samba/history/${P}.html and " - elog "http://samba.org/samba/history/${PN}-3.6.0.html" -} |