From 47f24a702464e5afbf04e72ea4acd79615b0b0ef Mon Sep 17 00:00:00 2001 From: gatecat Date: Fri, 4 Jun 2021 19:21:09 +0100 Subject: [PATCH] mistral: Build libmistral as a cmake subdir Signed-off-by: gatecat --- CMakeLists.txt | 1 + mistral/family.cmake | 7 +++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 42d55a97..58b0fead 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -346,6 +346,7 @@ string(REGEX REPLACE "[^;]*nexus/chipdb/chipdb-[^;]*.cc" "" CLANGFORMAT_FILES "$ string(REGEX REPLACE "[^;]*/machxo2/chipdb/chipdb-[^;]*.cc" "" CLANGFORMAT_FILES "${CLANGFORMAT_FILES}") string(REGEX REPLACE "[^;]*/3rdparty[^;]*" "" CLANGFORMAT_FILES "${CLANGFORMAT_FILES}") string(REGEX REPLACE "[^;]*/generated[^;]*" "" CLANGFORMAT_FILES "${CLANGFORMAT_FILES}") +string(REGEX REPLACE "[^;]*/libmistral/[^;]*" "" CLANGFORMAT_FILES "${CLANGFORMAT_FILES}") add_custom_target( clangformat diff --git a/mistral/family.cmake b/mistral/family.cmake index 552c64ae..a18b5b27 100644 --- a/mistral/family.cmake +++ b/mistral/family.cmake @@ -1,13 +1,12 @@ set(MISTRAL_ROOT "" CACHE STRING "Mistral install path") +set(MISTRAL_DONT_INSTALL ON) -aux_source_directory(${MISTRAL_ROOT}/lib MISTRAL_LIB_FILES) -add_library(mistral STATIC ${MISTRAL_LIB_FILES}) -target_compile_options(mistral PRIVATE -Wno-maybe-uninitialized -Wno-uninitialized -Wno-unknown-warning-option) +add_subdirectory(${MISTRAL_ROOT}/libmistral ${CMAKE_CURRENT_BINARY_DIR}/libmistral) find_package(LibLZMA REQUIRED) foreach(family_target ${family_targets}) - target_include_directories(${family_target} PRIVATE ${MISTRAL_ROOT}/lib ${LIBLZMA_INCLUDE_DIRS}) + target_include_directories(${family_target} PRIVATE ${MISTRAL_ROOT}/libmistral ${LIBLZMA_INCLUDE_DIRS}) target_link_libraries(${family_target} PRIVATE mistral ${LIBLZMA_LIBRARIES}) # Currently required to avoid issues with mistral (LTO means the warnings can end up in nextpnr) target_link_options(${family_target} PRIVATE -Wno-maybe-uninitialized -Wno-uninitialized -Wno-unknown-warning-option)