diff --git a/.gitignore b/.gitignore index 3297b54..6782090 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ coverage .tool-versions +releases diff --git a/.gitmodules b/.gitmodules index 69666b2..3d68e94 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ -[submodule "qjsextra/quickjs"] - path = qjsextra/quickjs +[submodule "qjswasm/quickjs"] + path = qjswasm/quickjs url = https://github.com/quickjs-ng/quickjs.git diff --git a/Makefile b/Makefile index a8f624c..fc13c4e 100644 --- a/Makefile +++ b/Makefile @@ -2,19 +2,19 @@ build: @echo "Configuring and building qjs..." - cd qjsextra/quickjs && \ + cd qjswasm/quickjs && \ rm -rf build && \ cmake -B build \ -DQJS_BUILD_LIBC=ON \ -DQJS_BUILD_CLI_WITH_MIMALLOC=OFF \ -DCMAKE_TOOLCHAIN_FILE=/opt/wasi-sdk/share/cmake/wasi-sdk.cmake \ - -DCMAKE_PROJECT_INCLUDE=../qjsextra.cmake + -DCMAKE_PROJECT_INCLUDE=../qjswasm.cmake @echo "Building qjs target..." - make -C qjsextra/quickjs/build qjsextra -j$(nproc) - @echo "Copying build/qjsextra to top-level as qjsextra.wasm..." - cp qjsextra/quickjs/build/qjsextra qjsextra.wasm + make -C qjswasm/quickjs/build qjswasm -j$(nproc) + @echo "Copying build/qjswasm to top-level as qjs.wasm..." + cp qjswasm/quickjs/build/qjswasm qjs.wasm - wasm-opt -O3 qjsextra.wasm -o qjsextra.wasm + wasm-opt -O3 qjs.wasm -o qjs.wasm clean: @echo "Cleaning build directory..." diff --git a/qjsextra.wasm b/qjs.wasm similarity index 52% rename from qjsextra.wasm rename to qjs.wasm index ff496cf..b2ad7ec 100755 Binary files a/qjsextra.wasm and b/qjs.wasm differ diff --git a/qjsextra/quickjs b/qjsextra/quickjs deleted file mode 160000 index 5299e09..0000000 --- a/qjsextra/quickjs +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5299e09100b97a5dd0ea0e73fa5caa4aa0b2d97c diff --git a/qjsextra/eval.c b/qjswasm/eval.c similarity index 100% rename from qjsextra/eval.c rename to qjswasm/eval.c diff --git a/qjsextra/function.c b/qjswasm/function.c similarity index 100% rename from qjsextra/function.c rename to qjswasm/function.c diff --git a/qjsextra/helpers.c b/qjswasm/helpers.c similarity index 100% rename from qjsextra/helpers.c rename to qjswasm/helpers.c diff --git a/qjsextra/qjs.c b/qjswasm/qjs.c similarity index 100% rename from qjsextra/qjs.c rename to qjswasm/qjs.c diff --git a/qjsextra/qjs.h b/qjswasm/qjs.h similarity index 100% rename from qjsextra/qjs.h rename to qjswasm/qjs.h diff --git a/qjsextra/qjsextra.cmake b/qjswasm/qjswasm.cmake similarity index 90% rename from qjsextra/qjsextra.cmake rename to qjswasm/qjswasm.cmake index dbaf008..e125ec3 100644 --- a/qjsextra/qjsextra.cmake +++ b/qjswasm/qjswasm.cmake @@ -29,7 +29,7 @@ if(NOT CMAKE_SYSTEM_NAME STREQUAL "WASI") list(APPEND qjs_libs ${CMAKE_THREAD_LIBS_INIT}) endif() -add_executable(qjsextra +add_executable(qjswasm # gen/repl.c # gen/standalone.c ../eval.c @@ -38,14 +38,14 @@ add_executable(qjsextra ../qjs.c ) -add_qjs_libc_if_needed(qjsextra) -add_static_if_needed(qjsextra) +add_qjs_libc_if_needed(qjswasm) +add_static_if_needed(qjswasm) -set_target_properties(qjsextra PROPERTIES - OUTPUT_NAME "qjsextra" +set_target_properties(qjswasm PROPERTIES + OUTPUT_NAME "qjswasm" ) -target_link_options(qjsextra PRIVATE +target_link_options(qjswasm PRIVATE "LINKER:--export=js_std_await" "LINKER:--export=New_QJS" "LINKER:--export=New_QJSContext" @@ -150,22 +150,22 @@ target_link_options(qjsextra PRIVATE "LINKER:--export=initialize" ) -target_compile_options(qjsextra PRIVATE "-fvisibility=default") +target_compile_options(qjswasm PRIVATE "-fvisibility=default") -target_compile_definitions(qjsextra PRIVATE ${qjs_defines}) +target_compile_definitions(qjswasm PRIVATE ${qjs_defines}) -target_link_libraries(qjsextra qjs) +target_link_libraries(qjswasm qjs) if(NOT WIN32) - set_target_properties(qjsextra PROPERTIES ENABLE_EXPORTS TRUE) + set_target_properties(qjswasm PROPERTIES ENABLE_EXPORTS TRUE) endif() if(QJS_BUILD_CLI_WITH_MIMALLOC OR QJS_BUILD_CLI_WITH_STATIC_MIMALLOC) find_package(mimalloc REQUIRED) if(QJS_BUILD_CLI_WITH_STATIC_MIMALLOC) - target_link_libraries(qjsextra mimalloc-static) + target_link_libraries(qjswasm mimalloc-static) else() - target_link_libraries(qjsextra mimalloc) + target_link_libraries(qjswasm mimalloc) endif() endif() diff --git a/qjswasm/quickjs b/qjswasm/quickjs new file mode 160000 index 0000000..6167dcb --- /dev/null +++ b/qjswasm/quickjs @@ -0,0 +1 @@ +Subproject commit 6167dcb1275ddc8007f80127a736f4905108f23b diff --git a/runtime.go b/runtime.go index 1513a92..d11e9e0 100644 --- a/runtime.go +++ b/runtime.go @@ -13,7 +13,7 @@ import ( wsp1 "github.com/tetratelabs/wazero/imports/wasi_snapshot_preview1" ) -//go:embed qjsextra.wasm +//go:embed qjs.wasm var wasmBytes []byte var (