This makes it awkward to package apr-util using a packaging system. This overly close coupling has already been fixed in 1.x, and I'd like 0.9.x to get the benefit too.
Changes to both apr and apr-util are involved - though these changes are entirely backports, they occurred on trunk as multiple revisions - I've written new log messages to describe the overall result of the group of changes I'm suggesting be backported:
APR: [[[ Backport r65212, r65249, r65250, r65251 from trunk. Install mkdir.sh, make_exports.awk, make_var_export.awk to the APR installbuilddir, and avoid placing paths to the source and build directories into the installed apr_rules.mk. * Makefile.in (CLEAN_TARGETS): Add "build/apr_rules.out". (build/apr_rules.out): New rule to create by changing build-dir paths to installed paths. (install): Depend on build/apr_rules.out, and install it as apr_rules.mk. Also install mkdir.sh, make_exports.awk and make_var_export.awk. (exports.c, export_vars.c): Use new make-variable defined in apr_rules.mk.* build/apr_rules.mk.in (MKEXPORT): Remove obsolete definition which is broken
anyway, since it refers to a nonexistant file. (APR_MKDIR, APR_MKEXPORT, APR_MKVAREXPORT): New definitions - the commands to run various installbuilddir tools. ]]] APR-util: [[[ Backport r59073, r59075, r59086, r59087 from trunk. Use mkdir.sh, make_exports.awk, make_var_export.awk from the APR installbuilddir, instead of requiring APR source to be available at APR-util build time. Requires APR 0.9.8, since earlier versions did not install all necessary files to the installbuilddir. * Makefile.in (install, exports.c, export_vars.h): Use new apr_rules.mk definitions APR_MKDIR, APR_MKEXPORT and APR_MKVAREXPORT. * build/apu-conf.m4 (APU_FIND_APR): Remove the `apr-config --srcdir` invocation and corresponding AC_SUBST. ]]]Applying these changes would, of course, mean that apr-util 0.9.8 would require apr 0.9.8 or later to build against.
IIUC, a strict reading of the APR compatibility rules means this is OK, under the "Before 1.0, anything goes", clause - but on the other hand, 0.9.x is sort of semi-stable now.
Is this compatibility restriction OK, and if so, is a note in the documentation OK, or should I also patch APU_FIND_APR to verify this?
Thanks, Max.
apu-0.9.x-backport-installbuilddir-completeness.patch
Description: Binary data
apr-0.9.x-backport-installbuilddir-completeness.patch
Description: Binary data
