Diff 389-ds-base-2.1.0-r4 with a 389-ds-base-2.3.2

/usr/portage/net-nds/389-ds-base/389-ds-base-2.3.2.ebuild 2023-10-09 14:52:34.720368482 +0300
5 5

  
6 6
CRATES="
7 7
	ahash-0.7.6
8
	ansi_term-0.11.0
9 8
	ansi_term-0.12.1
10 9
	atty-0.2.14
11
	autocfg-1.0.1
12
	base64-0.13.0
13
	bitflags-1.2.1
10
	autocfg-1.1.0
11
	base64-0.13.1
14 12
	bitflags-1.3.2
15 13
	byteorder-1.4.3
16 14
	cbindgen-0.9.1
17
	cc-1.0.72
18
	cfg-if-0.1.10
15
	cc-1.0.78
19 16
	cfg-if-1.0.0
20
	clap-2.33.3
21 17
	clap-2.34.0
22 18
	concread-0.2.21
23
	crossbeam-0.8.1
24
	crossbeam-channel-0.5.2
25
	crossbeam-deque-0.8.1
26
	crossbeam-epoch-0.9.6
27
	crossbeam-queue-0.3.3
28
	crossbeam-utils-0.8.6
29
	fastrand-1.7.0
19
	crossbeam-0.8.2
20
	crossbeam-channel-0.5.6
21
	crossbeam-deque-0.8.2
22
	crossbeam-epoch-0.9.13
23
	crossbeam-queue-0.3.8
24
	crossbeam-utils-0.8.14
25
	fastrand-1.8.0
30 26
	fernet-0.1.4
31 27
	foreign-types-0.3.2
32 28
	foreign-types-shared-0.1.1
33
	getrandom-0.1.16
34
	getrandom-0.2.4
35
	hashbrown-0.11.2
36
	hermit-abi-0.1.17
29
	getrandom-0.2.8
30
	hashbrown-0.12.3
37 31
	hermit-abi-0.1.19
38 32
	instant-0.1.12
39
	itoa-0.4.7
40
	itoa-1.0.1
41
	jobserver-0.1.24
42
	lazy_static-1.4.0
43
	libc-0.2.113
44
	libc-0.2.82
45
	lock_api-0.4.5
46
	log-0.4.13
47
	log-0.4.14
48
	lru-0.7.2
49
	memoffset-0.6.5
50
	once_cell-1.9.0
51
	openssl-0.10.38
52
	openssl-sys-0.9.72
33
	itoa-1.0.5
34
	jobserver-0.1.25
35
	libc-0.2.139
36
	lock_api-0.4.9
37
	log-0.4.17
38
	lru-0.7.8
39
	memoffset-0.7.1
40
	once_cell-1.17.0
41
	openssl-0.10.45
42
	openssl-macros-0.1.0
43
	openssl-sys-0.9.80
53 44
	parking_lot-0.11.2
54
	parking_lot_core-0.8.5
45
	parking_lot_core-0.8.6
55 46
	paste-0.1.18
56 47
	paste-impl-0.1.18
57
	pin-project-lite-0.2.8
58
	pkg-config-0.3.24
59
	ppv-lite86-0.2.10
60
	ppv-lite86-0.2.16
61
	proc-macro2-1.0.24
62
	proc-macro2-1.0.36
63
	proc-macro-hack-0.5.19
64
	quote-1.0.15
65
	quote-1.0.8
66
	rand-0.7.3
67
	rand-0.8.4
68
	rand_chacha-0.2.2
48
	pin-project-lite-0.2.9
49
	pkg-config-0.3.26
50
	ppv-lite86-0.2.17
51
	proc-macro-hack-0.5.20+deprecated
52
	proc-macro2-1.0.50
53
	quote-1.0.23
54
	rand-0.8.5
69 55
	rand_chacha-0.3.1
70
	rand_core-0.5.1
71
	rand_core-0.6.3
72
	rand_hc-0.2.0
73
	rand_hc-0.3.1
74
	redox_syscall-0.1.57
75
	redox_syscall-0.2.10
56
	rand_core-0.6.4
57
	redox_syscall-0.2.16
76 58
	remove_dir_all-0.5.3
77
	ryu-1.0.5
78
	ryu-1.0.9
59
	ryu-1.0.12
79 60
	scopeguard-1.1.0
80
	serde-1.0.119
