/*
* testlib library test harness operator
*
* unit :TESTLIB: library [ testhdr*.h ] [ -ltestlib* ] test*.c
*
* *.[ch] assumed to be in ./unit
*/
.TEST.DEBUG.SYMBOLS : .MAKE .VIRTUAL .FORCE .REPEAT
set --debug-symbols
CCFLAGS += $(CC.DEBUG)
CC.LIB.TYPE = -g
":TESTLIB:" : .MAKE .OPERATOR
eval
.SOURCE : $$(<)
.SOURCE.h : ../../lib/libast/$$(<) ../../lib/libast
$(<) :TEST: testlib $(>:O>1:C,.*\.[ch]$,$(<)/&,)
set +x; $$(*:O=1) $$(TESTLIBFLAGS) $(>:O=1) $(<) $$(*:O>1) $$(CC) $$(CCFLAGS) $$(LDFLAGS) $$(TESTLIBCCFLAGS)
test.$$(>:N=*.h:O=1:B:/\(..\).*/\1/:-$(<:B:/\(..\).*/\1/)) : .TEST.DEBUG.SYMBOLS testlib $$(>:V:O>1:N!=*.c) $$$(*.ARGS:D=$(<):B:S=.c) .CLEARARGS
set +x; $$(*:O=1) $$(TESTLIBFLAGS) --verbose $(>:O=1) $(<) $$(*:O>1) $$(CC) $$(CCFLAGS) $$(LDFLAGS) $$(TESTLIBCCFLAGS)
end