aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/openldap
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-support/openldap')
-rw-r--r--meta-oe/recipes-support/openldap/openldap/0001-build-top.mk-unset-STRIP_OPTS.patch38
-rw-r--r--meta-oe/recipes-support/openldap/openldap/install-strip.patch14
-rw-r--r--meta-oe/recipes-support/openldap/openldap/kill-icu.patch30
-rw-r--r--meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch17
-rw-r--r--meta-oe/recipes-support/openldap/openldap/openldap-CVE-2015-3276.patch59
-rw-r--r--meta-oe/recipes-support/openldap/openldap/openldap-m4-pthread.patch20
-rw-r--r--meta-oe/recipes-support/openldap/openldap/remove-user-host-pwd-from-version.patch39
-rw-r--r--meta-oe/recipes-support/openldap/openldap/thread_stub.patch20
-rw-r--r--meta-oe/recipes-support/openldap/openldap/use-urandom.patch38
-rw-r--r--meta-oe/recipes-support/openldap/openldap_2.6.7.bb (renamed from meta-oe/recipes-support/openldap/openldap_2.4.45.bb)137
10 files changed, 133 insertions, 279 deletions
diff --git a/meta-oe/recipes-support/openldap/openldap/0001-build-top.mk-unset-STRIP_OPTS.patch b/meta-oe/recipes-support/openldap/openldap/0001-build-top.mk-unset-STRIP_OPTS.patch
new file mode 100644
index 0000000000..9d25f2c599
--- /dev/null
+++ b/meta-oe/recipes-support/openldap/openldap/0001-build-top.mk-unset-STRIP_OPTS.patch
@@ -0,0 +1,38 @@
+From 321839cbd1d57f12d3d6695254d2003473d8dd1a Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 8 Dec 2021 16:58:55 +0800
+Subject: [PATCH] build/top.mk: unset STRIP_OPTS
+
+Unset STRIP_OPTS to disable strip to fix QA errors:
+
+ERROR: openldap-2.5.9-r0 do_package: QA Issue: File
+'/usr/bin/ldapcompare' from openldap was already stripped, this will
+prevent future debugging! [already-stripped]
+
+ERROR: openldap-2.5.9-r0 do_package: QA Issue: File
+'/usr/bin/ldapdelete' from openldap was already stripped, this will
+prevent future debugging! [already-stripped]
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ build/top.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/build/top.mk b/build/top.mk
+index 38ce146..6e9fe1f 100644
+--- a/build/top.mk
++++ b/build/top.mk
+@@ -60,7 +60,7 @@ INSTALL_PROGRAM = $(INSTALL)
+ INSTALL_DATA = $(INSTALL) -m 644
+ INSTALL_SCRIPT = $(INSTALL)
+
+-STRIP_OPTS = -s
++STRIP_OPTS =
+
+ LINT = lint
+ 5LINT = 5lint
+--
+2.17.1
+
diff --git a/meta-oe/recipes-support/openldap/openldap/install-strip.patch b/meta-oe/recipes-support/openldap/openldap/install-strip.patch
deleted file mode 100644
index 2992b7030d..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/install-strip.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-# This patch ensures that the install operations which strip
-# programs and libraries (LTINSTALL) work in a cross build
-# environment.
---- openldap-2.2.24/.pc/install-strip.patch/build/top.mk 2005-01-20 09:00:55.000000000 -0800
-+++ openldap-2.2.24/build/top.mk 2005-04-16 13:48:20.536710376 -0700
-@@ -116,7 +116,7 @@
- LTLINK_MOD = $(LIBTOOL) $(LTONLY_MOD) --mode=link \
- $(CC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS_MOD)
-
--LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL)
-+LTINSTALL = STRIPPROG="" $(LIBTOOL) --mode=install $(top_srcdir)/contrib/ldapc++/install-sh -c
- LTFINISH = $(LIBTOOL) --mode=finish
-
- # Misc UNIX commands used in build environment
diff --git a/meta-oe/recipes-support/openldap/openldap/kill-icu.patch b/meta-oe/recipes-support/openldap/openldap/kill-icu.patch
deleted file mode 100644
index dcf5411372..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/kill-icu.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
-
-slapd depends on ICU if it was built first.
-
-Upstream-status: inappropiate [embedded specific]
----
- configure.in | 8 --------
- 1 file changed, 8 deletions(-)
-
---- openldap-2.4.23.orig/configure.in
-+++ openldap-2.4.23/configure.in
-@@ -2045,18 +2045,10 @@ if test $ol_enable_ndb != no ; then
- SLAPD_LIBS="$SLAPD_LIBS \$(SLAPD_NDB_LIBS)"
- fi
- fi
-
- dnl ----------------------------------------------------------------
--dnl International Components for Unicode
--OL_ICU
--if test "$ol_icu" = no ; then
-- AC_MSG_WARN([ICU not available])
--else
-- ICU_LIBS="$ol_icu"
--fi
--dnl ----------------------------------------------------------------
- dnl
- dnl Check for Cyrus SASL
- dnl
- WITH_SASL=no
- ol_link_sasl=no
diff --git a/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch b/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch
deleted file mode 100644
index c7b1552c1c..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-From http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-nds/openldap/files/
-
-Upstream-status: Unknown
-
---
-
---- openldap-2.4.28/configure.in.orig 2012-02-11 22:40:36.004360795 +0000
-+++ openldap-2.4.28/configure.in 2012-02-11 22:40:13.410986851 +0000
-@@ -1214,7 +1214,7 @@
- ol_with_tls=gnutls
- ol_link_tls=yes
-
-- TLS_LIBS="-lgnutls"
-+ TLS_LIBS="-lgnutls -lgcrypt"
-
- AC_DEFINE(HAVE_GNUTLS, 1,
- [define if you have GNUtls])
diff --git a/meta-oe/recipes-support/openldap/openldap/openldap-CVE-2015-3276.patch b/meta-oe/recipes-support/openldap/openldap/openldap-CVE-2015-3276.patch
deleted file mode 100644
index de9ca528a2..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/openldap-CVE-2015-3276.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-openldap CVE-2015-3276
-
-the patch comes from:
-https://bugzilla.redhat.com/show_bug.cgi?id=1238322
-https://bugzilla.redhat.com/attachment.cgi?id=1055640
-
-The nss_parse_ciphers function in libraries/libldap/tls_m.c in
-OpenLDAP does not properly parse OpenSSL-style multi-keyword mode
-cipher strings, which might cause a weaker than intended cipher to
-be used and allow remote attackers to have unspecified impact via
-unknown vectors.
-
-Signed-off-by: Li Wang <li.wang@windriver.com>
----
- libraries/libldap/tls_m.c | 27 ++++++++++++++++-----------
- 1 file changed, 16 insertions(+), 11 deletions(-)
-
-diff --git a/libraries/libldap/tls_m.c b/libraries/libldap/tls_m.c
-index 9b101f9..e6f3051 100644
---- a/libraries/libldap/tls_m.c
-+++ b/libraries/libldap/tls_m.c
-@@ -621,18 +621,23 @@ nss_parse_ciphers(const char *cipherstr, int cipher_list[ciphernum])
- */
- if (mask || strength || protocol) {
- for (i=0; i<ciphernum; i++) {
-- if (((ciphers_def[i].attr & mask) ||
-- (ciphers_def[i].strength & strength) ||
-- (ciphers_def[i].version & protocol)) &&
-- (cipher_list[i] != -1)) {
-- /* Enable the NULL ciphers only if explicity
-- * requested */
-- if (ciphers_def[i].attr & SSL_eNULL) {
-- if (mask & SSL_eNULL)
-- cipher_list[i] = action;
-- } else
-+ /* if more than one mask is provided
-+ * then AND logic applies (to match openssl)
-+ */
-+ if ( cipher_list[i] == -1) )
-+ continue;
-+ if ( mask && ! (ciphers_def[i].attr & mask) )
-+ continue;
-+ if ( strength && ! (ciphers_def[i].strength & strength) )
-+ continue;
-+ if ( protocol && ! (ciphers_def[i].version & protocol) )
-+ continue;
-+ /* Enable the NULL ciphers only if explicity requested */
-+ if (ciphers_def[i].attr & SSL_eNULL) {
-+ if (mask & SSL_eNULL)
- cipher_list[i] = action;
-- }
-+ } else
-+ cipher_list[i] = action;
- }
- } else {
- for (i=0; i<ciphernum; i++) {
---
-1.7.9.5
-
diff --git a/meta-oe/recipes-support/openldap/openldap/openldap-m4-pthread.patch b/meta-oe/recipes-support/openldap/openldap/openldap-m4-pthread.patch
deleted file mode 100644
index b669b7254d..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/openldap-m4-pthread.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- openldap-2.3.11/build/openldap.m4.orig 2005-11-11 00:11:18.604322590 -0800
-+++ openldap-2.3.11/build/openldap.m4 2005-11-11 00:26:21.621145856 -0800
-@@ -788,7 +788,7 @@ AC_DEFUN([OL_PTHREAD_TEST_FUNCTION],[[
- ]])
-
- AC_DEFUN([OL_PTHREAD_TEST_PROGRAM],
--AC_LANG_SOURCE([OL_PTHREAD_TEST_INCLUDES
-+[AC_LANG_SOURCE([[OL_PTHREAD_TEST_INCLUDES
-
- int main(argc, argv)
- int argc;
-@@ -796,7 +796,7 @@ int main(argc, argv)
- {
- OL_PTHREAD_TEST_FUNCTION
- }
--]))
-+]])])
- dnl --------------------------------------------------------------------
- AC_DEFUN([OL_PTHREAD_TRY], [# Pthread try link: $1 ($2)
- if test "$ol_link_threads" = no ; then
diff --git a/meta-oe/recipes-support/openldap/openldap/remove-user-host-pwd-from-version.patch b/meta-oe/recipes-support/openldap/openldap/remove-user-host-pwd-from-version.patch
new file mode 100644
index 0000000000..7a1b5aaad7
--- /dev/null
+++ b/meta-oe/recipes-support/openldap/openldap/remove-user-host-pwd-from-version.patch
@@ -0,0 +1,39 @@
+From 868a04b0596e2df708ba14ed70815b1411db3db1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 21 Feb 2019 11:33:24 +0800
+Subject: [PATCH] mkversion: remove user host pwd from version
+
+Upstream-Status: Pending
+
+Update this patch to version 2.4.47
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ build/mkversion | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+--- a/build/mkversion
++++ b/build/mkversion
+@@ -53,8 +53,12 @@ APPLICATION=$1
+ # Reproducible builds set SOURCE_DATE_EPOCH, want constant strings
+ if [ -n "${SOURCE_DATE_EPOCH}" ]; then
+ WHOWHERE="openldap"
++ DATE=$(date -d@$SOURCE_DATE_EPOCH +' %b %d %Y ')
++ TIME=$(date -d@$SOURCE_DATE_EPOCH +' %H:%M:%S ')
+ else
+- WHOWHERE="$USER@$(uname -n):$(pwd)"
++ WHOWHERE="openldap"
++ DATE='" __DATE__ "'
++ TIME='" __TIME__ "'
+ fi
+
+ cat << __EOF__
+@@ -77,7 +81,7 @@ static const char copyright[] =
+ "COPYING RESTRICTIONS APPLY\n";
+
+ $static $const char $SYMBOL[] =
+-"@(#) \$$PACKAGE: $APPLICATION $VERSION (" __DATE__ " " __TIME__ ") \$\n"
++"@(#) \$$PACKAGE: $APPLICATION $VERSION ($DATE $TIME) \$\n"
+ "\t$WHOWHERE\n";
+
+ __EOF__
diff --git a/meta-oe/recipes-support/openldap/openldap/thread_stub.patch b/meta-oe/recipes-support/openldap/openldap/thread_stub.patch
deleted file mode 100644
index 540ba4a635..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/thread_stub.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-openldap: set pointer
-
-When the function ldap_pvt_thread_pool_getkey() succeeds, it
-must set the value of *data since the caller may try to use it.
-
-Upstream-Status: pending
-
-Signed-off-by: Joe Slater <jslater@windriver.com>
-
-
---- a/libraries/libldap_r/thr_stub.c
-+++ b/libraries/libldap_r/thr_stub.c
-@@ -217,6 +217,7 @@ ldap_pvt_thread_pool_unidle ( ldap_pvt_t
- int ldap_pvt_thread_pool_getkey (
- void *ctx, void *key, void **data, ldap_pvt_thread_pool_keyfree_t **kfree )
- {
-+ if (data) *data = NULL; /* avoid problems with uninitialized *data */
- return(0);
- }
-
diff --git a/meta-oe/recipes-support/openldap/openldap/use-urandom.patch b/meta-oe/recipes-support/openldap/openldap/use-urandom.patch
deleted file mode 100644
index e7b988fafd..0000000000
--- a/meta-oe/recipes-support/openldap/openldap/use-urandom.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-openldap: assume /dev/urandom exists
-
-When we are cross-compiling, we want to assume
-that /dev/urandom exists. We could change the source
-code to look for it, but this is the easy way out.
-
-Upstream-Status: pending
-
-Signed-off-by: Joe Slater <jslater@windriver.com>
-
-
---- a/configure.in
-+++ b/configure.in
-@@ -2142,8 +2142,8 @@ fi
-
- dnl ----------------------------------------------------------------
- dnl Check for entropy sources
-+dev=no
- if test $cross_compiling != yes && test "$ac_cv_mingw32" != yes ; then
-- dev=no
- if test -r /dev/urandom ; then
- dev="/dev/urandom";
- elif test -r /idev/urandom ; then
-@@ -2156,9 +2156,11 @@ if test $cross_compiling != yes && test
- dev="/idev/random";
- fi
-
-- if test $dev != no ; then
-- AC_DEFINE_UNQUOTED(URANDOM_DEVICE,"$dev",[set to urandom device])
-- fi
-+elif test $cross_compiling == yes ; then
-+ dev="/dev/urandom";
-+fi
-+if test $dev != no ; then
-+ AC_DEFINE_UNQUOTED(URANDOM_DEVICE,"$dev",[set to urandom device])
- fi
-
- dnl ----------------------------------------------------------------
diff --git a/meta-oe/recipes-support/openldap/openldap_2.4.45.bb b/meta-oe/recipes-support/openldap/openldap_2.6.7.bb
index 82d6619838..c229667d68 100644
--- a/meta-oe/recipes-support/openldap/openldap_2.4.45.bb
+++ b/meta-oe/recipes-support/openldap/openldap_2.6.7.bb
@@ -1,5 +1,3 @@
-# OpenLDAP, a license free (see http://www.OpenLDAP.org/license.html)
-#
SUMMARY = "OpenLDAP Directory Service"
DESCRIPTION = "OpenLDAP Software is an open source implementation of the Lightweight Directory Access Protocol."
HOMEPAGE = "http://www.OpenLDAP.org/license.html"
@@ -9,35 +7,25 @@ HOMEPAGE = "http://www.OpenLDAP.org/license.html"
# basically BSD. opensource.org does not record this license
# at present (so it is apparently not OSI certified).
LICENSE = "OpenLDAP"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=25fd3721960f39128cd15a749fd21139 \
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=beceb5ac7100b6430640c61655b25c1f \
file://LICENSE;md5=153d07ef052c4a37a8fac23bc6031972 \
-"
+ "
SECTION = "libs"
LDAP_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
-SRC_URI = "ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${BP}.tgz \
- file://openldap-m4-pthread.patch \
- file://kill-icu.patch \
- file://openldap-2.4.28-gnutls-gcrypt.patch \
- file://use-urandom.patch \
+SRC_URI = "http://www.openldap.org/software/download/OpenLDAP/openldap-release/${BP}.tgz \
file://initscript \
file://slapd.service \
- file://thread_stub.patch \
- file://openldap-CVE-2015-3276.patch \
+ file://remove-user-host-pwd-from-version.patch \
+ file://0001-build-top.mk-unset-STRIP_OPTS.patch \
"
-SRC_URI[md5sum] = "00ff8301277cdfd0af728a6927042a13"
-SRC_URI[sha256sum] = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824"
+SRC_URI[sha256sum] = "cd775f625c944ed78a3da18a03b03b08eea73c8aabc97b41bb336e9a10954930"
DEPENDS = "util-linux groff-native"
-# The original top.mk used INSTALL, not INSTALL_STRIP_PROGRAM when
-# installing .so and executables, this fails in cross compilation
-# environments
-SRC_URI += "file://install-strip.patch"
-
-inherit autotools-brokensep update-rc.d systemd
+inherit autotools-brokensep update-rc.d systemd pkgconfig
# CV SETTINGS
# Required to work round AC_FUNC_MEMCMP which gets the wrong answer
@@ -52,12 +40,12 @@ EXTRA_OECONF += "--with-yielding-select=yes"
# Shared libraries are nice...
EXTRA_OECONF += "--enable-dynamic"
-PACKAGECONFIG ??= "gnutls modules \
- mdb ldap meta monitor null passwd shell proxycache dnssrv \
+PACKAGECONFIG ??= "asyncmeta gnutls modules \
+ mdb ldap meta null passwd proxycache dnssrv \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"
#--with-tls with TLS/SSL support auto|openssl|gnutls [auto]
-PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls libgcrypt"
+PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls"
PACKAGECONFIG[openssl] = "--with-tls=openssl,,openssl"
PACKAGECONFIG[sasl] = "--with-cyrus-sasl,--without-cyrus-sasl,cyrus-sasl"
@@ -74,25 +62,20 @@ EXTRA_OECONF += "--enable-crypt"
# The backend must be set by the configuration. This controls the
# required database.
#
-# Backends="bdb dnssrv hdb ldap mdb meta monitor ndb null passwd perl relay shell sock sql"
+# Backends="asyncmeta dnssrv ldap mdb meta null passwd perl relay sock sql wt"
#
# Note that multiple backends can be built. The ldbm backend requires a
-# build-time choice of database API. The bdb backend forces this to be
-# DB4. To use the gdbm (or other) API the Berkely database module must
-# be removed from the build.
+# build-time choice of database API. To use the gdbm (or other) API the
+# Berkely database module must be removed from the build.
md = "${libexecdir}/openldap"
#
-#--enable-bdb enable Berkeley DB backend no|yes|mod yes
-# The Berkely DB is the standard choice. This version of OpenLDAP requires
-# the version 4 implementation or better.
-PACKAGECONFIG[bdb] = "--enable-bdb=yes,--enable-bdb=no,db"
+
+#--enable-asyncmeta enable asyncmeta backend no|yes|mod no
+PACKAGECONFIG[asyncmeta] = "--enable-asyncmeta=mod,--enable-asyncmeta=no"
#--enable-dnssrv enable dnssrv backend no|yes|mod no
PACKAGECONFIG[dnssrv] = "--enable-dnssrv=mod,--enable-dnssrv=no"
-#--enable-hdb enable Hierarchical DB backend no|yes|mod no
-PACKAGECONFIG[hdb] = "--enable-hdb=yes,--enable-hdb=no,db"
-
#--enable-ldap enable ldap backend no|yes|mod no
PACKAGECONFIG[ldap] = "--enable-ldap=mod,--enable-ldap=no,"
@@ -102,12 +85,6 @@ PACKAGECONFIG[mdb] = "--enable-mdb=yes,--enable-mdb=no,"
#--enable-meta enable metadirectory backend no|yes|mod no
PACKAGECONFIG[meta] = "--enable-meta=mod,--enable-meta=no,"
-#--enable-monitor enable monitor backend no|yes|mod yes
-PACKAGECONFIG[monitor] = "--enable-monitor=mod,--enable-monitor=no,"
-
-#--enable-ndb enable MySQL NDB Cluster backend no|yes|mod [no]
-PACKAGECONFIG[ndb] = "--enable-ndb=mod,--enable-ndb=no,"
-
#--enable-null enable null backend no|yes|mod no
PACKAGECONFIG[null] = "--enable-null=mod,--enable-null=no,"
@@ -123,10 +100,6 @@ PACKAGECONFIG[perl] = "--enable-perl=mod,--enable-perl=no,perl"
#--enable-relay enable relay backend no|yes|mod [yes]
PACKAGECONFIG[relay] = "--enable-relay=mod,--enable-relay=no,"
-#--enable-shell enable shell backend no|yes|mod no
-# configure: WARNING: Use of --without-threads is recommended with back-shell
-PACKAGECONFIG[shell] = "--enable-shell=mod --without-threads,--enable-shell=no,"
-
#--enable-sock enable sock backend no|yes|mod [no]
PACKAGECONFIG[sock] = "--enable-sock=mod,--enable-sock=no,"
@@ -135,6 +108,10 @@ PACKAGECONFIG[sock] = "--enable-sock=mod,--enable-sock=no,"
# sqlite.h (which may be compatible but hasn't been tried.)
PACKAGECONFIG[sql] = "--enable-sql=mod,--enable-sql=no,sqlite3"
+#--enable-wt enable wt backend no|yes|mod no
+# back-wt is marked currently as experimental
+PACKAGECONFIG[wt] = "--enable-wt=mod,--enable-wt=no"
+
#--enable-dyngroup Dynamic Group overlay no|yes|mod no
# This is a demo, Proxy Cache defines init_module which conflicts with the
# same symbol in dyngroup
@@ -142,22 +119,24 @@ PACKAGECONFIG[dyngroup] = "--enable-dyngroup=mod,--enable-dyngroup=no,"
#--enable-proxycache Proxy Cache overlay no|yes|mod no
PACKAGECONFIG[proxycache] = "--enable-proxycache=mod,--enable-proxycache=no,"
-FILES_${PN}-overlay-proxycache = "${md}/pcache-*.so.*"
+FILES:${PN}-overlay-proxycache = "${md}/pcache.so.*"
PACKAGES += "${PN}-overlay-proxycache"
# Append URANDOM_DEVICE='/dev/urandom' to CPPFLAGS:
# This allows tls to obtain random bits from /dev/urandom, by default
# it was disabled for cross-compiling.
-CPPFLAGS_append = " -D_GNU_SOURCE -DURANDOM_DEVICE=\'/dev/urandom\' -fPIC"
+CPPFLAGS:append = " -D_GNU_SOURCE -DURANDOM_DEVICE=\\"/dev/urandom\\" -fPIC"
-LDFLAGS_append = " -pthread"
+LDFLAGS:append = " -pthread"
do_configure() {
- cp ${STAGING_DATADIR_NATIVE}/libtool/build-aux/ltmain.sh ${S}/build
rm -f ${S}/libtool
aclocal
libtoolize --force --copy
gnu-configize
+ cp ${STAGING_DATADIR_NATIVE}/libtool/build-aux/ltmain.sh ${S}/build
+ cp ${STAGING_DATADIR_NATIVE}/libtool/build-aux/missing ${S}/build
+ cp ${STAGING_DATADIR_NATIVE}/libtool/build-aux/compile ${S}/build
autoconf
oe_runconf
}
@@ -170,18 +149,18 @@ LEAD_SONAME = "libldap-${LDAP_VER}.so.*"
PACKAGES += "${PN}-slapd ${PN}-slurpd ${PN}-bin"
# Package contents - shift most standard contents to -bin
-FILES_${PN} = "${libdir}/lib*.so.* ${sysconfdir}/openldap/ldap.* ${localstatedir}/${BPN}/data"
-FILES_${PN}-slapd = "${sysconfdir}/init.d ${libexecdir}/slapd ${sbindir} ${localstatedir}/run ${localstatedir}/volatile/run \
+FILES:${PN} = "${libdir}/lib*.so.* ${sysconfdir}/openldap/ldap.* ${localstatedir}/${BPN}/data"
+FILES:${PN}-slapd = "${sysconfdir}/init.d ${libexecdir}/slapd ${sbindir} ${localstatedir}/run ${localstatedir}/volatile/run \
${sysconfdir}/openldap/slapd.* ${sysconfdir}/openldap/schema \
${sysconfdir}/openldap/DB_CONFIG.example ${systemd_unitdir}/system/*"
-FILES_${PN}-slurpd = "${libexecdir}/slurpd ${localstatedir}/openldap-slurp ${localstatedir}/run ${localstatedir}/volatile/run"
-FILES_${PN}-bin = "${bindir}"
-FILES_${PN}-dev = "${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libdir}/*.a ${libexecdir}/openldap/*.a ${libexecdir}/openldap/*.la ${libexecdir}/openldap/*.so"
-FILES_${PN}-dbg += "${libexecdir}/openldap/.debug"
+FILES:${PN}-slurpd = "${libexecdir}/slurpd ${localstatedir}/openldap-slurp"
+FILES:${PN}-bin = "${bindir}"
+FILES:${PN}-dev = "${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libexecdir}/openldap/*.a ${libexecdir}/openldap/*.la ${libexecdir}/openldap/*.so ${libdir}/pkgconfig/*.pc"
+FILES:${PN}-dbg += "${libexecdir}/openldap/.debug"
-do_install_append() {
+do_install:append() {
install -d ${D}${sysconfdir}/init.d
- cat ${WORKDIR}/initscript > ${D}${sysconfdir}/init.d/openldap
+ cat ${UNPACKDIR}/initscript > ${D}${sysconfdir}/init.d/openldap
chmod 755 ${D}${sysconfdir}/init.d/openldap
# This is duplicated in /etc/openldap and is for slapd
rm -f ${D}${localstatedir}/openldap-data/DB_CONFIG.example
@@ -189,7 +168,7 @@ do_install_append() {
# Installing slapd under ${sbin} is more FHS and LSB compliance
mv ${D}${libexecdir}/slapd ${D}/${sbindir}/slapd
rmdir --ignore-fail-on-non-empty ${D}${libexecdir}
- SLAPTOOLS="slapadd slapcat slapdn slapindex slappasswd slaptest slapauth slapacl slapschema"
+ SLAPTOOLS="slapadd slapcat slapdn slapindex slappasswd slaptest slapauth slapacl slapschema slapmodify"
cd ${D}/${sbindir}/
rm -f ${SLAPTOOLS}
for i in ${SLAPTOOLS}; do ln -sf slapd $i; done
@@ -198,7 +177,7 @@ do_install_append() {
rmdir --ignore-fail-on-non-empty "${D}${localstatedir}"
install -d ${D}${systemd_unitdir}/system/
- install -m 0644 ${WORKDIR}/slapd.service ${D}${systemd_unitdir}/system/
+ install -m 0644 ${UNPACKDIR}/slapd.service ${D}${systemd_unitdir}/system/
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/*.service
# Uses mdm as the database
@@ -210,45 +189,41 @@ do_install_append() {
-i ${D}${sysconfdir}/openldap/slapd.conf
mkdir -p ${D}${localstatedir}/${BPN}/data
-
-
}
INITSCRIPT_PACKAGES = "${PN}-slapd"
-INITSCRIPT_NAME_${PN}-slapd = "openldap"
-INITSCRIPT_PARAMS_${PN}-slapd = "defaults"
-SYSTEMD_SERVICE_${PN}-slapd = "hostapd.service"
-SYSTEMD_AUTO_ENABLE_${PN}-slapd ?= "disable"
-
+INITSCRIPT_NAME:${PN}-slapd = "openldap"
+INITSCRIPT_PARAMS:${PN}-slapd = "defaults"
+SYSTEMD_PACKAGES = "${PN}-slapd"
+SYSTEMD_SERVICE:${PN}-slapd = "slapd.service"
+SYSTEMD_AUTO_ENABLE:${PN}-slapd ?= "disable"
PACKAGES_DYNAMIC += "^${PN}-backends.* ^${PN}-backend-.*"
# The modules require their .so to be dynamicaly loaded
-INSANE_SKIP_${PN}-backend-dnssrv += "dev-so"
-INSANE_SKIP_${PN}-backend-ldap += "dev-so"
-INSANE_SKIP_${PN}-backend-meta += "dev-so"
-INSANE_SKIP_${PN}-backend-mdb += "dev-so"
-INSANE_SKIP_${PN}-backend-monitor += "dev-so"
-INSANE_SKIP_${PN}-backend-null += "dev-so"
-INSANE_SKIP_${PN}-backend-passwd += "dev-so"
-INSANE_SKIP_${PN}-backend-shell += "dev-so"
-
-
-python populate_packages_prepend () {
+INSANE_SKIP:${PN}-backend-asyncmeta += "dev-so"
+INSANE_SKIP:${PN}-backend-dnssrv += "dev-so"
+INSANE_SKIP:${PN}-backend-ldap += "dev-so"
+INSANE_SKIP:${PN}-backend-meta += "dev-so"
+INSANE_SKIP:${PN}-backend-mdb += "dev-so"
+INSANE_SKIP:${PN}-backend-null += "dev-so"
+INSANE_SKIP:${PN}-backend-passwd += "dev-so"
+
+python populate_packages:prepend () {
backend_dir = d.expand('${libexecdir}/openldap')
- do_split_packages(d, backend_dir, 'back_([a-z]*)\.so$', 'openldap-backend-%s', 'OpenLDAP %s backend', prepend=True, extra_depends='', allow_links=True)
- do_split_packages(d, backend_dir, 'back_([a-z]*)\-.*\.so\..*$', 'openldap-backend-%s', 'OpenLDAP %s backend', extra_depends='', allow_links=True)
+ do_split_packages(d, backend_dir, r'back_([a-z]*)\.so$', 'openldap-backend-%s', 'OpenLDAP %s backend', prepend=True, extra_depends='', allow_links=True)
+ do_split_packages(d, backend_dir, r'back_([a-z]*)\.so\..*$', 'openldap-backend-%s', 'OpenLDAP %s backend', extra_depends='', allow_links=True)
metapkg = "${PN}-backends"
- d.setVar('ALLOW_EMPTY_' + metapkg, "1")
- d.setVar('FILES_' + metapkg, "")
+ d.setVar('ALLOW_EMPTY:' + metapkg, "1")
+ d.setVar('FILES:' + metapkg, "")
metapkg_rdepends = []
packages = d.getVar('PACKAGES').split()
for pkg in packages[1:]:
if pkg.count("openldap-backend-") and not pkg in metapkg_rdepends and not pkg.count("-dev") and not pkg.count("-dbg") and not pkg.count("static") and not pkg.count("locale"):
metapkg_rdepends.append(pkg)
- d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends))
- d.setVar('DESCRIPTION_' + metapkg, 'OpenLDAP backends meta package')
+ d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
+ d.setVar('DESCRIPTION:' + metapkg, 'OpenLDAP backends meta package')
packages.append(metapkg)
d.setVar('PACKAGES', ' '.join(packages))
}