Add --version-script

Summary: Adds version script to exclude all exported symbols and export only JNI_onLoad

Reviewed By: Andrey-Mishanin

Differential Revision: D18076602

fbshipit-source-id: cac4ef9c800de6a3b2081a1f847fa918687896fe
This commit is contained in:
Sidharth Guglani
2019-11-13 16:36:53 -08:00
committed by Facebook Github Bot
parent f99da09716
commit 20fe53b254
2 changed files with 10 additions and 2 deletions

View File

@@ -9,7 +9,6 @@ set(CMAKE_VERBOSE_MAKEFILE on)
# configure import libs # configure import libs
set(yogacore_DIR ${CMAKE_SOURCE_DIR}/..) set(yogacore_DIR ${CMAKE_SOURCE_DIR}/..)
set(build_DIR ${CMAKE_SOURCE_DIR}/build) set(build_DIR ${CMAKE_SOURCE_DIR}/build)
set(yogacore_build_DIR ${build_DIR}/yogacore/${ANDROID_ABI}) set(yogacore_build_DIR ${build_DIR}/yogacore/${ANDROID_ABI})
@@ -30,9 +29,12 @@ add_compile_options(
file(GLOB jni_SRC file(GLOB jni_SRC
jni/*.cpp) jni/*.cpp)
file(GLOB yogajni_version_script
yogajni.version)
add_library(yoga SHARED ${jni_SRC}) add_library(yoga SHARED ${jni_SRC})
target_include_directories(yoga PRIVATE target_include_directories(yoga PRIVATE
${yogacore_DIR}) ${yogacore_DIR})
target_link_libraries(yoga -Wl,--gc-sections yogacore) target_link_libraries(yoga -Wl,--gc-sections,--version-script=${yogajni_version_script} yogacore)

6
java/yogajni.version Normal file
View File

@@ -0,0 +1,6 @@
{
global:
JNI_OnLoad;
local:
*;
};