aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenjiro Nakayama <nakayamakenjiro@gmail.com>2026-09-07 09:49:05 +0900
committerKenjiro Nakayama <nakayamakenjiro@gmail.com>2026-09-07 16:45:33 +0900
commitab3a2d45dd6c5dc46b24f8a18f40bb6c8c5c5999 (patch)
treefaa9232b15a98a1301cc7d2ee25c3e67d900997f
parentd63a1f105815c3fe4ffd954443541bff5259cedf (diff)
downloadportable-ab3a2d45dd6c5dc46b24f8a18f40bb6c8c5c5999.tar.gz
portable-ab3a2d45dd6c5dc46b24f8a18f40bb6c8c5c5999.tar.bz2
portable-ab3a2d45dd6c5dc46b24f8a18f40bb6c8c5c5999.zip
ci: test against latest Emscripten release
Currently Emscripten CI jobs were pinned to Emscripten 3.1.60. This PR changes the Emscripten CI and test configuration to: - Use the latest Emscripten release for both regular and ASAN builds. - Enable memory growth for ASAN tests. In addition, the ssl_verify test generates certificates on the host filesystem at runtime and executes from the temporary directory containing those certificates. The existing preloaded filesystem could not access these runtime-generated files, and Node failed to open ssl_verify.data. To address this issue, this PR uses Node's host filesystem for all Emscripten tests, allowing ssl_verify to access runtime-generated certificates without preloaded data files.
-rw-r--r--.github/workflows/emscripten.yml6
-rw-r--r--tests/CMakeLists.txt2
2 files changed, 4 insertions, 4 deletions
diff --git a/.github/workflows/emscripten.yml b/.github/workflows/emscripten.yml
index ba0eb02..4e22d3a 100644
--- a/.github/workflows/emscripten.yml
+++ b/.github/workflows/emscripten.yml
@@ -33,7 +33,7 @@ jobs:
33 - name: "Setup emsdk" 33 - name: "Setup emsdk"
34 uses: mymindstorm/setup-emsdk@4528d102f7230f0e7b276855c01ea1159be0e984 # v16 34 uses: mymindstorm/setup-emsdk@4528d102f7230f0e7b276855c01ea1159be0e984 # v16
35 with: 35 with:
36 version: "3.1.60" 36 version: "latest"
37 37
38 - name: "Prepare repository" 38 - name: "Prepare repository"
39 run: ./autogen.sh 39 run: ./autogen.sh
@@ -69,7 +69,7 @@ jobs:
69 - name: "Setup emsdk" 69 - name: "Setup emsdk"
70 uses: mymindstorm/setup-emsdk@4528d102f7230f0e7b276855c01ea1159be0e984 # v16 70 uses: mymindstorm/setup-emsdk@4528d102f7230f0e7b276855c01ea1159be0e984 # v16
71 with: 71 with:
72 version: "3.1.60" 72 version: "latest"
73 73
74 - name: "Prepare repository" 74 - name: "Prepare repository"
75 run: ./autogen.sh 75 run: ./autogen.sh
@@ -78,7 +78,7 @@ jobs:
78 run: emcmake cmake -Bbuild 78 run: emcmake cmake -Bbuild
79 env: 79 env:
80 CFLAGS: "-gsource-map -fsanitize=address" 80 CFLAGS: "-gsource-map -fsanitize=address"
81 LDFLAGS: "-fsanitize=address" 81 LDFLAGS: "-fsanitize=address -sALLOW_MEMORY_GROWTH"
82 82
83 - name: "Build" 83 - name: "Build"
84 run: cmake --build build --config Release --parallel 4 84 run: cmake --build build --config Release --parallel 4
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index ac9c5ba..e155ab7 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -68,7 +68,7 @@ file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR} TEST_SOURCE_DIR)
68function(prepare_emscripten_test_target TARGET_NAME) 68function(prepare_emscripten_test_target TARGET_NAME)
69 if(EMSCRIPTEN) 69 if(EMSCRIPTEN)
70 set_target_properties(${TARGET_NAME} PROPERTIES LINK_FLAGS 70 set_target_properties(${TARGET_NAME} PROPERTIES LINK_FLAGS
71 "-sALLOW_MEMORY_GROWTH --preload-file ${TEST_SOURCE_DIR} ") 71 "-sALLOW_MEMORY_GROWTH -sNODERAWFS=1")
72 endif() 72 endif()
73endfunction() 73endfunction()
74 74