CMC test suite, cleanup
This commit is contained in:
parent
f94cc3a8a0
commit
c6f674d0e1
18
ChangeLog
18
ChangeLog
|
|
@ -1,11 +1,25 @@
|
|||
2011-05-29 Robert Larice
|
||||
* Removed tests/hisimhv/nmos/Makefile ,
|
||||
* Removed tests/hisimhv/pmos/Makefile ,
|
||||
* Removed tests/hisim/nmos/Makefile ,
|
||||
* Removed tests/hisim/pmos/Makefile ,
|
||||
* Added tests/bin/run_cmc_check ,
|
||||
* Modified tests/hisimhv/nmos/run ,
|
||||
* Modified tests/hisimhv/pmos/run ,
|
||||
* Modified tests/hisim/nmos/run ,
|
||||
* Modified tests/hisim/pmos/run :
|
||||
CMC test suite, cleanup
|
||||
use /bin/sh instead of /bin/csh
|
||||
replace the makefiles with a single script
|
||||
|
||||
2011-05-29 Holger Vogt
|
||||
* main.c, inpcom.c, numparam.h, spicenum.c, xpressn.c, compatmode.h, b3v1.c:
|
||||
compatibility issues
|
||||
|
||||
2011-05-28 Dietmar Warning
|
||||
* tests/hisim, tests/hisimhv: include the CMC test suite (Author: Colin McAndrew)
|
||||
* tests/hisim, tests/hisimhv: include the CMC test suite (Author: Colin McAndrew)
|
||||
provided by the model developer - Hiroshima University
|
||||
|
||||
|
||||
2011-05-28 Holger Vogt
|
||||
* configure.ac, visualc/config.h, CPOYING, FAQ, INSTALL, NEWS:
|
||||
update to prepare release 23
|
||||
|
|
|
|||
|
|
@ -0,0 +1,141 @@
|
|||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Example Script to run tests and check results.
|
||||
#
|
||||
# This is an example script for running QA tests on a
|
||||
# model and then checking the simulated results against
|
||||
# reference results. A separate target is defined for each
|
||||
# variant of the model. The program runQaTests.pl runs the
|
||||
# tests, and that program expects a perl module SIMULATOR.pm
|
||||
# to be provided for each simulator that is tested.
|
||||
# Examples of these are provided.
|
||||
#
|
||||
|
||||
qaSpecFile="qaSpec"
|
||||
qaResultsDirectory="results"
|
||||
testProgramName="../../bin/runQaTests.pl"
|
||||
testProgramFlags="-nwV"
|
||||
|
||||
#testProgramFlags="-d"
|
||||
|
||||
|
||||
help() {
|
||||
cat <<-EOF
|
||||
Valid targets are:
|
||||
|
||||
all run tests and compare results for all simulators
|
||||
|
||||
spice run tests and compare results spice
|
||||
ngspice run tests and compare results ngspice
|
||||
|
||||
clean remove all previously generated simulation results
|
||||
|
||||
NOTE: if test results exist they are not resimulated
|
||||
NOTE: to force resimulation run "make clean" first
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
run_test() {
|
||||
|
||||
simname="$1"
|
||||
|
||||
localPlatform=`${testProgramName} -platform`
|
||||
localVersion=`${testProgramName} -sv -s ${simname} ${qaSpecFile}`
|
||||
|
||||
echo ""
|
||||
echo "******"
|
||||
echo "****** ${qaSpecFile} tests for ${simname}"
|
||||
echo "****** (for version ${localVersion} on platform ${localPlatform})"
|
||||
echo "******"
|
||||
|
||||
for test in `${testProgramName} -lt -s ${simname} ${qaSpecFile}` ; do
|
||||
|
||||
echo ""
|
||||
echo "****** Checking test (${simname}): ${test}"
|
||||
|
||||
for variant in `${testProgramName} -lv -s ${simname} ${qaSpecFile}` ; do
|
||||
${testProgramName} \
|
||||
${testProgramFlags} \
|
||||
-s ${simname} \
|
||||
-r -t ${test} \
|
||||
-var ${variant} \
|
||||
${qaSpecFile}
|
||||
done
|
||||
done
|
||||
|
||||
for version in `ls -C1 ${qaResultsDirectory}/${simname}` ; do
|
||||
for platform in `ls -C1 ${qaResultsDirectory}/${simname}/${version}` ; do
|
||||
|
||||
if [ ${version} = ${localVersion} -a ${platform} = ${localPlatform} ]
|
||||
then
|
||||
break
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "******"
|
||||
echo "****** Comparing previously run ${qaSpecFile} tests for ${simname}"
|
||||
echo "****** (for version ${version} on platform ${platform})"
|
||||
echo "******"
|
||||
|
||||
for test in `${testProgramName} -lt -s ${simname} ${qaSpecFile}` ; do
|
||||
|
||||
echo ""
|
||||
echo "****** Checking test (${simname}): ${test}"
|
||||
|
||||
for variant in `${testProgramName} -lv -s ${simname} ${qaSpecFile}` ; do
|
||||
${testProgramName} \
|
||||
-c ${version} ${platform} \
|
||||
-s ${simname} \
|
||||
-t ${test} \
|
||||
-var ${variant} \
|
||||
${qaSpecFile}
|
||||
done
|
||||
done
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
#####
|
||||
##### spice tests
|
||||
#####
|
||||
|
||||
spice() {
|
||||
run_test spice
|
||||
}
|
||||
|
||||
|
||||
#####
|
||||
##### ngspice tests
|
||||
#####
|
||||
|
||||
ngspice() {
|
||||
run_test ngspice
|
||||
}
|
||||
|
||||
|
||||
|
||||
clean() {
|
||||
rm -rf ${qaResultsDirectory}/spice b3v3check.log
|
||||
rm -rf ${qaResultsDirectory}/ngspice ngspiceCkt*
|
||||
}
|
||||
|
||||
|
||||
all() {
|
||||
spice
|
||||
ngspice
|
||||
}
|
||||
|
||||
|
||||
for arg in $@ ; do
|
||||
case "$arg" in
|
||||
all | clean | spice | ngspice)
|
||||
"$arg"
|
||||
;;
|
||||
*)
|
||||
help
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
|
@ -1,135 +0,0 @@
|
|||
|
||||
#
|
||||
# Example Makefile to run tests and check results.
|
||||
#
|
||||
# This is an example makefile for running QA tests on a
|
||||
# model and then checking the simulated results against
|
||||
# reference results. A separate target is defined for each
|
||||
# variant of the model. The program runQaTests.pl runs the
|
||||
# tests, and that program expects a perl module SIMULATOR.pm
|
||||
# to be provided for each simulator that is tested.
|
||||
# Examples of these are provided.
|
||||
#
|
||||
|
||||
qaSpecFile = qaSpec
|
||||
qaResultsDirectory = results
|
||||
testProgramName = ../../bin/runQaTests.pl
|
||||
testProgramFlags = -nwV
|
||||
#testProgramFlags = -d
|
||||
|
||||
help:
|
||||
@echo "" ; \
|
||||
echo "Valid targets are:" ; \
|
||||
echo "" ; \
|
||||
echo "all run tests and compare results for all simulators" ; \
|
||||
echo "" ; \
|
||||
echo "spice run tests and compare results spice" ; \
|
||||
echo "ngspice run tests and compare results ngspice" ; \
|
||||
echo "" ; \
|
||||
echo "clean remove all previously generated simulation results"; \
|
||||
echo "" ; \
|
||||
echo "NOTE: if test results exist they are not resimulated" ; \
|
||||
echo "NOTE: to force resimulation run \"make clean\" first" ; \
|
||||
echo ""
|
||||
|
||||
all: spice ngspice
|
||||
|
||||
#####
|
||||
##### spice tests
|
||||
#####
|
||||
|
||||
spice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s spice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s spice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/spice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/spice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s spice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
#####
|
||||
##### ngspice tests
|
||||
#####
|
||||
|
||||
ngspice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s ngspice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s ngspice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/ngspice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/ngspice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s ngspice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
clean:
|
||||
@/bin/rm -rf $(qaResultsDirectory)/spice b3v3check.log
|
||||
@/bin/rm -rf $(qaResultsDirectory)/ngspice ngspiceCkt*
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/csh -fv
|
||||
#!/bin/sh
|
||||
|
||||
make ngspice | tee cmcqa_nmos.log
|
||||
../../bin/run_cmc_check clean ngspice | tee cmcqa_nmos.log
|
||||
|
|
|
|||
|
|
@ -1,135 +0,0 @@
|
|||
|
||||
#
|
||||
# Example Makefile to run tests and check results.
|
||||
#
|
||||
# This is an example makefile for running QA tests on a
|
||||
# model and then checking the simulated results against
|
||||
# reference results. A separate target is defined for each
|
||||
# variant of the model. The program runQaTests.pl runs the
|
||||
# tests, and that program expects a perl module SIMULATOR.pm
|
||||
# to be provided for each simulator that is tested.
|
||||
# Examples of these are provided.
|
||||
#
|
||||
|
||||
qaSpecFile = qaSpec
|
||||
qaResultsDirectory = results
|
||||
testProgramName = ../../bin/runQaTests.pl
|
||||
testProgramFlags = -nwV
|
||||
#testProgramFlags = -d
|
||||
|
||||
help:
|
||||
@echo "" ; \
|
||||
echo "Valid targets are:" ; \
|
||||
echo "" ; \
|
||||
echo "all run tests and compare results for all simulators" ; \
|
||||
echo "" ; \
|
||||
echo "spice run tests and compare results spice" ; \
|
||||
echo "ngspice run tests and compare results ngspice" ; \
|
||||
echo "" ; \
|
||||
echo "clean remove all previously generated simulation results"; \
|
||||
echo "" ; \
|
||||
echo "NOTE: if test results exist they are not resimulated" ; \
|
||||
echo "NOTE: to force resimulation run \"make clean\" first" ; \
|
||||
echo ""
|
||||
|
||||
all: spice ngspice
|
||||
|
||||
#####
|
||||
##### spice tests
|
||||
#####
|
||||
|
||||
spice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s spice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s spice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/spice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/spice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s spice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
#####
|
||||
##### ngspice tests
|
||||
#####
|
||||
|
||||
ngspice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s ngspice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s ngspice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/ngspice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/ngspice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s ngspice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
clean:
|
||||
@/bin/rm -rf $(qaResultsDirectory)/spice b3v3check.log
|
||||
@/bin/rm -rf $(qaResultsDirectory)/ngspice ngspiceCkt*
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/csh -fv
|
||||
#!/bin/sh
|
||||
|
||||
make clean ngspice | tee cmcqa_pmos.log
|
||||
../../bin/run_cmc_check clean ngspice | tee cmcqa_pmos.log
|
||||
|
|
|
|||
|
|
@ -1,135 +0,0 @@
|
|||
|
||||
#
|
||||
# Example Makefile to run tests and check results.
|
||||
#
|
||||
# This is an example makefile for running QA tests on a
|
||||
# model and then checking the simulated results against
|
||||
# reference results. A separate target is defined for each
|
||||
# variant of the model. The program runQaTests.pl runs the
|
||||
# tests, and that program expects a perl module SIMULATOR.pm
|
||||
# to be provided for each simulator that is tested.
|
||||
# Examples of these are provided.
|
||||
#
|
||||
|
||||
qaSpecFile = qaSpec
|
||||
qaResultsDirectory = results
|
||||
testProgramName = ../../bin/runQaTests.pl
|
||||
testProgramFlags = -nwV
|
||||
#testProgramFlags = -d
|
||||
|
||||
help:
|
||||
@echo "" ; \
|
||||
echo "Valid targets are:" ; \
|
||||
echo "" ; \
|
||||
echo "all run tests and compare results for all simulators" ; \
|
||||
echo "" ; \
|
||||
echo "spice run tests and compare results spice" ; \
|
||||
echo "ngspice run tests and compare results ngspice" ; \
|
||||
echo "" ; \
|
||||
echo "clean remove all previously generated simulation results"; \
|
||||
echo "" ; \
|
||||
echo "NOTE: if test results exist they are not resimulated" ; \
|
||||
echo "NOTE: to force resimulation run \"make clean\" first" ; \
|
||||
echo ""
|
||||
|
||||
all: spice ngspice
|
||||
|
||||
#####
|
||||
##### spice tests
|
||||
#####
|
||||
|
||||
spice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s spice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s spice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/spice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/spice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s spice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
#####
|
||||
##### ngspice tests
|
||||
#####
|
||||
|
||||
ngspice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s ngspice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s ngspice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/ngspice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/ngspice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s ngspice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
clean:
|
||||
@/bin/rm -rf $(qaResultsDirectory)/spice b3v3check.log
|
||||
@/bin/rm -rf $(qaResultsDirectory)/ngspice ngspiceCkt*
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
#!/bin/csh -fv
|
||||
#!/bin/sh
|
||||
|
||||
make clean
|
||||
../../bin/run_cmc_check clean
|
||||
cp qaSpec.basic qaSpec
|
||||
make ngspice | tee cmcqa_basic.log
|
||||
../../bin/run_cmc_check ngspice | tee cmcqa_basic.log
|
||||
|
|
|
|||
|
|
@ -1,135 +0,0 @@
|
|||
|
||||
#
|
||||
# Example Makefile to run tests and check results.
|
||||
#
|
||||
# This is an example makefile for running QA tests on a
|
||||
# model and then checking the simulated results against
|
||||
# reference results. A separate target is defined for each
|
||||
# variant of the model. The program runQaTests.pl runs the
|
||||
# tests, and that program expects a perl module SIMULATOR.pm
|
||||
# to be provided for each simulator that is tested.
|
||||
# Examples of these are provided.
|
||||
#
|
||||
|
||||
qaSpecFile = qaSpec
|
||||
qaResultsDirectory = results
|
||||
testProgramName = ../../bin/runQaTests.pl
|
||||
testProgramFlags = -nwV
|
||||
#testProgramFlags = -d
|
||||
|
||||
help:
|
||||
@echo "" ; \
|
||||
echo "Valid targets are:" ; \
|
||||
echo "" ; \
|
||||
echo "all run tests and compare results for all simulators" ; \
|
||||
echo "" ; \
|
||||
echo "spice run tests and compare results spice" ; \
|
||||
echo "ngspice run tests and compare results ngspice" ; \
|
||||
echo "" ; \
|
||||
echo "clean remove all previously generated simulation results"; \
|
||||
echo "" ; \
|
||||
echo "NOTE: if test results exist they are not resimulated" ; \
|
||||
echo "NOTE: to force resimulation run \"make clean\" first" ; \
|
||||
echo ""
|
||||
|
||||
all: spice ngspice
|
||||
|
||||
#####
|
||||
##### spice tests
|
||||
#####
|
||||
|
||||
spice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s spice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s spice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/spice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/spice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for spice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (spice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s spice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s spice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
#####
|
||||
##### ngspice tests
|
||||
#####
|
||||
|
||||
ngspice:
|
||||
@-echo ""; \
|
||||
localPlatform=`$(testProgramName) -platform` ; \
|
||||
localVersion=`$(testProgramName) -sv -s ngspice $(qaSpecFile)` ; \
|
||||
localVersionAndPlatform=$$localVersion._.$$localPlatform ; \
|
||||
echo "******"; \
|
||||
echo "****** $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$localVersion on platform $$localPlatform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) $(testProgramFlags) -s ngspice -r -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
for version in `ls -C1 $(qaResultsDirectory)/ngspice` ; \
|
||||
do \
|
||||
for platform in `ls -C1 $(qaResultsDirectory)/ngspice/$$version` ; \
|
||||
do \
|
||||
versionAndPlatform=$$version._.$$platform ; \
|
||||
if [ $$versionAndPlatform = $$localVersionAndPlatform ] ; \
|
||||
then \
|
||||
break ; \
|
||||
fi ; \
|
||||
echo "" ; \
|
||||
echo "******"; \
|
||||
echo "****** Comparing previously run $(qaSpecFile) tests for ngspice"; \
|
||||
echo "****** (for version $$version on platform $$platform)"; \
|
||||
echo "******"; \
|
||||
for test in `$(testProgramName) -lt -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
echo ""; \
|
||||
echo "****** Checking test (ngspice): $$test" ; \
|
||||
for variant in `$(testProgramName) -lv -s ngspice $(qaSpecFile)` ; \
|
||||
do \
|
||||
$(testProgramName) -c $$version $$platform -s ngspice -t $$test -var $$variant $(qaSpecFile) ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done ; \
|
||||
done
|
||||
|
||||
clean:
|
||||
@/bin/rm -rf $(qaResultsDirectory)/spice b3v3check.log
|
||||
@/bin/rm -rf $(qaResultsDirectory)/ngspice ngspiceCkt*
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
#!/bin/csh -fv
|
||||
#!/bin/sh
|
||||
|
||||
make clean
|
||||
../../bin/run_cmc_check clean
|
||||
cp qaSpec.basic qaSpec
|
||||
make ngspice | tee cmcqa_basic.log
|
||||
../../bin/run_cmc_check ngspice | tee cmcqa_basic.log
|
||||
|
|
|
|||
Loading…
Reference in New Issue