mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
sys-libs/ldb: convert to multilib
multilib is needed to support samba-4 Package-Manager: portage-2.2.26
This commit is contained in:
72
sys-libs/ldb/files/ldb-1.1.24-optional-python.patch
Normal file
72
sys-libs/ldb/files/ldb-1.1.24-optional-python.patch
Normal file
@@ -0,0 +1,72 @@
|
||||
--- a/wscript 2015-12-10 06:01:40.000000000 -0500
|
||||
+++ b/wscript 2016-01-06 15:05:57.013617848 -0500
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
blddir = 'bin'
|
||||
|
||||
+import Logs
|
||||
import sys, os
|
||||
|
||||
# find the buildtools directory
|
||||
@@ -13,7 +14,7 @@
|
||||
srcdir = srcdir + '/..'
|
||||
sys.path.insert(0, srcdir + '/buildtools/wafsamba')
|
||||
|
||||
-import wafsamba, samba_dist, Utils
|
||||
+import wafsamba, samba_dist, Utils, Options
|
||||
|
||||
samba_dist.DIST_DIRS('''lib/ldb:. lib/replace:lib/replace lib/talloc:lib/talloc
|
||||
lib/tdb:lib/tdb lib/tdb:lib/tdb lib/tevent:lib/tevent
|
||||
@@ -28,8 +29,17 @@
|
||||
opt.RECURSE('lib/tevent')
|
||||
opt.RECURSE('lib/replace')
|
||||
opt.tool_options('python') # options for disabling pyc or pyo compilation
|
||||
+ if opt.IN_LAUNCH_DIR():
|
||||
+ opt.add_option('--disable-python',
|
||||
+ help=("disable the pyldb modules"),
|
||||
+ action="store_true", dest='disable_python', default=False)
|
||||
+
|
||||
|
||||
def configure(conf):
|
||||
+ conf.env.standalone_ldb = conf.IN_LAUNCH_DIR()
|
||||
+
|
||||
+ conf.env.disable_python = getattr(Options.options, 'disable_python', False)
|
||||
+
|
||||
conf.RECURSE('lib/tdb')
|
||||
conf.RECURSE('lib/tevent')
|
||||
|
||||
@@ -44,16 +54,18 @@
|
||||
conf.RECURSE('lib/replace')
|
||||
conf.find_program('python', var='PYTHON')
|
||||
conf.find_program('xsltproc', var='XSLTPROC')
|
||||
- conf.check_tool('python')
|
||||
- conf.check_python_version((2,4,2))
|
||||
- conf.SAMBA_CHECK_PYTHON_HEADERS(mandatory=True)
|
||||
+
|
||||
+ if not conf.env.disable_python:
|
||||
+ conf.SAMBA_CHECK_PYTHON(mandatory=False, version=(2,4,2))
|
||||
+ conf.SAMBA_CHECK_PYTHON_HEADERS(mandatory=False)
|
||||
+ if not conf.env.HAVE_PYTHON_H:
|
||||
+ Logs.warn('Disabling pyldb-util as python devel libs not found')
|
||||
+ conf.env.disable_python = True
|
||||
|
||||
# where does the default LIBDIR end up? in conf.env somewhere?
|
||||
#
|
||||
conf.CONFIG_PATH('LDB_MODULESDIR', conf.SUBST_ENV_VAR('MODULESDIR') + '/ldb')
|
||||
|
||||
- conf.env.standalone_ldb = conf.IN_LAUNCH_DIR()
|
||||
-
|
||||
if not conf.env.standalone_ldb:
|
||||
if conf.CHECK_BUNDLED_SYSTEM_PKG('pyldb-util', minversion=VERSION,
|
||||
onlyif='talloc tdb tevent',
|
||||
--- a/lib/talloc/wscript 2015-11-06 08:28:25.000000000 -0500
|
||||
+++ b/lib/talloc/wscript 2016-01-06 15:07:43.673478788 -0500
|
||||
@@ -48,7 +48,7 @@
|
||||
if conf.CHECK_BUNDLED_SYSTEM_PKG('talloc', minversion=VERSION,
|
||||
implied_deps='replace'):
|
||||
conf.define('USING_SYSTEM_TALLOC', 1)
|
||||
- if conf.CHECK_BUNDLED_SYSTEM_PKG('pytalloc-util', minversion=VERSION,
|
||||
+ if not conf.env.disable_python and conf.CHECK_BUNDLED_SYSTEM_PKG('pytalloc-util', minversion=VERSION,
|
||||
implied_deps='talloc replace'):
|
||||
conf.define('USING_SYSTEM_PYTALLOC_UTIL', 1)
|
||||
|
||||
94
sys-libs/ldb/ldb-1.1.24-r1.ebuild
Normal file
94
sys-libs/ldb/ldb-1.1.24-r1.ebuild
Normal file
@@ -0,0 +1,94 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="threads"
|
||||
|
||||
inherit python-single-r1 waf-utils multilib-minimal eutils
|
||||
|
||||
DESCRIPTION="An LDAP-like embedded database"
|
||||
HOMEPAGE="http://ldb.samba.org"
|
||||
SRC_URI="http://www.samba.org/ftp/pub/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="doc"
|
||||
|
||||
RDEPEND="dev-libs/popt[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/talloc-2.1.5[python,${MULTILIB_USEDEP}]
|
||||
>=sys-libs/tevent-0.9.26[python(+),${MULTILIB_USEDEP}]
|
||||
>=sys-libs/tdb-1.3.8[python,${MULTILIB_USEDEP}]
|
||||
net-nds/openldap
|
||||
!!<net-fs/samba-3.6.0[ldb]
|
||||
!!>=net-fs/samba-4.0.0[ldb]
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="dev-libs/libxslt
|
||||
doc? ( app-doc/doxygen )
|
||||
virtual/pkgconfig
|
||||
${RDEPEND}"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
WAF_BINARY="${S}/buildtools/bin/waf"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
|
||||
|
||||
pkg_setup() {
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-optional-python.patch
|
||||
epatch_user
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--disable-rpath \
|
||||
--disable-rpath-install --bundled-libraries=NONE \
|
||||
--with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba \
|
||||
--builtin-libraries=NONE \
|
||||
--blddir="${BUILD_DIR}"
|
||||
)
|
||||
if ! multilib_is_native_abi; then
|
||||
myconf+=( --disable-python )
|
||||
fi
|
||||
waf-utils_src_configure "${myconf[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile(){
|
||||
waf-utils_src_compile
|
||||
multilib_is_native_abi && use doc && doxygen Doxyfile
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
if multilib_is_native_abi; then
|
||||
WAF_MAKE=1 \
|
||||
PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
|
||||
waf test || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
waf-utils_src_install
|
||||
|
||||
if multilib_is_native_abi && use doc; then
|
||||
dohtml -r apidocs/html/*
|
||||
doman apidocs/man/man3/*.3
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version sys-auth/sssd; then
|
||||
ewarn "You have sssd installed. It is known to break after ldb upgrades,"
|
||||
ewarn "so please try to rebuild it before reporting bugs."
|
||||
ewarn "See https://bugs.gentoo.org/404281"
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user