-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
31 lines (26 loc) · 976 Bytes
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
cmake_minimum_required(VERSION 3.14 FATAL_ERROR)
project(bnil_emulator)
# Create plugin executable target
include_directories(src)
add_library(libemulator src/emulator.cpp src/llil_visitor.cpp src/emulator.hpp src/llil_visitor.hpp)
add_executable(bnil_emulator src/plugin.cpp)
target_compile_features(bnil_emulator PRIVATE cxx_std_23)
target_compile_features(libemulator PRIVATE cxx_std_23)
target_link_libraries(bnil_emulator libemulator)
# Add vendored API dependency if enabled
option(BN_VENDOR_API "Use the Binary Ninja API submodule" ON)
if(BN_VENDOR_API)
set(HEADLESS BOOL On)
find_path(
BN_API_PATH
NAMES binaryninjaapi.h
HINTS . .. ../.. binaryninja-api $ENV{BN_API_PATH}
PATH_SUFFIXES binaryninja-api
REQUIRED
)
message(STATUS "Found Binary Ninja API Path: ${BN_API_PATH}")
add_subdirectory(${BN_API_PATH} api)
target_link_libraries(libemulator binaryninjaapi)
target_link_libraries(bnil_emulator binaryninjaapi)
endif()
add_subdirectory(tests)