emnapi 1.8.1 → 1.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CMakeLists.txt +12 -13
- package/dist/library_napi.js +240 -122
- package/emnapi.gyp +8 -1
- package/include/node/emnapi.h +1 -1
- package/include/node/js_native_api.h +6 -6
- package/include/node/js_native_api_types.h +6 -7
- package/index.d.ts +12 -0
- package/index.js +36 -0
- package/lib/wasm32/libdlmalloc-mt.a +0 -0
- package/lib/wasm32/libdlmalloc.a +0 -0
- package/lib/wasm32/libemmalloc-mt.a +0 -0
- package/lib/wasm32/libemmalloc.a +0 -0
- package/lib/wasm32/libemnapi-basic-mt.a +0 -0
- package/lib/wasm32/libemnapi-basic.a +0 -0
- package/lib/wasm32/libemnapi.a +0 -0
- package/lib/wasm32-emscripten/libemnapi-basic.a +0 -0
- package/lib/wasm32-emscripten/libemnapi-mt.a +0 -0
- package/lib/wasm32-emscripten/libemnapi.a +0 -0
- package/lib/wasm32-wasi/libemnapi-basic-mt.a +0 -0
- package/lib/wasm32-wasi/libemnapi-basic.a +0 -0
- package/lib/wasm32-wasi/libemnapi.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-basic-mt.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-basic-napi-rs-mt.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-basic.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-mt.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-napi-rs-mt.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi.a +0 -0
- package/lib/wasm32-wasip1/libemnapi-basic-mt.a +0 -0
- package/lib/wasm32-wasip1/libemnapi-basic.a +0 -0
- package/lib/wasm32-wasip1/libemnapi.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi-basic-mt.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi-basic-napi-rs-mt.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi-basic.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi-mt.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi-napi-rs-mt.a +0 -0
- package/lib/wasm32-wasip1-threads/libemnapi.a +0 -0
- package/lib/wasm64-emscripten/libemnapi-basic.a +0 -0
- package/lib/wasm64-emscripten/libemnapi-mt.a +0 -0
- package/lib/wasm64-emscripten/libemnapi.a +0 -0
- package/package.json +5 -2
- package/src/async_cleanup_hook.c +0 -2
- package/src/emnapi_internal.h +12 -0
- package/src/node_api.c +1 -7
- package/src/thread/async_worker_create.c +24 -1
- package/src/threadsafe_function.c +110 -94
- package/src/threadsafe_function.h +51 -0
- package/src/uv/uv-common.c +9 -1
- package/src/wasi_wait.c +3 -0
package/CMakeLists.txt
CHANGED
|
@@ -143,6 +143,15 @@ endif()
|
|
|
143
143
|
if(NODE_WANT_INTERNALS)
|
|
144
144
|
add_compile_definitions("NODE_WANT_INTERNALS=${NODE_WANT_INTERNALS}")
|
|
145
145
|
endif()
|
|
146
|
+
if(EMNAPI_WORKER_POOL_SIZE)
|
|
147
|
+
add_compile_definitions("EMNAPI_WORKER_POOL_SIZE=${EMNAPI_WORKER_POOL_SIZE}")
|
|
148
|
+
endif()
|
|
149
|
+
if(EMNAPI_NEXTTICK_TYPE)
|
|
150
|
+
add_compile_definitions("EMNAPI_NEXTTICK_TYPE=${EMNAPI_NEXTTICK_TYPE}")
|
|
151
|
+
endif()
|
|
152
|
+
if(EMNAPI_USE_PROXYING)
|
|
153
|
+
add_compile_definitions("EMNAPI_USE_PROXYING=${EMNAPI_USE_PROXYING}")
|
|
154
|
+
endif()
|
|
146
155
|
|
|
147
156
|
add_library(${EMNAPI_TARGET_NAME} STATIC ${EMNAPI_SRC} ${UV_SRC})
|
|
148
157
|
target_include_directories(${EMNAPI_TARGET_NAME} PUBLIC ${EMNAPI_INCLUDE})
|
|
@@ -152,11 +161,10 @@ if(IS_EMSCRIPTEN)
|
|
|
152
161
|
target_link_options(${EMNAPI_TARGET_NAME} INTERFACE "--js-library=${EMNAPI_JS_LIB}")
|
|
153
162
|
endif()
|
|
154
163
|
|
|
155
|
-
add_library(${EMNAPI_BASIC_TARGET_NAME} STATIC ${ENAPI_BASIC_SRC})
|
|
164
|
+
add_library(${EMNAPI_BASIC_TARGET_NAME} STATIC ${ENAPI_BASIC_SRC} ${UV_SRC})
|
|
156
165
|
target_include_directories(${EMNAPI_BASIC_TARGET_NAME} PUBLIC ${EMNAPI_INCLUDE})
|
|
157
166
|
target_compile_definitions(${EMNAPI_BASIC_TARGET_NAME}
|
|
158
167
|
PUBLIC ${EMNAPI_DEFINES}
|
|
159
|
-
PRIVATE "EMNAPI_DISABLE_UV"
|
|
160
168
|
)
|
|
161
169
|
if(IS_EMSCRIPTEN)
|
|
162
170
|
set_target_properties(${EMNAPI_BASIC_TARGET_NAME} PROPERTIES INTERFACE_LINK_DEPENDS ${EMNAPI_JS_LIB})
|
|
@@ -184,19 +192,20 @@ if(EMNAPI_BUILD_FOR_NAPI_RS)
|
|
|
184
192
|
|
|
185
193
|
add_library(${EMNAPI_BASIC_NAPI_RS_MT_TARGET_NAME} STATIC
|
|
186
194
|
${ENAPI_BASIC_SRC}
|
|
195
|
+
${UV_SRC}
|
|
187
196
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/thread/async_worker_create.c"
|
|
188
197
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/thread/async_worker_init.S"
|
|
189
198
|
)
|
|
190
199
|
target_include_directories(${EMNAPI_BASIC_NAPI_RS_MT_TARGET_NAME} PUBLIC ${EMNAPI_INCLUDE})
|
|
191
200
|
target_compile_definitions(${EMNAPI_BASIC_NAPI_RS_MT_TARGET_NAME}
|
|
192
201
|
PUBLIC ${EMNAPI_DEFINES} "NAPI_EXTERN=__attribute__((__import_module__(\"env\")))"
|
|
193
|
-
PRIVATE "EMNAPI_DISABLE_UV"
|
|
194
202
|
)
|
|
195
203
|
endif()
|
|
196
204
|
|
|
197
205
|
if(EMNAPI_BUILD_BASIC_MT)
|
|
198
206
|
add_library(${EMNAPI_BASIC_MT_TARGET_NAME} STATIC
|
|
199
207
|
${ENAPI_BASIC_SRC}
|
|
208
|
+
${UV_SRC}
|
|
200
209
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/thread/async_worker_create.c"
|
|
201
210
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/thread/async_worker_init.S"
|
|
202
211
|
)
|
|
@@ -204,7 +213,6 @@ if(EMNAPI_BUILD_BASIC_MT)
|
|
|
204
213
|
target_include_directories(${EMNAPI_BASIC_MT_TARGET_NAME} PUBLIC ${EMNAPI_INCLUDE})
|
|
205
214
|
target_compile_definitions(${EMNAPI_BASIC_MT_TARGET_NAME}
|
|
206
215
|
PUBLIC ${EMNAPI_DEFINES}
|
|
207
|
-
PRIVATE "EMNAPI_DISABLE_UV"
|
|
208
216
|
)
|
|
209
217
|
|
|
210
218
|
if(IS_EMSCRIPTEN)
|
|
@@ -231,15 +239,6 @@ if(EMNAPI_BUILD_MT)
|
|
|
231
239
|
set_target_properties(${EMNAPI_MT_TARGET_NAME} PROPERTIES INTERFACE_LINK_DEPENDS ${EMNAPI_JS_LIB})
|
|
232
240
|
target_link_options(${EMNAPI_MT_TARGET_NAME} INTERFACE "--js-library=${EMNAPI_JS_LIB}")
|
|
233
241
|
endif()
|
|
234
|
-
if(EMNAPI_WORKER_POOL_SIZE)
|
|
235
|
-
target_compile_definitions(${EMNAPI_MT_TARGET_NAME} PRIVATE "EMNAPI_WORKER_POOL_SIZE=${EMNAPI_WORKER_POOL_SIZE}")
|
|
236
|
-
endif()
|
|
237
|
-
if(EMNAPI_NEXTTICK_TYPE)
|
|
238
|
-
target_compile_definitions(${EMNAPI_MT_TARGET_NAME} PRIVATE "EMNAPI_NEXTTICK_TYPE=${EMNAPI_NEXTTICK_TYPE}")
|
|
239
|
-
endif()
|
|
240
|
-
if(EMNAPI_USE_PROXYING)
|
|
241
|
-
target_compile_definitions(${EMNAPI_MT_TARGET_NAME} PRIVATE "EMNAPI_USE_PROXYING=${EMNAPI_USE_PROXYING}")
|
|
242
|
-
endif()
|
|
243
242
|
endif()
|
|
244
243
|
|
|
245
244
|
if(IS_EMSCRIPTEN)
|