From 171949065ff38e2209faaac89af3049cf873d638 Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Wed, 12 Feb 2025 14:36:04 +0100 Subject: [PATCH] CMake: add backends --- CMakeLists.txt | 18 +++++++++++++++++- backends/aiger/CMakeLists.txt | 8 ++++++++ backends/aiger2/CMakeLists.txt | 7 +++++++ backends/blif/CMakeLists.txt | 7 +++++++ backends/btor/CMakeLists.txt | 7 +++++++ backends/cxxrtl/CMakeLists.txt | 7 +++++++ backends/firrtl/CMakeLists.txt | 7 +++++++ backends/functional/CMakeLists.txt | 10 ++++++++++ backends/intersynth/CMakeLists.txt | 7 +++++++ backends/jny/CMakeLists.txt | 7 +++++++ backends/json/CMakeLists.txt | 7 +++++++ backends/simplec/CMakeLists.txt | 7 +++++++ backends/smt2/CMakeLists.txt | 7 +++++++ backends/smv/CMakeLists.txt | 7 +++++++ backends/spice/CMakeLists.txt | 7 +++++++ backends/table/CMakeLists.txt | 7 +++++++ backends/verilog/CMakeLists.txt | 7 +++++++ 17 files changed, 133 insertions(+), 1 deletion(-) create mode 100644 backends/aiger/CMakeLists.txt create mode 100644 backends/aiger2/CMakeLists.txt create mode 100644 backends/blif/CMakeLists.txt create mode 100644 backends/btor/CMakeLists.txt create mode 100644 backends/cxxrtl/CMakeLists.txt create mode 100644 backends/firrtl/CMakeLists.txt create mode 100644 backends/functional/CMakeLists.txt create mode 100644 backends/intersynth/CMakeLists.txt create mode 100644 backends/jny/CMakeLists.txt create mode 100644 backends/json/CMakeLists.txt create mode 100644 backends/simplec/CMakeLists.txt create mode 100644 backends/smt2/CMakeLists.txt create mode 100644 backends/smv/CMakeLists.txt create mode 100644 backends/spice/CMakeLists.txt create mode 100644 backends/table/CMakeLists.txt create mode 100644 backends/verilog/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index e622ea5db..a063c5525 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,8 +34,24 @@ add_subdirectory(frontends/liberty) add_subdirectory(frontends/rpc) add_subdirectory(frontends/rtlil) add_subdirectory(frontends/verilog) -add_subdirectory(backends/rtlil) +add_subdirectory(backends/aiger) +add_subdirectory(backends/aiger2) +add_subdirectory(backends/blif) +add_subdirectory(backends/btor) +add_subdirectory(backends/cxxrtl) add_subdirectory(backends/edif) +add_subdirectory(backends/firrtl) +add_subdirectory(backends/functional) +add_subdirectory(backends/intersynth) +add_subdirectory(backends/jny) +add_subdirectory(backends/json) +add_subdirectory(backends/rtlil) +add_subdirectory(backends/simplec) +add_subdirectory(backends/smt2) +add_subdirectory(backends/smv) +add_subdirectory(backends/spice) +add_subdirectory(backends/table) +add_subdirectory(backends/verilog) add_subdirectory(passes/cmds) add_subdirectory(passes/techmap) add_subdirectory(techlibs/common) diff --git a/backends/aiger/CMakeLists.txt b/backends/aiger/CMakeLists.txt new file mode 100644 index 000000000..98ba99e0f --- /dev/null +++ b/backends/aiger/CMakeLists.txt @@ -0,0 +1,8 @@ +add_library(yosys_backends_aiger INTERFACE) + +target_sources(yosys_backends_aiger INTERFACE + aiger.cc + xaiger.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_aiger) diff --git a/backends/aiger2/CMakeLists.txt b/backends/aiger2/CMakeLists.txt new file mode 100644 index 000000000..b207278d2 --- /dev/null +++ b/backends/aiger2/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_aiger2 INTERFACE) + +target_sources(yosys_backends_aiger2 INTERFACE + aiger.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_aiger2) diff --git a/backends/blif/CMakeLists.txt b/backends/blif/CMakeLists.txt new file mode 100644 index 000000000..e662b3ba3 --- /dev/null +++ b/backends/blif/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_blif INTERFACE) + +target_sources(yosys_backends_blif INTERFACE + blif.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_blif) diff --git a/backends/btor/CMakeLists.txt b/backends/btor/CMakeLists.txt new file mode 100644 index 000000000..269db2a89 --- /dev/null +++ b/backends/btor/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_btor INTERFACE) + +target_sources(yosys_backends_btor INTERFACE + btor.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_btor) diff --git a/backends/cxxrtl/CMakeLists.txt b/backends/cxxrtl/CMakeLists.txt new file mode 100644 index 000000000..c27c87232 --- /dev/null +++ b/backends/cxxrtl/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_cxxrtl INTERFACE) + +target_sources(yosys_backends_cxxrtl INTERFACE + cxxrtl_backend.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_cxxrtl) diff --git a/backends/firrtl/CMakeLists.txt b/backends/firrtl/CMakeLists.txt new file mode 100644 index 000000000..50d3bdfa2 --- /dev/null +++ b/backends/firrtl/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_firrtl INTERFACE) + +target_sources(yosys_backends_firrtl INTERFACE + firrtl.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_firrtl) diff --git a/backends/functional/CMakeLists.txt b/backends/functional/CMakeLists.txt new file mode 100644 index 000000000..cee0974eb --- /dev/null +++ b/backends/functional/CMakeLists.txt @@ -0,0 +1,10 @@ +add_library(yosys_backends_functional INTERFACE) + +target_sources(yosys_backends_functional INTERFACE + cxx.cc + smtlib.cc + smtlib_rosette.cc + test_generic.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_functional) diff --git a/backends/intersynth/CMakeLists.txt b/backends/intersynth/CMakeLists.txt new file mode 100644 index 000000000..0ea63a68a --- /dev/null +++ b/backends/intersynth/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_intersynth INTERFACE) + +target_sources(yosys_backends_intersynth INTERFACE + intersynth.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_intersynth) diff --git a/backends/jny/CMakeLists.txt b/backends/jny/CMakeLists.txt new file mode 100644 index 000000000..2dda23588 --- /dev/null +++ b/backends/jny/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_jny INTERFACE) + +target_sources(yosys_backends_jny INTERFACE + jny.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_jny) diff --git a/backends/json/CMakeLists.txt b/backends/json/CMakeLists.txt new file mode 100644 index 000000000..c0d7f1f5f --- /dev/null +++ b/backends/json/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_json INTERFACE) + +target_sources(yosys_backends_json INTERFACE + json.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_json) diff --git a/backends/simplec/CMakeLists.txt b/backends/simplec/CMakeLists.txt new file mode 100644 index 000000000..212fd08bb --- /dev/null +++ b/backends/simplec/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_simplec INTERFACE) + +target_sources(yosys_backends_simplec INTERFACE + simplec.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_simplec) diff --git a/backends/smt2/CMakeLists.txt b/backends/smt2/CMakeLists.txt new file mode 100644 index 000000000..a035b12c4 --- /dev/null +++ b/backends/smt2/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_smt2 INTERFACE) + +target_sources(yosys_backends_smt2 INTERFACE + smt2.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_smt2) diff --git a/backends/smv/CMakeLists.txt b/backends/smv/CMakeLists.txt new file mode 100644 index 000000000..8521e9a50 --- /dev/null +++ b/backends/smv/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_smv INTERFACE) + +target_sources(yosys_backends_smv INTERFACE + smv.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_smv) diff --git a/backends/spice/CMakeLists.txt b/backends/spice/CMakeLists.txt new file mode 100644 index 000000000..524a75689 --- /dev/null +++ b/backends/spice/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_spice INTERFACE) + +target_sources(yosys_backends_spice INTERFACE + spice.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_spice) diff --git a/backends/table/CMakeLists.txt b/backends/table/CMakeLists.txt new file mode 100644 index 000000000..5603dee0b --- /dev/null +++ b/backends/table/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_table INTERFACE) + +target_sources(yosys_backends_table INTERFACE + table.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_table) diff --git a/backends/verilog/CMakeLists.txt b/backends/verilog/CMakeLists.txt new file mode 100644 index 000000000..4701fbed8 --- /dev/null +++ b/backends/verilog/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(yosys_backends_verilog INTERFACE) + +target_sources(yosys_backends_verilog INTERFACE + verilog_backend.cc +) + +target_link_libraries(yosys PRIVATE yosys_backends_verilog)