# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-4.0.0_rc5.ebuild,v 1.1 2012/11/24 23:59:23 polynomial-c Exp $ EAPI=4 PYTHON_DEPEND="2" inherit confutils python waf-utils multilib linux-info MY_PV="${PV/_rc/rc}" MY_P="${PN}-${MY_PV}" if [ "${PV}" = "4.9999" ]; then EGIT_REPO_URI="git://git.samba.org/samba.git" KEYWORDS="" inherit git-2 else SRC_URI="mirror://samba/rc/${MY_P}.tar.gz" KEYWORDS="~amd64 ~x86" fi DESCRIPTION="Samba Suite Version 4" HOMEPAGE="http://www.samba.org/" LICENSE="GPL-3" SLOT="0" IUSE="acl addns ads aio avahi client cluster cups debug fulltest gnutls iprint ldap pam quota selinux swat syslog winbind" RDEPEND="dev-libs/iniparser dev-libs/popt sys-libs/readline virtual/libiconv >=dev-lang/python-2.4.2 dev-python/subunit sys-libs/libcap >=sys-libs/ldb-1.1.13 >=sys-libs/tdb-1.2.10[python] >=sys-libs/talloc-2.0.7[python] >=sys-libs/tevent-0.9.17 sys-libs/zlib >=app-crypt/heimdal-1.5[-ssl] ads? ( client? ( net-fs/cifs-utils[ads] ) ) client? ( net-fs/cifs-utils ) cluster? ( >=dev-db/ctdb-1.0.114_p1 ) ldap? ( net-nds/openldap ) gnutls? ( >=net-libs/gnutls-1.4.0 ) selinux? ( sec-policy/selinux-samba )" DEPEND="${RDEPEND} virtual/pkgconfig" RESTRICT="mirror" S="${WORKDIR}/${MY_P}" CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" WAF_BINARY="${S}/buildtools/bin/waf" pkg_setup() { confutils_use_depend_all fulltest test python_set_active_version 2 python_pkg_setup if use aio; then if ! linux_config_exists || ! linux_chkconfig_present AIO; then ewarn "You must enable AIO support in your kernel config, " ewarn "to be able to support asynchronous I/O. " ewarn "You can find it at" ewarn ewarn "General Support" ewarn " Enable AIO support " ewarn ewarn "and recompile your kernel..." fi fi } src_configure() { local myconf='' if use "debug"; then myconf="${myconf} --enable-developer" fi if use "cluster"; then myconf="${myconf} --with-ctdb-dir=/usr" fi myconf="${myconf} \ --enable-fhs \ --sysconfdir=/etc \ --localstatedir=/var \ --with-modulesdir=/usr/$(get_libdir) \ --disable-rpath \ --disable-rpath-install \ --nopyc \ --nopyo \ --disable-ntdb \ --bundled-libraries=NONE \ --builtin-libraries=NONE \ $(use_with addns dnsupdate) \ $(use_with acl) \ $(use_with ads) \ $(use_with aio aio-support) \ $(use_enable avahi) \ $(use_with cluster cluster-support) \ $(use_enable cups) \ $(use_enable gnutls) \ $(use_enable iprint) \ $(use_with ldap) \ $(use_with pam) \ $(use_with pam pam_smbpass) \ $(use_with quota) \ $(use_with syslog) \ $(use_with swat) \ $(use_with winbind)" CPPFLAGS="-I/usr/include/et ${CPPFLAGS}" \ waf-utils_src_configure ${myconf} } src_install() { waf-utils_src_install # Make all .so files executable find "${D}" -type f -name "*.so" -exec chmod +x {} + # Move all LDB modules to their correct path mkdir -p "${D}"/usr/$(get_libdir)/ldb/modules/ldb mv "${D}"/usr/$(get_libdir)/ldb/*.so "${D}"/usr/$(get_libdir)/ldb/modules/ldb # Install init script and conf.d file newinitd "${CONFDIR}/samba4.initd-r1" samba || die "newinitd failed" newconfd "${CONFDIR}/samba4.confd" samba || die "newconfd failed" } src_test() { local extra_opts="" use fulltest || extra_opts+="--quick" "${WAF_BINARY}" test ${extra_opts} || die "test failed" } pkg_postinst() { # Optimize the python modules so they get properly removed python_mod_optimize "${PN}" # Warn that it's a release candidate ewarn "This is not a final Samba release, however the Samba Team is now making" ewarn "good progress towards a Samba 4.0 release, of which this is a preview." ewarn "Be aware the this release contains the best of all of Samba's" ewarn "technology parts, both a file server (that you can reasonably expect" ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" ewarn "controller work previously known as 'samba4'." einfo "See http://wiki.samba.org/index.php/Samba4/HOWTO for more" einfo "information about samba 4." } pkg_postrm() { # Clean up the python modules python_mod_cleanup "${PN}" }