Explicitly substitute absolute path variables.
Apparently, Automakes prior to 1.10 do not automatically substitute the absolute path directory variables abs_srcdir abs_top_srcdir abs_builddir abs_top_builddir that Autoconf computes (since ca. 2003) into the Makefiles. This leads to a subtle error when OPM-Core is used in conjunction with dune-common's DUNE_CHECK_MODULES (or, more appropriately, our own OPM_CORE_CHECK_MODULES) macro that gets invoked through dunecontrol. The *_CHECK_MOUDLES macro contains an unconditional statement that uses 'abs_top_srcdir' to compute the absolute path to the current module's top source directory. When abs_top_srcdir is unset, the root becomes unset too, whence the subsequent existence and validity checks fail due to incorrect CPPFLAGS and/or LDFLAGS. It will also fail to locate the 'dune.module' dependency file. By explicitly substituting the above variables into the Makefiles, as was also done in revisions 5819 and 5845 of dune-common's Subversion repository, we're guarding against this particular failure mode. Tested on: CentOS 5.8 (Autoconf 2.59, Automake 1.9.6)
This commit is contained in:
parent
20b0c8f83b
commit
9f47cf0f54
10
configure.ac
10
configure.ac
@ -32,6 +32,16 @@ OPM_CORE_CHECKS
|
|||||||
|
|
||||||
OPM_DYNLINK_BOOST_TEST
|
OPM_DYNLINK_BOOST_TEST
|
||||||
|
|
||||||
|
dnl Substitute Autoconf's abs_*dir variables into the Makefiles for the
|
||||||
|
dnl benefit of external code that uses these variables to derive
|
||||||
|
dnl locations (e.g., Dune's DUNE_CHECK_MODULES macro). Automakes prior
|
||||||
|
dnl to version 1.10 do not automatically substitute these variables into
|
||||||
|
dnl output files.
|
||||||
|
AC_SUBST([abs_srcdir])
|
||||||
|
AC_SUBST([abs_builddir])
|
||||||
|
AC_SUBST([abs_top_srcdir])
|
||||||
|
AC_SUBST([abs_top_builddir])
|
||||||
|
|
||||||
AC_CONFIG_FILES([
|
AC_CONFIG_FILES([
|
||||||
Makefile
|
Makefile
|
||||||
tests/Makefile
|
tests/Makefile
|
||||||
|
Loading…
Reference in New Issue
Block a user