view mk/testagcl-defs.sh @ 8:ec2b657edf13

Add explicit lint-comment-style fallthrough annotations. GCC now assumes that if you don't have these you're making a mistake, which is annoying. XXX: This changeset updates the AG output files only (by hand) and is XXX: abusive - rebuilding them will erase the change. However, I need XXX: to get things to build before I can try to get AG to issue the XXX: annotations itself, so this seems like a reasonable expedient.
author David A. Holland
date Mon, 30 May 2022 23:51:43 -0400
parents 13d2b8934445
children
line wrap: on
line source

#!/bin/sh
# testagcl-defs.sh - generate make rules for testagcl.mk
# usage: testagcl-defs.sh "syns" > rules.mk

if [ $# != 1 ]; then
    echo "$0: usage: $0 'syns'" 1>&2
    exit 1
fi

SYNS="$1"

for S in $SYNS; do
    echo $S | awk '
	{
	    syn=$1;
	    base=syn;
	    sub("\\.syn$", "", base);
	    if (syn ~ "/") {
		sub("^.*/", "", base);
		srcdir = syn;
		sub("/[^/]*$", "", srcdir);
		srcdir = "$(TOP)/" srcdir;
	    }
	    else {
		srcdir = "$(SRCDIR)"
	    }
	    diff = base ".diff";

	    printf "run-tests: %s\n", diff;
	    printf "%s: $(SRCDIR)/good/%s.*\n", diff, base;
	    printf "%s: %s/%s.syn\n", diff, srcdir, base;
	    printf "%s: $(RUNTEST) $(TESTAGCL)\n", diff;
	    printf "\t@echo \"        [TEST]    %s.syn\"\n", base;
	    printf "\t@$(RUNTEST) \"$(CROSSRUN)\" \"$(TESTAGCL)\"";
	    printf " \"%s\" \"$(SRCDIR)/good\" \"%s.syn\"\n", srcdir, base;
	}
    '
done