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
|
||||
|
||||
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([
|
||||
Makefile
|
||||
tests/Makefile
|
||||
|
Loading…
Reference in New Issue
Block a user