mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-13 04:28:18 +00:00
Added "make -j{N}" support to "make test"
This commit is contained in:
parent
ceecf5b153
commit
7d98645fe8
20
Makefile
20
Makefile
|
@ -218,15 +218,15 @@ yosys-abc: abc/abc-$(ABCREV)
|
||||||
$(P) cp abc/abc-$(ABCREV) yosys-abc
|
$(P) cp abc/abc-$(ABCREV) yosys-abc
|
||||||
|
|
||||||
test: $(TARGETS) $(EXTRA_TARGETS)
|
test: $(TARGETS) $(EXTRA_TARGETS)
|
||||||
cd tests/simple && bash run-test.sh
|
+cd tests/simple && bash run-test.sh
|
||||||
cd tests/hana && bash run-test.sh
|
+cd tests/hana && bash run-test.sh
|
||||||
cd tests/asicworld && bash run-test.sh
|
+cd tests/asicworld && bash run-test.sh
|
||||||
cd tests/realmath && bash run-test.sh
|
+cd tests/realmath && bash run-test.sh
|
||||||
cd tests/share && bash run-test.sh
|
+cd tests/share && bash run-test.sh
|
||||||
cd tests/techmap && bash run-test.sh
|
+cd tests/techmap && bash run-test.sh
|
||||||
cd tests/memories && bash run-test.sh
|
+cd tests/memories && bash run-test.sh
|
||||||
cd tests/various && bash run-test.sh
|
+cd tests/various && bash run-test.sh
|
||||||
cd tests/sat && bash run-test.sh
|
+cd tests/sat && bash run-test.sh
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo " Passed \"make test\"."
|
@echo " Passed \"make test\"."
|
||||||
@echo ""
|
@echo ""
|
||||||
|
@ -240,7 +240,7 @@ vgtest: $(TARGETS) $(EXTRA_TARGETS)
|
||||||
@echo ""
|
@echo ""
|
||||||
|
|
||||||
vloghtb: $(TARGETS) $(EXTRA_TARGETS)
|
vloghtb: $(TARGETS) $(EXTRA_TARGETS)
|
||||||
cd tests/vloghtb && bash run-test.sh
|
+cd tests/vloghtb && bash run-test.sh
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo " Passed \"make vloghtb\"."
|
@echo " Passed \"make vloghtb\"."
|
||||||
@echo ""
|
@echo ""
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
exec bash ../tools/autotest.sh -G *.v
|
exec ${MAKE:-make} -f ../tools/autotest.mk *.v
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
exec bash ../tools/autotest.sh -G -l hana_vlib.v test_*.v
|
exec ${MAKE:-make} -f ../tools/autotest.mk EXTRA_FLAGS="-l hana_vlib.v" test_*.v
|
||||||
|
|
|
@ -6,4 +6,4 @@ if ! which iverilog > /dev/null ; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exec bash ../tools/autotest.sh -G *.v
|
exec ${MAKE:-make} -f ../tools/autotest.mk *.v
|
||||||
|
|
8
tests/tools/autotest.mk
Normal file
8
tests/tools/autotest.mk
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
EXTRA_FLAGS=
|
||||||
|
|
||||||
|
$(MAKECMDGOALS):
|
||||||
|
@$(basename $(MAKEFILE_LIST)).sh -G -j $(EXTRA_FLAGS) $@
|
||||||
|
|
||||||
|
.PHONY: $(MAKECMDGOALS)
|
||||||
|
|
|
@ -6,6 +6,7 @@ use_xsim=false
|
||||||
use_modelsim=false
|
use_modelsim=false
|
||||||
verbose=false
|
verbose=false
|
||||||
keeprunning=false
|
keeprunning=false
|
||||||
|
makejmode=false
|
||||||
frontend="verilog"
|
frontend="verilog"
|
||||||
backend_opts="-noattr -noexpr"
|
backend_opts="-noattr -noexpr"
|
||||||
scriptfiles=""
|
scriptfiles=""
|
||||||
|
@ -17,7 +18,7 @@ if [ ! -f $toolsdir/cmp_tbdata -o $toolsdir/cmp_tbdata.c -nt $toolsdir/cmp_tbdat
|
||||||
( set -ex; gcc -Wall -o $toolsdir/cmp_tbdata $toolsdir/cmp_tbdata.c; ) || exit 1
|
( set -ex; gcc -Wall -o $toolsdir/cmp_tbdata $toolsdir/cmp_tbdata.c; ) || exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
while getopts xmGl:wkvrf:s:p: opt; do
|
while getopts xmGl:wkjvrf:s:p: opt; do
|
||||||
case "$opt" in
|
case "$opt" in
|
||||||
x)
|
x)
|
||||||
use_xsim=true ;;
|
use_xsim=true ;;
|
||||||
|
@ -31,6 +32,8 @@ while getopts xmGl:wkvrf:s:p: opt; do
|
||||||
genvcd=true ;;
|
genvcd=true ;;
|
||||||
k)
|
k)
|
||||||
keeprunning=true ;;
|
keeprunning=true ;;
|
||||||
|
j)
|
||||||
|
makejmode=true ;;
|
||||||
v)
|
v)
|
||||||
verbose=true ;;
|
verbose=true ;;
|
||||||
r)
|
r)
|
||||||
|
@ -43,7 +46,7 @@ while getopts xmGl:wkvrf:s:p: opt; do
|
||||||
p)
|
p)
|
||||||
scriptopt="$OPTARG" ;;
|
scriptopt="$OPTARG" ;;
|
||||||
*)
|
*)
|
||||||
echo "Usage: $0 [-x|-m] [-w] [-k] [-v] [-r] [-l libs] [-f frontend] [-s script] [-p cmdstring] verilog-files\n" >&2
|
echo "Usage: $0 [-x|-m] [-w] [-k] [-j] [-v] [-r] [-l libs] [-f frontend] [-s script] [-p cmdstring] verilog-files\n" >&2
|
||||||
exit 1
|
exit 1
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
@ -83,7 +86,13 @@ do
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
[[ "$bn" == *_tb ]] && continue
|
[[ "$bn" == *_tb ]] && continue
|
||||||
echo -n "Test: $bn "
|
|
||||||
|
if $makejmode; then
|
||||||
|
status_prefix="Test: $bn "
|
||||||
|
else
|
||||||
|
status_prefix=""
|
||||||
|
echo -n "Test: $bn "
|
||||||
|
fi
|
||||||
|
|
||||||
rm -f ${bn}.{err,log,sikp}
|
rm -f ${bn}.{err,log,sikp}
|
||||||
mkdir -p ${bn}.out
|
mkdir -p ${bn}.out
|
||||||
|
@ -144,12 +153,12 @@ do
|
||||||
|
|
||||||
if [ -f ${bn}.log ]; then
|
if [ -f ${bn}.log ]; then
|
||||||
mv ${bn}.err ${bn}.log
|
mv ${bn}.err ${bn}.log
|
||||||
echo "-> ok"
|
echo "${status_prefix}-> ok"
|
||||||
elif [ -f ${bn}.skip ]; then
|
elif [ -f ${bn}.skip ]; then
|
||||||
mv ${bn}.err ${bn}.skip
|
mv ${bn}.err ${bn}.skip
|
||||||
echo "-> skip"
|
echo "${status_prefix}-> skip"
|
||||||
else
|
else
|
||||||
echo "-> ERROR!"
|
echo "${status_prefix}-> ERROR!"
|
||||||
if $warn_iverilog_git; then
|
if $warn_iverilog_git; then
|
||||||
echo "Note: Make sure that 'iverilog' is an up-to-date git checkout of icarus verilog."
|
echo "Note: Make sure that 'iverilog' is an up-to-date git checkout of icarus verilog."
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -9,7 +9,7 @@ tar --strip=1 -xjf vloghammer_tb.tar.bz2
|
||||||
make clean
|
make clean
|
||||||
rm -rf log_test_*
|
rm -rf log_test_*
|
||||||
|
|
||||||
make -j4 EXIT_ON_ERROR=1 YOSYS_BIN=$PWD/../../yosys YOSYS_SCRIPT="proc;;" check_yosys
|
${MAKE:-make} EXIT_ON_ERROR=1 YOSYS_BIN=$PWD/../../yosys YOSYS_SCRIPT="proc;;" check_yosys
|
||||||
make -j4 -f test_makefile MODE=share
|
${MAKE:-make} -f test_makefile MODE=share
|
||||||
make -j4 -f test_makefile MODE=mapopt
|
${MAKE:-make} -f test_makefile MODE=mapopt
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue