3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-03-31 16:49:02 +00:00
yosys/tests/liberty/generate_mk.py
2026-03-25 11:46:08 +01:00

43 lines
1.1 KiB
Python

#!/usr/bin/env python3
import glob
import os
import sys
sys.path.append("..")
import gen_tests_makefile
def lib_tests():
for lib in sorted(glob.glob("*.lib")):
base = os.path.splitext(lib)[0]
gen_tests_makefile.generate_cmd_test(lib, [
f'$(YOSYS) -p "read_verilog small.v; synth -top small; dfflibmap -info -liberty {lib}" -ql {base}.log;',
f'../../yosys-filterlib - {lib} > {lib}.filtered;',
f'../../yosys-filterlib -verilogsim {lib} > {lib}.verilogsim;',
f'diff {lib}.filtered {lib}.filtered.ok;',
f'diff {lib}.verilogsim {lib}.verilogsim.ok;',
f'if [ -e {base}.log.ok ]; then '
f'$(YOSYS) -p "dfflibmap -info -liberty {lib}" -TqqQl {base}.log; '
f'diff {base}.log {base}.log.ok; '
f'fi',
])
def ys_tests():
for ys in sorted(glob.glob("*.ys")):
gen_tests_makefile.generate_ys_test(ys)
def main():
def callback():
lib_tests()
ys_tests()
gen_tests_makefile.generate_custom(callback)
if __name__ == "__main__":
main()