diff --git a/.github/workflows/samples.yml b/.github/workflows/samples.yml index 0937dfb62639..2a92561b5f46 100644 --- a/.github/workflows/samples.yml +++ b/.github/workflows/samples.yml @@ -61,7 +61,6 @@ jobs: web: runs-on: ubuntu-20.04 - container: gcr.io/iree-oss/emscripten@sha256:2dd4c52f1bb499ab365aad0111fe5538b685d88af38636b409b0cf6a576ab214 env: VENV_DIR: ${{ github.workspace }}/.venv defaults: @@ -74,6 +73,12 @@ jobs: run: git config --global --add safe.directory '*' - name: "Check out runtime submodules" run: ./build_tools/scripts/git/update_runtime_submodules.sh + - name: "Installing build dependencies" + run: | + sudo apt update + sudo apt install -y ninja-build + echo "CC=clang" >> $GITHUB_ENV + echo "CXX=clang++" >> $GITHUB_ENV - uses: actions/setup-python@v5.1.0 with: python-version: "3.11" @@ -86,6 +91,10 @@ jobs: --upgrade \ iree-compiler \ iree-runtime + - name: "Setup emsdk" + uses: mymindstorm/setup-emsdk@v14 + with: + version: 3.1.44 - name: "Test experimental web samples" env: HOST_TOOLS_BINARY_DIR: ${{ env.VENV_DIR }}/bin diff --git a/build_tools/docker/dockerfiles/emscripten.Dockerfile b/build_tools/docker/dockerfiles/emscripten.Dockerfile deleted file mode 100644 index df17a74b6ad7..000000000000 --- a/build_tools/docker/dockerfiles/emscripten.Dockerfile +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 2021 The IREE Authors -# -# Licensed under the Apache License v2.0 with LLVM Exceptions. -# See https://llvm.org/LICENSE.txt for license information. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -# An image for building IREE through Emscripten. - -FROM gcr.io/iree-oss/base@sha256:dc314b4fe30fc1315742512891357bffed4d1b62ffcb46258b1e0761c737b446 - -# See also -# * https://github.com/emscripten-core/emsdk/blob/main/docker/Dockerfile -# * https://hub.docker.com/r/emscripten/emsdk - -ARG EMSDK_COMMIT=a896e3d066448b3530dbcaa48869fafefd738f57 -ARG SDK_VERSION=3.1.44 - -WORKDIR / - -# Follow https://emscripten.org/docs/getting_started/downloads.html. -RUN git clone https://github.com/emscripten-core/emsdk \ - && cd emsdk && git checkout "${EMSDK_COMMIT}" && \ - ./emsdk install ${SDK_VERSION} && \ - ./emsdk activate ${SDK_VERSION} - -# Set some environment variables for Emscripten to use. -ENV EMSDK=/emsdk -ENV EM_DATA=${EMSDK}/.data -ENV EM_CONFIG=${EMSDK}/.emscripten -ENV EM_CACHE=${EM_DATA}/cache -ENV EM_PORTS=${EM_DATA}/ports -# Emscripten writes into its cache location (outside of the CMake build -# directory). -# We can either -# (A) Grant broad write permissions to the cache directory to be able to run -# our scripts under different users. -# (B) Mount a user home directory when using the image. -# Since (A) requires less configuration, we'll do that. If multiple tools would -# want a user directory (like Bazel), we should switch to (B). -# See https://github.com/emscripten-core/emsdk/issues/535 -RUN mkdir -p "${EM_CACHE}" && chmod -R 777 "${EM_CACHE}" - -# Normally we'd run `source emsdk_env.sh`, but that doesn't integrate with -# Docker's environment properties model. Instead, we directly extend the path -# to include the directories suggested by `emsdk activate`. -ENV PATH="${EMSDK}:${EMSDK}/upstream/emscripten:$PATH" diff --git a/build_tools/docker/manage_images.py b/build_tools/docker/manage_images.py index 14b35084e9f4..e7bb1c4c3bbd 100755 --- a/build_tools/docker/manage_images.py +++ b/build_tools/docker/manage_images.py @@ -45,7 +45,6 @@ IMAGES_TO_DEPENDENCIES = { "base": [], "base-arm64": [], - "emscripten": ["base"], "riscv-toolchain-builder": [], # Containers with all the newest versions of dependencies that we support # instead of the oldest. diff --git a/build_tools/docker/prod_digests.txt b/build_tools/docker/prod_digests.txt index 7fb190a784a3..59ad32cf30d2 100644 --- a/build_tools/docker/prod_digests.txt +++ b/build_tools/docker/prod_digests.txt @@ -1,5 +1,4 @@ gcr.io/iree-oss/base@sha256:dc314b4fe30fc1315742512891357bffed4d1b62ffcb46258b1e0761c737b446 -gcr.io/iree-oss/emscripten@sha256:2dd4c52f1bb499ab365aad0111fe5538b685d88af38636b409b0cf6a576ab214 gcr.io/iree-oss/base-bleeding-edge@sha256:cf2e78194e64fd0166f4141317366261d7a62432b72e9a324cb8c2ff4e1a515a gcr.io/iree-oss/base-arm64@sha256:9daa1cdbbf12da8527319ece76a64d06219e04ecb99a4cff6e6364235ddf6c59 gcr.io/iree-oss/riscv-toolchain-builder@sha256:4240a374d35e5ea9037051559aaae4a8b6414ad5872501d4e240baccaacfff11