aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt15
1 files changed, 10 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 32b6490..e95c601 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -18,10 +18,6 @@ find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets Concurrent)
# Compile option for mastodonpp support
option(MASTODONPP_BUILD "Build a version with mastodonpp support" ON)
-if(MASTODONPP_BUILD)
- find_package(mastodonpp REQUIRED)
-endif()
-
# Get Git commit hash, from http://xit0.org/2013/04/cmake-use-git-branch-and-commit-details-in-project/
# Get a human-readable name of the latest commit on the current branch
execute_process(
@@ -133,13 +129,22 @@ else()
endif()
if(MASTODONPP_BUILD)
+ # Set build options for mastodonpp
+ # See https://stackoverflow.com/a/20239564
+ set(BUILD_SHARED_LIBS OFF CACHE INTERNAL "")
+
+ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/mastodonpp EXCLUDE_FROM_ALL)
+ # -fsanitize=undefined is required for linking, as else you get undefined symbols
+ target_link_libraries(ActorViewer PRIVATE mastodonpp -fsanitize=undefined)
+
+ # Define preprocessor macro MASTODONPP_BUILD
target_compile_definitions(ActorViewer PRIVATE MASTODONPP_BUILD)
endif()
configure_file(gen/git_version.h.in gen/git_version.h)
target_include_directories(ActorViewer PRIVATE gen)
-target_link_libraries(ActorViewer PRIVATE Qt${QT_VERSION_MAJOR}::Widgets mastodonpp)
+target_link_libraries(ActorViewer PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
set_target_properties(ActorViewer PROPERTIES
MACOSX_BUNDLE_GUI_IDENTIFIER space.twilightsparkle.ActorViewer