From cc8c9099bf21ba5a54af12d55c04671eb88d76e7 Mon Sep 17 00:00:00 2001 From: Lars Wendler Date: Wed, 16 Dec 2015 15:17:47 +0100 Subject: net-fs/samba: Security bump to versions 4.1.22, 4.2.7 and 4.3.3 See also bug #568432 Package-Manager: portage-2.2.26 Signed-off-by: Lars Wendler --- net-fs/samba/Manifest | 3 + net-fs/samba/samba-4.1.22.ebuild | 181 +++++++++++++++++++++++++++++++++++ net-fs/samba/samba-4.2.7.ebuild | 197 +++++++++++++++++++++++++++++++++++++++ net-fs/samba/samba-4.3.3.ebuild | 196 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 577 insertions(+) create mode 100644 net-fs/samba/samba-4.1.22.ebuild create mode 100644 net-fs/samba/samba-4.2.7.ebuild create mode 100644 net-fs/samba/samba-4.3.3.ebuild (limited to 'net-fs/samba') diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest index 23864c0a15fa..0f3532398823 100644 --- a/net-fs/samba/Manifest +++ b/net-fs/samba/Manifest @@ -3,8 +3,11 @@ DIST samba-3.5.22.tar.gz 35385144 SHA256 b4c98f77f5634478da109063334acd9b6ad7bcb DIST samba-3.6.25.tar.gz 34121828 SHA256 8f2c8a7f2bd89b0dfd228ed917815852f7c625b2bc0936304ac3ed63aaf83751 SHA512 25a5c56dae4517e82e196b59fa301b661ec75db57effbb0ede35fb23b018f78cdea6513e8760966caf58abc43335fcebda77fe5bf5bb9d4b27fd3ca6e5a3b626 WHIRLPOOL 68c4a335b3912bf3c6baecae337b1131127515191052366ca9a04ec6d919f2fb69c912aefb087e2578134f3a9bde7b496ea880f2197a8dbf8221058dd1e8444d DIST samba-4.0.26.tar.gz 22155521 SHA256 ce2441992c6d18950d752edb2d1274b3f7e056b2e2e8516fc42e408e4a25894a SHA512 0df6f5961b2b6af1a4356540299acae52473f9d4342762d1556c859a36a63a7b8706c94f835581e96ecbf47a2d7fb09b67f93aa3869812215e9661dda7ee1906 WHIRLPOOL fda98da46719e6f4cefa58aef56f4d75120c4386b5e398e9b2ac3aa693255a6bce9606b1bf5646708d96e4f3c8982586501ccdae7c11f223b629ab128d33ae59 DIST samba-4.1.21.tar.gz 19561830 SHA256 00f1c26cd310811afb2fa1a3fb72a23bd2e5c2f6466e6efdcb530305d7c3ce2e SHA512 e51652964ff193c9a2e3900198ba557268c405811332a32a7a545fb9eaa6cc8dccbf37d2c664a5a8d6ea3f460b08a24bcedcc7334c1bbdc1bda0b469c448fc0e WHIRLPOOL 7d96a7777a909cb088e4d11fd070e46a615c65a2ca653d3da0ba06ad5e94e3af8c3428dc304704002d86f58f7464d6694be9533913be74fe8a9eca6523aeaa34 +DIST samba-4.1.22.tar.gz 19557688 SHA256 5563a1c94a2dac837ccffd1f0821bb25e097affaa7389fef186f9cfb3486cfe5 SHA512 fc0f49fa4faf84069f17ad20d540aada3d410750d67a32a893c7842fc3720399bea2873686f9eee77ed5c7db4d6e6d4aa68f8c71a37cede8a67984e9ad732546 WHIRLPOOL 22affd2da369af40d8fd7eb27c9f38e908ab68b9668d689e9c268423bedc453089fe708cd565db22e0c7fbd32095305b8a5861ee8e89baf2298a084028e21df8 DIST samba-4.2.5.tar.gz 20734836 SHA256 8191c4c0730daf7f9e9a3ea1cc6e680798d76bf855269807778adcccc8d706cf SHA512 b3581bd6ff33ce107ab2fb3cc8797852e441ed296df680083bcb25164941c08f870c2edadf5cf41280648c012bb264274854890ca8704ba17289a30efbbd1709 WHIRLPOOL a35bf488b81ba8f753871db35c611b2ad99b90e8bf6afd97df85785a9c84e1d7ad120a76832c09347031e0c895346e150ae9c7353e6bee16e4beccfbeaf7fad8 DIST samba-4.2.6.tar.gz 20737135 SHA256 02a6296ec65eb111e5f84466584bc1fd888f204ee419019f88b9a9c8a77bd9b1 SHA512 9a4992ad162958b050b190e1f5c2f5d4d5209b5406f6e53d1e1e921f5b3eae238a42dd6d05aed22efc375a75f2f926ec41eb4de3f7898cdc7a55fecc38a79c8b WHIRLPOOL 11c4af9404e190d6a4c7b579973270fb620cd050213b9637d765c450872ba9288b9d985deac6cfe5055045701e50c45cd022469bfa4ba56b02636da5cc756dc6 +DIST samba-4.2.7.tar.gz 20741971 SHA256 f586ab3166ce4c663360f15b1de24ef083816a5471856e3ad49bc26b35f0104a SHA512 74314083c04689696f0423bc990947bfafad679edcac97e6c137e99c17de1e262a4d8450b57de733a70c86c746300c7c5a1365b56c0e353ce79b05e0baf8eb9a WHIRLPOOL 84e7d2f3a60701ee929198caf86371c9e1694be6def47a4f0f12d4d221b995209505c23564c304fbdd95ab5ae528f941946bd361ec6e388f7ba4db08792ff3ba DIST samba-4.3.1.tar.gz 20424516 SHA256 9908a80d95b9e2583906ed4347a8c80b769539a2788158992fb48ea9fb4d2c82 SHA512 4a7c7e27e0d231b852b47407fb51cbe2b7851138d9a957c8149346afe1b14a2afa8fff66505abdbafe1ea43fc78b53800941c96c925fbc281b9ff24ef5ecfc98 WHIRLPOOL de09a933e222acf60e03a085370d218f26c917d98fde77535f55ca2f4a3bdcda0877fc8e0666c17ab271731ecdfa34e4ad4425fe83460a169d9ee2061007f059 DIST samba-4.3.2.tar.gz 20425622 SHA256 61989195caadf0f6fb51ce6bed5e203e6146facc2c276a26ad41901ad9129a75 SHA512 b01330c3e56731c1749e2179b160233c852c739c394be7999f9792e27891679ae2a15bbad50d8917a08a40b39ae3c6990ae2aa0f6345871d51058d234dad2528 WHIRLPOOL 21f4a6d240c57c66ca2159ecb8898f8f79dcb9ebfb85d66224ac31e2fbb365e2f4227a800af3a2934a50616b27cc6bb636a9a1a5d0e6ce57276c0a2e633d13bf +DIST samba-4.3.3.tar.gz 20427281 SHA256 e62d21313acbb29e24b0b80aaf2b63fdd1ccce4cfb741f333deca95a1a3a70df SHA512 2c66d97f543e22a25ff77481359e7c69817d97c20b77a3ab02a1aab415e0b8a9a6024f4466abcca8312979f9b26596e016ca5bb78ccfe3746e3e9cec0fa303be WHIRLPOOL dae3cbe3aebd0aa70a726b4946470829b703f30c0aaf59f9ae094e7f4dfa25b0573e6c49690d91308f3dddc25cf6fbf0b1341da33446dc4ee29a115db48f9604 DIST smb_traffic_analyzer_v2.diff.bz2 12226 SHA256 1bae7eafbe8ac2382313d5ab9d43d73ba64b63a714f0f588516952d476fb868d SHA512 aa0e457a0dd282e61e6dfcd5705c29b319832dca9711b1b5baf8373e2f079991399c3537c050219ccb861a93f86353ebff677a5c625d2e3f1f3a13ee5c4087d0 WHIRLPOOL 85ee72a360f67ebe71be5cd400ecd635280a0d7c64ebb8b94656a5ef1a94f74a987de86408af00ce1b81cc8363b1b3cf14726860d29b72ee610d4bab73d6b139 diff --git a/net-fs/samba/samba-4.1.22.ebuild b/net-fs/samba/samba-4.1.22.ebuild new file mode 100644 index 000000000000..2f218635467a --- /dev/null +++ b/net-fs/samba/samba-4.1.22.ebuild @@ -0,0 +1,181 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+)' + +inherit python-single-r1 waf-utils multilib linux-info systemd base + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_URI="mirror://samba/stable/${MY_P}.tar.gz" +KEYWORDS="~amd64 ~arm64 ~hppa ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addns ads aio avahi client cluster cups dmapi fam gnutls iprint +ldap quota selinux syslog systemd test winbind" + +# sys-apps/attr is an automagic dependency (see bug #489748) +# sys-libs/pam is an automagic dependency (see bug #489770) +CDEPEND="${PYTHON_DEPS} + >=app-crypt/heimdal-1.5[-ssl,-threads] + dev-libs/iniparser:0 + dev-libs/popt + sys-libs/readline:= + virtual/libiconv + dev-python/subunit[${PYTHON_USEDEP}] + sys-apps/attr + sys-libs/libcap + >=sys-libs/ntdb-1.0[python,${PYTHON_USEDEP}] + >=sys-libs/ldb-1.1.24 + sys-libs/ncurses:0= + >=sys-libs/tdb-1.2.12[python,${PYTHON_USEDEP}] + >=sys-libs/talloc-2.1.2[python,${PYTHON_USEDEP}] + >=sys-libs/tevent-0.9.18 + sys-libs/zlib + virtual/pam + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + aio? ( dev-libs/libaio ) + cluster? ( >=dev-db/ctdb-1.0.114_p1 ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 ) + ldap? ( net-nds/openldap ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + virtual/pkgconfig" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) +" + +REQUIRED_USE="ads? ( acl ldap ) + ${PYTHON_REQUIRED_USE}" + +RESTRICT="mirror" + +S="${WORKDIR}/${MY_P}" + +CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" + +PATCHES=( + "${FILESDIR}/${PN}-4.1.14-named.conf.dlz.patch" + "${FILESDIR}/${PN}-4.0.19-automagic_aio_fix.patch" + # support libsystemd (instead of libsystemd-daemon), bug #526362 + "${FILESDIR}/${PN}-4.1.14-libsystemd.patch" +) + +WAF_BINARY="${S}/buildtools/bin/waf" + +pkg_setup() { + python-single-r1_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='' + use "cluster" && myconf+=" --with-ctdb-dir=/usr" + use "test" && myconf+=" --enable-selftest" + myconf="${myconf} \ + --enable-fhs \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-modulesdir=/usr/$(get_libdir)/samba \ + --with-pammodulesdir=/$(get_libdir)/security \ + --with-piddir=/var/run/${PN} \ + --disable-rpath \ + --disable-rpath-install \ + --nopyc \ + --nopyo \ + --bundled-libraries=NONE \ + --builtin-libraries=NONE \ + $(use_with addns dnsupdate) \ + $(use_with acl acl-support) \ + $(use_with ads) \ + $(use_with aio aio-support) \ + $(use_enable avahi) \ + $(use_with cluster cluster-support) \ + $(use_enable cups) \ + $(use_with dmapi) \ + $(use_with fam) \ + $(use_enable gnutls) \ + $(use_enable iprint) \ + $(use_with ldap) \ + --with-pam \ + --with-pam_smbpass \ + $(use_with quota quotas) \ + $(use_with syslog) \ + $(use_with systemd) \ + $(use_with winbind) + " + use "ads" && myconf+=" --with-shared-modules=idmap_ad" + + CPPFLAGS="-I${SYSROOT}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf} +} + +src_install() { + waf-utils_src_install + + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + 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 + systemd_dounit "${FILESDIR}"/samba.service +} + +src_test() { + "${WAF_BINARY}" test || die "test failed" +} + +pkg_postinst() { + 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'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.1.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.2.7.ebuild b/net-fs/samba/samba-4.2.7.ebuild new file mode 100644 index 000000000000..98b5ea79c1a6 --- /dev/null +++ b/net-fs/samba/samba-4.2.7.ebuild @@ -0,0 +1,197 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+)' + +inherit python-single-r1 waf-utils multilib linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz" +KEYWORDS="~amd64 ~hppa ~x86" +[[ ${PV} = *_rc* ]] && KEYWORDS="~hppa" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads aio avahi client cluster cups dmapi fam gnutls iprint +ldap pam quota selinux syslog +system-mitkrb5 systemd test winbind" + +# sys-apps/attr is an automagic dependency (see bug #489748) +# sys-libs/pam is an automagic dependency (see bug #489770) +CDEPEND="${PYTHON_DEPS} + dev-libs/iniparser:0 + dev-libs/popt + sys-libs/readline:= + virtual/libiconv + dev-python/subunit[${PYTHON_USEDEP}] + >=net-libs/socket_wrapper-1.1.2 + sys-apps/attr + sys-libs/libcap + >=sys-libs/ldb-1.1.24 + sys-libs/ncurses:0= + >=sys-libs/nss_wrapper-1.0.2 + >=sys-libs/ntdb-1.0[python,${PYTHON_USEDEP}] + >=sys-libs/talloc-2.1.2[python,${PYTHON_USEDEP}] + >=sys-libs/tdb-1.3.6[python,${PYTHON_USEDEP}] + >=sys-libs/tevent-0.9.25 + >=sys-libs/uid_wrapper-1.0.1 + sys-libs/zlib + virtual/pam + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + aio? ( dev-libs/libaio ) + cluster? ( >=dev-db/ctdb-1.0.114_p1 ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 ) + ldap? ( net-nds/openldap ) + system-mitkrb5? ( app-crypt/mit-krb5 ) + !system-mitkrb5? ( >=app-crypt/heimdal-1.5[-ssl] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + virtual/pkgconfig" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( "${FILESDIR}/${PN}-4.2.3-heimdal_compilefix.patch" ) + +CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" + +WAF_BINARY="${S}/buildtools/bin/waf" + +pkg_setup() { + python-single-r1_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 + if ! use pam ; then + ewarn "You have pam USE flag disabled!" + ewarn "Unfortunately we still have to hard depend on virtual/pam as samba upstream" + ewarn "still unconditionally links libauth4-samba4.so library to libpam.so once being" + ewarn "found on the sytem." + ewarn "Disabling the pam USE flag only disables installation of samba's pam authenti-" + ewarn "cation modules." + fi +} + +src_prepare() { + epatch ${PATCHES[@]} +} + +src_configure() { + local myconf=() + myconf=( + --enable-fhs + --sysconfdir=/etc + --localstatedir=/var + --with-modulesdir=/usr/$(get_libdir)/samba + --with-piddir=/var/run/${PN} + --bundled-libraries=NONE + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(usex ads '--with-shared-modules=idmap_ad' '') + $(use_with aio aio-support) + $(usex cluster '--with-ctdb-dir=/usr' '') + $(use_enable avahi) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(use_with pam pam_smbpass) + $(usex pam "--with-pammodulesdir=/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + ) + + CPPFLAGS="-I${SYSROOT}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +src_install() { + waf-utils_src_install + + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + 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 + systemd_dounit "${FILESDIR}"/samba.service +} + +src_test() { + "${WAF_BINARY}" test || die "test failed" +} + +pkg_postinst() { + 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'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.2.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.3.3.ebuild b/net-fs/samba/samba-4.3.3.ebuild new file mode 100644 index 000000000000..7b14c0773765 --- /dev/null +++ b/net-fs/samba/samba-4.3.3.ebuild @@ -0,0 +1,196 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+)' + +inherit python-single-r1 waf-utils multilib linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz" +KEYWORDS="~amd64 ~hppa ~x86" +[[ ${PV} = *_rc* ]] && KEYWORDS="~hppa" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads aio avahi client cluster cups dmapi fam gnutls iprint +ldap pam quota selinux syslog +system-mitkrb5 systemd test winbind" + +# sys-apps/attr is an automagic dependency (see bug #489748) +# sys-libs/pam is an automagic dependency (see bug #489770) +CDEPEND="${PYTHON_DEPS} + dev-libs/iniparser:0 + dev-libs/popt + sys-libs/readline:= + virtual/libiconv + dev-python/subunit[${PYTHON_USEDEP}] + >=net-libs/socket_wrapper-1.1.3 + sys-apps/attr + sys-libs/libcap + >=sys-libs/ldb-1.1.24 + sys-libs/ncurses:0= + >=sys-libs/nss_wrapper-1.0.3 + >=sys-libs/talloc-2.1.3[python,${PYTHON_USEDEP}] + >=sys-libs/tdb-1.3.7[python,${PYTHON_USEDEP}] + >=sys-libs/tevent-0.9.25 + >=sys-libs/uid_wrapper-1.1.0 + sys-libs/zlib + virtual/pam + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + aio? ( dev-libs/libaio ) + cluster? ( >=dev-db/ctdb-1.0.114_p1 ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 ) + ldap? ( net-nds/openldap ) + system-mitkrb5? ( app-crypt/mit-krb5 ) + !system-mitkrb5? ( >=app-crypt/heimdal-1.5[-ssl] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + virtual/pkgconfig" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( "${FILESDIR}/${PN}-4.2.3-heimdal_compilefix.patch" ) + +CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" + +WAF_BINARY="${S}/buildtools/bin/waf" + +pkg_setup() { + python-single-r1_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 + if ! use pam ; then + ewarn "You have pam USE flag disabled!" + ewarn "Unfortunately we still have to hard depend on virtual/pam as samba upstream" + ewarn "still unconditionally links libauth4-samba4.so library to libpam.so once being" + ewarn "found on the sytem." + ewarn "Disabling the pam USE flag only disables installation of samba's pam authenti-" + ewarn "cation modules." + fi +} + +src_prepare() { + epatch ${PATCHES[@]} +} + +src_configure() { + local myconf=() + myconf=( + --enable-fhs + --sysconfdir=/etc + --localstatedir=/var + --with-modulesdir=/usr/$(get_libdir)/samba + --with-piddir=/var/run/${PN} + --bundled-libraries=NONE + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(usex ads '--with-shared-modules=idmap_ad' '') + $(use_with aio aio-support) + $(usex cluster '--with-ctdb-dir=/usr' '') + $(use_enable avahi) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(use_with pam pam_smbpass) + $(usex pam "--with-pammodulesdir=/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + ) + + CPPFLAGS="-I${SYSROOT}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +src_install() { + waf-utils_src_install + + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + 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 + systemd_dounit "${FILESDIR}"/samba.service +} + +src_test() { + "${WAF_BINARY}" test || die "test failed" +} + +pkg_postinst() { + 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'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.2.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} -- cgit v1.2.3-65-gdbad