From c719fdcee603a5a706a45d10cb598762d56a727d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 25 Sep 2021 20:21:45 +0100 Subject: gentoo resync : 25.09.2021 --- net-fs/samba/Manifest | 8 +- net-fs/samba/samba-4.14.6-r1.ebuild | 2 +- net-fs/samba/samba-4.14.7.ebuild | 2 +- net-fs/samba/samba-4.15.0.ebuild | 336 +++++++++++++++++++++++++++++++++++ net-fs/samba/samba-4.15.0_rc5.ebuild | 336 ----------------------------------- 5 files changed, 342 insertions(+), 342 deletions(-) create mode 100644 net-fs/samba/samba-4.15.0.ebuild delete mode 100644 net-fs/samba/samba-4.15.0_rc5.ebuild (limited to 'net-fs/samba') diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest index 5e6639d2dab1..64ed05522f1d 100644 --- a/net-fs/samba/Manifest +++ b/net-fs/samba/Manifest @@ -8,11 +8,11 @@ DIST samba-4.13.11.tar.gz 18476158 BLAKE2B 43bf88a62078c980e274ad978be0e7de46afb DIST samba-4.13.9.tar.gz 18443813 BLAKE2B 24046586f666e9db02e1dd71d7eb854691f39e6b575b9652a8b7c1aa5569c856dfd48911e3f221de74f9deec5808152fa2836d03bb9810d55d4f526f1567574b SHA512 35c98979c1141fe4bd700e3c8f2439ec08876697faeaced6668ea6a9fea1d8303ca34e82123499aa4a41054b9ed6e1260ae779ea8d59978ba6de6b5861f21948 DIST samba-4.14.6.tar.gz 18661572 BLAKE2B d3bd9ba13c89afab1a2d119cbd0488240802710b24c6f681ba962804c6f5097003ed939da8747582aab710405f09ca90eded06eeddd3dd42a5aaa2a99be6be1b SHA512 0ce3f46b2693daa27656fe9a04925cbe7dd398342cab352f0422a350eb9f91d1ea6d64fb18d04010b93fb3c0b9fe6434b23deb1f26018bd1f9bdc1b0f97beca2 DIST samba-4.14.7.tar.gz 18668592 BLAKE2B 3cd8c806c6af85eecafa93ba10562544815f3d73aaa6152774d2443971e8c46e4c12c3097f82d04d1560410e796d60d681ce6b1a637a09f0262b39a1fe28cbea SHA512 155621b44232f696f389b8e01fd7d8a5ef8d4aa6b3de54090589268cf377c09714715a05e6198ee7e168ead71c08b5b20cd63a71811ef7d9bc9746c0d05ae9a6 -DIST samba-4.15.0rc5.tar.gz 18873299 BLAKE2B 2b2af09d04fad612d67a244590457189232f9a11925d8bb9aa278c64e148034551c0f6d6c7e76a633ad3a3f3c626f998946b8a8596d017301c758725ac2ff81d SHA512 bbdb37cf345a6c0765b5cd361cc858dd4496524bfbf0cdbe15876fe2284d8c39c5835bd5e5c686e9be45712f25aa158c624a2a719c5351f110c367e51443ba0f +DIST samba-4.15.0.tar.gz 18895040 BLAKE2B ac560e280d5fbea6499547de480f973bf1987558ce6b832fe0f6e5bad8cd58180731e7d1a37f85fce82c52bf735106aedec3ccfda09fa430a5c435e2437994f9 SHA512 5fcd8797f0ac2821f1bb213c9a39c0928847905f701003618f9f160eaa98f3fea25e3d8d4047658b0bd164f3e6a2a63fd7b0133317e536997c764acf7803950d EBUILD samba-4.13.10-r1.ebuild 9949 BLAKE2B ea390ab7ebf754f13df802bd7cafec9e225007ed17ff9141119b3dad161db3405e56d49797e727cbf8a4ae0077f53db28f1d459f75ba59198585ef103a3beab9 SHA512 ee3d5d92a99ff087a728432ff5033163ed6513f70cf27ddfe891c46f3614318089cbf4c65d62b029f46a8b26de9544e39d65f5d99a885e0e2289e0a0366a0d8e EBUILD samba-4.13.11.ebuild 9949 BLAKE2B ea390ab7ebf754f13df802bd7cafec9e225007ed17ff9141119b3dad161db3405e56d49797e727cbf8a4ae0077f53db28f1d459f75ba59198585ef103a3beab9 SHA512 ee3d5d92a99ff087a728432ff5033163ed6513f70cf27ddfe891c46f3614318089cbf4c65d62b029f46a8b26de9544e39d65f5d99a885e0e2289e0a0366a0d8e EBUILD samba-4.13.9-r2.ebuild 9942 BLAKE2B 7bee9ff108d961c7974c3605cfeb5d9c58094b379079bfae49b7c6623bc3bcc0ae6e6ec698d190e4ef96a1948b514e3aa3dc6f4e6bc1fb63a5b9535e2de452ab SHA512 a79bcfd3bf0a4576bcc31468ccad7c73a59bb921e40641f23f4fbf2267ca0ee48967279141b7ae24283df730cda43be00f59a374565b30045a38567936f75081 -EBUILD samba-4.14.6-r1.ebuild 10069 BLAKE2B 612013a18e68bb9490337e0a1a5667a2943a6bc143b9a41ac166f20985a20c3f86fa12bafd9ea3fd09ab658fda9b56d479c548f222f9412151de1495833bf1dc SHA512 252b22eea885f102d0c76021a333bd724376e0850ff8783a39f87d16f6e87b664c6fc772918849a173f1106333a193cbc0b66a503239b6c223be64f1b6727206 -EBUILD samba-4.14.7.ebuild 10069 BLAKE2B 612013a18e68bb9490337e0a1a5667a2943a6bc143b9a41ac166f20985a20c3f86fa12bafd9ea3fd09ab658fda9b56d479c548f222f9412151de1495833bf1dc SHA512 252b22eea885f102d0c76021a333bd724376e0850ff8783a39f87d16f6e87b664c6fc772918849a173f1106333a193cbc0b66a503239b6c223be64f1b6727206 -EBUILD samba-4.15.0_rc5.ebuild 9929 BLAKE2B 1ccd2656c7658a2df6c629f0775e1042d486389f2f3ef59f7f7391b7e8f2d4834d9643ea974abe43f88cb1862a299218f4479ff89eaa27458842c08e4f8819ec SHA512 534f6c04fed2f6b8e73a183dcd4d434a77deed0a1e8446e4092807e280efc717eeeb08dc701da28de000523c6d78c445a93c2b1014e990ff2997e1c83f85287b +EBUILD samba-4.14.6-r1.ebuild 10057 BLAKE2B 09c03bddb265dfd9e7fd42dbda35e7620d2fa67553847b3736de1be865e6491fa3a5ef599bcdb81c42ff14511b6513e023f25cdaecbd8a7121fa2453af82dc3f SHA512 fff09de14784eddc05c6e23eb56f94931cf7d9f73e326a77af1eb2b9be62efaa1793c1eb96ac43ef759910a9d651308b648ddaeedb32ecfd48438ff7678dae9d +EBUILD samba-4.14.7.ebuild 10057 BLAKE2B 09c03bddb265dfd9e7fd42dbda35e7620d2fa67553847b3736de1be865e6491fa3a5ef599bcdb81c42ff14511b6513e023f25cdaecbd8a7121fa2453af82dc3f SHA512 fff09de14784eddc05c6e23eb56f94931cf7d9f73e326a77af1eb2b9be62efaa1793c1eb96ac43ef759910a9d651308b648ddaeedb32ecfd48438ff7678dae9d +EBUILD samba-4.15.0.ebuild 9917 BLAKE2B d51176e0eb13f3d1807767505f075ba522cf8cb6cc28623039124a1ebb141d7ad1c1100561d347f6ec0283a358d8dcbaaf706e31712d5a7fc8d7253bede571da SHA512 916741315bac02da012a33bf7891c4084534f3e33f15eeddb22fdf641aaa9dd50a1d26cccc0f6a85d12a6809b4373e636d60a6e026e3af27f4f043d089ae9618 MISC metadata.xml 2166 BLAKE2B 147e131d456bd90334b48d551e47ce92f0fd7a0708df2f4cce0ffeb3f2e541689090f8edd043411d982574285e06a1b31fb087c18bd02b1296c6e15ccd0b2e92 SHA512 332354a6247d9ef8d50b71e07c66a10fcfbdb34dd876490f8517d0275d87a7d486789c19824c7ccd9066148a92ece3061649bd7ac0b7280cbc695c92ec70ef29 diff --git a/net-fs/samba/samba-4.14.6-r1.ebuild b/net-fs/samba/samba-4.14.6-r1.ebuild index 52f211eaa846..c0aa243a9452 100644 --- a/net-fs/samba/samba-4.14.6-r1.ebuild +++ b/net-fs/samba/samba-4.14.6-r1.ebuild @@ -90,7 +90,7 @@ COMMON_DEPEND=" net-dns/bind-tools[gssapi] ) ") - !alpha? ( !sparc? ( !riscv? ( sys-libs/libunwind:= ) ) ) + !alpha? ( !sparc? ( sys-libs/libunwind:= ) ) acl? ( virtual/acl ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto ) diff --git a/net-fs/samba/samba-4.14.7.ebuild b/net-fs/samba/samba-4.14.7.ebuild index 52f211eaa846..c0aa243a9452 100644 --- a/net-fs/samba/samba-4.14.7.ebuild +++ b/net-fs/samba/samba-4.14.7.ebuild @@ -90,7 +90,7 @@ COMMON_DEPEND=" net-dns/bind-tools[gssapi] ) ") - !alpha? ( !sparc? ( !riscv? ( sys-libs/libunwind:= ) ) ) + !alpha? ( !sparc? ( sys-libs/libunwind:= ) ) acl? ( virtual/acl ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto ) diff --git a/net-fs/samba/samba-4.15.0.ebuild b/net-fs/samba/samba-4.15.0.ebuild new file mode 100644 index 000000000000..3dad3bec60b7 --- /dev/null +++ b/net-fs/samba/samba-4.15.0.ebuild @@ -0,0 +1,336 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..9} ) +PYTHON_REQ_USE="threads(+),xml(+)" +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="https://samba.org/" + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *_rc* ]]; then + SRC_URI="mirror://samba/rc/${MY_P}.tar.gz" +else + SRC_URI="mirror://samba/stable/${MY_P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-3" +SLOT="0" +IUSE="acl addc ads ceph client cluster cups debug dmapi fam glusterfs +gpg iprint json ldap pam profiling-data python quota +regedit selinux +snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind +zeroconf" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + addc? ( python json winbind ) + ads? ( acl ldap python winbind ) + cluster? ( ads ) + gpg? ( addc ) + spotlight? ( json ) + test? ( python ) + !ads? ( !addc ) + ?? ( system-heimdal system-mitkrb5 ) +" + +# the test suite is messed, it uses system-installed samba +# bits instead of what was built, tests things disabled via use +# flags, and generally just fails to work in a way ebuilds could +# rely on in its current state +RESTRICT="test" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +COMMON_DEPEND=" + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/icu:=[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/libtasn1[${MULTILIB_USEDEP}] + dev-libs/popt[${MULTILIB_USEDEP}] + dev-perl/Parse-Yapp + >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}] + sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}] + >=sys-libs/ldb-2.4.0[ldap(+)?,${MULTILIB_USEDEP}] + =sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.4.4[${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libcrypt:=[${MULTILIB_USEDEP}] + virtual/libiconv + $(python_gen_cond_dep " + addc? ( + dev-python/dnspython:=[\${PYTHON_USEDEP}] + dev-python/markdown[\${PYTHON_USEDEP}] + ) + ads? ( + dev-python/dnspython:=[\${PYTHON_USEDEP}] + net-dns/bind-tools[gssapi] + ) + ") + !alpha? ( !sparc? ( sys-libs/libunwind:= ) ) + acl? ( virtual/acl ) + ceph? ( sys-cluster/ceph ) + cluster? ( net-libs/rpcsvc-proto ) + cups? ( net-print/cups ) + debug? ( dev-util/lttng-ust ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gpg? ( app-crypt/gpgme ) + json? ( dev-libs/jansson ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + pam? ( sys-libs/pam ) + python? ( + sys-libs/ldb[python,${PYTHON_SINGLE_USEDEP}] + sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] + sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] + sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] + ) + snapper? ( sys-apps/dbus ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= ) + zeroconf? ( net-dns/avahi[dbus] ) +" +DEPEND="${COMMON_DEPEND} + >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] + net-libs/libtirpc[${MULTILIB_USEDEP}] + || ( + net-libs/rpcsvc-proto + =net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.9 + >=sys-libs/nss_wrapper-1.1.3 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${COMMON_DEPEND} + client? ( net-fs/cifs-utils[ads?] ) + python? ( ${PYTHON_DEPS} ) + selinux? ( sec-policy/selinux-samba ) +" +BDEPEND="${PYTHON_DEPS} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + # Package fails to build with distcc + export DISTCC_DISABLE=1 + + python-single-r1_pkg_setup + + SHAREDMODS="$(usex snapper '' '!')vfs_snapper" + if use cluster ; then + SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS+=",idmap_ad" + fi +} + +src_prepare() { + default + + # un-bundle dnspython + sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die + + # unbundle iso8601 unless tests are enabled + if ! use test ; then + sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die + fi + + ## ugly hackaround for bug #592502 + #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + --without-winexe + $(multilib_native_use_with acl acl-support) + $(multilib_native_usex addc '' '--without-ad-dc') + $(multilib_native_use_with ads) + $(multilib_native_use_enable ceph cephfs) + $(multilib_native_use_with cluster cluster-support) + $(multilib_native_use_enable cups) + $(multilib_native_use_with dmapi) + $(multilib_native_use_with fam) + $(multilib_native_use_enable glusterfs) + $(multilib_native_use_with gpg gpgme) + $(multilib_native_use_with json) + $(multilib_native_use_enable iprint) + $(multilib_native_use_with pam) + $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(multilib_native_use_with quota quotas) + $(multilib_native_use_with regedit) + $(multilib_native_use_enable spotlight) + $(multilib_native_use_with syslog) + $(multilib_native_use_with systemd) + --systemd-install-services + --with-systemddir="$(systemd_get_systemunitdir)" + $(multilib_native_use_with winbind) + $(multilib_native_usex python '' '--disable-python') + $(multilib_native_use_enable zeroconf avahi) + $(multilib_native_usex test '--enable-selftest' '') + $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '') + $(use_with debug lttng) + $(use_with ldap) + $(use_with profiling-data) + # bug #683148 + --jobs 1 + ) + + if multilib_is_native_abi ; then + myconf+=( --with-shared-modules=${SHAREDMODS} ) + else + myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die + + if multilib_is_native_abi ; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + dotmpfiles "${FILESDIR}"/samba.conf + use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die + + # Preserve functionality for old gentoo-specific unit names + dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" + dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" + dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" + fi + + if use pam && use winbind ; then + newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind + # bugs #376853 and #590374 + insinto /etc/security + doins examples/pam_winbind/pam_winbind.conf + fi + + keepdir /var/cache/samba + keepdir /var/lib/ctdb + keepdir /var/lib/samba/{bind-dns,private} + keepdir /var/lock/samba + keepdir /var/log/samba +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + tmpfiles_process samba.conf + + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog "Be aware that this release contains the best of all of Samba's" + elog "technology parts, both a file server (that you can reasonably expect" + elog "to upgrade existing Samba 3.x releases to) and the AD domain" + elog "controller work previously known as 'samba4'." + elog + fi + if [[ "${PV}" != *_rc* ]] ; then + elog "For further information and migration steps make sure to read " + elog "https://samba.org/samba/history/${P}.html " + elog "https://wiki.samba.org/index.php/Samba4/HOWTO " + fi +} diff --git a/net-fs/samba/samba-4.15.0_rc5.ebuild b/net-fs/samba/samba-4.15.0_rc5.ebuild deleted file mode 100644 index aa5b6bd183ab..000000000000 --- a/net-fs/samba/samba-4.15.0_rc5.ebuild +++ /dev/null @@ -1,336 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..9} ) -PYTHON_REQ_USE="threads(+),xml(+)" -inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles - -DESCRIPTION="Samba Suite Version 4" -HOMEPAGE="https://samba.org/" - -MY_PV="${PV/_rc/rc}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *_rc* ]]; then - SRC_URI="mirror://samba/rc/${MY_P}.tar.gz" -else - SRC_URI="mirror://samba/stable/${MY_P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi -S="${WORKDIR}/${MY_P}" - -LICENSE="GPL-3" -SLOT="0" -IUSE="acl addc ads ceph client cluster cups debug dmapi fam glusterfs -gpg iprint json ldap pam profiling-data python quota +regedit selinux -snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind -zeroconf" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - addc? ( python json winbind ) - ads? ( acl ldap python winbind ) - cluster? ( ads ) - gpg? ( addc ) - spotlight? ( json ) - test? ( python ) - !ads? ( !addc ) - ?? ( system-heimdal system-mitkrb5 ) -" - -# the test suite is messed, it uses system-installed samba -# bits instead of what was built, tests things disabled via use -# flags, and generally just fails to work in a way ebuilds could -# rely on in its current state -RESTRICT="test" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/samba-4.0/policy.h - /usr/include/samba-4.0/dcerpc_server.h - /usr/include/samba-4.0/ctdb.h - /usr/include/samba-4.0/ctdb_client.h - /usr/include/samba-4.0/ctdb_protocol.h - /usr/include/samba-4.0/ctdb_private.h - /usr/include/samba-4.0/ctdb_typesafe_cb.h - /usr/include/samba-4.0/ctdb_version.h -) - -COMMON_DEPEND=" - >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] - dev-lang/perl:= - dev-libs/icu:=[${MULTILIB_USEDEP}] - dev-libs/libbsd[${MULTILIB_USEDEP}] - dev-libs/libtasn1[${MULTILIB_USEDEP}] - dev-libs/popt[${MULTILIB_USEDEP}] - dev-perl/Parse-Yapp - >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}] - sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}] - >=sys-libs/ldb-2.4.0[ldap(+)?,${MULTILIB_USEDEP}] - =sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}] - >=sys-libs/tdb-1.4.4[${MULTILIB_USEDEP}] - >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}] - sys-libs/zlib[${MULTILIB_USEDEP}] - virtual/libcrypt:=[${MULTILIB_USEDEP}] - virtual/libiconv - $(python_gen_cond_dep " - addc? ( - dev-python/dnspython:=[\${PYTHON_USEDEP}] - dev-python/markdown[\${PYTHON_USEDEP}] - ) - ads? ( - dev-python/dnspython:=[\${PYTHON_USEDEP}] - net-dns/bind-tools[gssapi] - ) - ") - !alpha? ( !sparc? ( !riscv? ( sys-libs/libunwind:= ) ) ) - acl? ( virtual/acl ) - ceph? ( sys-cluster/ceph ) - cluster? ( net-libs/rpcsvc-proto ) - cups? ( net-print/cups ) - debug? ( dev-util/lttng-ust ) - dmapi? ( sys-apps/dmapi ) - fam? ( virtual/fam ) - gpg? ( app-crypt/gpgme ) - json? ( dev-libs/jansson ) - ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) - pam? ( sys-libs/pam ) - python? ( - sys-libs/ldb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}] - sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}] - ) - snapper? ( sys-apps/dbus ) - system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) - system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] ) - systemd? ( sys-apps/systemd:0= ) - zeroconf? ( net-dns/avahi[dbus] ) -" -DEPEND="${COMMON_DEPEND} - >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] - net-libs/libtirpc[${MULTILIB_USEDEP}] - || ( - net-libs/rpcsvc-proto - =net-dns/resolv_wrapper-1.1.4 - >=net-libs/socket_wrapper-1.1.9 - >=sys-libs/nss_wrapper-1.1.3 - >=sys-libs/uid_wrapper-1.2.1 - ) - )" -RDEPEND="${COMMON_DEPEND} - client? ( net-fs/cifs-utils[ads?] ) - python? ( ${PYTHON_DEPS} ) - selinux? ( sec-policy/selinux-samba ) -" -BDEPEND="${PYTHON_DEPS} - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.4.0-pam.patch" -) - -#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" -CONFDIR="${FILESDIR}/4.4" - -WAF_BINARY="${S}/buildtools/bin/waf" - -SHAREDMODS="" - -pkg_setup() { - # Package fails to build with distcc - export DISTCC_DISABLE=1 - - python-single-r1_pkg_setup - - SHAREDMODS="$(usex snapper '' '!')vfs_snapper" - if use cluster ; then - SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad" - elif use ads ; then - SHAREDMODS+=",idmap_ad" - fi -} - -src_prepare() { - default - - # un-bundle dnspython - sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die - - # unbundle iso8601 unless tests are enabled - if ! use test ; then - sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die - fi - - ## ugly hackaround for bug #592502 - #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die - - sed -e 's:::' \ - -i source4/dsdb/samdb/ldb_modules/password_hash.c \ - || die - - # Friggin' WAF shit - multilib_copy_sources -} - -multilib_src_configure() { - # when specifying libs for samba build you must append NONE to the end to - # stop it automatically including things - local bundled_libs="NONE" - if ! use system-heimdal && ! use system-mitkrb5 ; then - bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" - fi - - local myconf=( - --enable-fhs - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${EPREFIX}/var" - --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" - --with-piddir="${EPREFIX}/run/${PN}" - --bundled-libraries="${bundled_libs}" - --builtin-libraries=NONE - --disable-rpath - --disable-rpath-install - --nopyc - --nopyo - --without-winexe - $(multilib_native_use_with acl acl-support) - $(multilib_native_usex addc '' '--without-ad-dc') - $(multilib_native_use_with ads) - $(multilib_native_use_enable ceph cephfs) - $(multilib_native_use_with cluster cluster-support) - $(multilib_native_use_enable cups) - $(multilib_native_use_with dmapi) - $(multilib_native_use_with fam) - $(multilib_native_use_enable glusterfs) - $(multilib_native_use_with gpg gpgme) - $(multilib_native_use_with json) - $(multilib_native_use_enable iprint) - $(multilib_native_use_with pam) - $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') - $(multilib_native_use_with quota quotas) - $(multilib_native_use_with regedit) - $(multilib_native_use_enable spotlight) - $(multilib_native_use_with syslog) - $(multilib_native_use_with systemd) - --systemd-install-services - --with-systemddir="$(systemd_get_systemunitdir)" - $(multilib_native_use_with winbind) - $(multilib_native_usex python '' '--disable-python') - $(multilib_native_use_enable zeroconf avahi) - $(multilib_native_usex test '--enable-selftest' '') - $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '') - $(use_with debug lttng) - $(use_with ldap) - $(use_with profiling-data) - # bug #683148 - --jobs 1 - ) - - if multilib_is_native_abi ; then - myconf+=( --with-shared-modules=${SHAREDMODS} ) - else - myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper ) - fi - - CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ - waf-utils_src_configure ${myconf[@]} -} - -multilib_src_compile() { - waf-utils_src_compile -} - -multilib_src_install() { - waf-utils_src_install - - # Make all .so files executable - find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die - - if multilib_is_native_abi ; then - # install ldap schema for server (bug #491002) - if use ldap ; then - insinto /etc/openldap/schema - doins examples/LDAP/samba.schema - fi - - # create symlink for cups (bug #552310) - if use cups ; then - dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb - fi - - # install example config file - insinto /etc/samba - doins examples/smb.conf.default - - # Fix paths in example file (#603964) - sed \ - -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ - -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ - -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ - -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ - -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ - -i "${ED}"/etc/samba/smb.conf.default || die - - # Install init script and conf.d file - newinitd "${CONFDIR}/samba4.initd-r1" samba - newconfd "${CONFDIR}/samba4.confd" samba - - dotmpfiles "${FILESDIR}"/samba.conf - use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die - - # Preserve functionality for old gentoo-specific unit names - dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service" - dosym smb.service "$(systemd_get_systemunitdir)/smbd.service" - dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service" - fi - - if use pam && use winbind ; then - newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind - # bugs #376853 and #590374 - insinto /etc/security - doins examples/pam_winbind/pam_winbind.conf - fi - - keepdir /var/cache/samba - keepdir /var/lib/ctdb - keepdir /var/lib/samba/{bind-dns,private} - keepdir /var/lock/samba - keepdir /var/log/samba -} - -multilib_src_test() { - if multilib_is_native_abi ; then - "${WAF_BINARY}" test || die "test failed" - fi -} - -pkg_postinst() { - tmpfiles_process samba.conf - - if [[ -z ${REPLACING_VERSIONS} ]] ; then - elog "Be aware that this release contains the best of all of Samba's" - elog "technology parts, both a file server (that you can reasonably expect" - elog "to upgrade existing Samba 3.x releases to) and the AD domain" - elog "controller work previously known as 'samba4'." - elog - fi - if [[ "${PV}" != *_rc* ]] ; then - elog "For further information and migration steps make sure to read " - elog "https://samba.org/samba/history/${P}.html " - elog "https://wiki.samba.org/index.php/Samba4/HOWTO " - fi -} -- cgit v1.2.3