@@ -61,7 +61,6 @@ include_directories(
6161 src/main/cpp/runtime/objectmanager
6262 src/main/cpp/runtime/performance
6363 src/main/cpp/runtime/profiler
64- src/main/cpp/runtime/robinhood
6564 src/main/cpp/runtime/sighandler
6665 src/main/cpp/runtime/timers
6766 src/main/cpp/runtime/util
@@ -99,17 +98,35 @@ if (QUICKJS)
9998 src/main/cpp/napi/quickjs/quickjs-api.c
10099 src/main/cpp/napi/quickjs/jsr.cpp
101100
101+
102102 )
103103 include_directories (
104104 src/main/cpp/napi/quickjs
105105 src/main/cpp/napi/quickjs/source
106+ src/main/cpp/napi/quickjs/napi-new
106107 src/main/cpp/napi/common
107108 # mimalloc
108109 src/main/cpp/napi/quickjs/mimalloc-dev/include
109110 )
110111
111112endif ()
112113
114+
115+ if (PRIMJS)
116+ set (SOURCES ${SOURCES}
117+ src/main/cpp/napi/primjs/jsr.cpp
118+ src/main/cpp/napi/primjs/code_cache.cc
119+ src/main/cpp/napi/primjs/primjs-api.cc
120+ src/main/cpp/napi/primjs/napi_env.cc
121+ )
122+ include_directories (
123+ src/main/cpp/napi/primjs
124+ src/main/cpp/napi/primjs/include
125+ src/main/cpp/napi/common
126+ )
127+
128+ endif ()
129+
113130if (HERMES)
114131 include_directories (
115132 src/main/cpp/napi/hermes
@@ -121,6 +138,17 @@ if (HERMES)
121138 )
122139endif ()
123140
141+ if (SHERMES)
142+ include_directories (
143+ src/main/cpp/napi/hermes
144+ src/main/cpp/napi/hermes/include_shermes
145+ src/main/cpp/napi/common
146+ )
147+ set (SOURCES ${SOURCES}
148+ src/main/cpp/napi/hermes/jsr.cpp
149+ )
150+ endif ()
151+
124152if (JSC)
125153 include_directories (
126154 src/main/cpp/napi/jsc
@@ -214,6 +242,13 @@ MESSAGE(STATUS "# CMAKE_CXX_FLAGS: " ${CMAKE_CXX_FLAGS})
214242target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/common/${ANDROID_ABI}/libzip.a )
215243#target_link_libraries(NativeScript ${PROJECT_SOURCE_DIR}/src/main/libs/common/${ANDROID_ABI}/libclang_rt.asan-aarch64-android.so)
216244
245+ if (SHERMES)
246+ target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/shermes/${ANDROID_ABI}/libhermesvm.so )
247+ target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/shermes/${ANDROID_ABI}/libjsi.so )
248+ add_compile_definitions (NativeScript, PRIVATE __HERMES__ )
249+ add_compile_definitions (NativeScript, PRIVATE __SHERMES__ )
250+ endif ()
251+
217252if (HERMES)
218253 target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/hermes/${ANDROID_ABI}/libhermes.so )
219254 target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/hermes/${ANDROID_ABI}/libjsi.so )
@@ -230,6 +265,12 @@ if (V8)
230265 add_compile_definitions (NativeScript, PRIVATE __V8__ )
231266endif ()
232267
268+ if (PRIMJS)
269+ # target_link_libraries(NativeScript ${PROJECT_SOURCE_DIR}/src/main/libs/primjs/${ANDROID_ABI}/libnapi.so)
270+ target_link_libraries (NativeScript ${PROJECT_SOURCE_DIR} /src/main/libs/primjs/${ANDROID_ABI}/libquick.so )
271+ add_compile_definitions (NativeScript, PRIVATE __PRIMJS__ )
272+ endif ()
273+
233274if (QUICKJS)
234275 add_compile_definitions (NativeScript, PRIVATE __QJS__ )
235276 if (USE_MIMALLOC)
@@ -266,10 +307,10 @@ if (QUICKJS)
266307 else ()
267308 target_link_libraries (NativeScript ${system-log} ${system-z} ${system-android} )
268309 endif ()
269- elseif (HERMES)
310+ elseif (HERMES OR SHERMES )
270311 find_package (fbjni REQUIRED CONFIG )
271312 target_link_libraries (NativeScript ${system-log} ${system-z} fbjni::fbjni ${system-android} )
272- elseif (JSC OR V8)
313+ elseif (JSC OR V8 OR PRIMJS )
273314 target_link_libraries (NativeScript ${system-log} ${system-z} ${system-android} )
274315endif ()
275316
0 commit comments