Update headers from nodejs/node tag v21.0.0 (#34)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
diff --git a/include/js_native_api.h b/include/js_native_api.h
index e06bdc8..0e11eeb 100644
--- a/include/js_native_api.h
+++ b/include/js_native_api.h
@@ -24,7 +24,7 @@
#ifndef NAPI_EXTERN
#ifdef _WIN32
#define NAPI_EXTERN __declspec(dllexport)
-#elif defined(__wasm32__)
+#elif defined(__wasm__)
#define NAPI_EXTERN \
__attribute__((visibility("default"))) \
__attribute__((__import_module__("napi")))
@@ -495,6 +495,7 @@
#endif // NAPI_VERSION >= 5
+
#if NAPI_VERSION >= 6
// BigInt
diff --git a/include/node_api.h b/include/node_api.h
index 27acc6a..49a23ae 100644
--- a/include/node_api.h
+++ b/include/node_api.h
@@ -1,11 +1,11 @@
#ifndef SRC_NODE_API_H_
#define SRC_NODE_API_H_
-#ifdef BUILDING_NODE_EXTENSION
+#if defined(BUILDING_NODE_EXTENSION) && !defined(NAPI_EXTERN)
#ifdef _WIN32
// Building native addon against node
#define NAPI_EXTERN __declspec(dllimport)
-#elif defined(__wasm32__)
+#elif defined(__wasm__)
#define NAPI_EXTERN __attribute__((__import_module__("napi")))
#endif
#endif
@@ -17,8 +17,13 @@
#ifdef _WIN32
#define NAPI_MODULE_EXPORT __declspec(dllexport)
#else
+#ifdef __EMSCRIPTEN__
+#define NAPI_MODULE_EXPORT \
+ __attribute__((visibility("default"))) __attribute__((used))
+#else
#define NAPI_MODULE_EXPORT __attribute__((visibility("default")))
#endif
+#endif
#if defined(__GNUC__)
#define NAPI_NO_RETURN __attribute__((noreturn))
@@ -49,7 +54,7 @@
NAPI_MODULE_INITIALIZER_X_HELPER(base, version)
#define NAPI_MODULE_INITIALIZER_X_HELPER(base, version) base##version
-#ifdef __wasm32__
+#ifdef __wasm__
#define NAPI_MODULE_INITIALIZER_BASE napi_register_wasm_v
#else
#define NAPI_MODULE_INITIALIZER_BASE napi_register_module_v
@@ -143,7 +148,6 @@
void** data,
size_t* length);
-#ifndef __wasm32__
// Methods to manage simple async operations
NAPI_EXTERN napi_status NAPI_CDECL
napi_create_async_work(napi_env env,
@@ -159,7 +163,6 @@
napi_async_work work);
NAPI_EXTERN napi_status NAPI_CDECL napi_cancel_async_work(napi_env env,
napi_async_work work);
-#endif // __wasm32__
// version management
NAPI_EXTERN napi_status NAPI_CDECL
@@ -197,7 +200,6 @@
#if NAPI_VERSION >= 4
-#ifndef __wasm32__
// Calling into JS from other threads
NAPI_EXTERN napi_status NAPI_CDECL
napi_create_threadsafe_function(napi_env env,
@@ -231,7 +233,6 @@
NAPI_EXTERN napi_status NAPI_CDECL
napi_ref_threadsafe_function(napi_env env, napi_threadsafe_function func);
-#endif // __wasm32__
#endif // NAPI_VERSION >= 4