Created attachment 11352 [details] rpm buildlog of an openSUSE 13.2 x86_64 build Building with --bundled-libraries=!ldb,!pyldb worked for 4.2 and earlier versions. I've tried a manual configure && make too. The full list of configure options while the failing manual build had been: --prefix=/usr --localstatedir=/var --sysconfdir=/etc/samba --with-configdir=/etc/samba --libdir=/usr/lib64/samba --with-lockdir=/var/lib/samba --with-logfilebase=/var/log/samba --mandir=/usr/share/man --with-modulesdir=/usr/lib64/samba --disable-rpath --disable-rpath-install --enable-cups --enable-debug --enable-fhs --with-acl-support --with-automount --with-dnsupdate --with-pam --with-pammodulesdir=/lib64/security --with-pam_smbpass --with-piddir=/run/samba --with-privatedir=/etc/samba --with-quotas --with-syslog --enable-avahi --with-systemd --with-utmp --with-winbind --with-shared-modules=vfs_cacheprime,vfs_readahead,idmap_ad,idmap_adex,idmap_hash,idmap_ldap,idmap_rid,idmap_tdb2 --with-system-mitkrb5 --without-ad-dc --bundled-libraries=!heimdal,!popt,!zlib,!ldb,!pyldb,!talloc,!pytalloc,!pytalloc-util,!tdb,!pytdb,!tevent,!pytevent
You need to install pyldb-util, see: commit fcf4a891945b22dc6eccdc71fd441f1a879f556a Author: Jelmer Vernooij <jelmer@samba.org> AuthorDate: Wed Jan 21 02:58:49 2015 +0100 Commit: Andreas Schneider <asn@cryptomilk.org> CommitDate: Tue Feb 17 15:41:11 2015 +0100 Force rebuild of ldb if pyldb-util is not available. This is necessary since pyldb-util uses ldb_private.h, so we want to build against the same source ldb. Change-Id: I802974b9eef7deb102fea15b67ec5f87e8e353bd Signed-off-by: Jelmer Vernooij <jelmer@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
Created attachment 11353 [details] config.log bzip2 compressed
Created attachment 11354 [details] config.h
pyldb-devel-1.1.21 is installed which provides: /usr/include/pyldb.h /usr/lib64/libpyldb-util.so /usr/lib64/pkgconfig/pyldb-util.pc It is present on the system where I called configure manually too.
Metze is right with his comment #1 Commit fcf4a891945b22dc6eccdc71fd441f1a879f556a causes this issue. The system used for a manual configure had fitting pyldb, ldb, and devel packages installed. The build service ensures this anyhow. And that's also visible from the build log attached with the initial comment.
Can you reproduce this if you also specify !pyldb-util?
*** Bug 11468 has been marked as a duplicate of this bug. ***
If I specify --bundled-libraries=!ldb,!pyldb,!pyld-util I get the following error: ERROR: Use of system library pyldb-util depends on missing system library/libraries ['ldb'] configure did not search for system ldb before this error occurred. krikkit:~ # rpm -ql pyldb /usr/lib64/libpyldb-util.so.1 /usr/lib64/libpyldb-util.so.1.1.21 /usr/lib64/python2.7/site-packages/ldb.so krikkit:~ # rpm -ql pyldb-devel /usr/include/pyldb.h /usr/lib64/libpyldb-util.so /usr/lib64/pkgconfig/pyldb-util.pc /usr/share/man/man3/PyLdbControlObject.3.gz /usr/share/man/man3/PyLdbDnObject.3.gz /usr/share/man/man3/PyLdbMessageElementObject.3.gz /usr/share/man/man3/PyLdbMessageObject.3.gz /usr/share/man/man3/PyLdbModuleObject.3.gz /usr/share/man/man3/PyLdbObject.3.gz /usr/share/man/man3/PyLdbResultObject.3.gz /usr/share/man/man3/PyLdbTreeObject.3.gz
Have you tried not spelling pyldb-util as "pyld-util" ? :P
Adding !pyldb-util as additional --bundled-libraries argument results in: [ 67s] Checking for python headers : using cache [ 67s] ERROR: Use of system library pyldb-util depends on missing system library/libraries ['ldb'] [ 67s] error: Bad exit status from /var/tmp/rpm-tmp.26nyUv (%build)
Comment #10 was the reply to comment #6.
Created attachment 11369 [details] config.log with added !pyldb-util as requested with comment #6
Hmm, I think you might also have to specify !talloc,!tdb,!tevent and possibly other dependencies of ldb. FWIW, in Debian we do build against the system ldb, pyldb and pyldb-util by specifying the following: --bundled-libraries=NONE,pytevent,iniparser,roken,wind,hx509,asn1,heimbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,com_err,compile_et,asn1_compile
!talloc,!tdb,!tevent and many more are excluded. For the full list see the initial comment plus the later added !pyldb-util Also trying --bundled-libraries=NONE results in the same: [ 68s] Checking for Python version >= 2.4.2 : ok 2.7.8 [ 68s] Checking for python headers : using cache [ 68s] ERROR: Use of system library pyldb-util depends on missing system library/libraries ['ldb']
I suspect this is a regression from Petr's changes (https://lists.samba.org/archive/samba-technical/2015-August/108972.html). We now check for system pyldb-util *before* checking for ldb itself. Since pyldb-util depends on ldb, this breaks.
See line 58 of lib/ldb/wscript in master
Created attachment 11371 [details] Possible patches for master
(In reply to Jelmer Vernooij from comment #16) Jelmer, the problem is really your commit fcf4a891945b22dc6eccdc71fd441f1a879f556a. The onlyif list for the pyldb-util check contains 'ldb', but the check for ldb is not yet done. If it still works with --bundled-libraries=NONE,... it's pure luck. Lars, Andreas, I think using --bundled-libraries=NONE,... and listing explicit what will be bundled would be a better way for your spec files.
Created attachment 11386 [details] Patch for v4-3-test
Pushed to autobuild-v4-3-test.
Pushed to v4-3-test