# Last edited on 2008-06-11 01:15:47 by stolfi PROGDIR := ../.. PROG := dbd_tabulate # Test arguments: # {WSIZE}:{EV_OPTION}:{LAB_SET}:{LAB_EQV} # where {EV_OPTION} is "all" for all events, "sel" for # events listed in file "sel-{WSIZE}-{LAB_EQV}.evs" TESTS := \ 1:all:DEFHIJNXYPQRS:DEFHIJNXYPQRS \ 2:sel:DEFHIJNXYPQRS:KKKHIJNXYPQRS \ 3:sel:DEFHIJNXYPQRS:DEFHIJNXYZZZZ \ 3:all:DEFHIJNXYPQRS:XXXXXXXXXXXXX \ 6:sel:DEFHIJNXYPQRS:DZZZZZNZZZZZZ ALL_TESTS := \ 1:all:DEFHIJNXYPQRS:DEFHIJNXYPQRS \ 2:sel:DEFHIJNXYPQRS:KKKHIJNXYPQRS \ 3:sel:DEFHIJNXYPQRS:DEFHIJNXYZZZZ \ 3:all:DEFHIJNXYPQRS:XXXXXXXXXXXXX \ 6:sel:DEFHIJNXYPQRS:DZZZZZNZZZZZZ all: run run: for t in ${TESTS} ; do \ ${MAKE} TEST=$$t run-single ; \ done ######################################################################## # Section for recursive make # Client must define ${TEST} TEST := TEST.IS.UNDEFINED ifneq "/${TEST}" "/TEST.IS.UNDEFINED" TEST_FIELDS := ${subst :, ,${TEST}} WSIZE := ${word 1,${TEST_FIELDS}} EV_OPTION := ${word 2,${TEST_FIELDS}} LAB_SET := ${word 3,${TEST_FIELDS}} LAB_EQV := ${word 4,${TEST_FIELDS}} BANK_FILE := in-test.bank EVENT_LIST := EVENT_LIST.IS.UNDEFINED ifeq "/${EV_OPTION}" "/all" EVENT_LIST := -all endif ifeq "/${EV_OPTION}" "/sel" EVENT_LIST := sel/sel-${WSIZE}-${LAB_EQV}.evs endif OUT_DIR := out OUT_FILE := out/test-${EV_OPTION}-${WSIZE}-${LAB_EQV}.prb run-single: ${PROGDIR}/${PROG} ${BAS_FILE} ${LAB_FILE} rm -f ${OUT_FILE} ${PROGDIR}/${PROG} \ ${WSIZE} \ "${LAB_SET}" \ "${LAB_EQV}" \ ${BANK_FILE} \ ${EVENT_LIST} \ > ${OUT_FILE} head -50 ${OUT_FILE}; echo "..." ${PROGDIR}/${PROG}: ${PROGDIR} ( cd ${PROGDIR} && make ${PROG} ) endif # end ${TEST} ######################################################################