X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=test%2Fmk-test.awk;h=ac4203aaac56a3d4b10d7f2b61123cce167c1c9c;hp=a89c150ef7298ae44050d7082852e5a360222117;hb=9b4c4abadc0a29999c5ddad5aa8d769fee28d687;hpb=027ae42953e3186daed8f3882da73de48291b606 diff --git a/test/mk-test.awk b/test/mk-test.awk index a89c150e..ac4203aa 100644 --- a/test/mk-test.awk +++ b/test/mk-test.awk @@ -1,6 +1,7 @@ -# $Id: mk-test.awk,v 1.4 2006/10/21 22:56:50 tom Exp $ +# $Id: mk-test.awk,v 1.23 2020/02/02 23:34:34 tom Exp $ ############################################################################## -# Copyright (c) 2006 Free Software Foundation, Inc. # +# Copyright 2019,2020 Thomas E. Dickey # +# Copyright 2006-2017,2018 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # @@ -34,7 +35,13 @@ BEGIN { first = 1; count = 0; } -!/^#/ { +/^#/ { + next; + } +/^$/ { + next; + } + { if (first) { print "# generated by mk-test.awk\n"; first = 0; @@ -61,37 +68,93 @@ END { } print ""; } + print "SCRIPTS = \\" + print " $(srcdir)/savescreen.sh \\" + print " $(srcdir)/tput-colorcube \\" + print " $(srcdir)/tput-initc \\" + print " $(srcdir)/tracemunch" + print "DATAFILES = \\" + print " $(srcdir)/*.x* \\" + print " $(srcdir)/*.dat" print "" print "all: $(TESTS)" print "" print "sources:" print "" + print "check:" + print " @ echo The test-programs are interactive" print "tags:" - print " ctags *.[ch]" + print " $(CTAGS) *.[ch]" print "" + print "# no libraries here" print "libs \\" - print "install \\" print "install.libs \\" - print "install.test:" - print "" - print "uninstall:" print "uninstall.libs:" - print "uninstall.test:" + print "" + if (INSTALL == "yes") { + print "# we might install the test-programs" + print "install \\" + print "install.test: $(BINDIR) $(DATADIR) $(TESTS)" + + print " @$(SHELL) -c 'for src in $(TESTS); do \\" + print " dst=`echo $$src | $(TRANSFORM)`; \\" + print " echo \"installing $$src -> $(BINDIR)/$$dst\"; \\" + print " $(INSTALL_PROG) $$src $(BINDIR)/$$dst; \\" + print " done'" + + print " @$(SHELL) -c 'for src in $(SCRIPTS); do \\" + print " dst=`echo $$src | sed -e 's,^.*/,,' | $(TRANSFORM)`; \\" + print " echo \"installing $$src -> $(BINDIR)/$$dst\"; \\" + print " $(INSTALL_SCRIPT) $$src $(BINDIR)/$$dst; \\" + print " done'" + + print " @$(SHELL) -c 'for src in $(DATAFILES); do \\" + print " dst=`echo $$src | sed -e 's,^.*/,,'`; \\" + print " echo \"installing $$src -> $(DATADIR)/$$dst\"; \\" + print " $(INSTALL_DATA) $$src $(DATADIR)/$$dst; \\" + print " done'" + print "" + print "uninstall \\" + print "uninstall.test:" + + print " @$(SHELL) -c 'for src in $(TESTS); do \\" + print " dst=`echo $$src | $(TRANSFORM)`; \\" + print " rm -f $(BINDIR)/$$dst; \\" + print " done'" + + print " @$(SHELL) -c 'for src in $(SCRIPTS); do \\" + print " dst=`echo $$src | sed -e 's,^.*/,,' | $(TRANSFORM)`; \\" + print " rm -f $(BINDIR)/$$dst; \\" + print " done'" + + print " @$(SHELL) -c 'for src in $(DATAFILES); do \\" + print " dst=`echo $$src | sed -e 's,^.*/,,'`; \\" + print " rm -f $(DATADIR)/$$dst; \\" + print " done'" + } else { + print "install \\" + print "install.test \\" + print "uninstall \\" + print "uninstall.test:" + } print "" print "mostlyclean ::" print " -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace" print "" print "clean :: mostlyclean" - print " -sh -c \"if test -n '$x' ; then $(MAKE) clean x=''; fi\"" - print " -rm -rf *$o screendump *.lis $(TESTS) .libs" + print " -$(SHELL) -c \"if test -n '$x' ; then $(MAKE) clean x=''; fi\"" + print " -rm -rf *$o screendump *.lis $(TESTS) .libs *.dSYM" print "" print "distclean :: clean" - print " -rm -f Makefile ncurses_cfg.h config.*" + print " -rm -f Makefile ncurses_cfg.h config.status config.log" print "" print "realclean :: distclean" print "" print "lint:" - print " sh -c 'for N in $(TESTS); do echo LINT:$$N; $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/$$N.c $(LINT_LIBS); done'" + print " $(SHELL) -c 'for N in $(TESTS); do echo LINT:$$N; $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/$$N.c $(LINT_LIBS); done'" + print "$(BINDIR) $(DATADIR) :" + print " mkdir -p $@" + if (ECHO_LINK != "") { ECHO_LINK="@ echo linking $@ ... ;"