rusefi/misc/libopenblt_jni/CMakeLists.txt

38 lines
1.2 KiB
CMake
Raw Permalink Normal View History

2023-11-03 02:07:06 -07:00
cmake_minimum_required(VERSION 3.15)
project(OpenBLTJni)
set(CMAKE_BUILD_TYPE "Debug")
2023-11-03 16:17:02 -07:00
find_package(Java COMPONENTS Development)
set(JAVA_AWT_INCLUDE_PATH NotNeeded)
find_package(JNI REQUIRED)
2023-11-03 02:07:06 -07:00
2023-11-03 18:17:15 -07:00
if(APPLE)
2023-11-03 22:39:53 -07:00
# Build both arm64 and Intel
set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64")
2023-11-03 18:17:15 -07:00
endif(APPLE)
2023-11-03 22:19:54 -07:00
set(CXX_STANDARD 20)
2023-11-03 02:07:06 -07:00
# Set OpenBLT library related directory locations
set(LIBOPENBLT_LIB ${PROJECT_SOURCE_DIR}/../../firmware/ext/openblt/Host/)
set(LIBOPENBLT_INC ${LIBOPENBLT_LIB}/Source/LibOpenBLT)
2023-11-03 18:01:33 -07:00
# Set library name of the OpenBLT Host Library
if(CMAKE_C_COMPILER_ID MATCHES MSVC)
# When building LibOpenBLT with Microsoft Visual Studio, "lib" was added to the name
# of the DLL. This needs to be done as well when linking the library.
set (LIBOPENBLT_LIBNAME libopenblt)
else()
set (LIBOPENBLT_LIBNAME openblt)
endif()
2023-11-03 02:07:06 -07:00
add_library(openblt_jni SHARED)
2023-11-03 16:17:02 -07:00
target_include_directories(openblt_jni PRIVATE ${LIBOPENBLT_INC})
target_include_directories(openblt_jni PRIVATE ${JNI_INCLUDE_DIRS})
2023-11-03 18:01:33 -07:00
target_link_directories(openblt_jni PRIVATE ${LIBOPENBLT_LIB})
2023-11-03 18:17:15 -07:00
target_link_libraries(openblt_jni PRIVATE ${LIBOPENBLT_LIBNAME})
2023-11-03 02:07:06 -07:00
target_sources(openblt_jni PRIVATE openblt_jni.cpp)