emnapi 0.41.0 → 0.43.0
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 +2 -0
- package/README.md +4 -4
- package/dist/library_napi.js +227 -66
- package/include/emnapi.h +2 -1
- package/include/js_native_api.h +10 -0
- package/include/node_api.h +2 -2
- package/include/uv.h +17 -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.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi-mt.a +0 -0
- package/lib/wasm32-wasi-threads/libemnapi.a +0 -0
- package/package.json +1 -1
- package/src/async_cleanup_hook.c +1 -1
- package/src/async_context.c +2 -0
- package/src/async_work.c +2 -0
- package/src/emnapi_internal.h +3 -0
- package/src/malloc/dlmalloc/malloc.c +16 -21
- package/src/node_api.c +1 -1
- package/src/threadsafe_function.c +1 -0
- package/src/uv/threadpool.c +10 -3
- package/src/uv/unix/thread.c +62 -3
package/CMakeLists.txt
CHANGED
|
@@ -97,12 +97,14 @@ if(IS_WASM32)
|
|
|
97
97
|
${MALLOC_PUBLIC_SOURCES}
|
|
98
98
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/malloc/emmalloc/emmalloc.c"
|
|
99
99
|
)
|
|
100
|
+
target_compile_options(${EMMALLOC_TARGET_NAME} PRIVATE "-fno-strict-aliasing")
|
|
100
101
|
target_compile_definitions(${EMMALLOC_TARGET_NAME} PRIVATE "PAGESIZE=65536")
|
|
101
102
|
|
|
102
103
|
add_library(${EMMALLOC_MT_TARGET_NAME} STATIC
|
|
103
104
|
${MALLOC_PUBLIC_SOURCES}
|
|
104
105
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/malloc/emmalloc/emmalloc.c"
|
|
105
106
|
)
|
|
107
|
+
target_compile_options(${EMMALLOC_MT_TARGET_NAME} PRIVATE "-fno-strict-aliasing")
|
|
106
108
|
target_compile_options(${EMMALLOC_MT_TARGET_NAME} PUBLIC "-matomics" "-mbulk-memory")
|
|
107
109
|
target_compile_definitions(${EMMALLOC_MT_TARGET_NAME} PRIVATE "PAGESIZE=65536" "__EMSCRIPTEN_SHARED_MEMORY__=1")
|
|
108
110
|
endif()
|
package/README.md
CHANGED
|
@@ -109,7 +109,7 @@ Create `hello.c`.
|
|
|
109
109
|
```c
|
|
110
110
|
#include <node_api.h>
|
|
111
111
|
|
|
112
|
-
#define
|
|
112
|
+
#define NODE_API_CALL(env, the_call) \
|
|
113
113
|
do { \
|
|
114
114
|
if ((the_call) != napi_ok) { \
|
|
115
115
|
const napi_extended_error_info *error_info; \
|
|
@@ -130,15 +130,15 @@ Create `hello.c`.
|
|
|
130
130
|
static napi_value js_hello(napi_env env, napi_callback_info info) {
|
|
131
131
|
napi_value world;
|
|
132
132
|
const char* str = "world";
|
|
133
|
-
|
|
133
|
+
NODE_API_CALL(env, napi_create_string_utf8(env, str, NAPI_AUTO_LENGTH, &world));
|
|
134
134
|
return world;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
NAPI_MODULE_INIT() {
|
|
138
138
|
napi_value hello;
|
|
139
|
-
|
|
139
|
+
NODE_API_CALL(env, napi_create_function(env, "hello", NAPI_AUTO_LENGTH,
|
|
140
140
|
js_hello, NULL, &hello));
|
|
141
|
-
|
|
141
|
+
NODE_API_CALL(env, napi_set_named_property(env, exports, "hello", hello));
|
|
142
142
|
return exports;
|
|
143
143
|
}
|
|
144
144
|
```
|