Move `yoga` to be consumed via prefab
Summary: This removes the old way of consuming `libyoga.so` from `Android-prebuilt.cmake` to using Prefab which is natively supported by the Android pipeline. Changelog: [Internal] [Changed] - Move `yoga` to be consumed via prefab Reviewed By: cipolleschi Differential Revision: D39927496 fbshipit-source-id: f7ab2a3aab3cb42effa648dfeff6711d183260e4
This commit is contained in:
Родитель
8717d2d672
Коммит
4a336f0637
|
@ -120,7 +120,14 @@ final def preparePrefab = tasks.register("preparePrefab", PreparePrefabHeadersTa
|
|||
new PrefabPreprocessingEntry(
|
||||
"react_render_mapbuffer",
|
||||
new Pair("../ReactCommon/react/renderer/mapbuffer/", "react/renderer/mapbuffer/")
|
||||
)
|
||||
),
|
||||
new PrefabPreprocessingEntry(
|
||||
"yoga",
|
||||
[
|
||||
new Pair("../ReactCommon/yoga/", ""),
|
||||
new Pair("src/main/jni/first-party/yogajni/jni", "")
|
||||
]
|
||||
),
|
||||
]
|
||||
)
|
||||
it.outputDir.set(prefabHeadersDir)
|
||||
|
@ -387,7 +394,8 @@ android {
|
|||
"jsi",
|
||||
"glog",
|
||||
"fabricjni",
|
||||
"react_render_mapbuffer"
|
||||
"react_render_mapbuffer",
|
||||
"yoga"
|
||||
}
|
||||
}
|
||||
ndk {
|
||||
|
@ -500,6 +508,9 @@ android {
|
|||
react_render_mapbuffer {
|
||||
headers(new File(prefabHeadersDir, "react_render_mapbuffer").absolutePath)
|
||||
}
|
||||
yoga {
|
||||
headers(new File(prefabHeadersDir, "yoga").absolutePath)
|
||||
}
|
||||
}
|
||||
|
||||
publishing {
|
||||
|
|
|
@ -61,24 +61,6 @@ target_compile_options(folly_runtime
|
|||
-DFOLLY_MOBILE=1
|
||||
-DFOLLY_HAVE_XSI_STRERROR_R=1)
|
||||
|
||||
## yoga
|
||||
add_library(yoga SHARED IMPORTED GLOBAL)
|
||||
set_target_properties(yoga
|
||||
PROPERTIES
|
||||
IMPORTED_LOCATION
|
||||
${REACT_NDK_EXPORT_DIR}/${ANDROID_ABI}/libyoga.so)
|
||||
target_include_directories(yoga
|
||||
INTERFACE
|
||||
${FIRST_PARTY_NDK_DIR}/yogajni/jni
|
||||
${REACT_COMMON_DIR}/yoga)
|
||||
target_compile_options(yoga
|
||||
INTERFACE
|
||||
-fvisibility=hidden
|
||||
-fexceptions
|
||||
-frtti
|
||||
-O3)
|
||||
target_link_libraries(yoga INTERFACE log android)
|
||||
|
||||
## react_nativemodule_core
|
||||
add_library(react_nativemodule_core SHARED IMPORTED GLOBAL)
|
||||
set_target_properties(react_nativemodule_core
|
||||
|
|
|
@ -55,6 +55,7 @@ add_library(jsi ALIAS ReactAndroid::jsi)
|
|||
add_library(glog ALIAS ReactAndroid::glog)
|
||||
add_library(fabricjni ALIAS ReactAndroid::fabricjni)
|
||||
add_library(react_render_mapbuffer ALIAS ReactAndroid::react_render_mapbuffer)
|
||||
add_library(yoga ALIAS ReactAndroid::yoga)
|
||||
|
||||
target_link_libraries(${CMAKE_PROJECT_NAME}
|
||||
fabricjni # prefab ready
|
||||
|
@ -74,7 +75,7 @@ target_link_libraries(${CMAKE_PROJECT_NAME}
|
|||
rrc_view # prefab ready
|
||||
runtimeexecutor # prefab ready
|
||||
turbomodulejsijni # prefab ready
|
||||
yoga)
|
||||
yoga) # prefab ready
|
||||
|
||||
# If project is on RN CLI v9, then we can use the following lines to link against the autolinked 3rd party libraries.
|
||||
if(EXISTS ${PROJECT_BUILD_DIR}/generated/rncli/src/main/jni/Android-rncli.cmake)
|
||||
|
|
Загрузка…
Ссылка в новой задаче