>From ce3012d4177e688f0dacfff20e3abceb51626911 Mon Sep 17 00:00:00 2001 Message-Id: From: Stefano Lattarini Date: Thu, 9 Aug 2012 22:18:28 +0200 Subject: [PATCH 1/2] [ng] tags: enhance testsuite coverage for etags/ctags * t/tagsub.sh: Here. Signed-off-by: Stefano Lattarini --- t/tagsub.sh | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 13 deletions(-) diff --git a/t/tagsub.sh b/t/tagsub.sh index 9103805..c8a6e90 100755 --- a/t/tagsub.sh +++ b/t/tagsub.sh @@ -21,28 +21,73 @@ required=etags . ./defs || exit 1 cat >> configure.ac << 'END' -AC_CONFIG_FILES([sub/Makefile]) +AC_SUBST([CC], [false]) +AM_CONDITIONAL([CONF_FALSE], [false]) +AC_CONFIG_FILES([sub1/Makefile]) +AC_CONFIG_FILES([sub2/Makefile]) +AC_CONFIG_FILES([sub2/subsub/Makefile]) +AC_CONFIG_FILES([sub3/Makefile]) AC_OUTPUT END -echo 'SUBDIRS = sub' > Makefile.am -mkdir sub -echo 'noinst_HEADERS = iguana.h' > sub/Makefile.am -: > sub/iguana.h +mkdir sub1 sub2 sub3 sub2/subsub + +cat > Makefile.am << 'END' +SUBDIRS = sub1 sub2 sub3 +test-tags: tags + cat sub1/TAGS + cat sub2/TAGS + cat sub2/subsub/TAGS + test ! -f sub3/TAGS + grep 'sub1/TAGS' TAGS + grep 'sub2/TAGS' TAGS + grep 'sub3/TAGS' TAGS && exit 1; : + grep 'iguana\.c' sub1/TAGS + grep 'subsub/TAGS' sub2/TAGS + grep 'subsub/foo\.h' sub2/TAGS + grep 'bar\.baz' sub2/subsub/TAGS + grep 'foo\.off' sub2/subsub/TAGS + grep 'foo\.h' sub2/subsub/TAGS && exit 1; : +check-local: test-tags +END + +cat > sub1/Makefile.am << 'END' +if COND_FALSE +bin_PROGRAMS = iguana +endif +END +echo 'int main () { return choke_me (); }' > sub1/iguana.c + +cat > sub2/Makefile.am << 'END' +SUBDIRS = subsub . +noinst_HEADERS = subsub/foo.h +subsub/foo.h: + echo dummy >$@ +CLEANFILES = $(noinst_HEADERS) +END + +cat > sub2/subsub/Makefile.am << 'END' +EXTRA_DIST = bar.baz +nodist_noinst_DATA = foo.off +TAGS_FILES = $(EXTRA_DIST) $(nodist_noinst_DATA) +MOSTLYCLEANFILES = $(nodist_noinst_DATA) +foo.off: + echo $@ >$@ +END +: > sub2/subsub/bar.baz + +# No file to tag here, deliberately. +: > sub3/Makefile.am $ACLOCAL $AUTOCONF -$AUTOMAKE +$AUTOMAKE -i ./configure -$MAKE tags -test -f sub/TAGS -test -f TAGS -$FGREP sub/TAGS TAGS -$FGREP iguana.h sub/TAGS +$MAKE test-tags +$MAKE distcheck $MAKE distclean -test ! -e sub/TAGS -test ! -e TAGS +find . -name TAGS | grep . && exit 1 : -- 1.7.12.rc0