APP = callback_suite_aggrs
OBJS = globals.o cases.o main.o
SRCTOP = ../..
BLDTOP = ${SRCTOP}
CFLAGS += -I${SRCTOP}/dyncall -I${SRCTOP}/dyncallback
LDFLAGS += -L${BLDTOP}/dyncall -L${BLDTOP}/dyncallback
LDLIBS += -ldyncallback_s -ldyncall_s
all: ${APP}
.PHONY: all clean install
${APP}: ${OBJS}
${CC} ${OBJS} ${LDFLAGS} ${LDLIBS} -o ${APP}
config:
${LUA} mk-cases.lua <design.txt >cases.h
config-random:
# need two versions for platforms allowing empty aggregates (non-standard) or not
# nonemptyaggrs.txt version differs only if config.lua's minaggrfields=0
cp config.lua config.lua.cases
sed -e '/minaggrfields[[:space:]]*=[[:space:]]*0/s/=.*/=1/;t' -e d config.lua.cases >> config.lua
${LUA} rand-sig.lua >nonemptyaggrs.txt
mv config.lua.cases config.lua
${LUA} rand-sig.lua >cases.txt
${LUA} mk-cases.lua <nonemptyaggrs.txt >nonemptyaggrs.h
${LUA} mk-cases.lua <cases.txt >cases.h
cases.o: cases.h
clean:
rm -f ${APP} ${OBJS}