# HG changeset patch # User Eric Blake # Date 1251731550 21600 # Node ID c455cd9841a853c83d724bab5ca89a298766a6f4 # Parent 79f4b013feab76a082154cc288e969c962d28cf9 canonicalize: allow cross-testing from cygwin to mingw * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK. (Makefile.am): Pass it through TESTS_ENVIRONMENT. * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am): Likewise. * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but target does not support symlinks. * tests/test-canonicalize-lgpl.sh: Likewise. Signed-off-by: Eric Blake diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2009-08-31 Eric Blake + canonicalize: allow cross-testing from cygwin to mingw + * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK. + (Makefile.am): Pass it through TESTS_ENVIRONMENT. + * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am): + Likewise. + * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but + target does not support symlinks. + * tests/test-canonicalize-lgpl.sh: Likewise. + chown: avoid compilation warning on mingw * m4/chown.m4 (gl_FUNC_CHOWN): Recognize missing chown. * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Always return failure on diff --git a/modules/canonicalize-lgpl-tests b/modules/canonicalize-lgpl-tests --- a/modules/canonicalize-lgpl-tests +++ b/modules/canonicalize-lgpl-tests @@ -5,9 +5,12 @@ Depends-on: configure.ac: +AC_CHECK_FUNCS_ONCE([symlink]) +HAVE_SYMLINK=$ac_cv_func_symlink +AC_SUBST([HAVE_SYMLINK]) Makefile.am: TESTS += test-canonicalize-lgpl.sh -TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' +TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' HAVE_SYMLINK='$(HAVE_SYMLINK)' check_PROGRAMS += test-canonicalize-lgpl test_canonicalize_lgpl_LDADD = $(LDADD) diff --git a/modules/canonicalize-tests b/modules/canonicalize-tests --- a/modules/canonicalize-tests +++ b/modules/canonicalize-tests @@ -5,9 +5,12 @@ Depends-on: configure.ac: +AC_CHECK_FUNCS_ONCE([symlink]) +HAVE_SYMLINK=$ac_cv_func_symlink +AC_SUBST([HAVE_SYMLINK]) Makefile.am: TESTS += test-canonicalize.sh -TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' +TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' HAVE_SYMLINK='$(HAVE_SYMLINK)' check_PROGRAMS += test-canonicalize test_canonicalize_LDADD = $(LDADD) @LIBINTL@ diff --git a/tests/test-canonicalize-lgpl.sh b/tests/test-canonicalize-lgpl.sh --- a/tests/test-canonicalize-lgpl.sh +++ b/tests/test-canonicalize-lgpl.sh @@ -5,7 +5,8 @@ tmpfiles="$tmpfiles t-can-lgpl.tmp ise" mkdir t-can-lgpl.tmp -ln -s t-can-lgpl.tmp/ket ise \ +test "x$HAVE_SYMLINK" = xyes \ + && ln -s t-can-lgpl.tmp/ket ise \ || { echo "Skipping test: symbolic links not supported on this filesystem" rm -fr $tmpfiles exit 77 diff --git a/tests/test-canonicalize.sh b/tests/test-canonicalize.sh --- a/tests/test-canonicalize.sh +++ b/tests/test-canonicalize.sh @@ -5,7 +5,8 @@ tmpfiles="$tmpfiles t-can.tmp ise" mkdir t-can.tmp -ln -s t-can.tmp/ket ise \ +test "x$HAVE_SYMLINK" = xyes \ + && ln -s t-can.tmp/ket ise \ || { echo "Skipping test: symbolic links not supported on this filesystem" rm -fr $tmpfiles exit 77