2025-02-12 07:18:02 -06:00
|
|
|
cmake_minimum_required(VERSION 3.13)
|
|
|
|
project(yosys LANGUAGES CXX C)
|
|
|
|
set(YOSYS_VER "0.50+1")
|
|
|
|
|
|
|
|
include(CheckCXXCompilerFlag)
|
|
|
|
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
|
|
|
|
set(CMAKE_C_STANDARD 99)
|
|
|
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
|
|
set(CMAKE_C_EXTENSIONS OFF)
|
|
|
|
|
|
|
|
find_package(FLEX 2.6 REQUIRED)
|
|
|
|
find_package(BISON 3.0 REQUIRED)
|
|
|
|
find_package(Python3 3.5 REQUIRED COMPONENTS Interpreter)
|
|
|
|
|
|
|
|
add_executable(yosys)
|
|
|
|
#target_include_directories(yosys PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
#target_include_directories(yosys PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
#target_compile_definitions(yosys PRIVATE _YOSYS_)
|
|
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
add_compile_definitions(_YOSYS_)
|
|
|
|
|
|
|
|
add_subdirectory(kernel)
|
|
|
|
add_subdirectory(libs)
|
2025-02-12 09:10:36 -06:00
|
|
|
|
2025-02-12 07:18:02 -06:00
|
|
|
add_subdirectory(frontends/aiger)
|
|
|
|
add_subdirectory(frontends/aiger2)
|
|
|
|
add_subdirectory(frontends/ast)
|
|
|
|
add_subdirectory(frontends/blif)
|
|
|
|
add_subdirectory(frontends/json)
|
|
|
|
add_subdirectory(frontends/liberty)
|
|
|
|
add_subdirectory(frontends/rpc)
|
|
|
|
add_subdirectory(frontends/rtlil)
|
|
|
|
add_subdirectory(frontends/verilog)
|
2025-02-12 09:10:36 -06:00
|
|
|
|
2025-02-12 07:36:04 -06:00
|
|
|
add_subdirectory(backends/aiger)
|
|
|
|
add_subdirectory(backends/aiger2)
|
|
|
|
add_subdirectory(backends/blif)
|
|
|
|
add_subdirectory(backends/btor)
|
|
|
|
add_subdirectory(backends/cxxrtl)
|
2025-02-12 07:18:02 -06:00
|
|
|
add_subdirectory(backends/edif)
|
2025-02-12 07:36:04 -06:00
|
|
|
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)
|
2025-02-12 09:10:36 -06:00
|
|
|
|
2025-02-12 07:18:02 -06:00
|
|
|
add_subdirectory(passes/cmds)
|
2025-02-12 07:48:41 -06:00
|
|
|
add_subdirectory(passes/equiv)
|
|
|
|
add_subdirectory(passes/fsm)
|
2025-02-12 09:10:36 -06:00
|
|
|
add_subdirectory(passes/hierarchy)
|
2025-02-12 07:48:41 -06:00
|
|
|
add_subdirectory(passes/memory)
|
|
|
|
add_subdirectory(passes/opt)
|
2025-02-12 10:53:12 -06:00
|
|
|
add_subdirectory(passes/pmgen)
|
2025-02-12 07:48:41 -06:00
|
|
|
add_subdirectory(passes/proc)
|
|
|
|
add_subdirectory(passes/sat)
|
2025-02-12 07:18:02 -06:00
|
|
|
add_subdirectory(passes/techmap)
|
2025-02-12 07:48:41 -06:00
|
|
|
add_subdirectory(passes/tests)
|
2025-02-12 09:10:36 -06:00
|
|
|
|
|
|
|
add_subdirectory(techlibs/achronix)
|
|
|
|
add_subdirectory(techlibs/anlogic)
|
2025-02-12 07:18:02 -06:00
|
|
|
add_subdirectory(techlibs/common)
|
2025-02-12 09:10:36 -06:00
|
|
|
add_subdirectory(techlibs/coolrunner2)
|
|
|
|
add_subdirectory(techlibs/easic)
|
|
|
|
add_subdirectory(techlibs/ecp5)
|
|
|
|
add_subdirectory(techlibs/efinix)
|
|
|
|
add_subdirectory(techlibs/fabulous)
|
|
|
|
add_subdirectory(techlibs/gatemate)
|
|
|
|
add_subdirectory(techlibs/gowin)
|
|
|
|
add_subdirectory(techlibs/greenpak4)
|
|
|
|
add_subdirectory(techlibs/ice40)
|
|
|
|
add_subdirectory(techlibs/intel)
|
|
|
|
add_subdirectory(techlibs/intel_alm)
|
|
|
|
add_subdirectory(techlibs/lattice)
|
|
|
|
add_subdirectory(techlibs/microchip)
|
|
|
|
add_subdirectory(techlibs/nanoxplore)
|
|
|
|
add_subdirectory(techlibs/nexus)
|
|
|
|
add_subdirectory(techlibs/quicklogic)
|
|
|
|
add_subdirectory(techlibs/sf2)
|
|
|
|
add_subdirectory(techlibs/xilinx)
|
2025-02-12 07:18:02 -06:00
|
|
|
|
|
|
|
target_link_libraries(yosys PRIVATE z)
|