summaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorBen Kohler <bkohler@gentoo.org>2024-02-09 11:11:53 -0600
committerBen Kohler <bkohler@gentoo.org>2024-02-09 11:13:36 -0600
commit1ba820011c7aaea8f57f4dc6370ebe39e6ca1227 (patch)
tree992f422d4204d668efa17c8ac5e5e16240ef854d /net-fs
parentnet-fs/samba: add 4.19.4 (diff)
downloadgentoo-1ba820011c7aaea8f57f4dc6370ebe39e6ca1227.tar.gz
gentoo-1ba820011c7aaea8f57f4dc6370ebe39e6ca1227.tar.bz2
gentoo-1ba820011c7aaea8f57f4dc6370ebe39e6ca1227.zip
net-fs/samba: drop versions
Bug: https://bugs.gentoo.org/915556 Signed-off-by: Ben Kohler <bkohler@gentoo.org>
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/samba/Manifest9
-rw-r--r--net-fs/samba/samba-4.18.4-r1.ebuild384
-rw-r--r--net-fs/samba/samba-4.18.5-r1.ebuild383
-rw-r--r--net-fs/samba/samba-4.18.6-r1.ebuild383
-rw-r--r--net-fs/samba/samba-4.18.7.ebuild383
-rw-r--r--net-fs/samba/samba-4.18.9.ebuild383
-rw-r--r--net-fs/samba/samba-4.19.0-r1.ebuild382
-rw-r--r--net-fs/samba/samba-4.19.1.ebuild382
-rw-r--r--net-fs/samba/samba-4.19.2.ebuild382
-rw-r--r--net-fs/samba/samba-4.19.3.ebuild382
10 files changed, 0 insertions, 3453 deletions
diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest
index 70e8c94f1a42..84f1b579cb63 100644
--- a/net-fs/samba/Manifest
+++ b/net-fs/samba/Manifest
@@ -1,12 +1,3 @@
DIST samba-4.18.10.tar.gz 41352009 BLAKE2B 191928a3b0b2ff203de83a208dd61ac047bc666b744b0ba16a8f9a7e2e072438e2980bf0096ac95cc44003526b2098e763a29b4317083a1e3192f7e3cae2ab85 SHA512 19fed2644b1cb5a5bddca6c7eb2da11b4faf224b060b52ac9131f321d194dc650ea3082051960253e2ce627cdc06ef396778fa0f95e3e9b79f74cd1422577d80
-DIST samba-4.18.4.tar.gz 41311410 BLAKE2B 1f1aab7eb933111b9b1c72af8c3dd379fe34014085129e9d5cc400b4e434742e1c08ad4fdf2a98291d6063ce9b2ddc811e9ab5dbb133a85e97f2158f83dd7c96 SHA512 bc8d792b510061556c07b6844a825801a4271eed45e01133a4718c1839d123e2908fa0e31e67af43098500e98a9082eb104052e711a8a034fac23d86e15c29ee
-DIST samba-4.18.5.tar.gz 41315373 BLAKE2B 24c625372c6e4f7f4393777991221f7a7ad25513717436491ea3238c8d588e738eb1a64791606f691b3608362b3f3741f390f08975b2b0578c497984a4d44392 SHA512 c12b7cd7aba0941bf178c89604f926347bee4f5bb6ea651930cc93bcd8a2cfa983b1f10a0ccb55f99c5b34b9f158d1059d06d7f39f7bc261c7dd0d8c89c5a6f5
-DIST samba-4.18.6.tar.gz 41323359 BLAKE2B 0bdb81edb6a539a4466f97949325091a063ab0a1633c29e15296776f0adc41ee9e1949c94870c347a8dad689598ef1b2de4f0301cb7ce06cae045c68caffa5f4 SHA512 28e8e4e57db1f392dfe96387888e2771e08f1f8eedf860f688ea3b8bd2cee1d6bbe99b2e61c84dc9ed6ade6393baf629955bed93d6cdad5241a292a10d8a12b6
-DIST samba-4.18.7.tar.gz 41328101 BLAKE2B 41b148f72bfa02a8d04745a4d507e8846ffe9b1388b31fe11074c7d86db6509f35a93cce6a201727b37efb6d671f3059d01e26a72198ad67bd83d6238b07d636 SHA512 86baf5c76e92f4b194726441e1d0efe11dc3db4d399f141f76c1abb4f4a3ab05473dded3294d2019f7999305ca6d5e56961d71434e9e214b960895e53bedd7a9
DIST samba-4.18.8.tar.gz 41335959 BLAKE2B d25711f1e781ed16fc224476979a07a5362f92ac943dd0bccfdf445434d0e6838281d5ceae27963267f914720ad6db647078520dc0e78c6ae652faec7d773e73 SHA512 2924c360f6299129527457547b13c1b282e2907a0ecde1036dbca894c752935d693914b4846a9eab436b33798c53c9974692e51fd071301b1174598be944a246
-DIST samba-4.18.9.tar.gz 41332779 BLAKE2B 8a0769c73d42b941b6f69d62243dd2b93d66748231465b853320cf1bf4b3dd8a912ac7bddfaa9c8b1941788951c2ccd630dabb23cf94965bc1d1e4cb5d74d123 SHA512 93a6c878bca583f59208df2a7865bbd453f7a65dc2f39a863797ef807bdeced4d632c5edd4579e341f8cf3b0b2fbe41e68a815a1510518bdd43e9a25a973c94c
-DIST samba-4.19.0.tar.gz 41816190 BLAKE2B 4e0db41d7d06e195cee994c5ec02a37892c1a7dd99ea9defb845fe2fbf96446846c469007218b6b0d6077c0886f0d08b2a4376acba1ed455b641daacd9018f12 SHA512 908418c16e94cf8f87dd331fa4c0081e89d147706e4c85d0cd331327481cab49f6f17ed338c1d0e73475ef8da2398f80db18d63f2d37fc8cb4f053e3b3081af7
-DIST samba-4.19.1.tar.gz 41818285 BLAKE2B d0a6d9d1dfa9e4caacbbf3c9253d50553a5b91ed23a0f3b8871bb790888a6dbe73c4752f949a91263ccd6c5cf526fb8a47d3703403d44c4cea9b0670f2d2ef96 SHA512 838d1529c06bc636fbc3a1c10d5b6bea6389acf992d16c0fd44c51170a6c09de9ccc6e76b789740113851d8c9092bcbe974617b39bbae001e0395f7e127b1670
-DIST samba-4.19.2.tar.gz 41817924 BLAKE2B cb3747f1be6e712c6e68f3720e68aee7db2e4dcc48a9210d002337d6690ed8b027919f333dc4a7c1e74b716ebceeff1d8071463899513edfe51da967d71d8148 SHA512 d2fb64013e77d138a52b100377a042951c132884936b2b6dbf60506355e3f6882d5f3008a6bb855dd19b8981f7dc14da4f91ddbea7458978c1c4ab009608faf5
-DIST samba-4.19.3.tar.gz 41829749 BLAKE2B f83af3b50d795bdc4a250fe96040721150acc3b8effddd473e3cfa3ef6eeec99928b1307a18a472be45049e1d0b74650b9f6dd4bf5c434277c94ab88cb493b3b SHA512 1eacc6be2866ecc7cbb13c5d17a32ad14cc8148e811db9c730a11065ac3ed84a82e406e750dc97fbc884377346c4538a38d8031e63db6b09acd78fbd2c02d702
DIST samba-4.19.4.tar.gz 41839810 BLAKE2B b5916478d9385eff93d852b61eaa835e04eef7d813175b7011dfab518d3115707895a67f34fc4bb6afc2a1e3b2f60af8d30cd5a32b59d8ec48977c7eefd1b906 SHA512 9a66f685cb1b5b89c59c75ccb67292b3f792b40b30ca76dfc483e805f5bb680bac027117a28a117f42713452fca41c439bed1724ba7d436fe0b0cb30a34f5b45
diff --git a/net-fs/samba/samba-4.18.4-r1.ebuild b/net-fs/samba/samba-4.18.4-r1.ebuild
deleted file mode 100644
index 50bd8a8ba337..000000000000
--- a/net-fs/samba/samba-4.18.4-r1.ebuild
+++ /dev/null
@@ -1,384 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.0"
-TDB_VERSION="1.4.8"
-TEVENT_VERSION="0.14.1"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/${PN}-4.18.4-bug-15418-windows-update-secure-channel.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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
- --accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
- $(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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.18.5-r1.ebuild b/net-fs/samba/samba-4.18.5-r1.ebuild
deleted file mode 100644
index 62e458b0c89d..000000000000
--- a/net-fs/samba/samba-4.18.5-r1.ebuild
+++ /dev/null
@@ -1,383 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.0"
-TDB_VERSION="1.4.8"
-TEVENT_VERSION="0.14.1"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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
- --accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
- $(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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.18.6-r1.ebuild b/net-fs/samba/samba-4.18.6-r1.ebuild
deleted file mode 100644
index 62e458b0c89d..000000000000
--- a/net-fs/samba/samba-4.18.6-r1.ebuild
+++ /dev/null
@@ -1,383 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.0"
-TDB_VERSION="1.4.8"
-TEVENT_VERSION="0.14.1"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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
- --accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
- $(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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.18.7.ebuild b/net-fs/samba/samba-4.18.7.ebuild
deleted file mode 100644
index 62e458b0c89d..000000000000
--- a/net-fs/samba/samba-4.18.7.ebuild
+++ /dev/null
@@ -1,383 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.0"
-TDB_VERSION="1.4.8"
-TEVENT_VERSION="0.14.1"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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
- --accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
- $(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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.18.9.ebuild b/net-fs/samba/samba-4.18.9.ebuild
deleted file mode 100644
index 62e458b0c89d..000000000000
--- a/net-fs/samba/samba-4.18.9.ebuild
+++ /dev/null
@@ -1,383 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.0"
-TDB_VERSION="1.4.8"
-TEVENT_VERSION="0.14.1"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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
- --accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
- $(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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.19.0-r1.ebuild b/net-fs/samba/samba-4.19.0-r1.ebuild
deleted file mode 100644
index 60a4f1bf20bd..000000000000
--- a/net-fs/samba/samba-4.19.0-r1.ebuild
+++ /dev/null
@@ -1,382 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.1"
-TDB_VERSION="1.4.9"
-TEVENT_VERSION="0.15.0"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.9.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.19.1.ebuild b/net-fs/samba/samba-4.19.1.ebuild
deleted file mode 100644
index 60a4f1bf20bd..000000000000
--- a/net-fs/samba/samba-4.19.1.ebuild
+++ /dev/null
@@ -1,382 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.1"
-TDB_VERSION="1.4.9"
-TEVENT_VERSION="0.15.0"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.9.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.19.2.ebuild b/net-fs/samba/samba-4.19.2.ebuild
deleted file mode 100644
index 60a4f1bf20bd..000000000000
--- a/net-fs/samba/samba-4.19.2.ebuild
+++ /dev/null
@@ -1,382 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.1"
-TDB_VERSION="1.4.9"
-TEVENT_VERSION="0.15.0"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.9.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}
diff --git a/net-fs/samba/samba-4.19.3.ebuild b/net-fs/samba/samba-4.19.3.ebuild
deleted file mode 100644
index 60a4f1bf20bd..000000000000
--- a/net-fs/samba/samba-4.19.3.ebuild
+++ /dev/null
@@ -1,382 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+),xml(+)"
-inherit python-single-r1 flag-o-matic 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="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
-else
- SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg"
-IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
-IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
-IUSE+=" zeroconf"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- addc? ( json python !system-mitkrb5 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
-)
-
-TALLOC_VERSION="2.4.1"
-TDB_VERSION="1.4.9"
-TEVENT_VERSION="0.15.0"
-
-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-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.9.0:=[ldap(+)?,${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:=
- sys-libs/readline:=
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${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]
- )
- ')
- acl? ( virtual/acl )
- ceph? ( sys-cluster/ceph )
- cluster? ( net-libs/rpcsvc-proto )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- 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.19[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:= )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind:= )
- !llvm-libunwind? ( sys-libs/libunwind:= )
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${COMMON_DEPEND}
- dev-perl/JSON
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- spotlight? ( dev-libs/glib )
- test? (
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- $(python_gen_cond_dep "dev-python/subunit[\${PYTHON_USEDEP},${MULTILIB_USEDEP}]" )
- !system-mitkrb5? (
- >=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.18.4-pam.patch
- "${FILESDIR}"/ldb-2.5.2-skip-wav-tevent-check.patch
-)
-
-CONFDIR="${FILESDIR}/4.4"
-WAF_BINARY="${S}/buildtools/bin/waf"
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- python-single-r1_pkg_setup
-
- SHAREDMODS="$(usev !snapper '!')vfs_snapper"
- if use cluster ; then
- SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS+=",idmap_ad"
- fi
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- # Unbundle 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:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- # WAF
- 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
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- # bug #874633
- if use llvm-libunwind ; then
- mkdir -p "${T}"/${ABI}/pkgconfig || die
-
- local -x PKG_CONFIG_PATH="${T}/${ABI}/pkgconfig:${PKG_CONFIG_PATH}"
-
- cat <<-EOF > "${T}"/${ABI}/pkgconfig/libunwind-generic.pc || die
- exec_prefix=\${prefix}
- libdir=/usr/$(get_libdir)
- includedir=\${prefix}/include
-
- Name: libunwind-generic
- Description: libunwind generic library
- Version: 1.70
- Libs: -L\${libdir} -lunwind
- Cflags: -I\${includedir}
- EOF
- 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)
- --without-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 unwind libunwind)
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usev 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
-
- append-cppflags "-I${ESYSROOT}/usr/include/et"
-
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "Test failed"
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
- # smbspool_krb5_wrapper must only be accessible to root, bug #880739
- find "${ED}" -type f -name "smbspool_krb5_wrapper" -exec chmod go-rwx {} + || die
-
- # Remove empty runtime dirs created by build system (bug #892341)
- find "${ED}"/{run,var} -type d -empty -delete || 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 (bug #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
- if ! use addc ; then
- rm "${D}/$(systemd_get_systemunitdir)/samba.service" \
- || die
- fi
-
- # 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
-}
-
-pkg_postinst() {
- tmpfiles_process samba.conf
-}