From eb9d0067ca578ee35c6ea6a8bb3d7935f9176f21 Mon Sep 17 00:00:00 2001 From: Juha Alanen Date: Fri, 24 Jan 2020 11:07:15 +0200 Subject: [build] Fix test linking for MacOS and Qt --- next/platform/macos/macos.cmake | 14 ++++++++++++-- next/platform/qt/qt.cmake | 18 +++++++++++++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/next/platform/macos/macos.cmake b/next/platform/macos/macos.cmake index 2b28b7e1e5..631adfc36b 100644 --- a/next/platform/macos/macos.cmake +++ b/next/platform/macos/macos.cmake @@ -165,6 +165,11 @@ add_executable( ${MBGL_ROOT}/platform/default/src/mbgl/test/main.cpp ) +target_include_directories( + mbgl-test-runner + PUBLIC ${MBGL_ROOT}/include ${MBGL_ROOT}/test/include +) + target_compile_definitions( mbgl-test-runner PRIVATE WORK_DIRECTORY=${MBGL_ROOT} @@ -172,7 +177,7 @@ target_compile_definitions( target_link_libraries( mbgl-test-runner - PRIVATE mbgl-compiler-options mbgl-test + PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-test ) add_executable( @@ -180,9 +185,14 @@ add_executable( ${MBGL_ROOT}/platform/default/src/mbgl/benchmark/main.cpp ) +target_include_directories( + mbgl-benchmark-runner + PUBLIC ${MBGL_ROOT}/benchmark/include +) + target_link_libraries( mbgl-benchmark-runner - PRIVATE mbgl-compiler-options mbgl-benchmark + PRIVATE mbgl-compiler-options -Wl,-force_load mbgl-benchmark ) add_executable( diff --git a/next/platform/qt/qt.cmake b/next/platform/qt/qt.cmake index 74cea29efb..44fe442ce2 100644 --- a/next/platform/qt/qt.cmake +++ b/next/platform/qt/qt.cmake @@ -165,6 +165,11 @@ add_executable( ${MBGL_ROOT}/platform/qt/test/main.cpp ) +target_include_directories( + mbgl-test-runner + PUBLIC ${MBGL_ROOT}/include ${MBGL_ROOT}/test/include +) + target_compile_definitions( mbgl-test-runner PRIVATE WORK_DIRECTORY=${MBGL_ROOT} @@ -176,10 +181,21 @@ target_link_libraries( Qt5::Gui Qt5::OpenGL mbgl-compiler-options - mbgl-test pthread ) +if(CMAKE_SYSTEM_NAME STREQUAL Darwin) + target_link_libraries( + mbgl-test-runner + PRIVATE -Wl,-force_load mbgl-test + ) +else() + target_link_libraries( + mbgl-test-runner + PRIVATE -Wl,--whole-archive mbgl-test -Wl,--no-whole-archive + ) +endif() + find_program(MBGL_QDOC NAMES qdoc) if(MBGL_QDOC) -- cgit v1.2.1