diff --git a/clang/ffi/load.c b/clang/ffi/load.c index 2fc94e1..de5938c 100644 --- a/clang/ffi/load.c +++ b/clang/ffi/load.c @@ -1,3 +1,15 @@ +#if defined(__EMSCRIPTEN__) || defined(HVM_NO_DLOPEN) + +fn void ffi_load(const char *path) { + (void)path; + fprintf(stderr, + "ERROR: dynamic FFI loading not available on this platform.\n" + " Register primitives at compile time instead.\n"); + exit(1); +} + +#else + #include #define HVM_RUNTIME @@ -44,3 +56,5 @@ fn void ffi_load(const char *path) { ffi_handles_push(handle); init(ffi_api()); } + +#endif diff --git a/clang/ffi/load_dir.c b/clang/ffi/load_dir.c index 0834acd..2e8fc69 100644 --- a/clang/ffi/load_dir.c +++ b/clang/ffi/load_dir.c @@ -1,3 +1,14 @@ +#if defined(__EMSCRIPTEN__) || defined(HVM_NO_DLOPEN) + +fn void ffi_load_dir(const char *dir) { + (void)dir; + fprintf(stderr, + "ERROR: dynamic FFI loading not available on this platform.\n"); + exit(1); +} + +#else + #include #include @@ -48,3 +59,5 @@ fn void ffi_load_dir(const char *dir) { closedir(dp); } + +#endif