summaryrefslogtreecommitdiff
path: root/examples/uinotification
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2022-02-01 16:34:18 -0500
committerGlenn Smith <glenn@vector35.com>2022-02-02 19:22:08 -0500
commitb8af211f9a3647687c7e45c0fd04b0768df87ffe (patch)
tree64f13fe262399189d70aadf33e1c6e33f0a74c3e /examples/uinotification
parent5f5785fd2b1cee6bc9a082e1209de00b1497d410 (diff)
Fancier CMake: find scripts, out-of-tree example builds
Diffstat (limited to 'examples/uinotification')
-rw-r--r--examples/uinotification/CMakeLists.txt25
1 files changed, 12 insertions, 13 deletions
diff --git a/examples/uinotification/CMakeLists.txt b/examples/uinotification/CMakeLists.txt
index df9bdbdc..552387dd 100644
--- a/examples/uinotification/CMakeLists.txt
+++ b/examples/uinotification/CMakeLists.txt
@@ -2,32 +2,31 @@ cmake_minimum_required(VERSION 3.13 FATAL_ERROR)
option(QT6 "Target Qt 6" OFF)
-project(uinotification)
+project(uinotification CXX C)
if(NOT QT6)
set(CMAKE_OSX_ARCHITECTURES x86_64)
endif()
-if(QT6)
- find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED)
-else()
- find_package(Qt5 COMPONENTS Core Gui Widgets REQUIRED)
-endif()
-
file(GLOB SOURCES
*.cpp
*.h)
add_library(uinotification SHARED ${SOURCES})
-if(QT6)
- target_link_libraries(uinotification binaryninjaapi binaryninjaui
- Qt6::Core Qt6::Gui Qt6::Widgets)
-else()
- target_link_libraries(uinotification binaryninjaapi binaryninjaui
- Qt5::Core Qt5::Gui Qt5::Widgets)
+if(NOT BN_API_BUILD_EXAMPLES)
+ # Out-of-tree build
+ find_path(
+ BN_API_DIR
+ NAMES binaryninjaapi.h
+ HINTS ../.. binaryninjaapi $ENV{BN_API_DIR}
+ REQUIRED
+ )
+ add_subdirectory(${BN_API_DIR} api)
endif()
+target_link_libraries(uinotification binaryninjaapi binaryninjaui)
+
set_target_properties(uinotification PROPERTIES
CXX_STANDARD 17
CXX_VISIBILITY_PRESET hidden