summaryrefslogtreecommitdiff
path: root/platform/efi/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'platform/efi/CMakeLists.txt')
-rw-r--r--platform/efi/CMakeLists.txt33
1 files changed, 33 insertions, 0 deletions
diff --git a/platform/efi/CMakeLists.txt b/platform/efi/CMakeLists.txt
new file mode 100644
index 00000000..62078907
--- /dev/null
+++ b/platform/efi/CMakeLists.txt
@@ -0,0 +1,33 @@
+cmake_minimum_required(VERSION 3.9 FATAL_ERROR)
+
+project(platform_efi)
+
+if(NOT BN_INTERNAL_BUILD)
+ add_subdirectory(${PROJECT_SOURCE_DIR}/.. ${PROJECT_BINARY_DIR}/api)
+endif()
+
+file(GLOB SOURCES
+ *.cpp
+ *.h)
+
+if(DEMO)
+ add_library(platform_efi STATIC ${SOURCES})
+else()
+ add_library(platform_efi SHARED ${SOURCES})
+endif()
+
+target_link_libraries(platform_efi binaryninjaapi)
+
+set_target_properties(platform_efi PROPERTIES
+ CXX_STANDARD 17
+ CXX_VISIBILITY_PRESET hidden
+ CXX_STANDARD_REQUIRED ON
+ VISIBILITY_INLINES_HIDDEN ON
+ POSITION_INDEPENDENT_CODE ON)
+
+if(BN_INTERNAL_BUILD)
+ plugin_rpath(platform_efi)
+ set_target_properties(platform_efi PROPERTIES
+ LIBRARY_OUTPUT_DIRECTORY ${BN_CORE_PLUGIN_DIR}
+ RUNTIME_OUTPUT_DIRECTORY ${BN_CORE_PLUGIN_DIR})
+endif()