From d214308f5ff6bdb0adb93f1e2b7a9ddc56f75378 Mon Sep 17 00:00:00 2001 From: Catherine Date: Wed, 15 Jan 2025 09:22:03 +0000 Subject: [PATCH] CMake: reformat for consistency. Normalize keywords to: if (...) elseif (...) else() endif() foreach (...) endforeach() other(...) Normalize whitespace to 4 spaces. --- CMakeLists.txt | 75 +++++++++++++++--------- ecp5/CMakeLists.txt | 36 ++++++------ ecp5/family.cmake | 14 ++--- generic/family.cmake | 6 +- gowin/CMakeLists.txt | 10 ++-- gowin/family.cmake | 14 ++--- gui/CMakeLists.txt | 38 ++++++------ himbaechel/family.cmake | 10 ++-- himbaechel/uarch/example/CMakeLists.txt | 2 +- himbaechel/uarch/gowin/CMakeLists.txt | 10 ++-- himbaechel/uarch/ng-ultra/CMakeLists.txt | 4 +- himbaechel/uarch/xilinx/CMakeLists.txt | 4 +- ice40/CMakeLists.txt | 22 +++---- ice40/family.cmake | 14 ++--- machxo2/CMakeLists.txt | 30 +++++----- machxo2/family.cmake | 14 ++--- mistral/family.cmake | 2 +- nexus/CMakeLists.txt | 18 +++--- nexus/family.cmake | 14 ++--- 19 files changed, 178 insertions(+), 159 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c66994ca..af0a16ec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,9 +9,9 @@ cmake_policy(SET CMP0079 NEW) # We want to explictly include all include directories when generating the # compilation database as not all clang/gcc share the same implicit includes # leading to essentially non-working compile_commands.json -if(CMAKE_EXPORT_COMPILE_COMMANDS) - set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES - ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES}) +if (CMAKE_EXPORT_COMPILE_COMMANDS) + set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES + ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES}) endif() # Enable IPO support. @@ -49,7 +49,7 @@ else() set(CMAKE_INTERPROCEDURAL_OPTIMIZATION FALSE) endif() -if(WIN32 OR EXTERNAL_CHIPDB) +if (WIN32 OR EXTERNAL_CHIPDB) set(BBASM_MODE "binary") else() set(BBASM_MODE "string") @@ -65,7 +65,7 @@ else() add_definitions(-DNPNR_DISABLE_THREADS) endif() -if(WASI) +if (WASI) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lwasi-emulated-mman") add_definitions( -DBOOST_EXCEPTION_DISABLE @@ -79,8 +79,8 @@ endif() set(link_param "") if (STATIC_BUILD) set(Boost_USE_STATIC_LIBS ON) - if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows") + if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + elseif (${CMAKE_SYSTEM_NAME} MATCHES "Windows") if (MSVC) set(CMAKE_CXX_FLAGS_RELEASE "/MT") set(CMAKE_CXX_FLAGS_DEBUG "/MTd") @@ -118,11 +118,11 @@ if (NOT ARCH) message(STATUS "Supported architectures are :") message(STATUS " all") message(STATUS " all+alpha") - foreach(item ${FAMILIES}) + foreach (item ${FAMILIES}) message(STATUS " ${item}") endforeach() message(FATAL_ERROR "Architecture setting is mandatory") -endif () +endif() if (ARCH STREQUAL "all+alpha") SET(ARCH ${STABLE_FAMILIES} ${EXPERIMENTAL_FAMILIES}) @@ -133,7 +133,7 @@ if (ARCH STREQUAL "all") SET(ARCH ${STABLE_FAMILIES}) endif() -foreach(item ${ARCH}) +foreach (item ${ARCH}) if (NOT item IN_LIST FAMILIES) message(FATAL_ERROR "Architecture '${item}' not in list of supported architectures") endif() @@ -147,7 +147,7 @@ if (MSVC) else() # N.B. the -Wno-array-bounds is to work around a false positive in GCC 9 set(WARN_FLAGS "-Wall -Wextra") - foreach(TRY_WARN_FLAG no-unused-parameter no-missing-field-initializers no-array-bounds no-format-truncation) + foreach (TRY_WARN_FLAG no-unused-parameter no-missing-field-initializers no-array-bounds no-format-truncation) check_cxx_compiler_flag("-W${TRY_WARN_FLAG}" HAS_W${TRY_WARN_FLAG}) if (HAS_W${TRY_WARN_FLAG}) set(WARN_FLAGS "${WARN_FLAGS} -W${TRY_WARN_FLAG}") @@ -170,8 +170,8 @@ if (COVERAGE) include(CodeCoverage) endif() -if(NOT DEFINED CMAKE_SUPPRESS_DEVELOPER_WARNINGS) - set(CMAKE_SUPPRESS_DEVELOPER_WARNINGS 1 CACHE INTERNAL "No dev warnings") +if (NOT DEFINED CMAKE_SUPPRESS_DEVELOPER_WARNINGS) + set(CMAKE_SUPPRESS_DEVELOPER_WARNINGS 1 CACHE INTERNAL "No dev warnings") endif() find_package(Sanitizers) @@ -239,9 +239,20 @@ if (NOT DEFINED PYBIND11_INCLUDE_DIR) set(PYBIND11_INCLUDE_DIR "3rdparty/pybind11/include") endif() -include_directories(common/kernel/ common/place/ common/route/ json/ frontend/ 3rdparty/json11/ 3rdparty/oourafft ${PYBIND11_INCLUDE_DIR} ${Boost_INCLUDE_DIRS} ${Python3_INCLUDE_DIRS}) +include_directories( + common/kernel/ + common/place/ + common/route/ + json/ + frontend/ + 3rdparty/json11/ + 3rdparty/oourafft/ + ${PYBIND11_INCLUDE_DIR} + ${Boost_INCLUDE_DIRS} + ${Python3_INCLUDE_DIRS} +) -find_package (Eigen3 REQUIRED NO_MODULE) +find_package(Eigen3 REQUIRED NO_MODULE) link_libraries(Eigen3::Eigen) aux_source_directory(common/kernel/ KERNEL_SRC_FILES) @@ -255,13 +266,21 @@ aux_source_directory(frontend/ FRONTEND_FILES) aux_source_directory(rust/ RUST_FILES) -set(COMMON_FILES ${KERNEL_SRC_FILES} ${PLACE_SRC_FILES} ${ROUTE_SRC_FILES} ${EXT_JSON11_FILES} ${EXT_OOURAFFT_FILES} ${JSON_PARSER_FILES} ${FRONTEND_FILES}) +set(COMMON_FILES + ${KERNEL_SRC_FILES} + ${PLACE_SRC_FILES} + ${ROUTE_SRC_FILES} + ${EXT_JSON11_FILES} + ${EXT_OOURAFFT_FILES} + ${JSON_PARSER_FILES} + ${FRONTEND_FILES} +) -if( NOT CMAKE_BUILD_TYPE ) +if (NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() -if(CMAKE_CROSSCOMPILING) +if (CMAKE_CROSSCOMPILING) set(BBA_IMPORT "IMPORTFILE-NOTFOUND" CACHE FILEPATH "Path to the `bba-export.cmake` export file from a native build") include(${BBA_IMPORT}) @@ -271,7 +290,7 @@ endif() include(TestBigEndian) test_big_endian(IS_BIG_ENDIAN) -if(IS_BIG_ENDIAN) +if (IS_BIG_ENDIAN) set(BBASM_ENDIAN_FLAG "--be") else() set(BBASM_ENDIAN_FLAG "--le") @@ -279,10 +298,10 @@ endif() set(EXTRA_LIB_DEPS) -if(PROFILER) +if (PROFILER) list(APPEND EXTRA_LIB_DEPS profiler) endif() -if(TBB_FOUND) +if (TBB_FOUND) list(APPEND EXTRA_LIB_DEPS TBB::tbb) endif() @@ -340,7 +359,7 @@ foreach (family ${ARCH}) # Include the family-specific CMakeFile include(${family}/family.cmake) foreach (target ${family_targets}) - foreach(lib_dep ${EXTRA_LIB_DEPS}) + foreach (lib_dep ${EXTRA_LIB_DEPS}) target_link_libraries(${target} PRIVATE ${lib_dep}) endforeach() @@ -361,8 +380,8 @@ foreach (family ${ARCH}) target_link_libraries(${target} LINK_PUBLIC ${Python3_LIBRARIES}) if (STATIC_BUILD) target_link_libraries(${target} LINK_PUBLIC ${CMAKE_THREAD_LIBS_INIT} ${CMAKE_DL_LIBS} ${ZLIB_LIBRARIES} ${EXPAT_LIBRARIES}) - if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows") + if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + elseif (${CMAKE_SYSTEM_NAME} MATCHES "Windows") else() target_link_libraries(${target} LINK_PUBLIC -lutil) endif() @@ -371,12 +390,12 @@ foreach (family ${ARCH}) if (USE_RUST) target_sources(${target} PRIVATE ${RUST_FILES}) target_compile_definitions(${target} PRIVATE USE_RUST) - foreach(crate ${RUST_CRATES}) + foreach (crate ${RUST_CRATES}) target_link_libraries(${target} PRIVATE ${crate}) - endforeach(crate) + endforeach() endif() - endforeach (target) -endforeach (family) + endforeach() +endforeach() file(GLOB_RECURSE CLANGFORMAT_FILES *.cc *.h) string(REGEX REPLACE "[^;]*/ice40/chipdb/chipdb-[^;]*.cc" "" CLANGFORMAT_FILES "${CLANGFORMAT_FILES}") diff --git a/ecp5/CMakeLists.txt b/ecp5/CMakeLists.txt index 237023a1..85804294 100644 --- a/ecp5/CMakeLists.txt +++ b/ecp5/CMakeLists.txt @@ -6,7 +6,7 @@ set(ECP5_DEVICES ${ALL_ECP5_DEVICES} CACHE STRING "Include support for these ECP5 devices (available: ${ALL_ECP5_DEVICES})") message(STATUS "Enabled ECP5 devices: ${ECP5_DEVICES}") -if(DEFINED ECP5_CHIPDB) +if (DEFINED ECP5_CHIPDB) add_custom_target(chipdb-ecp5-bbas ALL) else() # shared among all families @@ -15,37 +15,37 @@ else() set(TRELLIS_PROGRAM_PREFIX "" CACHE STRING "Trellis name prefix") - if(TRELLIS_PROGRAM_PREFIX) + if (TRELLIS_PROGRAM_PREFIX) message(STATUS "Trellis program prefix: ${TRELLIS_PROGRAM_PREFIX}") endif() - IF(DEFINED ENV{TRELLIS_INSTALL_PREFIX}) + if (DEFINED ENV{TRELLIS_INSTALL_PREFIX}) set(trellis_default_install_prefix $ENV{TRELLIS_INSTALL_PREFIX}) - ELSE() + else() set(trellis_default_install_prefix ${CMAKE_INSTALL_PREFIX}) - ENDIF() + endif() set(TRELLIS_INSTALL_PREFIX ${trellis_default_install_prefix} CACHE STRING "Trellis install prefix") message(STATUS "Trellis install prefix: ${TRELLIS_INSTALL_PREFIX}") - if(NOT TRELLIS_LIBDIR) + if (NOT TRELLIS_LIBDIR) # The pytrellis library isn't a normal shared library, but rather a native Python library; # it does not follow the normal platform conventions for shared libraries, so we can't just # use find_library() here. Instead, we emulate the useful parts of the find_library() logic # for use with find_path(). set(pytrellis_paths) - foreach(prefix_path ${CMAKE_PREFIX_PATH}) + foreach (prefix_path ${CMAKE_PREFIX_PATH}) list(APPEND pytrellis_paths ${prefix_path}/lib) - if(CMAKE_LIBRARY_ARCHITECTURE) + if (CMAKE_LIBRARY_ARCHITECTURE) list(APPEND pytrellis_paths ${prefix_path}/lib/${CMAKE_LIBRARY_ARCHITECTURE}) endif() endforeach() list(APPEND pytrellis_paths ${CMAKE_LIBRARY_PATH}) - if(NOT NO_CMAKE_SYSTEM_PATH) - foreach(prefix_path ${CMAKE_SYSTEM_PREFIX_PATH}) + if (NOT NO_CMAKE_SYSTEM_PATH) + foreach (prefix_path ${CMAKE_SYSTEM_PREFIX_PATH}) list(APPEND pytrellis_paths ${prefix_path}/lib) - if(CMAKE_LIBRARY_ARCHITECTURE) + if (CMAKE_LIBRARY_ARCHITECTURE) list(APPEND pytrellis_paths ${prefix_path}/lib/${CMAKE_LIBRARY_ARCHITECTURE}) endif() endforeach() @@ -53,7 +53,7 @@ else() endif() message(STATUS "Searching for pytrellis in: ${pytrellis_paths}") - if(WIN32) + if (WIN32) set(pytrellis_lib pytrellis.pyd) else() set(pytrellis_lib pytrellis${CMAKE_SHARED_MODULE_SUFFIX}) @@ -64,21 +64,21 @@ else() PATHS ${pytrellis_paths} PATH_SUFFIXES ${TRELLIS_PROGRAM_PREFIX}trellis DOC "Location of the pytrellis library") - if(NOT TRELLIS_LIBDIR) + if (NOT TRELLIS_LIBDIR) message(FATAL_ERROR "Failed to locate the pytrellis library") endif() endif() message(STATUS "Trellis library directory: ${TRELLIS_LIBDIR}") - if(NOT TRELLIS_DATADIR) + if (NOT TRELLIS_DATADIR) set(TRELLIS_DATADIR ${TRELLIS_INSTALL_PREFIX}/share/${TRELLIS_PROGRAM_PREFIX}trellis) endif() message(STATUS "Trellis data directory: ${TRELLIS_DATADIR}") set(all_device_bbas) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chipdb) - foreach(device ${ECP5_DEVICES}) - if(NOT device IN_LIST ALL_ECP5_DEVICES) + foreach (device ${ECP5_DEVICES}) + if (NOT device IN_LIST ALL_ECP5_DEVICES) message(FATAL_ERROR "Device ${device} is not a supported ECP5 device") endif() @@ -102,7 +102,7 @@ else() ${PREVIOUS_CHIPDB_TARGET} VERBATIM) list(APPEND all_device_bbas ${device_bba}) - if(SERIALIZE_CHIPDBS) + if (SERIALIZE_CHIPDBS) set(PREVIOUS_CHIPDB_TARGET ${CMAKE_CURRENT_BINARY_DIR}/${device_bba}) endif() endforeach() @@ -110,7 +110,7 @@ else() add_custom_target(chipdb-ecp5-bbas ALL DEPENDS ${all_device_bbas}) get_directory_property(has_parent PARENT_DIRECTORY) - if(has_parent) + if (has_parent) set(ECP5_CHIPDB ${CMAKE_CURRENT_BINARY_DIR}/chipdb PARENT_SCOPE) # serialize chipdb build across multiple architectures set(PREVIOUS_CHIPDB_TARGET chipdb-ecp5-bbas PARENT_SCOPE) diff --git a/ecp5/family.cmake b/ecp5/family.cmake index 0c4fa695..c475a10c 100644 --- a/ecp5/family.cmake +++ b/ecp5/family.cmake @@ -4,24 +4,24 @@ message(STATUS "Using ECP5 chipdb: ${ECP5_CHIPDB}") set(chipdb_sources) set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb) -foreach(device ${ECP5_DEVICES}) +foreach (device ${ECP5_DEVICES}) set(chipdb_bba ${ECP5_CHIPDB}/chipdb-${device}.bba) set(chipdb_bin ${family}/chipdb/chipdb-${device}.bin) set(chipdb_cc ${family}/chipdb/chipdb-${device}.cc) - if(BBASM_MODE STREQUAL "binary") + if (BBASM_MODE STREQUAL "binary") add_custom_command( OUTPUT ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} ${chipdb_bba} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "embed") + elseif (BBASM_MODE STREQUAL "embed") add_custom_command( OUTPUT ${chipdb_cc} ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --e ${chipdb_bba} ${chipdb_cc} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_sources ${chipdb_cc}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "string") + elseif (BBASM_MODE STREQUAL "string") add_custom_command( OUTPUT ${chipdb_cc} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --c ${chipdb_bba} ${chipdb_cc} @@ -29,12 +29,12 @@ foreach(device ${ECP5_DEVICES}) list(APPEND chipdb_sources ${chipdb_cc}) endif() endforeach() -if(WIN32) +if (WIN32) set(chipdb_rc ${CMAKE_CURRENT_BINARY_DIR}/${family}/resource/chipdb.rc) list(APPEND chipdb_sources ${chipdb_rc}) file(WRITE ${chipdb_rc}) - foreach(device ${ECP5_DEVICES}) + foreach (device ${ECP5_DEVICES}) file(APPEND ${chipdb_rc} "${family}/chipdb-${device}.bin RCDATA \"${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb/chipdb-${device}.bin\"") endforeach() @@ -48,6 +48,6 @@ target_compile_options(chipdb-${family} PRIVATE -g0 -O0 -w) target_compile_definitions(chipdb-${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family}) target_include_directories(chipdb-${family} PRIVATE ${family}) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_sources(${family_target} PRIVATE $) endforeach() diff --git a/generic/family.cmake b/generic/family.cmake index b6a674f7..f6f6e030 100644 --- a/generic/family.cmake +++ b/generic/family.cmake @@ -1,7 +1,7 @@ set(VIADUCT_UARCHES "example" "okami" "fabulous") -foreach(uarch ${VIADUCT_UARCHES}) +foreach (uarch ${VIADUCT_UARCHES}) aux_source_directory(${family}/viaduct/${uarch} UARCH_FILES) - foreach(target ${family_targets}) + foreach (target ${family_targets}) target_sources(${target} PRIVATE ${UARCH_FILES}) endforeach() -endforeach(uarch) +endforeach() diff --git a/gowin/CMakeLists.txt b/gowin/CMakeLists.txt index 92ff1c08..d43928a4 100644 --- a/gowin/CMakeLists.txt +++ b/gowin/CMakeLists.txt @@ -9,7 +9,7 @@ message(STATUS "Enabled Gowin devices: ${GOWIN_DEVICES}") find_program (GOWIN_BBA_EXECUTABLE gowin_bba) message(STATUS "gowin_bba executable: ${GOWIN_BBA_EXECUTABLE}") -if(DEFINED GOWIN_CHIPDB) +if (DEFINED GOWIN_CHIPDB) add_custom_target(chipdb-gowin-bbas ALL) else() # shared among all families @@ -18,8 +18,8 @@ else() set(all_device_bbas) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chipdb) - foreach(device ${GOWIN_DEVICES}) - if(NOT device IN_LIST ALL_GOWIN_DEVICES) + foreach (device ${GOWIN_DEVICES}) + if (NOT device IN_LIST ALL_GOWIN_DEVICES) message(FATAL_ERROR "Device ${device} is not a supported Gowin device") endif() @@ -35,7 +35,7 @@ else() ${CMAKE_CURRENT_SOURCE_DIR}/constids.inc VERBATIM) list(APPEND all_device_bbas ${device_bba}) - if(SERIALIZE_CHIPDBS) + if (SERIALIZE_CHIPDBS) set(PREVIOUS_CHIPDB_TARGET ${CMAKE_CURRENT_BINARY_DIR}/${device_bba}) endif() endforeach() @@ -43,7 +43,7 @@ else() add_custom_target(chipdb-gowin-bbas ALL DEPENDS ${all_device_bbas}) get_directory_property(has_parent PARENT_DIRECTORY) - if(has_parent) + if (has_parent) set(GOWIN_CHIPDB ${CMAKE_CURRENT_BINARY_DIR}/chipdb PARENT_SCOPE) # serialize chipdb build across multiple architectures set(PREVIOUS_CHIPDB_TARGET chipdb-gowin-bbas PARENT_SCOPE) diff --git a/gowin/family.cmake b/gowin/family.cmake index be607e6a..3b3f9557 100644 --- a/gowin/family.cmake +++ b/gowin/family.cmake @@ -4,24 +4,24 @@ message(STATUS "Using Gowin chipdb: ${GOWIN_CHIPDB}") set(chipdb_sources) set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb) -foreach(device ${GOWIN_DEVICES}) +foreach (device ${GOWIN_DEVICES}) set(chipdb_bba ${GOWIN_CHIPDB}/chipdb-${device}.bba) set(chipdb_bin ${family}/chipdb/chipdb-${device}.bin) set(chipdb_cc ${family}/chipdb/chipdb-${device}.cc) - if(BBASM_MODE STREQUAL "binary") + if (BBASM_MODE STREQUAL "binary") add_custom_command( OUTPUT ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} ${chipdb_bba} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "embed") + elseif (BBASM_MODE STREQUAL "embed") add_custom_command( OUTPUT ${chipdb_cc} ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --e ${chipdb_bba} ${chipdb_cc} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_sources ${chipdb_cc}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "string") + elseif (BBASM_MODE STREQUAL "string") add_custom_command( OUTPUT ${chipdb_cc} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --c ${chipdb_bba} ${chipdb_cc} @@ -29,12 +29,12 @@ foreach(device ${GOWIN_DEVICES}) list(APPEND chipdb_sources ${chipdb_cc}) endif() endforeach() -if(WIN32) +if (WIN32) set(chipdb_rc ${CMAKE_CURRENT_BINARY_DIR}/${family}/resource/chipdb.rc) list(APPEND chipdb_sources ${chipdb_rc}) file(WRITE ${chipdb_rc}) - foreach(device ${GOWIN_DEVICES}) + foreach (device ${GOWIN_DEVICES}) file(APPEND ${chipdb_rc} "${family}/chipdb-${device}.bin RCDATA \"${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb/chipdb-${device}.bin\"") endforeach() @@ -48,6 +48,6 @@ target_compile_options(chipdb-${family} PRIVATE -g0 -O0 -w) target_compile_definitions(chipdb-${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family}) target_include_directories(chipdb-${family} PRIVATE ${family}) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_sources(${family_target} PRIVATE $) endforeach() diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index 110251b9..8a2c75cc 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -2,30 +2,30 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) if (BUILD_PYTHON) - set(PYTHON_CONSOLE_SRC - ../3rdparty/python-console/ColumnFormatter.cpp - ../3rdparty/python-console/ParseHelper.cpp - ../3rdparty/python-console/ParseHelper.BlockParseState.cpp - ../3rdparty/python-console/ParseHelper.BracketParseState.cpp - ../3rdparty/python-console/ParseHelper.ContinuationParseState.cpp - ../3rdparty/python-console/ParseMessage.cpp - - ../3rdparty/python-console/modified/pyredirector.cc - ../3rdparty/python-console/modified/pyinterpreter.cc - ../3rdparty/imgui/imgui_widgets.cpp - ../3rdparty/imgui/imgui_draw.cpp - ../3rdparty/imgui/imgui.cpp - ../3rdparty/imgui/imgui_demo.cpp - ../3rdparty/qtimgui/ImGuiRenderer.cpp - ../3rdparty/qtimgui/QtImGui.cpp - ) + set(PYTHON_CONSOLE_SRC + ../3rdparty/python-console/ColumnFormatter.cpp + ../3rdparty/python-console/ParseHelper.cpp + ../3rdparty/python-console/ParseHelper.BlockParseState.cpp + ../3rdparty/python-console/ParseHelper.BracketParseState.cpp + ../3rdparty/python-console/ParseHelper.ContinuationParseState.cpp + ../3rdparty/python-console/ParseMessage.cpp + + ../3rdparty/python-console/modified/pyredirector.cc + ../3rdparty/python-console/modified/pyinterpreter.cc + ../3rdparty/imgui/imgui_widgets.cpp + ../3rdparty/imgui/imgui_draw.cpp + ../3rdparty/imgui/imgui.cpp + ../3rdparty/imgui/imgui_demo.cpp + ../3rdparty/qtimgui/ImGuiRenderer.cpp + ../3rdparty/qtimgui/QtImGui.cpp + ) endif() aux_source_directory(. GUI_SOURCE_FILES) aux_source_directory(${family}/ GUI_SOURCE_FILES) set(_RESOURCES base.qrc ${family}/nextpnr.qrc) - + qt5_add_resources(GUI_RESOURCE_FILES ${_RESOURCES}) set(GUI_LIBRARY_FILES_${ufamily} Qt5::Widgets Qt5::OpenGL ${OPENGL_LIBRARIES} QtPropertyBrowser PARENT_SCOPE) @@ -43,6 +43,6 @@ target_compile_definitions(gui_${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${fam target_link_libraries(gui_${family} Qt5::Widgets) -foreach(lib_dep ${EXTRA_LIB_DEPS}) +foreach (lib_dep ${EXTRA_LIB_DEPS}) target_link_libraries(gui_${family} ${lib_dep}) endforeach() diff --git a/himbaechel/family.cmake b/himbaechel/family.cmake index 80253f89..99eb7a12 100644 --- a/himbaechel/family.cmake +++ b/himbaechel/family.cmake @@ -3,22 +3,22 @@ set(HIMBAECHEL_UARCHES "example;gowin;xilinx;ng-ultra") set(HIMBAECHEL_UARCH "${HIMBAECHEL_UARCHES}" CACHE STRING "Microarchitectures for nextpnr-himbaechel build") set_property(CACHE HIMBAECHEL_UARCH PROPERTY STRINGS ${HIMBAECHEL_UARCHES}) -foreach(item ${HIMBAECHEL_UARCH}) +foreach (item ${HIMBAECHEL_UARCH}) if (NOT item IN_LIST HIMBAECHEL_UARCHES) message(FATAL_ERROR "Microarchitecture '${item}' not in list of supported architectures") endif() endforeach() -foreach(uarch ${HIMBAECHEL_UARCH}) +foreach (uarch ${HIMBAECHEL_UARCH}) add_subdirectory(${family}/uarch/${uarch}) aux_source_directory(${family}/uarch/${uarch} HM_UARCH_FILES) - foreach(target ${family_targets}) + foreach (target ${family_targets}) target_sources(${target} PRIVATE ${HM_UARCH_FILES}) endforeach() if (BUILD_TESTS) - foreach(target ${family_test_targets}) + foreach (target ${family_test_targets}) aux_source_directory(${family}/uarch/${uarch}/tests/ HM_UARCH_TEST_FILES) target_sources(${target} PRIVATE ${HM_UARCH_TEST_FILES}) endforeach() endif() -endforeach(uarch) +endforeach() diff --git a/himbaechel/uarch/example/CMakeLists.txt b/himbaechel/uarch/example/CMakeLists.txt index 26be2ea3..52a1b2a0 100644 --- a/himbaechel/uarch/example/CMakeLists.txt +++ b/himbaechel/uarch/example/CMakeLists.txt @@ -9,7 +9,7 @@ message(STATUS "Enabled Himbaechel-Example devices: ${HIMBAECHEL_EXAMPLE_DEVICES set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/share/himbaechel/example) -foreach(device ${HIMBAECHEL_EXAMPLE_DEVICES}) +foreach (device ${HIMBAECHEL_EXAMPLE_DEVICES}) set(device_bba ${CMAKE_BINARY_DIR}/share/himbaechel/example/chipdb-${device}.bba) set(device_bin ${CMAKE_BINARY_DIR}/share/himbaechel/example/chipdb-${device}.bin) add_custom_command( diff --git a/himbaechel/uarch/gowin/CMakeLists.txt b/himbaechel/uarch/gowin/CMakeLists.txt index 77e8c28a..7375d821 100644 --- a/himbaechel/uarch/gowin/CMakeLists.txt +++ b/himbaechel/uarch/gowin/CMakeLists.txt @@ -5,17 +5,17 @@ project(himbaechel-gowin-chipdb NONE) set(ALL_HIMBAECHEL_GOWIN_DEVICES GW1N-1 GW1NZ-1 GW1N-4 GW1N-9 GW1N-9C GW1NS-4 GW2A-18 GW2A-18C) set(HIMBAECHEL_GOWIN_DEVICES "" CACHE STRING "Include support for these Gowin devices (available: ${ALL_HIMBAECHEL_GOWIN_DEVICES})") -if(HIMBAECHEL_GOWIN_DEVICES STREQUAL "all") +if (HIMBAECHEL_GOWIN_DEVICES STREQUAL "all") set(HIMBAECHEL_GOWIN_DEVICES ${ALL_HIMBAECHEL_GOWIN_DEVICES}) endif() message(STATUS "Enabled Himbaechel-Gowin devices: ${HIMBAECHEL_GOWIN_DEVICES}") -if(DEFINED ENV{APYCULA_INSTALL_PREFIX}) +if (DEFINED ENV{APYCULA_INSTALL_PREFIX}) set(apycula_default_install_prefix $ENV{APYCULA_INSTALL_PREFIX}) endif() set(APYCULA_INSTALL_PREFIX ${apycula_default_install_prefix} CACHE STRING "Apycula install prefix (virtualenv directory)") -if(NOT APYCULA_INSTALL_PREFIX STREQUAL "") +if (NOT APYCULA_INSTALL_PREFIX STREQUAL "") message(STATUS "Apycula install prefix: ${APYCULA_INSTALL_PREFIX}") set(apycula_Python3_EXECUTABLE ${APYCULA_INSTALL_PREFIX}/bin/python) else() @@ -25,8 +25,8 @@ endif() set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/share/himbaechel/gowin) -foreach(device ${HIMBAECHEL_GOWIN_DEVICES}) - if(NOT device IN_LIST ALL_HIMBAECHEL_GOWIN_DEVICES) +foreach (device ${HIMBAECHEL_GOWIN_DEVICES}) + if (NOT device IN_LIST ALL_HIMBAECHEL_GOWIN_DEVICES) message(FATAL_ERROR "Device ${device} is not a supported Gowin device") endif() diff --git a/himbaechel/uarch/ng-ultra/CMakeLists.txt b/himbaechel/uarch/ng-ultra/CMakeLists.txt index f3ed2589..7d9bc0f4 100644 --- a/himbaechel/uarch/ng-ultra/CMakeLists.txt +++ b/himbaechel/uarch/ng-ultra/CMakeLists.txt @@ -11,8 +11,8 @@ set(HIMBAECHEL_PRJBEYOND_DB "" CACHE STRING set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/share/himbaechel/ng-ultra) -foreach(device ${HIMBAECHEL_NGULTRA_DEVICES}) - if("${HIMBAECHEL_PRJBEYOND_DB}" STREQUAL "") +foreach (device ${HIMBAECHEL_NGULTRA_DEVICES}) + if ("${HIMBAECHEL_PRJBEYOND_DB}" STREQUAL "") message(SEND_ERROR "HIMBAECHEL_PRJBEYOND_DB must be set to a prjbeyond database checkout") endif() diff --git a/himbaechel/uarch/xilinx/CMakeLists.txt b/himbaechel/uarch/xilinx/CMakeLists.txt index 62d68f05..3d70ce01 100644 --- a/himbaechel/uarch/xilinx/CMakeLists.txt +++ b/himbaechel/uarch/xilinx/CMakeLists.txt @@ -11,8 +11,8 @@ message(STATUS "Enabled Himbaechel-Xilinx devices: ${HIMBAECHEL_XILINX_DEVICES}" set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/share/himbaechel/xilinx) -foreach(device ${HIMBAECHEL_XILINX_DEVICES}) - if("${HIMBAECHEL_PRJXRAY_DB}" STREQUAL "") +foreach (device ${HIMBAECHEL_XILINX_DEVICES}) + if ("${HIMBAECHEL_PRJXRAY_DB}" STREQUAL "") message(SEND_ERROR "HIMBAECHEL_PRJXRAY_DB must be set to a prjxray database checkout") endif() diff --git a/ice40/CMakeLists.txt b/ice40/CMakeLists.txt index 47ba7ba2..0644395d 100644 --- a/ice40/CMakeLists.txt +++ b/ice40/CMakeLists.txt @@ -6,7 +6,7 @@ set(ICE40_DEVICES ${ALL_ICE40_DEVICES} CACHE STRING "Include support for these iCE40 devices (available: ${ALL_ICE40_DEVICES})") message(STATUS "Enabled iCE40 devices: ${ICE40_DEVICES}") -if(DEFINED ICE40_CHIPDB) +if (DEFINED ICE40_CHIPDB) add_custom_target(chipdb-ice40-bbas ALL) else() # shared among all families @@ -15,37 +15,37 @@ else() set(icestorm_default_install_prefix ${CMAKE_INSTALL_PREFIX}) # for compatibility with old build scripts - if(DEFINED ICEBOX_ROOT) + if (DEFINED ICEBOX_ROOT) message(WARNING "-DICEBOX_ROOT= is deprecated, use -DICESTORM_INSTALL_PREFIX=${ICEBOX_ROOT} instead") get_filename_component(dir ${ICEBOX_ROOT} DIRECTORY) get_filename_component(dir ${dir} DIRECTORY) set(icestorm_default_install_prefix ${dir}) - elseif(DEFINED ENV{ICESTORM_INSTALL_PREFIX}) + elseif (DEFINED ENV{ICESTORM_INSTALL_PREFIX}) set(icestorm_default_install_prefix $ENV{ICESTORM_INSTALL_PREFIX}) endif() set(ICESTORM_INSTALL_PREFIX ${icestorm_default_install_prefix} CACHE STRING "IceStorm install prefix") message(STATUS "IceStorm install prefix: ${ICESTORM_INSTALL_PREFIX}") - if(NOT ICEBOX_DATADIR) + if (NOT ICEBOX_DATADIR) set(ICEBOX_DATADIR ${ICESTORM_INSTALL_PREFIX}/share/icebox) endif() message(STATUS "icebox data directory: ${ICEBOX_DATADIR}") set(all_device_bbas) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chipdb) - foreach(device ${ICE40_DEVICES}) - if(NOT device IN_LIST ALL_ICE40_DEVICES) + foreach (device ${ICE40_DEVICES}) + if (NOT device IN_LIST ALL_ICE40_DEVICES) message(FATAL_ERROR "Device ${device} is not a supported iCE40 device") endif() - if(device STREQUAL "5k") + if (device STREQUAL "5k") set(timing_opts --slow ${ICEBOX_DATADIR}/timings_up5k.txt) - elseif(device STREQUAL "u4k") + elseif (device STREQUAL "u4k") set(timing_opts --slow ${ICEBOX_DATADIR}/timings_u4k.txt) - elseif(device STREQUAL "384") + elseif (device STREQUAL "384") set(timing_opts --slow ${ICEBOX_DATADIR}/timings_lp384.txt) else() @@ -72,7 +72,7 @@ else() ${PREVIOUS_CHIPDB_TARGET} VERBATIM) list(APPEND all_device_bbas ${device_bba}) - if(SERIALIZE_CHIPDBS) + if (SERIALIZE_CHIPDBS) set(PREVIOUS_CHIPDB_TARGET ${CMAKE_CURRENT_BINARY_DIR}/${device_bba}) endif() endforeach() @@ -80,7 +80,7 @@ else() add_custom_target(chipdb-ice40-bbas ALL DEPENDS ${all_device_bbas}) get_directory_property(has_parent PARENT_DIRECTORY) - if(has_parent) + if (has_parent) set(ICE40_CHIPDB ${CMAKE_CURRENT_BINARY_DIR}/chipdb PARENT_SCOPE) # serialize chipdb build across multiple architectures set(PREVIOUS_CHIPDB_TARGET chipdb-ice40-bbas PARENT_SCOPE) diff --git a/ice40/family.cmake b/ice40/family.cmake index fd16df40..d8eb6d83 100644 --- a/ice40/family.cmake +++ b/ice40/family.cmake @@ -4,24 +4,24 @@ message(STATUS "Using iCE40 chipdb: ${ICE40_CHIPDB}") set(chipdb_sources) set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb) -foreach(device ${ICE40_DEVICES}) +foreach (device ${ICE40_DEVICES}) set(chipdb_bba ${ICE40_CHIPDB}/chipdb-${device}.bba) set(chipdb_bin ${family}/chipdb/chipdb-${device}.bin) set(chipdb_cc ${family}/chipdb/chipdb-${device}.cc) - if(BBASM_MODE STREQUAL "binary") + if (BBASM_MODE STREQUAL "binary") add_custom_command( OUTPUT ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} ${chipdb_bba} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "embed") + elseif (BBASM_MODE STREQUAL "embed") add_custom_command( OUTPUT ${chipdb_cc} ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --e ${chipdb_bba} ${chipdb_cc} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_sources ${chipdb_cc}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "string") + elseif (BBASM_MODE STREQUAL "string") add_custom_command( OUTPUT ${chipdb_cc} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --c ${chipdb_bba} ${chipdb_cc} @@ -29,12 +29,12 @@ foreach(device ${ICE40_DEVICES}) list(APPEND chipdb_sources ${chipdb_cc}) endif() endforeach() -if(WIN32) +if (WIN32) set(chipdb_rc ${CMAKE_CURRENT_BINARY_DIR}/${family}/resource/chipdb.rc) list(APPEND chipdb_sources ${chipdb_rc}) file(WRITE ${chipdb_rc}) - foreach(device ${ICE40_DEVICES}) + foreach (device ${ICE40_DEVICES}) file(APPEND ${chipdb_rc} "${family}/chipdb-${device}.bin RCDATA \"${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb/chipdb-${device}.bin\"") endforeach() @@ -48,6 +48,6 @@ target_compile_options(chipdb-${family} PRIVATE -g0 -O0 -w) target_compile_definitions(chipdb-${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family}) target_include_directories(chipdb-${family} PRIVATE ${family}) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_sources(${family_target} PRIVATE $) endforeach() diff --git a/machxo2/CMakeLists.txt b/machxo2/CMakeLists.txt index d40d8b8f..9bc6e9e0 100644 --- a/machxo2/CMakeLists.txt +++ b/machxo2/CMakeLists.txt @@ -6,7 +6,7 @@ set(MACHXO2_DEVICES 1200 6900 CACHE STRING "Include support for these MachXO2/XO3 devices (available: ${ALL_MACHXO2_DEVICES})") message(STATUS "Enabled MachXO2/XO3 devices: ${MACHXO2_DEVICES}") -if(DEFINED MACHXO2_CHIPDB) +if (DEFINED MACHXO2_CHIPDB) add_custom_target(chipdb-machxo2-bbas ALL) else() # shared among all families @@ -15,7 +15,7 @@ else() set(TRELLIS_PROGRAM_PREFIX "" CACHE STRING "Trellis name prefix") - if(TRELLIS_PROGRAM_PREFIX) + if (TRELLIS_PROGRAM_PREFIX) message(STATUS "Trellis program prefix: ${TRELLIS_PROGRAM_PREFIX}") endif() @@ -23,23 +23,23 @@ else() "Trellis install prefix") message(STATUS "Trellis install prefix: ${TRELLIS_INSTALL_PREFIX}") - if(NOT TRELLIS_LIBDIR) + if (NOT TRELLIS_LIBDIR) # The pytrellis library isn't a normal shared library, but rather a native Python library; # it does not follow the normal platform conventions for shared libraries, so we can't just # use find_library() here. Instead, we emulate the useful parts of the find_library() logic # for use with find_path(). set(pytrellis_paths) - foreach(prefix_path ${CMAKE_PREFIX_PATH}) + foreach (prefix_path ${CMAKE_PREFIX_PATH}) list(APPEND pytrellis_paths ${prefix_path}/lib) - if(CMAKE_LIBRARY_ARCHITECTURE) + if (CMAKE_LIBRARY_ARCHITECTURE) list(APPEND pytrellis_paths ${prefix_path}/lib/${CMAKE_LIBRARY_ARCHITECTURE}) endif() endforeach() list(APPEND pytrellis_paths ${CMAKE_LIBRARY_PATH}) - if(NOT NO_CMAKE_SYSTEM_PATH) - foreach(prefix_path ${CMAKE_SYSTEM_PREFIX_PATH}) + if (NOT NO_CMAKE_SYSTEM_PATH) + foreach (prefix_path ${CMAKE_SYSTEM_PREFIX_PATH}) list(APPEND pytrellis_paths ${prefix_path}/lib) - if(CMAKE_LIBRARY_ARCHITECTURE) + if (CMAKE_LIBRARY_ARCHITECTURE) list(APPEND pytrellis_paths ${prefix_path}/lib/${CMAKE_LIBRARY_ARCHITECTURE}) endif() endforeach() @@ -47,7 +47,7 @@ else() endif() message(STATUS "Searching for pytrellis in: ${pytrellis_paths}") - if(WIN32) + if (WIN32) set(pytrellis_lib pytrellis.pyd) else() set(pytrellis_lib pytrellis${CMAKE_SHARED_MODULE_SUFFIX}) @@ -58,21 +58,21 @@ else() PATHS ${pytrellis_paths} PATH_SUFFIXES ${TRELLIS_PROGRAM_PREFIX}trellis DOC "Location of the pytrellis library") - if(NOT TRELLIS_LIBDIR) + if (NOT TRELLIS_LIBDIR) message(FATAL_ERROR "Failed to locate the pytrellis library") endif() endif() message(STATUS "Trellis library directory: ${TRELLIS_LIBDIR}") - if(NOT TRELLIS_DATADIR) + if (NOT TRELLIS_DATADIR) set(TRELLIS_DATADIR ${TRELLIS_INSTALL_PREFIX}/share/${TRELLIS_PROGRAM_PREFIX}trellis) endif() message(STATUS "Trellis data directory: ${TRELLIS_DATADIR}") set(all_device_bbas) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chipdb) - foreach(device ${MACHXO2_DEVICES}) - if(NOT device IN_LIST ALL_MACHXO2_DEVICES) + foreach (device ${MACHXO2_DEVICES}) + if (NOT device IN_LIST ALL_MACHXO2_DEVICES) message(FATAL_ERROR "Device ${device} is not a supported MachXO2/XO3 device") endif() @@ -96,7 +96,7 @@ else() ${PREVIOUS_CHIPDB_TARGET} VERBATIM) list(APPEND all_device_bbas ${device_bba}) - if(SERIALIZE_CHIPDBS) + if (SERIALIZE_CHIPDBS) set(PREVIOUS_CHIPDB_TARGET ${CMAKE_CURRENT_BINARY_DIR}/${device_bba}) endif() endforeach() @@ -104,7 +104,7 @@ else() add_custom_target(chipdb-machxo2-bbas ALL DEPENDS ${all_device_bbas}) get_directory_property(has_parent PARENT_DIRECTORY) - if(has_parent) + if (has_parent) set(MACHXO2_CHIPDB ${CMAKE_CURRENT_BINARY_DIR}/chipdb PARENT_SCOPE) # serialize chipdb build across multiple architectures set(PREVIOUS_CHIPDB_TARGET chipdb-machxo2-bbas PARENT_SCOPE) diff --git a/machxo2/family.cmake b/machxo2/family.cmake index 30fd42ba..949bf89e 100644 --- a/machxo2/family.cmake +++ b/machxo2/family.cmake @@ -4,24 +4,24 @@ message(STATUS "Using MachXO2/XO3 chipdb: ${MACHXO2_CHIPDB}") set(chipdb_sources) set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb) -foreach(device ${MACHXO2_DEVICES}) +foreach (device ${MACHXO2_DEVICES}) set(chipdb_bba ${MACHXO2_CHIPDB}/chipdb-${device}.bba) set(chipdb_bin ${family}/chipdb/chipdb-${device}.bin) set(chipdb_cc ${family}/chipdb/chipdb-${device}.cc) - if(BBASM_MODE STREQUAL "binary") + if (BBASM_MODE STREQUAL "binary") add_custom_command( OUTPUT ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} ${chipdb_bba} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "embed") + elseif (BBASM_MODE STREQUAL "embed") add_custom_command( OUTPUT ${chipdb_cc} ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --e ${chipdb_bba} ${chipdb_cc} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_sources ${chipdb_cc}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "string") + elseif (BBASM_MODE STREQUAL "string") add_custom_command( OUTPUT ${chipdb_cc} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --c ${chipdb_bba} ${chipdb_cc} @@ -29,12 +29,12 @@ foreach(device ${MACHXO2_DEVICES}) list(APPEND chipdb_sources ${chipdb_cc}) endif() endforeach() -if(WIN32) +if (WIN32) set(chipdb_rc ${CMAKE_CURRENT_BINARY_DIR}/${family}/resource/chipdb.rc) list(APPEND chipdb_sources ${chipdb_rc}) file(WRITE ${chipdb_rc}) - foreach(device ${MACHXO2_DEVICES}) + foreach (device ${MACHXO2_DEVICES}) file(APPEND ${chipdb_rc} "${family}/chipdb-${device}.bin RCDATA \"${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb/chipdb-${device}.bin\"") endforeach() @@ -50,7 +50,7 @@ target_include_directories(chipdb-${family} PRIVATE ${family}) configure_file(${family}/machxo2_available.h.in ${CMAKE_CURRENT_BINARY_DIR}/generated/machxo2_available.h) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_sources(${family_target} PRIVATE $) target_sources(${family_target} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/generated/machxo2_available.h) endforeach() diff --git a/mistral/family.cmake b/mistral/family.cmake index dcbab4ff..80a477ac 100644 --- a/mistral/family.cmake +++ b/mistral/family.cmake @@ -7,7 +7,7 @@ add_subdirectory(${MISTRAL_ROOT}/libmistral ${CMAKE_CURRENT_BINARY_DIR}/libmistr find_package(LibLZMA REQUIRED) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_include_directories(${family_target} PRIVATE ${MISTRAL_ROOT}/libmistral ${CMAKE_CURRENT_BINARY_DIR}/tools ${CMAKE_CURRENT_BINARY_DIR}/libmistral ${LIBLZMA_INCLUDE_DIRS}) target_link_libraries(${family_target} PRIVATE mistral ${LIBLZMA_LIBRARIES}) endforeach() diff --git a/nexus/CMakeLists.txt b/nexus/CMakeLists.txt index 22e785f7..2becf9ef 100644 --- a/nexus/CMakeLists.txt +++ b/nexus/CMakeLists.txt @@ -9,23 +9,23 @@ set(NEXUS_FAMILIES ${ALL_NEXUS_FAMILIES} CACHE STRING "Include support for these Nexus families (available: ${ALL_NEXUS_FAMILIES})") message(STATUS "Enabled Nexus families: ${NEXUS_FAMILIES}") -if(DEFINED NEXUS_CHIPDB) +if (DEFINED NEXUS_CHIPDB) add_custom_target(chipdb-nexus-bbas ALL) else() # shared among all families - IF(DEFINED ENV{OXIDE_INSTALL_PREFIX}) + if (DEFINED ENV{OXIDE_INSTALL_PREFIX}) set(oxide_default_install_prefix $ENV{OXIDE_INSTALL_PREFIX}) - ELSE() + else() set(oxide_default_install_prefix ${CMAKE_INSTALL_PREFIX}) - ENDIF() + endif() set(OXIDE_INSTALL_PREFIX "${oxide_default_install_prefix}" CACHE STRING "prjoxide install prefix") message(STATUS "prjoxide install prefix: ${OXIDE_INSTALL_PREFIX}") set(all_device_bbas) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chipdb) - foreach(subfamily ${NEXUS_FAMILIES}) - if(NOT subfamily IN_LIST ALL_NEXUS_FAMILIES) + foreach (subfamily ${NEXUS_FAMILIES}) + if (NOT subfamily IN_LIST ALL_NEXUS_FAMILIES) message(FATAL_ERROR "${subfamily} is not a supported Nexus family") endif() @@ -33,7 +33,7 @@ else() set(PRJOXIDE_TOOL ${OXIDE_INSTALL_PREFIX}/bin/prjoxide) add_custom_command( OUTPUT ${family_bba} - COMMAND + COMMAND ${PRJOXIDE_TOOL} bba-export ${subfamily} ${CMAKE_CURRENT_SOURCE_DIR}/constids.inc ${family_bba}.new # atomically update COMMAND ${CMAKE_COMMAND} -E rename ${family_bba}.new ${family_bba} @@ -44,7 +44,7 @@ else() ${PREVIOUS_CHIPDB_TARGET} VERBATIM) list(APPEND all_device_bbas ${family_bba}) - if(SERIALIZE_CHIPDBS) + if (SERIALIZE_CHIPDBS) set(PREVIOUS_CHIPDB_TARGET ${CMAKE_CURRENT_BINARY_DIR}/${family_bba}) endif() endforeach() @@ -52,7 +52,7 @@ else() add_custom_target(chipdb-nexus-bbas ALL DEPENDS ${all_device_bbas}) get_directory_property(has_parent PARENT_DIRECTORY) - if(has_parent) + if (has_parent) set(NEXUS_CHIPDB ${CMAKE_CURRENT_BINARY_DIR}/chipdb PARENT_SCOPE) # serialize chipdb build across multiple architectures set(PREVIOUS_CHIPDB_TARGET chipdb-nexus-bbas PARENT_SCOPE) diff --git a/nexus/family.cmake b/nexus/family.cmake index 4ee65dbc..b46df71c 100644 --- a/nexus/family.cmake +++ b/nexus/family.cmake @@ -4,24 +4,24 @@ message(STATUS "Using Nexus chipdb: ${NEXUS_CHIPDB}") set(chipdb_sources) set(chipdb_binaries) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb) -foreach(subfamily ${NEXUS_FAMILIES}) +foreach (subfamily ${NEXUS_FAMILIES}) set(chipdb_bba ${NEXUS_CHIPDB}/chipdb-${subfamily}.bba) set(chipdb_bin ${family}/chipdb/chipdb-${subfamily}.bin) set(chipdb_cc ${family}/chipdb/chipdb-${subfamily}.cc) - if(BBASM_MODE STREQUAL "binary") + if (BBASM_MODE STREQUAL "binary") add_custom_command( OUTPUT ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} ${chipdb_bba} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "embed") + elseif (BBASM_MODE STREQUAL "embed") add_custom_command( OUTPUT ${chipdb_cc} ${chipdb_bin} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --e ${chipdb_bba} ${chipdb_cc} ${chipdb_bin} DEPENDS bbasm chipdb-${family}-bbas ${chipdb_bba}) list(APPEND chipdb_sources ${chipdb_cc}) list(APPEND chipdb_binaries ${chipdb_bin}) - elseif(BBASM_MODE STREQUAL "string") + elseif (BBASM_MODE STREQUAL "string") add_custom_command( OUTPUT ${chipdb_cc} COMMAND bbasm ${BBASM_ENDIAN_FLAG} --c ${chipdb_bba} ${chipdb_cc} @@ -29,12 +29,12 @@ foreach(subfamily ${NEXUS_FAMILIES}) list(APPEND chipdb_sources ${chipdb_cc}) endif() endforeach() -if(WIN32) +if (WIN32) set(chipdb_rc ${CMAKE_CURRENT_BINARY_DIR}/${family}/resource/chipdb.rc) list(APPEND chipdb_sources ${chipdb_rc}) file(WRITE ${chipdb_rc}) - foreach(subfamily ${NEXUS_FAMILIES}) + foreach (subfamily ${NEXUS_FAMILIES}) file(APPEND ${chipdb_rc} "${family}/chipdb-${subfamily}.bin RCDATA \"${CMAKE_CURRENT_BINARY_DIR}/${family}/chipdb/chipdb-${subfamily}.bin\"") endforeach() @@ -48,6 +48,6 @@ target_compile_options(chipdb-${family} PRIVATE -g0 -O0 -w) target_compile_definitions(chipdb-${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family}) target_include_directories(chipdb-${family} PRIVATE ${family}) -foreach(family_target ${family_targets}) +foreach (family_target ${family_targets}) target_sources(${family_target} PRIVATE $) endforeach()