dnl collection. Crucially, the output must not contain any other text.
AT_SETUP([DX_BASEDIR during argument collection])
-AT_XFAIL_IF([:])
-
AT_DATA([test.in],
[[@TEST@
]])
TEST_CONFIGURE_AC(
-[[AC@&t@_SUBST([TEST], 'm4@&t@_dquote(DX_BASEDIR)')
+[[AC_SUBST([TEST], 'm4@&t@_dquote(DX_BASEDIR)')
AC_CONFIG_FILES([test])
]])
TEST_AUTORECONF
AT_CHECK([cat test], [0], [expout])
AT_CLEANUP
+
+dnl Verify that DX_BASEDIR is correctly AC_SUBSTed
+AT_SETUP([DX_BASEDIR output substitution])
+
+AT_DATA([test.in],
+[[@DX_BASEDIR@
+]])
+
+TEST_CONFIGURE_AC(
+[[DX_INIT
+AC_CONFIG_FILES([test])
+]])
+TEST_AUTORECONF
+TEST_CONFIGURE
+
+printf '%s\n' "$srcdir" | sed -e 's:/\./:/:g' -e 's:/\.$::g' \
+ -e 's:\(.\)//*:\1/:g' >expout
+AT_CHECK([cat test], [0], [expout])
+
+AT_CLEANUP
+
+dnl Verify that DX_BASEDIR is set correctly implicitly
+AT_SETUP([DX_BASEDIR implicit definition])
+
+AT_DATA([test.in],
+[[@DX_BASEDIR@
+]])
+
+TEST_CONFIGURE_AC(
+[[DX_EXPORTED_SH
+AC_CONFIG_FILES([test])
+]])
+TEST_AUTORECONF
+TEST_CONFIGURE
+
+AT_CLEANUP