Skip to content

Commit 3ac8cbe

Browse files
committed
.gitlab-ci.d: Add build test for wasm64
The wasm builds are tested for 3 targets: wasm32, wasm64(-sMEMORY64=1) and wasm64(-sMEMORY64=2). The CI builds the containers using the same Dockerfile (emsdk-wasm-cross.docker) with different build args. Signed-off-by: Kohei Tokunaga <[email protected]>
1 parent 1eed95e commit 3ac8cbe

File tree

3 files changed

+41
-5
lines changed

3 files changed

+41
-5
lines changed

.gitlab-ci.d/buildtest.yml

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -787,11 +787,29 @@ coverity:
787787
# Always manual on forks even if $QEMU_CI == "2"
788788
- when: manual
789789

790-
build-wasm:
790+
build-wasm32:
791791
extends: .wasm_build_job_template
792792
timeout: 2h
793793
needs:
794-
job: wasm-emsdk-cross-container
794+
job: wasm32-emsdk-cross-container
795795
variables:
796796
IMAGE: emsdk-wasm32-cross
797-
CONFIGURE_ARGS: --static --disable-tools --enable-debug --enable-tcg-interpreter
797+
CONFIGURE_ARGS: --static --cpu=wasm32 --disable-tools --enable-debug --enable-tcg-interpreter
798+
799+
build-wasm-wasm64:
800+
extends: .wasm_build_job_template
801+
timeout: 2h
802+
needs:
803+
job: wasm64-emsdk-cross-container
804+
variables:
805+
IMAGE: emsdk-wasm64-cross
806+
CONFIGURE_ARGS: --static --cpu=wasm64 --wasm64-memory64=1 --disable-tools --enable-debug --enable-tcg-interpreter
807+
808+
build-wasm-wasm64l:
809+
extends: .wasm_build_job_template
810+
timeout: 2h
811+
needs:
812+
job: wasm64l-emsdk-cross-container
813+
variables:
814+
IMAGE: emsdk-wasm64l-cross
815+
CONFIGURE_ARGS: --static --cpu=wasm64 --wasm64-memory64=2 --disable-tools --enable-debug --enable-tcg-interpreter

.gitlab-ci.d/container-cross.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,23 @@ win64-fedora-cross-container:
9292
variables:
9393
NAME: fedora-win64-cross
9494

95-
wasm-emsdk-cross-container:
95+
wasm32-emsdk-cross-container:
9696
extends: .container_job_template
9797
variables:
9898
NAME: emsdk-wasm32-cross
99+
BUILD_ARGS: --build-arg TARGET_CPU=wasm32
100+
DOCKERFILE: emsdk-wasm-cross
101+
102+
wasm64-emsdk-cross-container:
103+
extends: .container_job_template
104+
variables:
105+
NAME: emsdk-wasm64-cross
106+
BUILD_ARGS: --build-arg TARGET_CPU=wasm64 --build-arg WASM64_MEMORY64=1
107+
DOCKERFILE: emsdk-wasm-cross
108+
109+
wasm64l-emsdk-cross-container:
110+
extends: .container_job_template
111+
variables:
112+
NAME: emsdk-wasm64l-cross
113+
BUILD_ARGS: --build-arg TARGET_CPU=wasm64 --build-arg WASM64_MEMORY64=2
114+
DOCKERFILE: emsdk-wasm-cross

.gitlab-ci.d/container-template.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,14 @@
1010
- export COMMON_TAG="$CI_REGISTRY/qemu-project/qemu/qemu/$NAME:latest"
1111
- docker login $CI_REGISTRY -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
1212
- until docker info; do sleep 1; done
13+
- export DOCKERFILE_NAME=${DOCKERFILE:-$NAME}
1314
script:
1415
- echo "TAG:$TAG"
1516
- echo "COMMON_TAG:$COMMON_TAG"
1617
- docker build --tag "$TAG" --cache-from "$TAG" --cache-from "$COMMON_TAG"
1718
--build-arg BUILDKIT_INLINE_CACHE=1
18-
-f "tests/docker/dockerfiles/$NAME.docker" "."
19+
$BUILD_ARGS
20+
-f "tests/docker/dockerfiles/$DOCKERFILE_NAME.docker" "."
1921
- docker push "$TAG"
2022
after_script:
2123
- docker logout

0 commit comments

Comments
 (0)