81
	serde-1.0.135
82
	serde_derive-1.0.119
83
	serde_derive-1.0.135
84
	serde_json-1.0.61
85
	serde_json-1.0.78
86
	smallvec-1.8.0
61
	serde-1.0.152
62
	serde_derive-1.0.152
63
	serde_json-1.0.91
64
	smallvec-1.10.0
87 65
	strsim-0.8.0
88
	syn-1.0.58
89
	syn-1.0.86
66
	syn-1.0.107
90 67
	synstructure-0.12.6
91
	tempfile-3.1.0
92 68
	tempfile-3.3.0
93 69
	textwrap-0.11.0
94
	tokio-1.15.0
95
	tokio-macros-1.7.0
96
	toml-0.5.8
97
	unicode-width-0.1.8
98
	unicode-width-0.1.9
99
	unicode-xid-0.2.1
100
	unicode-xid-0.2.2
70
	tokio-1.24.1
71
	tokio-macros-1.8.2
72
	toml-0.5.10
73
	unicode-ident-1.0.6
74
	unicode-width-0.1.10
75
	unicode-xid-0.2.4
101 76
	uuid-0.8.2
102 77
	vcpkg-0.2.15
103 78
	vec_map-0.8.2
104 79
	version_check-0.9.4
105
	wasi-0.10.2+wasi-snapshot-preview1
106
	wasi-0.9.0+wasi-snapshot-preview1
80
	wasi-0.11.0+wasi-snapshot-preview1
107 81
	winapi-0.3.9
108 82
	winapi-i686-pc-windows-gnu-0.4.0
109 83
	winapi-x86_64-pc-windows-gnu-0.4.0
110
	zeroize-1.5.0
111
	zeroize_derive-1.3.1
84
	windows-sys-0.42.0
85
	windows_aarch64_gnullvm-0.42.1
86
	windows_aarch64_msvc-0.42.1
87
	windows_i686_gnu-0.42.1
88
	windows_i686_msvc-0.42.1
89
	windows_x86_64_gnu-0.42.1
90
	windows_x86_64_gnullvm-0.42.1
91
	windows_x86_64_msvc-0.42.1
92
	zeroize-1.5.7
93
	zeroize_derive-1.3.3
112 94
"
113 95

  
114
PYTHON_COMPAT=( python3_{9,10} )
96
PYTHON_COMPAT=( python3_{9..11} )
115 97

  
116 98
DISTUTILS_SINGLE_IMPL=1
117
DISTUTILS_USE_SETUPTOOLS=rdepend
99
DISTUTILS_USE_PEP517=setuptools
118 100

  
119
inherit autotools distutils-r1 systemd tmpfiles cargo
101
inherit autotools cargo distutils-r1 readme.gentoo-r1 systemd tmpfiles
120 102

  
121 103
DESCRIPTION="389 Directory Server (core libraries and daemons)"
122 104
HOMEPAGE="https://directory.fedoraproject.org/"
123
SRC_URI="https://github.com/389ds/${PN}/archive/refs/tags/${P}.tar.gz
124
	$(cargo_crate_uris ${CRATES})"
105
SRC_URI="
106
	https://github.com/389ds/${PN}/archive/refs/tags/${P}.tar.gz
107
	$(cargo_crate_uris ${CRATES})
108
"
125 109
LICENSE="GPL-3+ Apache-2.0 BSD MIT MPL-2.0"
126 110
SLOT="0"
127 111
KEYWORDS="~amd64 ~arm64"
......
136 120
# Do not add any AGPL-3 BDB here!
137 121
# See bug 525110, comment 15.
138 122

  
123
# dev-libs/libevent: https://github.com/389ds/389-ds-base/pull/5172
139 124
DEPEND="
140 125
	>=app-crypt/mit-krb5-1.7-r100[openldap]
141 126
	dev-db/lmdb:=
142 127
	>=dev-libs/cyrus-sasl-2.1.19:2[kerberos]
128
	dev-libs/json-c:=
143 129
	>=dev-libs/icu-60.2:=
144 130
	dev-libs/nspr
145 131
	>=dev-libs/nss-3.22[utils]
146 132
	dev-libs/libevent:=
147
	dev-libs/libpcre:3
133
	dev-libs/libpcre2:=
148 134
	dev-libs/openssl:0=
149 135
	>=net-analyzer/net-snmp-5.1.2:=
