aboutsummaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorDave Hughes <davidhughes205@gmail.com>2021-03-13 12:10:16 -0500
committerSam James <sam@gentoo.org>2021-03-13 21:25:46 +0000
commit28de7a61d38252fa922854eba018a046250976ed (patch)
tree984b0afab662c83f9112f7c74523ae2868c56121 /net-fs
parentmedia-libs/virglrenderer: remove from overlay (diff)
downloadmusl-28de7a61d38252fa922854eba018a046250976ed.tar.gz
musl-28de7a61d38252fa922854eba018a046250976ed.tar.bz2
musl-28de7a61d38252fa922854eba018a046250976ed.zip
net-fs/samba: sync with ::gentoo
Package-Manager: Portage-3.0.17, Repoman-3.0.2 RepoMan-Options: --force Manifest-Sign-Key: 0xA1919C830E9498E0 Signed-off-by: Dave Hughes <davidhughes205@gmail.com> Closes: https://github.com/gentoo/musl/pull/421 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/samba/Manifest36
-rw-r--r--net-fs/samba/files/4.4/samba4.initd-r13
-rw-r--r--net-fs/samba/files/add_missing___compar_fn_t.patch (renamed from net-fs/samba/files/samba-4.11.8-musl-fix-compar_fn_t.patch)2
-rw-r--r--net-fs/samba/files/fix-musl-lib-without-innetgr.patch42
-rw-r--r--net-fs/samba/files/getpwent_r.patch (renamed from net-fs/samba/files/samba-4.3.9-remove-getpwent_r.patch)14
-rw-r--r--net-fs/samba/files/missing-headers.patch38
-rw-r--r--net-fs/samba/files/musl-disable-netgroup.patch15
-rw-r--r--net-fs/samba/files/musl_rm_unistd_incl.patch37
-rw-r--r--net-fs/samba/files/musl_uintptr.patch35
-rw-r--r--net-fs/samba/files/nmbd.service12
-rw-r--r--net-fs/samba/files/samba-4.10.0-disable_gnutls_build_fix.patch32
-rw-r--r--net-fs/samba/files/samba-4.13-vfs_snapper_configure_option.patch56
-rw-r--r--net-fs/samba/files/samba-4.13-winexe_option.patch67
-rw-r--r--net-fs/samba/files/samba-4.5.1-compile_et_fix.patch16
-rw-r--r--net-fs/samba/files/samba-4.8.6-no-pydsdb-when-no-addc.patch36
-rw-r--r--net-fs/samba/files/samba-glibc-2.26-no_rpc.patch14
-rw-r--r--net-fs/samba/files/samba.conf1
-rw-r--r--net-fs/samba/files/samba.service10
-rw-r--r--net-fs/samba/files/smbd.service12
-rw-r--r--net-fs/samba/files/smbd.socket9
-rw-r--r--net-fs/samba/files/smbd_at.service7
-rw-r--r--net-fs/samba/files/winbindd.service12
-rw-r--r--net-fs/samba/metadata.xml5
-rw-r--r--net-fs/samba/samba-4.12.12.ebuild (renamed from net-fs/samba/samba-4.11.6-r2.ebuild)89
-rw-r--r--net-fs/samba/samba-4.12.9-r1.ebuild (renamed from net-fs/samba/samba-4.11.8.ebuild)82
-rw-r--r--net-fs/samba/samba-4.13.5.ebuild341
-rw-r--r--net-fs/samba/samba-4.14.0.ebuild341
27 files changed, 1096 insertions, 268 deletions
diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest
index 876f207..22c3b6a 100644
--- a/net-fs/samba/Manifest
+++ b/net-fs/samba/Manifest
@@ -1,23 +1,25 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
-DIST samba-4.11.6.tar.gz 18541566 BLAKE2B 2b4a40be7cec8a9706cbc344796885f59403aa11ca3d8a7dc40b3d287ec222c11d7395fd193c4b66c4116f1bffd869caf444a950d508f5a9a596db32553e1461 SHA512 3815080a1693c596a126371a5ea4e8534317a7266803c7de13a7e5b3ee9757dfbf13c0de20d498a6683d3aaf56941ed42f289e3c24f88713529a5f047a691af2
-DIST samba-4.11.8.tar.gz 18571308 BLAKE2B 024920789ac8fcedfc79f4d094a47e4c1399a0bbc3ad79908f66b9bbabd765865795763c1017cc0caba18dbc11ce6a7e25231804d7dff11ab3d97a599ab8d9ed SHA512 a036c46e060d9edc11bf4e45e0449042fe44b74ff083d305779c68dad943f87fb6d2680f3a68e6bbcd0b19c8c397ec9fc5794229a311c25dad9efc366add613a
+DIST samba-4.12.12.tar.gz 18252232 BLAKE2B 4e5fabdbbcbf1df5e4a8966fbd55923c7fe97c4449574f0c17864dd9376197539ea29f59e00fc4fbb58ce18d4c7fcd8ab24e8f892edc9b32c646215287fc4bb7 SHA512 45ebed4cc73990993e800605391715afa2aa044e92bf89a62eb3ccbff97be2c9c4bf4a1f840a5d5d1d0c02704435c074e4ae386ca1729066b706c236c898c08f
+DIST samba-4.12.9.tar.gz 18236198 BLAKE2B e19cbbbb8416626ca2fe769bf26f3645e94f23781538b3c5e1f94ce618efb807d0732e5591525ec066a31cc0211463b9b66105d1d499989012d624edaa2a132c SHA512 8bd3122bcaab2f5a16a73902a9b628384063a8116a08f0254541e05c148016839b3215c60ff0d3291a332e7884708950ad64137204b0ac19801012d3b6684fa6
+DIST samba-4.13.5.tar.gz 18426722 BLAKE2B d84b71cd8a925270670b7d302b527ee116cecf9d603baf1fc69c8527c657d5e2430e1b51e951476525fd95dc3392e5642a829a646c0eb254ccd7530bd393f1a4 SHA512 4187337fecf60fa133c6e81e894634f36028d34ccc521e5e856a5736a4f58fc2ad2cd136a206d141f17f7bc519a6168a27e83705fb2d38559667a60b24ad1c1f
+DIST samba-4.14.0.tar.gz 18635518 BLAKE2B ad1d091886b5da536a73bdbd4075f7ddc247e13a514e26c9bf993e8da5a3d737662ddd859c60d47a9a597e1326b96d7e8d083d5b15074f5875495cf68db58a24 SHA512 cf5767fc49b8c5832dd9711765e0b395a07964c3a618de10ae491123de7141eb4f083194b6120f302f5c4a196837a14070b8a8324412e8957af3706a5bbc6f11
-----BEGIN PGP SIGNATURE-----
-iQKTBAEBCAB9FiEEOA+uIz0+s3MTYJHqpFO6gRhEr2EFAl7u72hfFIAAAAAALgAo
-aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDM4
-MEZBRTIzM0QzRUIzNzMxMzYwOTFFQUE0NTNCQTgxMTg0NEFGNjEACgkQpFO6gRhE
-r2FPzw//cIo8r9QWWD4xVicZUU/FoXw63ZaIPfYwBJKP+RL9XKHFE0rv7CVZXJLx
-xH2hv4rfoMo11qzUrd3IYSh6xCV1568ikEDbWfwRqNEHlEBbmJ6xPuL9oCpl0TJM
-RSwRQut/fCeRyYH+odnO3v3eKmGVEUayz3ijwHtmwSK6oOs2xdp1hp2hb754eA13
-UgEiC9kp1pYiUpyMuLQYxsGbSV63znb4HgrJG6Dr9MjfpGks6kUeETkmM6qjU4aD
-Bqfeig2L3f6Flz1jnGBEkH/KcXMc6+2V8O9um+QMztR+UE/XlM8Saqg6WKGL71vA
-xhrZY/E3OCe9wpzn7ndJhFiFzZAZz9giBA0NAvFUjZEW0IkBVTq5rL2Y5JDq9zL3
-IonRVy6jVAnHgAChvV7pohIb19x/1BIty+G9ecmMNb6k9vAOr1BRe/pqwLpxkw3P
-EcaiihIPoFvgjqZj1B3x9vkLxJ0+xp62WIG2Tc+M6owHr58cg84C8FlCvIdyldsK
-9xSRvOuH/f4Uf2/fG39dsOtBJciDWXCkkupDADGS3yYBH3WkBLvtsqC5cNdd5wqR
-HGH0JKTutI8GpbfXcEKOAQn++CI3VZ3UEccDONb/HrY/TPNCMsxShF/sJG51SioB
-yvbW6kpIfstTq6Gbsf7EigVDN/SJrB4PlB+QsxCOleb2ConHkTs=
-=h02N
+iQKTBAEBCAB9FiEEZdLCSnfk9z83VSkfsaMsEcx8U7oFAmBM8fJfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY1
+RDJDMjRBNzdFNEY3M0YzNzU1MjkxRkIxQTMyQzExQ0M3QzUzQkEACgkQsaMsEcx8
+U7ovtA//Q7n6hT6+s2KyenIutUiCeEDT2A8td+hCQZIyJWE36EVMH0xd3xZGvanc
+Y97BezUjv8AzGfAos7PVa1HrO1b4LqbVu0+EnvKM32aLJys71Rz2M2gp9gPRAxop
+9VdNplTiybau/RYjgRJi9aj7/0Co7/dludv2nccEIQItVzejVU+XBtAYfY7F7mry
+F4WXghOIB8nsKfHgZb0EfsVX+8BzaSUCVVXTbpULHY4VT+gCUM7WjKHBNOgBkVv9
+9kNOhDuVj9LC3UoRXwNxYjozW2vNZma4G129QgviTUk+TbA6MeG3/H3nCLVAQfVW
+LWbnwN5EznD48VSpfoLY7EbdvGOBvuXO4oVWIskLyvEwnICvJRWjSO4DaV+3tGby
+ViJnKSrnBjTLJWeZGaDUJSlx6djDQopAGeudL4FShvdgQlv24Qem50LFqM6A1oUc
+xUxoVThh0cOfsaMpJxW7AhCvzItslZ2Buf5elho1DyMLZEkeOY6nDqT1WaZqphp3
+QaF863c9K38ZIyx+dy9iRbIWAw0wYryLV8kRDjLfGKdsRD4drhitZqs48cN43vAP
+MjGP8yLHW6C5x5dGowFtrLqfRoAjDb8nUjAeQA/carhwLf0iWROYFRQXqjauhtAR
+VJEhtizHIhJoo8ZqPDonA8xuzwVM0l39lNBwu+jk8y3g89GpKDE=
+=HnOu
-----END PGP SIGNATURE-----
diff --git a/net-fs/samba/files/4.4/samba4.initd-r1 b/net-fs/samba/files/4.4/samba4.initd-r1
index a914981..4798d43 100644
--- a/net-fs/samba/files/4.4/samba4.initd-r1
+++ b/net-fs/samba/files/4.4/samba4.initd-r1
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License, v2 or later
extra_started_commands="reload"
@@ -7,7 +7,6 @@ extra_started_commands="reload"
depend() {
after slapd
- need net
use cupsd
}
diff --git a/net-fs/samba/files/samba-4.11.8-musl-fix-compar_fn_t.patch b/net-fs/samba/files/add_missing___compar_fn_t.patch
index 223bc64..96b65e6 100644
--- a/net-fs/samba/files/samba-4.11.8-musl-fix-compar_fn_t.patch
+++ b/net-fs/samba/files/add_missing___compar_fn_t.patch
@@ -1,5 +1,3 @@
-diff --git a/source4/dsdb/samdb/ldb_modules/count_attrs.c b/source4/dsdb/samdb/ldb_modules/count_attrs.c
-index b0d1b22..2d53b53 100644
--- a/source4/dsdb/samdb/ldb_modules/count_attrs.c
+++ b/source4/dsdb/samdb/ldb_modules/count_attrs.c
@@ -38,6 +38,11 @@
diff --git a/net-fs/samba/files/fix-musl-lib-without-innetgr.patch b/net-fs/samba/files/fix-musl-lib-without-innetgr.patch
new file mode 100644
index 0000000..fb12a10
--- /dev/null
+++ b/net-fs/samba/files/fix-musl-lib-without-innetgr.patch
@@ -0,0 +1,42 @@
+From fcb8ecd530b2d151e373974741601483326f7528 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 27 Jun 2019 11:09:47 +0800
+Subject: [PATCH] samba: fix musl lib without innetgr
+
+Upstream-Status: Pending
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ lib/util/access.c | 2 +-
+ source3/auth/user_util.c | 2 +-
+ 2 file changed, 2 insertion(+), 2 deletion(-)
+
+diff --git a/lib/util/access.c b/lib/util/access.c
+index 7da0573..b94949e 100644
+--- a/lib/util/access.c
++++ b/lib/util/access.c
+@@ -112,7 +112,7 @@ static bool string_match(const char *tok,const char *s)
+ return true;
+ }
+ } else if (tok[0] == '@') { /* netgroup: look it up */
+-#ifdef HAVE_NETGROUP
++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR)
+ DATA_BLOB tmp;
+ char *mydomain = NULL;
+ char *hostname = NULL;
+diff --git a/source3/auth/user_util.c b/source3/auth/user_util.c
+index a76b5d4..30f523d 100644
+--- a/source3/auth/user_util.c
++++ b/source3/auth/user_util.c
+@@ -148,7 +148,7 @@ static void store_map_in_gencache(TALLOC_CTX *ctx, const char *from, const char
+
+ bool user_in_netgroup(TALLOC_CTX *ctx, const char *user, const char *ngname)
+ {
+-#ifdef HAVE_NETGROUP
++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR)
+ static char *my_yp_domain = NULL;
+ char *lowercase_user = NULL;
+
+--
+2.7.4
+
diff --git a/net-fs/samba/files/samba-4.3.9-remove-getpwent_r.patch b/net-fs/samba/files/getpwent_r.patch
index 99ebeda..0ba5fcc 100644
--- a/net-fs/samba/files/samba-4.3.9-remove-getpwent_r.patch
+++ b/net-fs/samba/files/getpwent_r.patch
@@ -18,7 +18,7 @@ index 2cd6122..04f13c6 100644
static bool test_enum_r_passwd(struct torture_context *tctx,
struct passwd **pwd_array_p,
size_t *num_pwd_p)
-@@ -381,6 +381,7 @@ static bool test_enum_r_passwd(struct torture_context *tctx,
+@@ -383,6 +383,7 @@ static bool test_enum_r_passwd(struct torture_context *tctx,
return true;
}
@@ -26,7 +26,7 @@ index 2cd6122..04f13c6 100644
static bool torture_assert_passwd_equal(struct torture_context *tctx,
const struct passwd *p1,
-@@ -432,7 +433,7 @@ static bool test_passwd_r(struct torture_context *tctx)
+@@ -434,7 +435,7 @@ static bool test_passwd_r(struct torture_context *tctx)
struct passwd *pwd, pwd1, pwd2;
size_t num_pwd;
@@ -35,7 +35,7 @@ index 2cd6122..04f13c6 100644
"failed to enumerate passwd");
for (i=0; i < num_pwd; i++) {
-@@ -460,7 +461,7 @@ static bool test_passwd_r_cross(struct torture_context *tctx)
+@@ -462,7 +463,7 @@ static bool test_passwd_r_cross(struct torture_context *tctx)
struct passwd *pwd, pwd1, pwd2, pwd3, pwd4;
size_t num_pwd;
@@ -44,7 +44,7 @@ index 2cd6122..04f13c6 100644
"failed to enumerate passwd");
for (i=0; i < num_pwd; i++) {
-@@ -531,6 +532,7 @@ static bool test_enum_group(struct torture_context *tctx,
+@@ -533,6 +534,7 @@ static bool test_enum_group(struct torture_context *tctx,
return true;
}
@@ -52,7 +52,7 @@ index 2cd6122..04f13c6 100644
static bool test_enum_r_group(struct torture_context *tctx,
struct group **grp_array_p,
size_t *num_grp_p)
-@@ -579,6 +581,7 @@ static bool test_enum_r_group(struct torture_context *tctx,
+@@ -583,6 +585,7 @@ static bool test_enum_r_group(struct torture_context *tctx,
return true;
}
@@ -60,7 +60,7 @@ index 2cd6122..04f13c6 100644
static bool torture_assert_group_equal(struct torture_context *tctx,
const struct group *g1,
-@@ -635,7 +638,7 @@ static bool test_group_r(struct torture_context *tctx)
+@@ -639,7 +642,7 @@ static bool test_group_r(struct torture_context *tctx)
struct group *grp, grp1, grp2;
size_t num_grp;
@@ -69,7 +69,7 @@ index 2cd6122..04f13c6 100644
"failed to enumerate group");
for (i=0; i < num_grp; i++) {
-@@ -663,7 +666,7 @@ static bool test_group_r_cross(struct torture_context *tctx)
+@@ -667,7 +670,7 @@ static bool test_group_r_cross(struct torture_context *tctx)
struct group *grp, grp1, grp2, grp3, grp4;
size_t num_grp;
diff --git a/net-fs/samba/files/missing-headers.patch b/net-fs/samba/files/missing-headers.patch
new file mode 100644
index 0000000..58c26ae
--- /dev/null
+++ b/net-fs/samba/files/missing-headers.patch
@@ -0,0 +1,38 @@
+diff --git a/lib/param/loadparm.h b/lib/param/loadparm.h
+index b5d79b9..3f4eae0 100644
+--- a/lib/param/loadparm.h
++++ b/lib/param/loadparm.h
+@@ -31,6 +31,7 @@
+ #define _LOADPARM_H
+
+ #include <talloc.h>
++#include <time.h>
+
+ struct parmlist_entry {
+ struct parmlist_entry *prev, *next;
+diff --git a/source3/lib/system_smbd.c b/source3/lib/system_smbd.c
+index 3b1ac9c..4044d75 100644
+--- a/source3/lib/system_smbd.c
++++ b/source3/lib/system_smbd.c
+@@ -27,6 +27,8 @@
+ #include "system/passwd.h"
+ #include "nsswitch/winbind_client.h"
+ #include "../lib/util/setid.h"
++#include <grp.h>
++#include <uuid/uuid.h>
+
+ #ifndef HAVE_GETGROUPLIST
+
+diff --git a/source4/torture/local/nss_tests.c b/source4/torture/local/nss_tests.c
+index 2cd6122..0c84ec2 100644
+--- a/source4/torture/local/nss_tests.c
++++ b/source4/torture/local/nss_tests.c
+@@ -20,6 +20,8 @@
+ */
+
+ #include "includes.h"
++#include <grp.h>
++#include <uuid/uuid.h>
+
+ #include "torture/torture.h"
+ #include "torture/local/proto.h"
diff --git a/net-fs/samba/files/musl-disable-netgroup.patch b/net-fs/samba/files/musl-disable-netgroup.patch
deleted file mode 100644
index 719a2e6..0000000
--- a/net-fs/samba/files/musl-disable-netgroup.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/source3/wscript b/source3/wscript
-index bcdfc17..361ae23 100644
---- a/source3/wscript
-+++ b/source3/wscript
-@@ -600,8 +600,8 @@ msg.msg_accrightslen = sizeof(fd);
- headers='unistd.h sys/types.h dirent.h',
- define='HAVE_DIRENT_D_OFF')
-
-- if (conf.CONFIG_SET('HAVE_YP_GET_DEFAULT_DOMAIN')):
-- conf.DEFINE('HAVE_NETGROUP', '1')
-+ #if (conf.CONFIG_SET('HAVE_YP_GET_DEFAULT_DOMAIN')):
-+ # conf.DEFINE('HAVE_NETGROUP', '1')
-
- # Look for CUPS
- if Options.options.with_cups:
diff --git a/net-fs/samba/files/musl_rm_unistd_incl.patch b/net-fs/samba/files/musl_rm_unistd_incl.patch
new file mode 100644
index 0000000..1f4aae2
--- /dev/null
+++ b/net-fs/samba/files/musl_rm_unistd_incl.patch
@@ -0,0 +1,37 @@
+--- a/lib/replace/replace.h
++++ b/lib/replace/replace.h
+@@ -168,10 +168,6 @@
+ #include <bsd/unistd.h>
+ #endif
+
+-#ifdef HAVE_UNISTD_H
+-#include <unistd.h>
+-#endif
+-
+ #ifdef HAVE_STRING_H
+ #include <string.h>
+ #endif
+--- a/lib/replace/system/network.h
++++ b/lib/replace/system/network.h
+@@ -31,10 +31,6 @@
+ #error "AC_LIBREPLACE_NETWORK_CHECKS missing in configure"
+ #endif
+
+-#ifdef HAVE_UNISTD_H
+-#include <unistd.h>
+-#endif
+-
+ #ifdef HAVE_SYS_SOCKET_H
+ #include <sys/socket.h>
+ #endif
+--- a/source3/rpc_server/mdssvc/mdssvc.c
++++ b/source3/rpc_server/mdssvc/mdssvc.c
+@@ -18,6 +18,8 @@
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#include <unistd.h>
++
+ #include "includes.h"
+ #include "librpc/gen_ndr/auth.h"
+ #include "dbwrap/dbwrap.h"
diff --git a/net-fs/samba/files/musl_uintptr.patch b/net-fs/samba/files/musl_uintptr.patch
new file mode 100644
index 0000000..de7f285
--- /dev/null
+++ b/net-fs/samba/files/musl_uintptr.patch
@@ -0,0 +1,35 @@
+commit f81e5b71ce78f33250347914dacc75c8463bf102
+Author: Breno Leitao <breno.leitao@gmail.com>
+Date: Wed Mar 29 15:22:38 2017 -0300
+
+ include: Check for previous declaration of uintptr_t
+
+ Adding a extra check before declaring uintptr_t. Currently musl uses
+ macro __DEFINED_uintptr_t once it defines uintptr_t type. Checking
+ this macro before defining it, and, defining it when uintptr_t is
+ defined.
+
+ Signed-off-by: Breno Leitao <breno.leitao@gmail.com>
+
+diff --git a/third_party/cmocka/cmocka.h b/third_party/cmocka/cmocka.h
+index 303d0ae..a2bfc40 100644
+--- a/third_party/cmocka/cmocka.h
++++ b/third_party/cmocka/cmocka.h
+@@ -111,7 +111,7 @@
+ ((LargestIntegralType)(value))
+
+ /* Smallest integral type capable of holding a pointer. */
+-#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED)
++#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED) && !defined(__DEFINED_uintptr_t)
+ # if defined(_WIN32)
+ /* WIN32 is an ILP32 platform */
+ typedef unsigned int uintptr_t;
+@@ -137,6 +137,8 @@
+
+ # define _UINTPTR_T
+ # define _UINTPTR_T_DEFINED
++# define __DEFINED_uintptr_t
++
+ #endif /* !defined(_UINTPTR_T) || !defined(_UINTPTR_T_DEFINED) */
+
+ /* Perform an unsigned cast to uintptr_t. */
diff --git a/net-fs/samba/files/nmbd.service b/net-fs/samba/files/nmbd.service
deleted file mode 100644
index 44b4ffb..0000000
--- a/net-fs/samba/files/nmbd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Samba NetBIOS name server
-After=network.target
-
-[Service]
-Type=forking
-PIDFile=/var/run/samba/nmbd.pid
-ExecStart=/usr/sbin/nmbd -D
-ExecReload=/bin/kill -HUP $MAINPID
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-fs/samba/files/samba-4.10.0-disable_gnutls_build_fix.patch b/net-fs/samba/files/samba-4.10.0-disable_gnutls_build_fix.patch
deleted file mode 100644
index 12b2df3..0000000
--- a/net-fs/samba/files/samba-4.10.0-disable_gnutls_build_fix.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 41eeabcb0175659aebf6d480c43fb64310f37d9c Mon Sep 17 00:00:00 2001
-From: Andrew Bartlett <abartlet@samba.org>
-Date: Wed, 20 Mar 2019 13:57:50 +1300
-Subject: [PATCH] build: Allow build when --disable-gnutls is set
-
-BUG: https://bugzilla.samba.org/show_bug.cgi?id=13844
-
-Signed-off-by: Andrew Bartlett <abartlet@samba.org>
----
- lib/mscat/wscript | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/lib/mscat/wscript b/lib/mscat/wscript
-index 7ca9ef567ee..4d1f752a3c1 100644
---- a/lib/mscat/wscript
-+++ b/lib/mscat/wscript
-@@ -12,7 +12,11 @@ def configure(conf):
- if not conf.find_program('asn1Parser', var='ASN1PARSER'):
- Logs.warn('WARNING: ans1Parser hasn\'t been found! Please install it (e.g. libtasn1-bin)')
-
-- conf.CHECK_FUNCS_IN('gnutls_pkcs7_get_embedded_data_oid', 'gnutls')
-+ # GnuTLS is currently able to be disabled
-+ if conf.env.enable_gnutls:
-+ conf.CHECK_FUNCS_IN('gnutls_pkcs7_get_embedded_data_oid', 'gnutls')
-+ else:
-+ Logs.warn('WARNING: gnutls disabled so dumpmscat will not be built')
-
- def build(bld):
- if (bld.CONFIG_SET('HAVE_LIBTASN1') and
---
-2.11.0
-
diff --git a/net-fs/samba/files/samba-4.13-vfs_snapper_configure_option.patch b/net-fs/samba/files/samba-4.13-vfs_snapper_configure_option.patch
new file mode 100644
index 0000000..b472119
--- /dev/null
+++ b/net-fs/samba/files/samba-4.13-vfs_snapper_configure_option.patch
@@ -0,0 +1,56 @@
+From 7ae03a19b3ca895ba5f97a6bd4f9539d8daa6e0a Mon Sep 17 00:00:00 2001
+From: Matt Taylor <liverbugg@rinux.org>
+Date: Mon, 11 May 2020 15:26:41 -0400
+Subject: [PATCH] build: add configure option to control vfs_snapper build
+
+vfs_snapper is currently built if dbus development headers / libraries
+are detected during configure. This commit adds new --disable-snapper
+and --enable-snapper (default) configure parameters. When enabled,
+configure will fail if the dbus development headers / libraries are
+missing.
+
+Signed-off-by: Matt Taylor <liverbugg@rinux.org>
+Reviewed-by: David Disseldorp <ddiss@samba.org>
+Reviewed-by: Andrew Bartlett <abartlet@samba.org>
+
+Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
+Autobuild-Date(master): Mon May 25 01:16:46 UTC 2020 on sn-devel-184
+---
+ source3/wscript | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/source3/wscript b/source3/wscript
+index 07991806c63..24ade3b0a2b 100644
+--- a/source3/wscript
++++ b/source3/wscript
+@@ -74,6 +74,7 @@ def options(opt):
+
+ opt.samba_add_onoff_option('glusterfs', with_name="enable", without_name="disable", default=True)
+ opt.samba_add_onoff_option('cephfs', with_name="enable", without_name="disable", default=True)
++ opt.samba_add_onoff_option('snapper', with_name="enable", without_name="disable", default=True)
+
+ opt.add_option('--enable-vxfs',
+ help=("enable support for VxFS (default=no)"),
+@@ -1752,11 +1753,16 @@ main() {
+ if Options.options.enable_vxfs:
+ conf.DEFINE('HAVE_VXFS', '1')
+
+- if conf.CHECK_CFG(package='dbus-1', args='--cflags --libs',
++ if Options.options.with_snapper:
++ if conf.CHECK_CFG(package='dbus-1', args='--cflags --libs',
+ msg='Checking for dbus', uselib_store="DBUS-1"):
+- if (conf.CHECK_HEADERS('dbus/dbus.h', lib='dbus-1')
++ if (conf.CHECK_HEADERS('dbus/dbus.h', lib='dbus-1')
+ and conf.CHECK_LIB('dbus-1', shlib=True)):
+- conf.DEFINE('HAVE_DBUS', '1')
++ conf.DEFINE('HAVE_DBUS', '1')
++ else:
++ conf.fatal("vfs_snapper is enabled but prerequisite DBUS libraries "
++ "or headers not found. Use --disable-snapper to disable "
++ "vfs_snapper support.");
+
+ if conf.CHECK_CFG(package='liburing', args='--cflags --libs',
+ msg='Checking for liburing package', uselib_store="URING"):
+--
+2.26.2
+
diff --git a/net-fs/samba/files/samba-4.13-winexe_option.patch b/net-fs/samba/files/samba-4.13-winexe_option.patch
new file mode 100644
index 0000000..63f8a9e
--- /dev/null
+++ b/net-fs/samba/files/samba-4.13-winexe_option.patch
@@ -0,0 +1,67 @@
+From 54c21a99e6ca54bdb963c70d322f6778b57a384f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=BCnther=20Deschner?= <gd@samba.org>
+Date: Wed, 4 Mar 2020 18:51:01 +0100
+Subject: [PATCH] winexe: add configure option to control whether to build it
+ (default: auto)
+
+Guenther
+
+Signed-off-by: Guenther Deschner <gd@samba.org>
+Reviewed-by: Andreas Schneider <asn@samba.org>
+
+Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
+Autobuild-Date(master): Mon Mar 9 16:27:21 UTC 2020 on sn-devel-184
+---
+ examples/winexe/wscript_build | 3 ++-
+ source3/wscript | 17 +++++++++++++++++
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/examples/winexe/wscript_build b/examples/winexe/wscript_build
+index 43c09717e3d..559ed3fc706 100644
+--- a/examples/winexe/wscript_build
++++ b/examples/winexe/wscript_build
+@@ -106,4 +106,5 @@ if winexesvc_binaries != '':
+ LOADPARM_CTX
+ libsmb
+ msrpc3
+- ''')
++ ''',
++ enabled=bld.env.build_winexe)
+diff --git a/source3/wscript b/source3/wscript
+index 85466b493fa..6d5bd22ca49 100644
+--- a/source3/wscript
++++ b/source3/wscript
+@@ -63,6 +63,7 @@ def options(opt):
+ opt.samba_add_onoff_option('cluster-support', default=False)
+
+ opt.samba_add_onoff_option('regedit', default=None)
++ opt.samba_add_onoff_option('winexe', default=None)
+
+ opt.samba_add_onoff_option('fake-kaserver',
+ help=("Include AFS fake-kaserver support"), default=False)
+@@ -1782,6 +1783,22 @@ main() {
+ if conf.CHECK_HEADERS('ftw.h') and conf.CHECK_FUNCS('nftw'):
+ conf.env.build_mvxattr = True
+
++ conf.env.build_winexe = False
++ if not Options.options.with_winexe == False:
++ if conf.CONFIG_SET('HAVE_WINEXE_CC_WIN32') or conf.CONFIG_SET('HAVE_WINEXE_CC_WIN64'):
++ conf.env.build_winexe = True
++
++ if conf.env.build_winexe:
++ Logs.info("building winexe")
++ else:
++ if Options.options.with_winexe == False:
++ Logs.info("not building winexe (--without-winexe)")
++ elif Options.options.with_winexe == True:
++ Logs.error("mingw not available, cannot build winexe")
++ conf.fatal("mingw not available, but --with-winexe was specified")
++ else:
++ Logs.info("mingw not available, not building winexe")
++
+ conf.CHECK_FUNCS_IN('DES_pcbc_encrypt', 'crypto')
+ if Options.options.with_fake_kaserver == True:
+ conf.CHECK_HEADERS('afs/param.h afs/stds.h', together=True)
+--
+2.26.2
+
diff --git a/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch b/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch
deleted file mode 100644
index 463512f..0000000
--- a/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- samba-4.5.1/source4/heimdal_build/wscript_configure
-+++ samba-4.5.1/source4/heimdal_build/wscript_configure
-@@ -258,7 +258,11 @@
-
- # With the proper checks in place we should be able to build against the system libtommath.
- #if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'):
- # conf.define('USING_SYSTEM_TOMMATH', 1)
-
--check_system_heimdal_binary("compile_et")
--check_system_heimdal_binary("asn1_compile")
-+# comment out next line to stop Gentoo Samba build from using the compile_et in e2fsprogs-libs
-+# to compile the error tables. This produces a compile error later on.
-+#check_system_heimdal_binary("compile_et")
-+#
-+# As a precaution do the same for asn1_compile
-+#check_system_heimdal_binary("asn1_compile")
diff --git a/net-fs/samba/files/samba-4.8.6-no-pydsdb-when-no-addc.patch b/net-fs/samba/files/samba-4.8.6-no-pydsdb-when-no-addc.patch
deleted file mode 100644
index 1093b1d..0000000
--- a/net-fs/samba/files/samba-4.8.6-no-pydsdb-when-no-addc.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Do not install the python DSDB modules when ADDC is disabled.
-This is a change integrated upstream in 4.9.1 (or earlier).
-
-Without this, the python dsdb_dns.so module is installed, which
-is linked to libdnsserver-common.so that is NOT installed, and so
-potential breakage ensues.
-
---- a/source4/dsdb/wscript_build 2018-01-17 03:08:39.000000000 -0500
-+++ b/source4/dsdb/wscript_build 2018-11-08 10:43:58.064486832 -0500
-@@ -63,10 +63,11 @@
- )
-
- bld.SAMBA_PYTHON('python_dsdb',
- source='pydsdb.c',
- # the dependency on dcerpc here is because gensec
- # depends on dcerpc but the waf circular dependency finder
- # removes it so we end up with unresolved symbols.
- deps='samdb pyldb-util dcerpc com_err pyrpc_util pyparam_util dsdb_garbage_collect_tombstones',
-- realname='samba/dsdb.so'
-+ realname='samba/dsdb.so',
-+ enabled=bld.AD_DC_BUILD_IS_ENABLED()
- )
---- a/source4/dns_server/wscript_build 2018-11-08 11:49:03.450296286 -0500
-+++ b/source4/dns_server/wscript_build 2018-11-08 11:49:23.327864408 -0500
-@@ -64,9 +64,10 @@
- private_library=True,
- deps='samba-hostconfig samdb-common gensec popt dnsserver_common',
- enabled=bld.AD_DC_BUILD_IS_ENABLED())
-
-
- bld.SAMBA_PYTHON('python_dsdb_dns',
- source='pydns.c',
- deps='samdb pyldb-util pyrpc_util dnsserver_common pytalloc-util',
-- realname='samba/dsdb_dns.so')
-+ realname='samba/dsdb_dns.so',
-+ enabled=bld.AD_DC_BUILD_IS_ENABLED())
diff --git a/net-fs/samba/files/samba-glibc-2.26-no_rpc.patch b/net-fs/samba/files/samba-glibc-2.26-no_rpc.patch
deleted file mode 100644
index e664468..0000000
--- a/net-fs/samba/files/samba-glibc-2.26-no_rpc.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://attachments.samba.org/attachment.cgi?id=13172
-https://bugs.gentoo.org/637320
-
---- a/lib/replace/wscript
-+++ b/lib/replace/wscript
-@@ -71,7 +71,7 @@
- conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
- conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
-
-- conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
-+ conf.CHECK_CODE('ypstat s;', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
-
- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
- conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
diff --git a/net-fs/samba/files/samba.conf b/net-fs/samba/files/samba.conf
index e0a6f32..a7f4946 100644
--- a/net-fs/samba/files/samba.conf
+++ b/net-fs/samba/files/samba.conf
@@ -1,2 +1,3 @@
D /run/samba 0755 root root
+D /run/ctdb 0755 root root
D /run/lock/samba 0755 root root
diff --git a/net-fs/samba/files/samba.service b/net-fs/samba/files/samba.service
deleted file mode 100644
index 8214ff8..0000000
--- a/net-fs/samba/files/samba.service
+++ /dev/null
@@ -1,10 +0,0 @@
-[Unit]
-Description=Samba AD server
-After=network.target winbindd.service
-Conflicts=nmbd.service smbd.service
-
-[Service]
-ExecStart=/usr/sbin/samba --interactive
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-fs/samba/files/smbd.service b/net-fs/samba/files/smbd.service
deleted file mode 100644
index 5c006a4..0000000
--- a/net-fs/samba/files/smbd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Samba SMB/CIFS server
-After=network.target nmbd.service winbindd.service
-
-[Service]
-Type=forking
-PIDFile=/var/run/samba/smbd.pid
-ExecStart=/usr/sbin/smbd -D
-ExecReload=/bin/kill -HUP $MAINPID
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-fs/samba/files/smbd.socket b/net-fs/samba/files/smbd.socket
deleted file mode 100644
index 833bf43..0000000
--- a/net-fs/samba/files/smbd.socket
+++ /dev/null
@@ -1,9 +0,0 @@
-[Unit]
-Description=Samba SMB/CIFS server socket
-
-[Socket]
-ListenStream=445
-Accept=yes
-
-[Install]
-WantedBy=sockets.target
diff --git a/net-fs/samba/files/smbd_at.service b/net-fs/samba/files/smbd_at.service
deleted file mode 100644
index e1f71be..0000000
--- a/net-fs/samba/files/smbd_at.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=Samba SMB/CIFS server instance
-
-[Service]
-ExecStart=/usr/sbin/smbd -F
-ExecReload=/bin/kill -HUP $MAINPID
-StandardInput=socket
diff --git a/net-fs/samba/files/winbindd.service b/net-fs/samba/files/winbindd.service
deleted file mode 100644
index 67a778f..0000000
--- a/net-fs/samba/files/winbindd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Samba Winbind daemon
-After=network.target nmbd.service
-
-[Service]
-Type=forking
-PIDFile=/var/run/samba/winbindd.pid
-ExecStart=/usr/sbin/winbindd -D
-ExecReload=/bin/kill -HUP $MAINPID
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-fs/samba/metadata.xml b/net-fs/samba/metadata.xml
index fb277df..e871aa5 100644
--- a/net-fs/samba/metadata.xml
+++ b/net-fs/samba/metadata.xml
@@ -16,11 +16,16 @@
<flag name="client">Enables the client part</flag>
<flag name="cluster">Enable support for clustering</flag>
<flag name="dmapi">Enable support for DMAPI. This currently works only in combination with XFS.</flag>
+ <flag name="glusterfs">Enable support for Glusterfs filesystem via <pkg>sys-cluster/glusterfs</pkg></flag>
<flag name="gpg">Use <pkg>app-crypt/gpgme</pkg> for AD DC</flag>
<flag name="json">Enable json audit support through <pkg>dev-libs/jansson</pkg></flag>
<flag name="iprint">Enabling iPrint technology by Novell</flag>
+ <flag name="ntvfs">Enable support for NTVFS fileserver</flag>
<flag name="profiling-data">Enables support for collecting profiling data</flag>
<flag name="quota">Enables support for user quotas</flag>
+ <flag name="regedit">Enable support for regedit command-line tool</flag>
+ <flag name="snapper">Enable vfs_snapper module (requires <pkg>sys-apps/dbus</pkg>)</flag>
+ <flag name="spotlight">Enable support for spotlight backend</flag>
<flag name="system-heimdal">Use <pkg>app-crypt/heimdal</pkg> instead of
bundled heimdal.</flag>
<flag name="system-mitkrb5">Use <pkg>app-crypt/mit-krb5</pkg> instead of
diff --git a/net-fs/samba/samba-4.11.6-r2.ebuild b/net-fs/samba/samba-4.12.12.ebuild
index 2e88912..43e2eab 100644
--- a/net-fs/samba/samba-4.11.6-r2.ebuild
+++ b/net-fs/samba/samba-4.12.12.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python3_{7,8} )
PYTHON_REQ_USE='threads(+),xml(+)'
-inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam
+inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
MY_PV="${PV/_rc/rc}"
MY_P="${PN}-${MY_PV}"
@@ -15,7 +15,7 @@ SRC_PATH="stable"
SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz"
[[ ${PV} = *_rc* ]] || \
-KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
DESCRIPTION="Samba Suite Version 4"
HOMEPAGE="https://www.samba.org/"
@@ -23,9 +23,10 @@ LICENSE="GPL-3"
SLOT="0"
-IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam gpg iprint
-json ldap pam profiling-data python quota selinux syslog system-heimdal
-+system-mitkrb5 systemd test winbind zeroconf"
+IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
+gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
+snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
+zeroconf"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/samba-4.0/policy.h
@@ -38,27 +39,26 @@ MULTILIB_WRAPPED_HEADERS=(
/usr/include/samba-4.0/ctdb_version.h
)
-# sys-apps/attr is an automagic dependency (see bug #489748)
CDEPEND="
>=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}]
dev-lang/perl:=
- dev-libs/libaio[${MULTILIB_USEDEP}]
+ dev-libs/icu:=[${MULTILIB_USEDEP}]
dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/libgcrypt:0
- dev-libs/iniparser:0
+ dev-libs/libtasn1[${MULTILIB_USEDEP}]
dev-libs/popt[${MULTILIB_USEDEP}]
- >=dev-util/cmocka-1.1.1[${MULTILIB_USEDEP}]
- >=net-libs/gnutls-3.2.0
+ dev-perl/Parse-Yapp
+ >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
net-libs/libnsl:=[${MULTILIB_USEDEP}]
- sys-apps/attr[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.0.8[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.1.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/libcap
- sys-libs/ncurses:0=[${MULTILIB_USEDEP}]
+ sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
+ >=sys-libs/ldb-2.1.4[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ <sys-libs/ldb-2.2.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ sys-libs/libcap[${MULTILIB_USEDEP}]
+ sys-libs/liburing:=[${MULTILIB_USEDEP}]
+ sys-libs/ncurses:0=
sys-libs/readline:0=
- >=sys-libs/talloc-2.2.0[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.10.0[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/talloc-2.3.1[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/tdb-1.4.3[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/tevent-0.10.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
virtual/libiconv
pam? ( sys-libs/pam )
@@ -82,21 +82,22 @@ CDEPEND="
gpg? ( app-crypt/gpgme )
json? ( dev-libs/jansson )
ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
+ snapper? ( sys-apps/dbus )
system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
systemd? ( sys-apps/systemd:0= )
- zeroconf? ( net-dns/avahi )
+ zeroconf? ( net-dns/avahi[dbus] )
"
DEPEND="${CDEPEND}
${PYTHON_DEPS}
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
+ >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
net-libs/libtirpc[${MULTILIB_USEDEP}]
virtual/pkgconfig
|| (
net-libs/rpcsvc-proto
<sys-libs/glibc-2.26[rpc(+)]
)
+ spotlight? ( dev-libs/glib )
test? (
!system-mitkrb5? (
>=sys-libs/nss_wrapper-1.1.3
@@ -109,7 +110,11 @@ RDEPEND="${CDEPEND}
python? ( ${PYTHON_DEPS} )
client? ( net-fs/cifs-utils[ads?] )
selinux? ( sec-policy/selinux-samba )
- !dev-perl/Parse-Yapp
+"
+
+BDEPEND="
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
"
REQUIRED_USE="
@@ -118,6 +123,8 @@ REQUIRED_USE="
ads? ( acl ldap winbind )
cluster? ( ads )
gpg? ( addc )
+ ntvfs? ( addc )
+ spotlight? ( json )
test? ( python )
?? ( system-heimdal system-mitkrb5 )
${PYTHON_REQUIRED_USE}
@@ -134,6 +141,7 @@ S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}/${PN}-4.4.0-pam.patch"
"${FILESDIR}/${PN}-4.9.2-timespec.patch"
+ "${FILESDIR}/${PN}-4.13-vfs_snapper_configure_option.patch"
)
#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
@@ -144,6 +152,9 @@ WAF_BINARY="${S}/buildtools/bin/waf"
SHAREDMODS=""
pkg_setup() {
+ # Package fails to build with distcc
+ export DISTCC_DISABLE=1
+
python-single-r1_pkg_setup
if use cluster ; then
SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad"
@@ -154,7 +165,6 @@ pkg_setup() {
src_prepare() {
default
- use elibc_musl && eapply "${FILESDIR}/musl-disable-netgroup.patch"
# un-bundle dnspython
sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
@@ -164,13 +174,23 @@ src_prepare() {
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
+ ## 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
+ if use elibc_musl ; then
+ eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
+ eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
+ eapply "${FILESDIR}"/getpwent_r.patch
+ eapply "${FILESDIR}"/missing-headers.patch
+ eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
+ eapply "${FILESDIR}"/musl_uintptr.patch
+ eapply "${FILESDIR}"/netdb-defines.patch
+ fi
+
# Friggin' WAF shit
multilib_copy_sources
}
@@ -195,6 +215,7 @@ multilib_src_configure() {
--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 addns dnsupdate)
@@ -204,12 +225,17 @@ multilib_src_configure() {
$(multilib_native_use_enable cups)
$(multilib_native_use_with dmapi)
$(multilib_native_use_with fam)
+ $(multilib_native_use_enable glusterfs)
$(multilib_native_use_with gpg gpgme)
$(multilib_native_use_with json)
$(multilib_native_use_enable iprint)
+ $(multilib_native_use_with ntvfs ntvfs-fileserver)
$(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 snapper)
+ $(multilib_native_use_enable spotlight)
$(multilib_native_use_with syslog)
$(multilib_native_use_with systemd)
--systemd-install-services
@@ -271,7 +297,7 @@ multilib_src_install() {
newinitd "${CONFDIR}/samba4.initd-r1" samba
newconfd "${CONFDIR}/samba4.confd" samba
- systemd_dotmpfilesd "${FILESDIR}"/samba.conf
+ dotmpfiles "${FILESDIR}"/samba.conf
use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
# Preserve functionality for old gentoo-specific unit names
@@ -290,15 +316,10 @@ multilib_src_install() {
keepdir /var/cache/samba
keepdir /var/lib/ctdb
keepdir /var/lib/samba/{bind-dns,private}
+ keepdir /var/lock/samba
keepdir /var/log/samba
}
-multilib_src_install_all() {
- # Attempt to fix bug #673168
- find "${ED}" -type d -name "Yapp" -print0 \
- | xargs -0 --no-run-if-empty rm -r || die
-}
-
multilib_src_test() {
if multilib_is_native_abi ; then
"${WAF_BINARY}" test || die "test failed"
diff --git a/net-fs/samba/samba-4.11.8.ebuild b/net-fs/samba/samba-4.12.9-r1.ebuild
index 1f517b0..a1377ff 100644
--- a/net-fs/samba/samba-4.11.8.ebuild
+++ b/net-fs/samba/samba-4.12.9-r1.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python3_{7,8} )
PYTHON_REQ_USE='threads(+),xml(+)'
-inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam
+inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
MY_PV="${PV/_rc/rc}"
MY_P="${PN}-${MY_PV}"
@@ -15,7 +15,7 @@ SRC_PATH="stable"
SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz"
[[ ${PV} = *_rc* ]] || \
-KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
DESCRIPTION="Samba Suite Version 4"
HOMEPAGE="https://www.samba.org/"
@@ -23,9 +23,10 @@ LICENSE="GPL-3"
SLOT="0"
-IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam gpg iprint
-json ldap pam profiling-data python quota selinux syslog system-heimdal
-+system-mitkrb5 systemd test winbind zeroconf"
+IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
+gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
+snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
+zeroconf"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/samba-4.0/policy.h
@@ -41,21 +42,23 @@ MULTILIB_WRAPPED_HEADERS=(
CDEPEND="
>=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}]
- >=net-libs/gnutls-3.2.0[${MULTILIB_USEDEP}]
+ dev-perl/Parse-Yapp
+ >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
net-libs/libnsl:=[${MULTILIB_USEDEP}]
- sys-apps/dbus[${MULTILIB_USEDEP}]
sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.0.10[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.1.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/libcap
+ >=sys-libs/ldb-2.1.4[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ <sys-libs/ldb-2.2.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ sys-libs/libcap[${MULTILIB_USEDEP}]
+ sys-libs/liburing:=[${MULTILIB_USEDEP}]
sys-libs/ncurses:0=
sys-libs/readline:0=
- >=sys-libs/talloc-2.2.0[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.10.0[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/talloc-2.3.1[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/tdb-1.4.3[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
+ >=sys-libs/tevent-0.10.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
virtual/libiconv
pam? ( sys-libs/pam )
@@ -79,22 +82,22 @@ CDEPEND="
gpg? ( app-crypt/gpgme )
json? ( dev-libs/jansson )
ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
+ snapper? ( sys-apps/dbus )
system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
systemd? ( sys-apps/systemd:0= )
- zeroconf? ( net-dns/avahi )
+ zeroconf? ( net-dns/avahi[dbus] )
"
DEPEND="${CDEPEND}
${PYTHON_DEPS}
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- >=dev-util/cmocka-1.1.1[${MULTILIB_USEDEP}]
+ >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
net-libs/libtirpc[${MULTILIB_USEDEP}]
virtual/pkgconfig
|| (
net-libs/rpcsvc-proto
<sys-libs/glibc-2.26[rpc(+)]
)
+ spotlight? ( dev-libs/glib )
test? (
!system-mitkrb5? (
>=sys-libs/nss_wrapper-1.1.3
@@ -107,7 +110,11 @@ RDEPEND="${CDEPEND}
python? ( ${PYTHON_DEPS} )
client? ( net-fs/cifs-utils[ads?] )
selinux? ( sec-policy/selinux-samba )
- !dev-perl/Parse-Yapp
+"
+
+BDEPEND="
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
"
REQUIRED_USE="
@@ -116,6 +123,8 @@ REQUIRED_USE="
ads? ( acl ldap winbind )
cluster? ( ads )
gpg? ( addc )
+ ntvfs? ( addc )
+ spotlight? ( json )
test? ( python )
?? ( system-heimdal system-mitkrb5 )
${PYTHON_REQUIRED_USE}
@@ -132,6 +141,8 @@ S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}/${PN}-4.4.0-pam.patch"
"${FILESDIR}/${PN}-4.9.2-timespec.patch"
+ "${FILESDIR}/${PN}-4.13-winexe_option.patch"
+ "${FILESDIR}/${PN}-4.13-vfs_snapper_configure_option.patch"
)
#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
@@ -142,6 +153,9 @@ WAF_BINARY="${S}/buildtools/bin/waf"
SHAREDMODS=""
pkg_setup() {
+ # Package fails to build with distcc
+ export DISTCC_DISABLE=1
+
python-single-r1_pkg_setup
if use cluster ; then
SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad"
@@ -152,11 +166,6 @@ pkg_setup() {
src_prepare() {
default
- if use elibc_musl; then
- eapply "${FILESDIR}/musl-disable-netgroup.patch"
- eapply "${FILESDIR}/netdb-defines.patch"
- eapply "${FILESDIR}/${PN}-4.11.8-musl-fix-compar_fn_t.patch"
- fi
# un-bundle dnspython
sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
@@ -173,6 +182,16 @@ src_prepare() {
-i source4/dsdb/samdb/ldb_modules/password_hash.c \
|| die
+ if use elibc_musl ; then
+ eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
+ eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
+ eapply "${FILESDIR}"/getpwent_r.patch
+ eapply "${FILESDIR}"/missing-headers.patch
+ eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
+ eapply "${FILESDIR}"/musl_uintptr.patch
+ eapply "${FILESDIR}"/netdb-defines.patch
+ fi
+
# Friggin' WAF shit
multilib_copy_sources
}
@@ -197,6 +216,7 @@ multilib_src_configure() {
--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 addns dnsupdate)
@@ -206,12 +226,17 @@ multilib_src_configure() {
$(multilib_native_use_enable cups)
$(multilib_native_use_with dmapi)
$(multilib_native_use_with fam)
+ $(multilib_native_use_enable glusterfs)
$(multilib_native_use_with gpg gpgme)
$(multilib_native_use_with json)
$(multilib_native_use_enable iprint)
+ $(multilib_native_use_with ntvfs ntvfs-fileserver)
$(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 snapper)
+ $(multilib_native_use_enable spotlight)
$(multilib_native_use_with syslog)
$(multilib_native_use_with systemd)
--systemd-install-services
@@ -273,7 +298,7 @@ multilib_src_install() {
newinitd "${CONFDIR}/samba4.initd-r1" samba
newconfd "${CONFDIR}/samba4.confd" samba
- systemd_dotmpfilesd "${FILESDIR}"/samba.conf
+ dotmpfiles "${FILESDIR}"/samba.conf
use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
# Preserve functionality for old gentoo-specific unit names
@@ -292,15 +317,10 @@ multilib_src_install() {
keepdir /var/cache/samba
keepdir /var/lib/ctdb
keepdir /var/lib/samba/{bind-dns,private}
+ keepdir /var/lock/samba
keepdir /var/log/samba
}
-multilib_src_install_all() {
- # Attempt to fix bug #673168
- find "${ED}" -type d -name "Yapp" -print0 \
- | xargs -0 --no-run-if-empty rm -r || die
-}
-
multilib_src_test() {
if multilib_is_native_abi ; then
"${WAF_BINARY}" test || die "test failed"
diff --git a/net-fs/samba/samba-4.13.5.ebuild b/net-fs/samba/samba-4.13.5.ebuild
new file mode 100644
index 0000000..c1ba9da
--- /dev/null
+++ b/net-fs/samba/samba-4.13.5.ebuild
@@ -0,0 +1,341 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="threads(+),xml(+)"
+inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
+
+DESCRIPTION="Samba Suite Version 4"
+HOMEPAGE="https://samba.org/"
+
+MY_PV="${PV/_rc/rc}"
+MY_P="${PN}-${MY_PV}"
+if [[ ${PV} = *_rc* ]]; then
+ SRC_URI="mirror://samba/rc/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://samba/stable/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+fi
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
+gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
+snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
+zeroconf"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ addc? ( python json winbind )
+ addns? ( python )
+ ads? ( acl ldap winbind )
+ cluster? ( ads )
+ gpg? ( addc )
+ ntvfs? ( addc )
+ spotlight? ( json )
+ test? ( python )
+ !ads? ( !addc )
+ ?? ( system-heimdal system-mitkrb5 )
+"
+
+# the test suite is messed, it uses system-installed samba
+# bits instead of what was built, tests things disabled via use
+# flags, and generally just fails to work in a way ebuilds could
+# rely on in its current state
+RESTRICT="test"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/samba-4.0/policy.h
+ /usr/include/samba-4.0/dcerpc_server.h
+ /usr/include/samba-4.0/ctdb.h
+ /usr/include/samba-4.0/ctdb_client.h
+ /usr/include/samba-4.0/ctdb_protocol.h
+ /usr/include/samba-4.0/ctdb_private.h
+ /usr/include/samba-4.0/ctdb_typesafe_cb.h
+ /usr/include/samba-4.0/ctdb_version.h
+)
+
+COMMON_DEPEND="
+ >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}]
+ dev-lang/perl:=
+ dev-libs/icu:=[${MULTILIB_USEDEP}]
+ dev-libs/libbsd[${MULTILIB_USEDEP}]
+ dev-libs/libtasn1[${MULTILIB_USEDEP}]
+ dev-libs/popt[${MULTILIB_USEDEP}]
+ dev-perl/Parse-Yapp
+ >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
+ net-libs/libnsl:=[${MULTILIB_USEDEP}]
+ sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
+ >=sys-libs/ldb-2.2.0[ldap(+)?,${MULTILIB_USEDEP}]
+ <sys-libs/ldb-2.3.0[ldap(+)?,${MULTILIB_USEDEP}]
+ sys-libs/libcap[${MULTILIB_USEDEP}]
+ sys-libs/liburing:=[${MULTILIB_USEDEP}]
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ >=sys-libs/talloc-2.3.1[${MULTILIB_USEDEP}]
+ >=sys-libs/tdb-1.4.3[${MULTILIB_USEDEP}]
+ >=sys-libs/tevent-0.10.2[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ virtual/libiconv
+ acl? ( virtual/acl )
+ $(python_gen_cond_dep "
+ dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
+ addns? (
+ dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
+ net-dns/bind-tools[gssapi]
+ )
+ ")
+ ceph? ( sys-cluster/ceph )
+ cluster? ( net-libs/rpcsvc-proto )
+ cups? ( net-print/cups )
+ debug? ( dev-util/lttng-ust )
+ dmapi? ( sys-apps/dmapi )
+ fam? ( virtual/fam )
+ gpg? ( app-crypt/gpgme )
+ json? ( dev-libs/jansson )
+ ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? (
+ sys-libs/ldb[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
+ )
+ snapper? ( sys-apps/dbus )
+ system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
+ system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:0= )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
+ net-libs/libtirpc[${MULTILIB_USEDEP}]
+ || (
+ net-libs/rpcsvc-proto
+ <sys-libs/glibc-2.26[rpc(+)]
+ )
+ spotlight? ( dev-libs/glib )
+ test? (
+ !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.4.0-pam.patch"
+)
+
+#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
+CONFDIR="${FILESDIR}/4.4"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+SHAREDMODS=""
+
+pkg_setup() {
+ # Package fails to build with distcc
+ export DISTCC_DISABLE=1
+
+ python-single-r1_pkg_setup
+
+ SHAREDMODS="$(usex snapper '' '!')vfs_snapper"
+ if use cluster ; then
+ SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
+ elif use ads ; then
+ SHAREDMODS+=",idmap_ad"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # un-bundle dnspython
+ sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
+
+ # unbundle iso8601 unless tests are enabled
+ if ! use test ; then
+ sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die
+ fi
+
+ ## ugly hackaround for bug #592502
+ #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die
+
+ sed -e 's:<gpgme\.h>:<gpgme/gpgme.h>:' \
+ -i source4/dsdb/samdb/ldb_modules/password_hash.c \
+ || die
+
+ if use elibc_musl ; then
+ eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
+ eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
+ eapply "${FILESDIR}"/getpwent_r.patch
+ eapply "${FILESDIR}"/missing-headers.patch
+ eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
+ eapply "${FILESDIR}"/musl_uintptr.patch
+ eapply "${FILESDIR}"/netdb-defines.patch
+ fi
+
+ # Friggin' WAF shit
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # when specifying libs for samba build you must append NONE to the end to
+ # stop it automatically including things
+ local bundled_libs="NONE"
+ if ! use system-heimdal && ! use system-mitkrb5 ; then
+ bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE"
+ fi
+
+ local myconf=(
+ --enable-fhs
+ --sysconfdir="${EPREFIX}/etc"
+ --localstatedir="${EPREFIX}/var"
+ --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba"
+ --with-piddir="${EPREFIX}/run/${PN}"
+ --bundled-libraries="${bundled_libs}"
+ --builtin-libraries=NONE
+ --disable-rpath
+ --disable-rpath-install
+ --nopyc
+ --nopyo
+ --without-winexe
+ $(multilib_native_use_with acl acl-support)
+ $(multilib_native_usex addc '' '--without-ad-dc')
+ $(multilib_native_use_with addns dnsupdate)
+ $(multilib_native_use_with ads)
+ $(multilib_native_use_enable ceph cephfs)
+ $(multilib_native_use_with cluster cluster-support)
+ $(multilib_native_use_enable cups)
+ $(multilib_native_use_with dmapi)
+ $(multilib_native_use_with fam)
+ $(multilib_native_use_enable glusterfs)
+ $(multilib_native_use_with gpg gpgme)
+ $(multilib_native_use_with json)
+ $(multilib_native_use_enable iprint)
+ $(multilib_native_use_with ntvfs ntvfs-fileserver)
+ $(multilib_native_use_with pam)
+ $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '')
+ $(multilib_native_use_with quota quotas)
+ $(multilib_native_use_with regedit)
+ $(multilib_native_use_enable spotlight)
+ $(multilib_native_use_with syslog)
+ $(multilib_native_use_with systemd)
+ --systemd-install-services
+ --with-systemddir="$(systemd_get_systemunitdir)"
+ $(multilib_native_use_with winbind)
+ $(multilib_native_usex python '' '--disable-python')
+ $(multilib_native_use_enable zeroconf avahi)
+ $(multilib_native_usex test '--enable-selftest' '')
+ $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '')
+ $(use_with debug lttng)
+ $(use_with ldap)
+ $(use_with profiling-data)
+ # bug #683148
+ --jobs 1
+ )
+
+ if multilib_is_native_abi ; then
+ myconf+=( --with-shared-modules=${SHAREDMODS} )
+ else
+ myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper )
+ fi
+
+ CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \
+ waf-utils_src_configure ${myconf[@]}
+}
+
+multilib_src_compile() {
+ waf-utils_src_compile
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ # Make all .so files executable
+ find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
+
+ if multilib_is_native_abi ; then
+ # install ldap schema for server (bug #491002)
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins examples/LDAP/samba.schema
+ fi
+
+ # create symlink for cups (bug #552310)
+ if use cups ; then
+ dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb
+ fi
+
+ # install example config file
+ insinto /etc/samba
+ doins examples/smb.conf.default
+
+ # Fix paths in example file (#603964)
+ sed \
+ -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \
+ -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \
+ -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \
+ -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \
+ -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \
+ -i "${ED}"/etc/samba/smb.conf.default || die
+
+ # Install init script and conf.d file
+ newinitd "${CONFDIR}/samba4.initd-r1" samba
+ newconfd "${CONFDIR}/samba4.confd" samba
+
+ dotmpfiles "${FILESDIR}"/samba.conf
+ use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
+
+ # Preserve functionality for old gentoo-specific unit names
+ dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service"
+ dosym smb.service "$(systemd_get_systemunitdir)/smbd.service"
+ dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service"
+ fi
+
+ if use pam && use winbind ; then
+ newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind
+ # bugs #376853 and #590374
+ insinto /etc/security
+ doins examples/pam_winbind/pam_winbind.conf
+ fi
+
+ keepdir /var/cache/samba
+ keepdir /var/lib/ctdb
+ keepdir /var/lib/samba/{bind-dns,private}
+ keepdir /var/lock/samba
+ keepdir /var/log/samba
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi ; then
+ "${WAF_BINARY}" test || die "test failed"
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "Be aware that this release contains the best of all of Samba's"
+ elog "technology parts, both a file server (that you can reasonably expect"
+ elog "to upgrade existing Samba 3.x releases to) and the AD domain"
+ elog "controller work previously known as 'samba4'."
+ elog
+ fi
+ elog "For further information and migration steps make sure to read "
+ elog "https://samba.org/samba/history/${P}.html "
+ elog "https://wiki.samba.org/index.php/Samba4/HOWTO "
+}
diff --git a/net-fs/samba/samba-4.14.0.ebuild b/net-fs/samba/samba-4.14.0.ebuild
new file mode 100644
index 0000000..6a7cfe0
--- /dev/null
+++ b/net-fs/samba/samba-4.14.0.ebuild
@@ -0,0 +1,341 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="threads(+),xml(+)"
+inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
+
+DESCRIPTION="Samba Suite Version 4"
+HOMEPAGE="https://samba.org/"
+
+MY_PV="${PV/_rc/rc}"
+MY_P="${PN}-${MY_PV}"
+if [[ ${PV} = *_rc* ]]; then
+ SRC_URI="mirror://samba/rc/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://samba/stable/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+fi
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
+gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
+snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
+zeroconf"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ addc? ( python json winbind )
+ addns? ( python )
+ ads? ( acl ldap winbind )
+ cluster? ( ads )
+ gpg? ( addc )
+ ntvfs? ( addc )
+ spotlight? ( json )
+ test? ( python )
+ !ads? ( !addc )
+ ?? ( system-heimdal system-mitkrb5 )
+"
+
+# the test suite is messed, it uses system-installed samba
+# bits instead of what was built, tests things disabled via use
+# flags, and generally just fails to work in a way ebuilds could
+# rely on in its current state
+RESTRICT="test"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/samba-4.0/policy.h
+ /usr/include/samba-4.0/dcerpc_server.h
+ /usr/include/samba-4.0/ctdb.h
+ /usr/include/samba-4.0/ctdb_client.h
+ /usr/include/samba-4.0/ctdb_protocol.h
+ /usr/include/samba-4.0/ctdb_private.h
+ /usr/include/samba-4.0/ctdb_typesafe_cb.h
+ /usr/include/samba-4.0/ctdb_version.h
+)
+
+COMMON_DEPEND="
+ >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}]
+ dev-lang/perl:=
+ dev-libs/icu:=[${MULTILIB_USEDEP}]
+ dev-libs/libbsd[${MULTILIB_USEDEP}]
+ dev-libs/libtasn1[${MULTILIB_USEDEP}]
+ dev-libs/popt[${MULTILIB_USEDEP}]
+ dev-perl/Parse-Yapp
+ >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
+ net-libs/libnsl:=[${MULTILIB_USEDEP}]
+ sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
+ >=sys-libs/ldb-2.2.0[ldap(+)?,${MULTILIB_USEDEP}]
+ <sys-libs/ldb-2.3.0[ldap(+)?,${MULTILIB_USEDEP}]
+ sys-libs/libcap[${MULTILIB_USEDEP}]
+ sys-libs/liburing:=[${MULTILIB_USEDEP}]
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ >=sys-libs/talloc-2.3.2[${MULTILIB_USEDEP}]
+ >=sys-libs/tdb-1.4.3[${MULTILIB_USEDEP}]
+ >=sys-libs/tevent-0.10.2[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ virtual/libiconv
+ acl? ( virtual/acl )
+ $(python_gen_cond_dep "
+ dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
+ addns? (
+ dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
+ net-dns/bind-tools[gssapi]
+ )
+ ")
+ ceph? ( sys-cluster/ceph )
+ cluster? ( net-libs/rpcsvc-proto )
+ cups? ( net-print/cups )
+ debug? ( dev-util/lttng-ust )
+ dmapi? ( sys-apps/dmapi )
+ fam? ( virtual/fam )
+ gpg? ( app-crypt/gpgme )
+ json? ( dev-libs/jansson )
+ ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? (
+ sys-libs/ldb[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
+ sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
+ )
+ snapper? ( sys-apps/dbus )
+ system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
+ system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:0= )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
+ net-libs/libtirpc[${MULTILIB_USEDEP}]
+ || (
+ net-libs/rpcsvc-proto
+ <sys-libs/glibc-2.26[rpc(+)]
+ )
+ spotlight? ( dev-libs/glib )
+ test? (
+ !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.4.0-pam.patch"
+)
+
+#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
+CONFDIR="${FILESDIR}/4.4"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+SHAREDMODS=""
+
+pkg_setup() {
+ # Package fails to build with distcc
+ export DISTCC_DISABLE=1
+
+ python-single-r1_pkg_setup
+
+ SHAREDMODS="$(usex snapper '' '!')vfs_snapper"
+ if use cluster ; then
+ SHAREDMODS+=",idmap_rid,idmap_tdb2,idmap_ad"
+ elif use ads ; then
+ SHAREDMODS+=",idmap_ad"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # un-bundle dnspython
+ sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
+
+ # unbundle iso8601 unless tests are enabled
+ if ! use test ; then
+ sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die
+ fi
+
+ ## ugly hackaround for bug #592502
+ #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die
+
+ sed -e 's:<gpgme\.h>:<gpgme/gpgme.h>:' \
+ -i source4/dsdb/samdb/ldb_modules/password_hash.c \
+ || die
+
+ if use elibc_musl ; then
+ eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
+ eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
+ eapply "${FILESDIR}"/getpwent_r.patch
+ eapply "${FILESDIR}"/missing-headers.patch
+ eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
+ eapply "${FILESDIR}"/musl_uintptr.patch
+ eapply "${FILESDIR}"/netdb-defines.patch
+ fi
+
+ # Friggin' WAF shit
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # when specifying libs for samba build you must append NONE to the end to
+ # stop it automatically including things
+ local bundled_libs="NONE"
+ if ! use system-heimdal && ! use system-mitkrb5 ; then
+ bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE"
+ fi
+
+ local myconf=(
+ --enable-fhs
+ --sysconfdir="${EPREFIX}/etc"
+ --localstatedir="${EPREFIX}/var"
+ --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba"
+ --with-piddir="${EPREFIX}/run/${PN}"
+ --bundled-libraries="${bundled_libs}"
+ --builtin-libraries=NONE
+ --disable-rpath
+ --disable-rpath-install
+ --nopyc
+ --nopyo
+ --without-winexe
+ $(multilib_native_use_with acl acl-support)
+ $(multilib_native_usex addc '' '--without-ad-dc')
+ $(multilib_native_use_with addns dnsupdate)
+ $(multilib_native_use_with ads)
+ $(multilib_native_use_enable ceph cephfs)
+ $(multilib_native_use_with cluster cluster-support)
+ $(multilib_native_use_enable cups)
+ $(multilib_native_use_with dmapi)
+ $(multilib_native_use_with fam)
+ $(multilib_native_use_enable glusterfs)
+ $(multilib_native_use_with gpg gpgme)
+ $(multilib_native_use_with json)
+ $(multilib_native_use_enable iprint)
+ $(multilib_native_use_with ntvfs ntvfs-fileserver)
+ $(multilib_native_use_with pam)
+ $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '')
+ $(multilib_native_use_with quota quotas)
+ $(multilib_native_use_with regedit)
+ $(multilib_native_use_enable spotlight)
+ $(multilib_native_use_with syslog)
+ $(multilib_native_use_with systemd)
+ --systemd-install-services
+ --with-systemddir="$(systemd_get_systemunitdir)"
+ $(multilib_native_use_with winbind)
+ $(multilib_native_usex python '' '--disable-python')
+ $(multilib_native_use_enable zeroconf avahi)
+ $(multilib_native_usex test '--enable-selftest' '')
+ $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '')
+ $(use_with debug lttng)
+ $(use_with ldap)
+ $(use_with profiling-data)
+ # bug #683148
+ --jobs 1
+ )
+
+ if multilib_is_native_abi ; then
+ myconf+=( --with-shared-modules=${SHAREDMODS} )
+ else
+ myconf+=( --with-shared-modules=DEFAULT,!vfs_snapper )
+ fi
+
+ CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \
+ waf-utils_src_configure ${myconf[@]}
+}
+
+multilib_src_compile() {
+ waf-utils_src_compile
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ # Make all .so files executable
+ find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
+
+ if multilib_is_native_abi ; then
+ # install ldap schema for server (bug #491002)
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins examples/LDAP/samba.schema
+ fi
+
+ # create symlink for cups (bug #552310)
+ if use cups ; then
+ dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb
+ fi
+
+ # install example config file
+ insinto /etc/samba
+ doins examples/smb.conf.default
+
+ # Fix paths in example file (#603964)
+ sed \
+ -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \
+ -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \
+ -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \
+ -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \
+ -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \
+ -i "${ED}"/etc/samba/smb.conf.default || die
+
+ # Install init script and conf.d file
+ newinitd "${CONFDIR}/samba4.initd-r1" samba
+ newconfd "${CONFDIR}/samba4.confd" samba
+
+ dotmpfiles "${FILESDIR}"/samba.conf
+ use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
+
+ # Preserve functionality for old gentoo-specific unit names
+ dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service"
+ dosym smb.service "$(systemd_get_systemunitdir)/smbd.service"
+ dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service"
+ fi
+
+ if use pam && use winbind ; then
+ newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind
+ # bugs #376853 and #590374
+ insinto /etc/security
+ doins examples/pam_winbind/pam_winbind.conf
+ fi
+
+ keepdir /var/cache/samba
+ keepdir /var/lib/ctdb
+ keepdir /var/lib/samba/{bind-dns,private}
+ keepdir /var/lock/samba
+ keepdir /var/log/samba
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi ; then
+ "${WAF_BINARY}" test || die "test failed"
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "Be aware that this release contains the best of all of Samba's"
+ elog "technology parts, both a file server (that you can reasonably expect"
+ elog "to upgrade existing Samba 3.x releases to) and the AD domain"
+ elog "controller work previously known as 'samba4'."
+ elog
+ fi
+ elog "For further information and migration steps make sure to read "
+ elog "https://samba.org/samba/history/${P}.html "
+ elog "https://wiki.samba.org/index.php/Samba4/HOWTO "
+}