2015-03-04 21:41:31 +11:00
# This mimics the top-level Makefile. We do it explicitly here so that this
# Makefile can operate with or without the kbuild infrastructure.
CC := $( CROSS_COMPILE) gcc
2015-03-11 15:05:59 +11:00
d e f i n e R U N _ T E S T S
2016-11-29 19:55:47 +08:00
@for TEST in $( TEST_GEN_PROGS) $( TEST_PROGS) ; do \
2015-03-11 15:05:59 +11:00
( ./$$ TEST && echo " selftests: $$ TEST [PASS] " ) || echo " selftests: $$ TEST [FAIL] " ; \
done ;
e n d e f
run_tests : all
$( RUN_TESTS)
2015-03-11 15:06:00 +11:00
d e f i n e I N S T A L L _ R U L E
2015-09-09 21:06:28 +08:00
@if [ " X $( TEST_PROGS) $( TEST_PROGS_EXTENDED) $( TEST_FILES) " != "X" ] ; then \
mkdir -p ${ INSTALL_PATH } ; \
2016-11-29 19:55:48 +08:00
echo " rsync -a $( TEST_PROGS) $( TEST_PROGS_EXTENDED) $( TEST_FILES) $( INSTALL_PATH) / " ; \
rsync -a $( TEST_PROGS) $( TEST_PROGS_EXTENDED) $( TEST_FILES) $( INSTALL_PATH) /; \
2016-11-29 19:55:47 +08:00
fi
@if [ " X $( TEST_GEN_PROGS) $( TEST_GEN_PROGS_EXTENDED) $( TEST_GEN_FILES) " != "X" ] ; then \
mkdir -p ${ INSTALL_PATH } ; \
echo " rsync -a $( TEST_GEN_PROGS) $( TEST_GEN_PROGS_EXTENDED) $( TEST_GEN_FILES) $( INSTALL_PATH) / " ; \
rsync -a $( TEST_GEN_PROGS) $( TEST_GEN_PROGS_EXTENDED) $( TEST_GEN_FILES) $( INSTALL_PATH) /; \
2015-08-14 21:43:35 +08:00
fi
2015-03-11 15:06:00 +11:00
e n d e f
install : all
i f d e f I N S T A L L _ P A T H
$( INSTALL_RULE)
e l s e
$( error Error: set INSTALL_PATH to use install)
e n d i f
d e f i n e E M I T _ T E S T S
2016-11-29 19:55:47 +08:00
@for TEST in $( TEST_GEN_PROGS) $( TEST_PROGS) ; do \
2015-03-11 15:06:00 +11:00
echo " (./ $$ TEST && echo \"selftests: $$ TEST [PASS]\") || echo \"selftests: $$ TEST [FAIL]\" " ; \
done ;
e n d e f
emit_tests :
$( EMIT_TESTS)
2016-11-29 19:55:47 +08:00
all : $( TEST_GEN_PROGS ) $( TEST_GEN_PROGS_EXTENDED ) $( TEST_GEN_FILES )
clean :
2016-11-29 19:55:51 +08:00
$( RM) -r $( TEST_GEN_PROGS) $( TEST_GEN_PROGS_EXTENDED) $( TEST_GEN_FILES) $( EXTRA_CLEAN)
2016-11-29 19:55:47 +08:00
2016-11-29 19:55:49 +08:00
% : %.c
$( CC) $( CFLAGS) $( LDFLAGS) $( LDLIBS) -o $@ $^
2015-03-11 15:06:00 +11:00
.PHONY : run_tests all clean install emit_tests