]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/mk-test.awk
ncurses 6.1 - patch 20180303
[ncurses.git] / test / mk-test.awk
index a89c150ef7298ae44050d7082852e5a360222117..930804cab7854d6ad7f74d26bb20980916f38750 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: mk-test.awk,v 1.4 2006/10/21 22:56:50 tom Exp $
+# $Id: mk-test.awk,v 1.21 2018/01/15 15:59:25 tom Exp $
 ##############################################################################
-# Copyright (c) 2006 Free Software Foundation, Inc.                          #
+# Copyright (c) 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 +34,13 @@ BEGIN        {
                first = 1;
                count = 0;
        }
-!/^#/  {
+/^#/   {
+               next;
+       }
+/^$/   {
+               next;
+       }
+       {
                if (first) {
                        print "# generated by mk-test.awk\n";
                        first = 0;
@@ -61,37 +67,91 @@ 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   "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 $@ ... ;"