Fixup GUI link dependencies on headers from libraries.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
This commit is contained in:
parent
b8678e778e
commit
f4dc67879e
@ -1,6 +1,9 @@
|
|||||||
cmake_minimum_required(VERSION 3.5)
|
cmake_minimum_required(VERSION 3.5)
|
||||||
project(nextpnr CXX C)
|
project(nextpnr CXX C)
|
||||||
|
|
||||||
|
# Allow family.cmake add additional dependencies to gui_${family}.
|
||||||
|
cmake_policy(SET CMP0079 NEW)
|
||||||
|
|
||||||
option(BUILD_GUI "Build GUI" OFF)
|
option(BUILD_GUI "Build GUI" OFF)
|
||||||
option(BUILD_PYTHON "Build Python Integration" ON)
|
option(BUILD_PYTHON "Build Python Integration" ON)
|
||||||
option(BUILD_TESTS "Build tests" OFF)
|
option(BUILD_TESTS "Build tests" OFF)
|
||||||
@ -223,6 +226,12 @@ else()
|
|||||||
set(BBASM_ENDIAN_FLAG "--le")
|
set(BBASM_ENDIAN_FLAG "--le")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(EXTRA_LIB_DEPS)
|
||||||
|
if (USE_THREADS)
|
||||||
|
list(APPEND EXTRA_LIB_DEPS absl::flat_hash_map)
|
||||||
|
list(APPEND EXTRA_LIB_DEPS absl::flat_hash_set)
|
||||||
|
endif()
|
||||||
|
|
||||||
foreach (family ${ARCH})
|
foreach (family ${ARCH})
|
||||||
message(STATUS "Configuring architecture: ${family}")
|
message(STATUS "Configuring architecture: ${family}")
|
||||||
string(TOUPPER ${family} ufamily)
|
string(TOUPPER ${family} ufamily)
|
||||||
@ -276,10 +285,9 @@ foreach (family ${ARCH})
|
|||||||
# Include the family-specific CMakeFile
|
# Include the family-specific CMakeFile
|
||||||
include(${family}/family.cmake)
|
include(${family}/family.cmake)
|
||||||
foreach (target ${family_targets})
|
foreach (target ${family_targets})
|
||||||
if (USE_THREADS)
|
foreach(lib_dep ${EXTRA_LIB_DEPS})
|
||||||
target_link_libraries(${target} PRIVATE absl::flat_hash_map)
|
target_link_libraries(${target} PRIVATE ${lib_dep})
|
||||||
target_link_libraries(${target} PRIVATE absl::flat_hash_set)
|
endforeach()
|
||||||
endif()
|
|
||||||
|
|
||||||
# Include family-specific source files to all family targets and set defines appropriately
|
# Include family-specific source files to all family targets and set defines appropriately
|
||||||
target_include_directories(${target} PRIVATE ${family}/ ${CMAKE_CURRENT_BINARY_DIR}/generated/)
|
target_include_directories(${target} PRIVATE ${family}/ ${CMAKE_CURRENT_BINARY_DIR}/generated/)
|
||||||
|
@ -30,3 +30,8 @@ foreach (target ${family_targets})
|
|||||||
target_link_libraries(${target} PRIVATE fpga_interchange_capnp)
|
target_link_libraries(${target} PRIVATE fpga_interchange_capnp)
|
||||||
target_link_libraries(${target} PRIVATE z)
|
target_link_libraries(${target} PRIVATE z)
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
|
if(BUILD_GUI)
|
||||||
|
target_link_libraries(gui_${family} fpga_interchange_capnp)
|
||||||
|
target_link_libraries(gui_${family} z)
|
||||||
|
endif()
|
||||||
|
@ -40,3 +40,7 @@ endif()
|
|||||||
|
|
||||||
target_compile_definitions(gui_${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family} ARCH_${ufamily} ARCHNAME=${family} QT_NO_KEYWORDS)
|
target_compile_definitions(gui_${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family} ARCH_${ufamily} ARCHNAME=${family} QT_NO_KEYWORDS)
|
||||||
target_link_libraries(gui_${family} Qt5::Widgets)
|
target_link_libraries(gui_${family} Qt5::Widgets)
|
||||||
|
|
||||||
|
foreach(lib_dep ${EXTRA_LIB_DEPS})
|
||||||
|
target_link_libraries(gui_${family} ${lib_dep})
|
||||||
|
endforeach()
|
||||||
|
Loading…
Reference in New Issue
Block a user