53 lines
1.2 KiB
Text
53 lines
1.2 KiB
Text
|
project(OsmAndJNI)
|
||
|
|
||
|
set(target_specific_private_includes "")
|
||
|
if(CMAKE_TARGET_OS STREQUAL "windows")
|
||
|
set(target_specific_private_includes ${target_specific_private_includes}
|
||
|
"$ENV{JAVA_HOME}/include/win32"
|
||
|
)
|
||
|
elseif(CMAKE_TARGET_OS STREQUAL "darwin")
|
||
|
set(target_specific_private_includes ${target_specific_private_includes}
|
||
|
"$ENV{JAVA_HOME}/include/darwin"
|
||
|
)
|
||
|
elseif(CMAKE_TARGET_OS STREQUAL "linux")
|
||
|
set(target_specific_private_includes ${target_specific_private_includes}
|
||
|
"$ENV{JAVA_HOME}/include/linux"
|
||
|
)
|
||
|
endif()
|
||
|
|
||
|
if(CMAKE_SHARED_LIBS_ALLOWED_ON_TARGET)
|
||
|
add_library(OsmAndJNI SHARED
|
||
|
"c-src/swig.cpp"
|
||
|
)
|
||
|
target_compile_definitions(OsmAndJNI
|
||
|
PRIVATE
|
||
|
-DOSMAND_CORE_EXPORTS
|
||
|
)
|
||
|
target_include_directories(OsmAndJNI
|
||
|
PRIVATE
|
||
|
"$ENV{JAVA_HOME}/include"
|
||
|
${target_specific_private_includes}
|
||
|
)
|
||
|
|
||
|
if(CMAKE_STATIC_LIBS_ALLOWED_ON_TARGET)
|
||
|
add_dependencies(OsmAndJNI
|
||
|
OsmAndCore_static
|
||
|
OsmAndCoreUtils_static
|
||
|
)
|
||
|
target_link_libraries(OsmAndJNI
|
||
|
LINK_PUBLIC
|
||
|
OsmAndCore_static
|
||
|
OsmAndCoreUtils_static
|
||
|
)
|
||
|
else()
|
||
|
add_dependencies(OsmAndJNI
|
||
|
OsmAndCore_shared
|
||
|
OsmAndCoreUtils_shared
|
||
|
)
|
||
|
target_link_libraries(OsmAndJNI
|
||
|
LINK_PUBLIC
|
||
|
OsmAndCore_shared
|
||
|
OsmAndCoreUtils_shared
|
||
|
)
|
||
|
endif()
|
||
|
endif()
|