Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/ldb/files/, sys-libs/ldb/
Date: Mon, 11 Jun 2018 11:18:32
Message-Id: 1528715900.c2b015464d563dae3c8725c97f9bc145a7acbc53.polynomial-c@gentoo
1 commit: c2b015464d563dae3c8725c97f9bc145a7acbc53
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jun 11 11:15:52 2018 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Mon Jun 11 11:18:20 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2b01546
7
8 sys-libs/ldb: Bump to version 1.4.0
9
10 Package-Manager: Portage-2.3.40, Repoman-2.3.9
11
12 sys-libs/ldb/Manifest | 1 +
13 .../ldb/files/ldb-1.4.0-optional_packages.patch | 45 +++++++++
14 sys-libs/ldb/ldb-1.4.0.ebuild | 103 +++++++++++++++++++++
15 3 files changed, 149 insertions(+)
16
17 diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest
18 index 871947eabf4..816889cb15e 100644
19 --- a/sys-libs/ldb/Manifest
20 +++ b/sys-libs/ldb/Manifest
21 @@ -5,3 +5,4 @@ DIST ldb-1.2.2.tar.gz 1348041 BLAKE2B 14521bbe1826af003a98d11d6fcaff115e27f81b98
22 DIST ldb-1.2.3.tar.gz 1344513 BLAKE2B 941174d6e2c51319c8690a8d8a87bea443d4fa4d738bd13243b502fdc9d590ba075fcf4a9920c38bb6fc15564f0b116089cd62d99e7cfe33649dc751910265ad SHA512 500ab069cf6cec39907300e3905d334163b5094087831708acc22c4199b006ef52af3b66aade7558a48fab7cd69be3af7883bda3816a83c576d01b36ab270247
23 DIST ldb-1.3.2.tar.gz 1364976 BLAKE2B 9bffe690a3bb7f2d5d6cb6340e212140409cd86c2148a78200b1bfe39e08ea410a8966655bff9baf280ee8f94fafc8502968312084a9629acab4c9c1f653d37f SHA512 31b29a2a991038910830cb47b02b7f08e1958638d073d5f1602a2657c4005c7e5f5f2c2f7972eeddef462d8c70aaad7f02ddf901cb50f1b1bbafa0c22498973d
24 DIST ldb-1.3.3.tar.gz 1370823 BLAKE2B 1e00dca5cc66fc8677334e79d4e36efebad516775116ac0f06884a08197f9589056acc5bc377d6317dfd67926cb6bccbdfe18e1d259875cda4dde86251779fd5 SHA512 ad272a1fd82d5138d9a056c1d81cfcd6167886719852b41447b9e6fb6acd926b137fd76e16f476d68bc0991943142ea1482666dc48155e9a1ef09f13b041c350
25 +DIST ldb-1.4.0.tar.gz 1415607 BLAKE2B 1c61264040e5eddee092c95e4cfaeb53b9747b92ea6b2e62ae6a6c74980c4325de5c2aec085bde942eed871541bb90da91e0ac10635d0ca1690200ef922019d1 SHA512 95b024b5aceac0d6360f3c98e70e1f649c53fa0e849b0f3dbb7c46cf47fac718fd13c73dd1531cefaec19d3e6b0f6751b372d1fc814dd58dd288a6cf1dc57a6c
26
27 diff --git a/sys-libs/ldb/files/ldb-1.4.0-optional_packages.patch b/sys-libs/ldb/files/ldb-1.4.0-optional_packages.patch
28 new file mode 100644
29 index 00000000000..37813890dcd
30 --- /dev/null
31 +++ b/sys-libs/ldb/files/ldb-1.4.0-optional_packages.patch
32 @@ -0,0 +1,45 @@
33 +--- ldb-1.4.0/wscript
34 ++++ ldb-1.4.0/wscript
35 +@@ -31,6 +31,14 @@
36 + opt.RECURSE('lib/tevent')
37 + opt.RECURSE('lib/replace')
38 + opt.tool_options('python') # options for disabling pyc or pyo compilation
39 ++ if opt.IN_LAUNCH_DIR():
40 ++ opt.add_option('--disable-python',
41 ++ help=("disable the pyldb modules"),
42 ++ action="store_true", dest='disable_python', default=False)
43 ++ if opt.IN_LAUNCH_DIR():
44 ++ opt.add_option('--disable-ldap',
45 ++ help=("disable ldap support"),
46 ++ action="store_true", dest='disable_ldap', default=False)
47 +
48 + opt.add_option('--without-ldb-lmdb',
49 + help='disable new LMDB backend for LDB',
50 +@@ -38,6 +46,11 @@
51 +
52 +
53 + def configure(conf):
54 ++ conf.env.standalone_ldb = conf.IN_LAUNCH_DIR()
55 ++
56 ++ conf.env.disable_python = getattr(Options.options, 'disable_python', False)
57 ++ conf.env.disable_ldap = getattr(Options.options, 'disable_ldap', False)
58 ++
59 + conf.RECURSE('lib/tdb')
60 + conf.RECURSE('lib/tevent')
61 +
62 +@@ -142,9 +155,12 @@
63 + if conf.env.standalone_ldb:
64 + conf.CHECK_XSLTPROC_MANPAGES()
65 +
66 +- # we need this for the ldap backend
67 +- if conf.CHECK_FUNCS_IN('ber_flush ldap_open ldap_initialize', 'lber ldap', headers='lber.h ldap.h'):
68 +- conf.env.ENABLE_LDAP_BACKEND = True
69 ++ if not conf.env.disable_ldap:
70 ++ # we need this for the ldap backend
71 ++ if conf.CHECK_FUNCS_IN('ber_flush ldap_open ldap_initialize', 'lber ldap', headers='lber.h ldap.h'):
72 ++ conf.env.ENABLE_LDAP_BACKEND = True
73 ++ else:
74 ++ conf.env.ENABLE_LDAP_BACKEND = False
75 +
76 + # we don't want any libraries or modules to rely on runtime
77 + # resolution of symbols
78
79 diff --git a/sys-libs/ldb/ldb-1.4.0.ebuild b/sys-libs/ldb/ldb-1.4.0.ebuild
80 new file mode 100644
81 index 00000000000..2d0e99ba9c8
82 --- /dev/null
83 +++ b/sys-libs/ldb/ldb-1.4.0.ebuild
84 @@ -0,0 +1,103 @@
85 +# Copyright 1999-2018 Gentoo Foundation
86 +# Distributed under the terms of the GNU General Public License v2
87 +
88 +EAPI=6
89 +PYTHON_COMPAT=( python2_7 )
90 +PYTHON_REQ_USE="threads"
91 +
92 +inherit python-single-r1 waf-utils multilib-minimal eutils
93 +
94 +DESCRIPTION="An LDAP-like embedded database"
95 +HOMEPAGE="http://ldb.samba.org"
96 +SRC_URI="http://www.samba.org/ftp/pub/${PN}/${P}.tar.gz"
97 +
98 +LICENSE="LGPL-3"
99 +SLOT="0/${PV}"
100 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
101 +IUSE="doc +ldap +python"
102 +
103 +RDEPEND="
104 + !elibc_FreeBSD? ( dev-libs/libbsd[${MULTILIB_USEDEP}] )
105 + dev-libs/popt[${MULTILIB_USEDEP}]
106 + >=dev-util/cmocka-1.1.1[${MULTILIB_USEDEP}]
107 + >=sys-libs/talloc-2.1.13[python?,${MULTILIB_USEDEP}]
108 + >=sys-libs/tdb-1.3.15[python?,${MULTILIB_USEDEP}]
109 + >=sys-libs/tevent-0.9.36[python(+)?,${MULTILIB_USEDEP}]
110 + ldap? ( net-nds/openldap )
111 + python? ( ${PYTHON_DEPS} )
112 +"
113 +
114 +DEPEND="dev-libs/libxslt
115 + doc? ( app-doc/doxygen )
116 + virtual/pkgconfig
117 + ${PYTHON_DEPS}
118 + ${RDEPEND}
119 +"
120 +
121 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
122 +
123 +WAF_BINARY="${S}/buildtools/bin/waf"
124 +
125 +MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
126 +
127 +PATCHES=(
128 + "${FILESDIR}"/${PN}-1.4.0-optional_packages.patch
129 + "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
130 +)
131 +
132 +pkg_setup() {
133 + python-single-r1_pkg_setup
134 +}
135 +
136 +src_prepare() {
137 + default
138 + multilib_copy_sources
139 +}
140 +
141 +multilib_src_configure() {
142 + local myconf=(
143 + $(usex ldap '' --disable-ldap)
144 + --disable-rpath
145 + --disable-rpath-install --bundled-libraries=NONE
146 + --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
147 + --builtin-libraries=NONE
148 + )
149 + if ! multilib_is_native_abi; then
150 + myconf+=( --disable-python )
151 + else
152 + use python || myconf+=( --disable-python )
153 + fi
154 + waf-utils_src_configure "${myconf[@]}"
155 +}
156 +
157 +multilib_src_compile(){
158 + waf-utils_src_compile
159 + multilib_is_native_abi && use doc && doxygen Doxyfile
160 +}
161 +
162 +multilib_src_test() {
163 + if multilib_is_native_abi; then
164 + WAF_MAKE=1 \
165 + PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
166 + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
167 + waf test || die
168 + fi
169 +}
170 +
171 +multilib_src_install() {
172 + waf-utils_src_install
173 +
174 + if multilib_is_native_abi && use doc; then
175 + doman apidocs/man/man3/*.3
176 + docinto html
177 + dodoc -r apidocs/html/*
178 + fi
179 +}
180 +
181 +pkg_postinst() {
182 + if has_version sys-auth/sssd; then
183 + ewarn "You have sssd installed. It is known to break after ldb upgrades,"
184 + ewarn "so please try to rebuild it before reporting bugs."
185 + ewarn "See https://bugs.gentoo.org/404281"
186 + fi
187 +}