150
	<net-nds/openldap-2.6:=[sasl]
136
	net-nds/openldap:=[sasl]
151 137
	sys-libs/cracklib
152 138
	sys-libs/db:5.3
139
	sys-libs/zlib
153 140
	sys-fs/e2fsprogs
154 141
	pam-passthru? ( sys-libs/pam )
155 142
	selinux? (
......
159 146
	)
160 147
	systemd? ( >=sys-apps/systemd-244 )
161 148
	virtual/libcrypt:=
162
	"
149
"
163 150

  
164 151
BDEPEND=">=sys-devel/autoconf-2.69-r5
165 152
	virtual/pkgconfig
......
175 162
RDEPEND="${DEPEND}
176 163
	!net-nds/389-ds-base:1.4
177 164
	acct-user/dirsrv
178
	acct-group/dirsrv
179 165
	${PYTHON_DEPS}
180 166
	$(python_gen_cond_dep '
181 167
		dev-python/pyasn1[${PYTHON_USEDEP}]
......
201 187

  
202 188
PATCHES=(
203 189
	"${FILESDIR}/${PN}-db-gentoo.patch"
190
	"${FILESDIR}/${PN}-2.3.2-setuptools-67-packaging-23.patch"
204 191
)
205 192

  
206 193
distutils_enable_tests pytest
......
235 222
		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
236 223
		$(use_with !systemd initddir "/etc/init.d")
237 224
		$(use_enable test cmocka)
238
		--enable-rust
239 225
		--enable-rust-offline
240 226
		--with-pythonexec="${PYTHON}"
241 227
		--with-fhs
......
246 232

  
247 233
	econf "${myeconfargs[@]}"
248 234

  
249
	rm "${S}"/.cargo/config || die
235
	rm .cargo/config || die
250 236
}
251 237

  
252 238
src_compile() {
......
255 241
	default
256 242

  
257 243
	if use doc; then
258
		doxygen "${S}"/docs/slapi.doxy || die
244
		doxygen docs/slapi.doxy || die
259 245
	fi
260 246

  
261
	cd "${S}"/src/lib389 || die
247
	pushd src/lib389 &>/dev/null || die
262 248
	distutils-r1_src_compile
249
	popd &>/dev/null || die
263 250

  
264 251
	# argparse-manpage dynamic man pages have hardcoded man v1 in header
265 252
	sed -i \
266 253
		"1s/\"1\"/\"8\"/" \
267
		"${S}"/src/lib389/man/{openldap_to_ds,ds{conf,ctl,idm,create}}.8 || die
254
		src/lib389/man/{openldap_to_ds,ds{conf,ctl,idm,create}}.8 || die
268 255
}
269 256

  
270 257
src_test () {
271 258
	emake check
272
	cd "${S}"/src/lib389 || die
259
	cd src/lib389 || die
273 260
	distutils-r1_src_test
274 261
}
275 262

  
......
289 276
	echo "LDPATH=/usr/$(get_libdir)/dirsrv" > "${ED}"/etc/env.d/08dirsrv || die
290 277

  
291 278
	if use doc; then
292
		cd "${S}" || die
293 279
		docinto html/
294 280
		dodoc -r html/.
295 281
	fi
296 282

  
297
	cd "${S}"/src/lib389 || die
283
	pushd src/lib389 &>/dev/null || die
298 284
	distutils-r1_src_install
285
	popd &>/dev/null || die
286

  
299 287
	python_fix_shebang "${ED}"
300 288

  
289
	readme.gentoo_create_doc
290

  
301 291
	find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
302 292
}
303 293

  
304 294
pkg_postinst() {
305 295
	tmpfiles_process 389-ds-base.conf
306 296

  
307
	echo
308
	elog "If you are planning to use 389-ds-snmp (ldap-agent),"
309
	elog "make sure to properly configure: /etc/dirsrv/config/ldap-agent.conf"
310
	elog "adding proper 'server' entries, and adding the lines below to"
311
	elog " => /etc/snmp/snmpd.conf"
312
	elog
313
	elog "master agentx"
314
	elog "agentXSocket /var/agentx/master"
315
	elog
316
	elog "To start 389 Directory Server (LDAP service) at boot:"
317
	elog
318
	elog "    rc-update add 389-ds default"
319
	elog
320
	echo
297
	readme.gentoo_print_elog
321 298
}
Thank you!