>From 508b7e19745d88dbd1100b403fec440abfd151bb Mon Sep 17 00:00:00 2001 From: Thomas Martitz Date: Sat, 22 Apr 2017 00:51:44 +0200 Subject: [PATCH 3/3] Extend subobj-objname-clash.sh test with such that it also looks for clashes in libraries. --- t/subobj-objname-clash.sh | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/t/subobj-objname-clash.sh b/t/subobj-objname-clash.sh index e747037f0..e18a66d92 100644 --- a/t/subobj-objname-clash.sh +++ b/t/subobj-objname-clash.sh @@ -15,6 +15,7 @@ # along with this program. If not, see . # Make sure that object names don't clash when using subdir-objects. +# The check is done for programs and libraries separately. . test-init.sh @@ -22,31 +23,54 @@ mkdir -p src cat >> configure.ac << 'END' AC_PROG_CC +AC_PROG_RANLIB AC_OUTPUT END cat > Makefile.am << 'END' AUTOMAKE_OPTIONS = subdir-objects foreign noinst_PROGRAMS = foo -foo_SOURCES = src/foo.c +foo_SOURCES = src/foo.c src/main.c foo_CPPFLAGS = -DVAL=0 +noinst_LIBRARIES = libbar.a +libbar_a_SOURCES = src/foo.c +libbar_a_CPPFLAGS = -DVAL=0 +noinst_PROGRAMS += bar +bar_SOURCES = src/main.c +bar_LDADD = libbar.a include src/local.mk END cat > src/local.mk << 'END' noinst_PROGRAMS += src/foo src_foo_CPPFLAGS = -DVAL=1 -src_foo_SOURCES = src/foo.c +src_foo_SOURCES = src/foo.c src/main.c +noinst_PROGRAMS += src/bar +noinst_LIBRARIES += src/libbar.a +src_libbar_a_SOURCES = src/foo.c +src_libbar_a_CPPFLAGS = -DVAL=1 +src_bar_SOURCES = src/main.c +src_bar_LDADD = src/libbar.a END cat > src/foo.c << 'END' int -main () +foo () { return VAL; } END +cat > src/main.c << 'END' +int foo (void); + +int +main () +{ + return foo (); +} +END + $ACLOCAL $AUTOCONF $AUTOMAKE --add-missing @@ -55,4 +79,6 @@ $AUTOMAKE --add-missing $MAKE ./foo || fail_ "./foo should return 0" ./src/foo && fail_ "./src/foo should return 1" +./bar || fail_ "./bar should return 0" +./src/bar && fail_ "./src/bar should return 1" $MAKE clean -- 2.12.2