summaryrefslogtreecommitdiff
path: root/python/CMakeLists.txt
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2021-08-17 16:47:36 -0400
committerGlenn Smith <glenn@vector35.com>2021-08-17 16:56:58 -0400
commita9bfea5e6b844f7129a5510176e85b274ccab795 (patch)
tree42fbd08392e3334d02015747568ef354cae5f142 /python/CMakeLists.txt
parent54c78775ab4eb53c991ed17e4317bf876dea5bb0 (diff)
CMake option to set license for generator
Diffstat (limited to 'python/CMakeLists.txt')
-rw-r--r--python/CMakeLists.txt15
1 files changed, 14 insertions, 1 deletions
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index cf9d5c40..483cbad3 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -22,12 +22,25 @@ if(BN_INTERNAL_BUILD)
COMMAND ${CMAKE_COMMAND} -E copy ${BN_CORE_OUTPUT_DIR}/binaryninjacore.dll ${PROJECT_BINARY_DIR}/)
endif()
+ option(LICENSE_FILE "Path to license file, for compiling")
+ set(LICENSE "")
+ if(LICENSE_FILE)
+ file(READ ${LICENSE_FILE} LICENSE_CONTS)
+ message(STATUS "Using licence for build: ${LICENSE_FILE}")
+ # Encode for passing through the command-line
+ string(REPLACE "\n" "" LICENSE_CONTS "${LICENSE_CONTS}")
+ string(REPLACE "\"" "\\\"" LICENSE_CONTS "${LICENSE_CONTS}")
+ string(REPLACE "{" "\\{" LICENSE_CONTS "${LICENSE_CONTS}")
+ string(REPLACE "}" "\\}" LICENSE_CONTS "${LICENSE_CONTS}")
+ set(LICENSE "BN_LICENSE=${LICENSE_CONTS}")
+ endif()
+
add_custom_target(generator_copy ALL
BYPRODUCTS ${PROJECT_SOURCE_DIR}/_binaryninjacore.py ${PROJECT_SOURCE_DIR}/enums.py
DEPENDS ${PYTHON_SOURCES} ${PROJECT_SOURCE_DIR}/../binaryninjacore.h $<TARGET_FILE:generator>
COMMAND ${CMAKE_COMMAND} -E echo "Copying Python Sources"
COMMAND ${CMAKE_COMMAND} -E make_directory ${BN_RESOURCE_DIR}/python/binaryninja/
- COMMAND ${CMAKE_COMMAND} -E env ASAN_OPTIONS=detect_leaks=0 $<TARGET_FILE:generator> ${PROJECT_SOURCE_DIR}/../binaryninjacore.h ${PROJECT_SOURCE_DIR}/_binaryninjacore.py ${PROJECT_SOURCE_DIR}/enums.py
+ COMMAND ${CMAKE_COMMAND} -E env ASAN_OPTIONS=detect_leaks=0 ${LICENSE} $<TARGET_FILE:generator> ${PROJECT_SOURCE_DIR}/../binaryninjacore.h ${PROJECT_SOURCE_DIR}/_binaryninjacore.py ${PROJECT_SOURCE_DIR}/enums.py
COMMAND ${CMAKE_COMMAND} -E copy ${PYTHON_SOURCES} ${BN_RESOURCE_DIR}/python/binaryninja/
COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/_binaryninjacore.py ${BN_RESOURCE_DIR}/python/binaryninja/
COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/enums.py ${BN_RESOURCE_DIR}/python/binaryninja/