aprutil ./configure rpath/LDADD magic [was: [VOTE] Release APR-util 1.5.3]
On Sat, 16 Nov 2013 17:16:00 +0100 Rainer Jung rainer.j...@kippdata.de wrote: Summary === [...] - crypto configure for OpenSSL expected to fail at least on Solaris, because when linking against the libssl we need the additional flags -ldl -lsocket -lnsl. Currently there's no way to fix this apart from hacking configure. For Linux I'm not sure, but likely you'll need -ldl. That is a bug in openssl provided that the correct pkg-config hacks were added (these are well documented in httpd's mod_ssl configure). What does pkg-config report? My linux flavor; $ pkg-config --libs-only-L --libs-only-other --libs-only-l openssl -lssl -lcrypto It was supposed be the complete guide to linking to openssl. -ldl on linux was obviously missing, but actually unnecessary (the system run time link loader does this work for us when dependent libraries are correctly linked to the target library). If libssl.so.n.n.n and libcrypto.so.n.n.n need these, *those libs* should already contain those dependencies. If that isn't possible (e.g. static libcrypto.a and libssl.a), then the pkg-config output should reflect the correct bindings. E.g. again on my linux... $ldd /usr/lib64/libssl.so linux-vdso.so.1 = (0x7fff569fe000) libgssapi_krb5.so.2 = /lib64/libgssapi_krb5.so.2 (0x7fdf1b321000) libkrb5.so.3 = /lib64/libkrb5.so.3 (0x7fdf1b042000) libcom_err.so.2 = /lib64/libcom_err.so.2 (0x7fdf1ae3e000) libk5crypto.so.3 = /lib64/libk5crypto.so.3 (0x7fdf1ac09000) libcrypto.so.10 = /lib64/libcrypto.so.10 (0x7fdf1a829000) libdl.so.2 = /lib64/libdl.so.2 (0x7fdf1a625000) libz.so.1 = /lib64/libz.so.1 (0x7fdf1a40f000) libc.so.6 = /lib64/libc.so.6 (0x7fdf1a04d000) libkrb5support.so.0 = /lib64/libkrb5support.so.0 (0x7fdf19e3f000) libkeyutils.so.1 = /lib64/libkeyutils.so.1 (0x7fdf19c3b000) libresolv.so.2 = /lib64/libresolv.so.2 (0x7fdf19a2) libpthread.so.0 = /lib64/libpthread.so.0 (0x7fdf19804000) /lib64/ld-linux-x86-64.so.2 (0x7fdf1b81a000) libselinux.so.1 = /lib64/libselinux.so.1 (0x7fdf195e) libpcre.so.1 = /lib64/libpcre.so.1 (0x7fdf1937c000) So there is no need for -ldl to be defined by my app to link to -lssl. And were I to link libssl.a static, then pkg-config addresses these issues; $ pkg-config --static --libs-only-L --libs-only-other --libs-only-l openssl -lssl -lcrypto -ldl -lz -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto (I'm getting frustrated with libapr trying to compensate for all the broken build/installations out there, w.t.h. are those maintainers?) - LDADD flags are typically not respected during configure, only during the make. By design, these weren't intended to be external inputs, so not really surprised. Overridden during make at the user's peril :) It sounds like a possible enhancement, however. - configure fails for Berkeley DB in non-standard path, because it doesn't add an rpath to conftest and then tries to run the compiled conftest binary. Well, we roll our own detection, so I'm not shocked. AFAICT a default db-devel (4 or 5) on linux installs neither pkg-config hints nor any db-config style interrogation script. Is there some hinting for db4/5 that I'm missing? - no rpath for ldap, mysql and crypto dso extensions. So no way to run the result without LD_LIBRARY_PATH. Interesting: the m4 file does add an rpath only for oracle. Since there's no platform independent way to add rpath, we might want to remove it everywhere (and users would need to use the respective LDADD variables). This all seems to tie into the same point, each with it's own rules and usage pattern. e.g. $ mysql_config --libs -L/usr/lib64/mysql -lmysqlclient -lpthread -lz -lm -lssl -lcrypto -ldl (and lo, there's the -ldl you were worried about :) I don't think dropping rpath entirely is a good idea. For cases where we are adding rpath's - perhaps a link flag override? In fact, I'd expect the combination of libtool and configure to already hint that for us. - Windows Build system: - test/testutildll.dsp and test/testutillib.dsp are the only DSP files containing Release9x and Debug9x configuration info. IMHO that's obsolete and could be removed. Probably also in Makefile.win? Yup, those should die. I'll make it so right now.
Re: [VOTE] Release APR-util 1.5.3
On Wed, Nov 13, 2013 at 11:48 AM, Jeff Trawick traw...@gmail.com wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5http://apr.apache.org/dev/dist/CHANGES-APR-1.5 .3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Start screaming now if you're still testing or know of a regression that needs to be discussed. I'll wait a little longer before initiating mirroring. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/ -- Born in Roswell... married an alien... http://emptyhammock.com/
Re: [VOTE] Release APR-util 1.5.3
On 13.11.2013 17:48, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [+1] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. My test results: No regressions. Summary === - some libtool m4 files not deleted by buildconf (see below) - crypto configure for OpenSSL expected to fail at least on Solaris, because when linking against the libssl we need the additional flags -ldl -lsocket -lnsl. Currently there's no way to fix this apart from hacking configure. For Linux I'm not sure, but likely you'll need -ldl. - LDADD flags are typically not respected during configure, only during the make. - configure fails for Berkeley DB in non-standard path, because it doesn't add an rpath to conftest and then tries to run the compiled conftest binary. - no rpath for ldap, mysql and crypto dso extensions. So no way to run the result without LD_LIBRARY_PATH. Interesting: the m4 file does add an rpath only for oracle. Since there's no platform independent way to add rpath, we might want to remove it everywhere (and users would need to use the respective LDADD variables). - no rpath for dependency libs when building without dso support, e.g. when the ldap, crypto, mysql, oracle, sqlite etc. extensions are all in the big apr util library. - testall often fails in testcrypto when testing nss passphrase (see below). - Windows Build system: - test/testutildll.dsp and test/testutillib.dsp are the only DSP files containing Release9x and Debug9x configuration info. IMHO that's obsolete and could be removed. Probably also in Makefile.win? Details === - svn compared with gz, bz2 and zip only expected differences except for the following in the directory xml/expat/conftools which are not a blocker; IMHO we could remove those at the and of buildconf libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 - files signed, checksums correct - built and made check on the following platforms: - Solaris 8 and 10 Sparc (gcc 4.1.2 resp. 4.8.2) - SuSE Linux Enterprise 10 32 Bit and 10 and 11 64 Bit - RedHat Enterprise Linux 6 64 Bit - using all combinations of: - apr 1.5.0 - expat builtin / 2.1.0 - OpenSSL 1.0.1e (plus a few patches) - dso disable / enable - Berkeley DB 5.3.21 - sqlite 3.8.0.2 - mysql 6.0.2 (only Solaris) - oracle 11.2.0.2.0 (Solaris 10), resp. 10.2.0.5.0 (Solaris 8) - platform nss (Solaris 10 and RHEL 6) - make check for the successful build ran fine for 71 builds, but failed for 25 builds: - one failure in testdbm on SLES 11 without DSO, *not* reproducible (Failed 1 of 2) Though not reproducible exactly the same failure happened when testing 1.5.0, 1.5.1 and 1.5.2. Maybe due to increased load during the parallel builds and checks on the virtualized server. Could be a race condition. - 24 failures in testcrypto testing crypto for nss gives errors on Solaris 10 and on RHEL where I had built crypto with nss and OpenSSL (no nss build on the other platforms) and dso disabled. For details see my 1.5.1 vote mail. Regards, Rainer
Re: [VOTE] Release APR-util 1.5.3
On Sat, Nov 16, 2013 at 11:16 AM, Rainer Jung rainer.j...@kippdata.dewrote: On 13.11.2013 17:48, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [+1] Release apr-util 1.5.3 as GA Thanks Rainer and everyone else for your test reports and votes. The vote for APR-util 1.5.3 passes, and voting is now closed. I'll summarize the voting with the commit to the release directory.
[VOTE] Release APR-util 1.5.3
Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5http://apr.apache.org/dev/dist/CHANGES-APR-1.5 .3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/
Re: [VOTE] Release APR-util 1.5.3
On 11/13/2013 8:48 AM, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/ non-binding +1 testutillib had a unresolved sybols problem, fixed post-tag in r1541697, not a show stopper IMO since I'm not sure anyone ever tests on Windows, just build run with it. dll lib tests pass except for xlate (non-regression).
Re: [VOTE] Release APR-util 1.5.3
On Wed, Nov 13, 2013 at 3:45 PM, Gregg Smith g...@gknw.net wrote: On 11/13/2013 8:48 AM, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/ non-binding +1 testutillib had a unresolved sybols problem, fixed post-tag in r1541697, not a show stopper IMO since I'm not sure anyone ever tests on Windows, just build run with it. this isn't a regression, is it? (I see only trivial changes in apr-util-1.5.x/test since apr-util-1.5.2 (r1462849) dll lib tests pass except for xlate (non-regression). much appreciated! -- Born in Roswell... married an alien... http://emptyhammock.com/
Re: [VOTE] Release APR-util 1.5.3
On 13 Nov 2013, at 6:48 PM, Jeff Trawick traw...@gmail.com wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA +1 for release. Hashes and signatures good. Built as an RPM and all tests pass on CentOS6 and FC17. Built and all tests pass on MacOSX 10.8.5. Regards, Graham --
Re: [VOTE] Release APR-util 1.5.3
On 11/13/2013 1:03 PM, Jeff Trawick wrote: On Wed, Nov 13, 2013 at 3:45 PM, Gregg Smith g...@gknw.net mailto:g...@gknw.net wrote: On 11/13/2013 8:48 AM, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/ non-binding +1 testutillib had a unresolved sybols problem, fixed post-tag in r1541697, not a show stopper IMO since I'm not sure anyone ever tests on Windows, just build run with it. this isn't a regression, is it? (I see only trivial changes in apr-util-1.5.x/test since apr-util-1.5.2 (r1462849) It's been so long that I do not remember. I'd have to try 1.5.2 again to know for sure. I'll check it before the 72 hours is up. dll lib tests pass except for xlate (non-regression). much appreciated! -- Born in Roswell... married an alien... http://emptyhammock.com/
Re: [VOTE] Release APR-util 1.5.3
On 11/13/2013 2:04 PM, Gregg Smith wrote: On 11/13/2013 1:03 PM, Jeff Trawick wrote: On Wed, Nov 13, 2013 at 3:45 PM, Gregg Smith g...@gknw.net mailto:g...@gknw.net wrote: On 11/13/2013 8:48 AM, Jeff Trawick wrote: Tarballs/zipfiles are at http://apr.apache.org/dev/dist/ Shortcut to CHANGES files: http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-UTIL-1.5 http://apr.apache.org/dev/dist/CHANGES-APR-1.5.3 autoconf version: 2.69 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) libtool version: 2.4.2 (same as apr 1.4.8/1.5.0 and apr-util 1.5.2) +/-1 [ ] Release apr-util 1.5.3 as GA I'll hold the vote open for 72 hours unless something out of the ordinary occurs. Thanks in advance for testing! -- Born in Roswell... married an alien... http://emptyhammock.com/ non-binding +1 testutillib had a unresolved sybols problem, fixed post-tag in r1541697, not a show stopper IMO since I'm not sure anyone ever tests on Windows, just build run with it. this isn't a regression, is it? (I see only trivial changes in apr-util-1.5.x/test since apr-util-1.5.2 (r1462849) It's been so long that I do not remember. I'd have to try 1.5.2 again to know for sure. I'll check it before the 72 hours is up. No, this is not a regression, I noted it before and included a patch which was never committed (I had no karma at the time). http://mail-archives.apache.org/mod_mbox/apr-dev/201209.mbox/%3c504aaa8b.3090...@gknw.net%3E http://mail-archives.apache.org/mod_mbox/apr-dev/201303.mbox/%3c5157597e.8000...@gknw.net%3E dll lib tests pass except for xlate (non-regression). much appreciated! -- Born in Roswell... married an alien... http://emptyhammock.com/