Skip to content

Commit a9cabe1

Browse files
reorganize targets usage
1 parent dbe36d9 commit a9cabe1

File tree

1 file changed

+46
-60
lines changed

1 file changed

+46
-60
lines changed

Modules/@babylonjs/react-native/android/CMakeLists.txt

Lines changed: 46 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ set (CMAKE_CXX_STANDARD 20)
77

88
set (PACKAGE_NAME "ReactNativeBabylon")
99

10-
1110
# Clear some variables
1211
unset(LIBRN_DIR CACHE)
1312
unset(libfbjni_link_DIRS CACHE)
@@ -24,13 +23,11 @@ message("-- LIBRN : " ${LIBRN_DIR})
2423

2524
link_directories(../libs/android/${ANDROID_ABI}/)
2625

27-
2826
# Configure Babylon Native to use JSI
2927
set(NAPI_JAVASCRIPT_ENGINE "JSI" CACHE STRING "The JavaScript engine to power N-API")
3028

3129
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/src/")
3230

33-
3431
if(${REACT_NATIVE_VERSION} LESS 66)
3532
file(
3633
TO_CMAKE_PATH
@@ -39,8 +36,6 @@ if(${REACT_NATIVE_VERSION} LESS 66)
3936
)
4037
endif()
4138

42-
43-
4439
find_library(
4540
LOG_LIB
4641
log
@@ -96,54 +91,8 @@ disable_warnings(Scheduling) # deprecated stl
9691
disable_warnings(Canvas)
9792
disable_warnings(Window)
9893

99-
100-
#add_library(BabylonNativeShared STATIC ${SHARED_SOURCES})
101-
#disable_warnings(BabylonNativeShared)
102-
#target_include_directories(BabylonNativeShared PRIVATE ${BABYLON_REACT_NATIVE_SHARED_DIR})
103-
10494
file(GLOB BABYLON_SHARED "${CMAKE_CURRENT_SOURCE_DIR}/../shared/*")
10595

106-
add_library(
107-
${PACKAGE_NAME}
108-
SHARED
109-
"${CMAKE_CURRENT_SOURCE_DIR}/src/main/cpp/BabylonNativeInterop.cpp"
110-
${BABYLON_SHARED}
111-
#BabylonNativeShared
112-
)
113-
disable_warnings(${PACKAGE_NAME}) # deprecated stl
114-
115-
116-
117-
target_include_directories(
118-
${PACKAGE_NAME}
119-
PRIVATE
120-
121-
"${NODE_MODULES_DIR}/react-native/ReactCommon/callinvoker"
122-
"${NODE_MODULES_DIR}/react-native/ReactCommon/jsi"
123-
"${NODE_MODULES_DIR}/react-native/ReactCommon"
124-
"${NODE_MODULES_DIR}/react-native/ReactCommon/react/nativemodule/core"
125-
"${NODE_MODULES_DIR}/react-native/ReactCommon/runtimeexecutor"
126-
"${NODE_MODULES_DIR}/react-native/ReactAndroid/src/main/jni"
127-
"${NODE_MODULES_DIR}/react-native/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni"
128-
129-
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../shared"
130-
PRIVATE $<TARGET_PROPERTY:Graphics,INCLUDE_DIRECTORIES>
131-
PRIVATE $<TARGET_PROPERTY:NativeEngine,INCLUDE_DIRECTORIES>
132-
PRIVATE $<TARGET_PROPERTY:NativeInput,INCLUDE_DIRECTORIES>
133-
PRIVATE $<TARGET_PROPERTY:Window,INCLUDE_DIRECTORIES>
134-
PRIVATE $<TARGET_PROPERTY:XMLHttpRequest,INCLUDE_DIRECTORIES>
135-
PRIVATE $<TARGET_PROPERTY:NativeCamera,INCLUDE_DIRECTORIES>
136-
PRIVATE $<TARGET_PROPERTY:NativeXr,INCLUDE_DIRECTORIES>
137-
PRIVATE $<TARGET_PROPERTY:NativeCapture,INCLUDE_DIRECTORIES>
138-
PRIVATE $<TARGET_PROPERTY:NativeOptimizations,INCLUDE_DIRECTORIES>
139-
PRIVATE $<TARGET_PROPERTY:NativeTracing,INCLUDE_DIRECTORIES>
140-
PRIVATE $<TARGET_PROPERTY:Canvas,INCLUDE_DIRECTORIES>
141-
142-
#BabylonNativeShared
143-
144-
${libfbjni_include_DIRS}
145-
)
146-
14796
unset(REACT_LIB CACHE)
14897
if(${REACT_NATIVE_VERSION} GREATER_EQUAL 76)
14998
# RN 0.76 packs react_nativemodule_core into ReactAndroid::reactnative
@@ -228,15 +177,6 @@ message("-- TURBO : " ${TURBOMODULES_LIB})
228177

229178
add_definitions(-DREACT_NATIVE_VERSION=${REACT_NATIVE_VERSION})
230179

231-
# Set RN_SERIALIZABLE_STATE and C++ flags for React Native 0.81+
232-
if(${REACT_NATIVE_VERSION} GREATER_EQUAL 80)
233-
include("${REACT_NATIVE_DIR}/ReactCommon/cmake-utils/react-native-flags.cmake")
234-
target_compile_reactnative_options(${PACKAGE_NAME} PRIVATE)
235-
else()
236-
string(APPEND CMAKE_CXX_FLAGS
237-
" -fexceptions -frtti -std=c++${CMAKE_CXX_STANDARD} -Wall -Werror -Wunused-function -Wunused-private-field -Woverloaded-virtual -Wreorder-ctor -Wdelete-non-abstract-non-virtual-dtor -Wmismatched-tags -Wunused-variable -Wpessimizing-move -Wswitch -Wdeprecated-declarations -Werror=deprecated-this-capture")
238-
endif()
239-
240180
# Link
241181
if(${REACT_NATIVE_VERSION} GREATER_EQUAL 76)
242182
set(COMMON_LIBS
@@ -265,6 +205,52 @@ else()
265205
)
266206
endif()
267207

208+
209+
add_library(
210+
${PACKAGE_NAME}
211+
SHARED
212+
"${CMAKE_CURRENT_SOURCE_DIR}/src/main/cpp/BabylonNativeInterop.cpp"
213+
${BABYLON_SHARED}
214+
)
215+
disable_warnings(${PACKAGE_NAME}) # deprecated stl
216+
217+
# Set RN_SERIALIZABLE_STATE and C++ flags for React Native 0.81+
218+
if(${REACT_NATIVE_VERSION} GREATER_EQUAL 80)
219+
include("${REACT_NATIVE_DIR}/ReactCommon/cmake-utils/react-native-flags.cmake")
220+
target_compile_reactnative_options(${PACKAGE_NAME} PRIVATE)
221+
else()
222+
string(APPEND CMAKE_CXX_FLAGS
223+
" -fexceptions -frtti -std=c++${CMAKE_CXX_STANDARD} -Wall -Werror -Wunused-function -Wunused-private-field -Woverloaded-virtual -Wreorder-ctor -Wdelete-non-abstract-non-virtual-dtor -Wmismatched-tags -Wunused-variable -Wpessimizing-move -Wswitch -Wdeprecated-declarations -Werror=deprecated-this-capture")
224+
endif()
225+
226+
target_include_directories(
227+
${PACKAGE_NAME}
228+
PRIVATE
229+
230+
"${NODE_MODULES_DIR}/react-native/ReactCommon/callinvoker"
231+
"${NODE_MODULES_DIR}/react-native/ReactCommon/jsi"
232+
"${NODE_MODULES_DIR}/react-native/ReactCommon"
233+
"${NODE_MODULES_DIR}/react-native/ReactCommon/react/nativemodule/core"
234+
"${NODE_MODULES_DIR}/react-native/ReactCommon/runtimeexecutor"
235+
"${NODE_MODULES_DIR}/react-native/ReactAndroid/src/main/jni"
236+
"${NODE_MODULES_DIR}/react-native/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni"
237+
238+
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../shared"
239+
PRIVATE $<TARGET_PROPERTY:Graphics,INCLUDE_DIRECTORIES>
240+
PRIVATE $<TARGET_PROPERTY:NativeEngine,INCLUDE_DIRECTORIES>
241+
PRIVATE $<TARGET_PROPERTY:NativeInput,INCLUDE_DIRECTORIES>
242+
PRIVATE $<TARGET_PROPERTY:Window,INCLUDE_DIRECTORIES>
243+
PRIVATE $<TARGET_PROPERTY:XMLHttpRequest,INCLUDE_DIRECTORIES>
244+
PRIVATE $<TARGET_PROPERTY:NativeCamera,INCLUDE_DIRECTORIES>
245+
PRIVATE $<TARGET_PROPERTY:NativeXr,INCLUDE_DIRECTORIES>
246+
PRIVATE $<TARGET_PROPERTY:NativeCapture,INCLUDE_DIRECTORIES>
247+
PRIVATE $<TARGET_PROPERTY:NativeOptimizations,INCLUDE_DIRECTORIES>
248+
PRIVATE $<TARGET_PROPERTY:NativeTracing,INCLUDE_DIRECTORIES>
249+
PRIVATE $<TARGET_PROPERTY:Canvas,INCLUDE_DIRECTORIES>
250+
251+
${libfbjni_include_DIRS}
252+
)
253+
268254
target_link_libraries(${PACKAGE_NAME}
269255
${COMMON_LIBS}
270256
AndroidExtensions

0 commit comments

Comments
 (0)