1
1
FROM docker.io/library/fedora:41
2
2
3
- ENV CC=clang
3
+ ARG TARGETARCH
4
4
5
- ENV WASI_SDK_VERSION=24
6
- ENV WASI_SDK_PATH=/opt/wasi-sdk
7
5
8
- ENV WASMTIME_HOME=/opt/wasmtime
9
- ENV WASMTIME_VERSION=22.0.0
10
- ENV WASMTIME_CPU_ARCH=x86_64
6
+ ENV CC=clang
11
7
12
8
RUN dnf -y --nodocs --setopt=install_weak_deps=False --disablerepo=fedora-cisco-openh264 install \
13
9
/usr/bin/{blurb,clang,curl,git,ln,tar,xz} \
@@ -19,12 +15,32 @@ RUN dnf -y --nodocs --setopt=install_weak_deps=False --disablerepo=fedora-cisco-
19
15
builddep python3 && \
20
16
dnf -y clean all
21
17
18
+
19
+ # Update only after consulting with WASI support maintainers (see PEP 11).
20
+ ENV WASI_SDK_VERSION=24
21
+ ENV WASI_SDK_PATH=/opt/wasi-sdk
22
+
22
23
RUN mkdir ${WASI_SDK_PATH} && \
23
- curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-x86_64-linux.tar.gz | \
24
+ case"${TARGETARCH}" in \
25
+ amd64) WASI_ARCH="x86_64" ;; \
26
+ arm64) WASI_ARCH="arm64" ;; \
27
+ *) echo"Unsupported TARGETARCH: ${TARGETARCH}" && exit 1 ;; \
28
+ esac && \
29
+ curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-${WASI_ARCH}-linux.tar.gz | \
24
30
tar --strip-components 1 --directory ${WASI_SDK_PATH} --extract --gunzip
25
31
32
+
33
+ # Update as desired.
34
+ ENV WASMTIME_VERSION=33.0.0
35
+ ENV WASMTIME_HOME=/opt/wasmtime
36
+
26
37
RUN mkdir --parents ${WASMTIME_HOME} && \
27
- curl --location"https://github.com/bytecodealliance/wasmtime/releases/download/v${WASMTIME_VERSION}/wasmtime-v${WASMTIME_VERSION}-${WASMTIME_CPU_ARCH}-linux.tar.xz" | \
38
+ case"${TARGETARCH}" in \
39
+ amd64) WASMTIME_ARCH="x86_64" ;; \
40
+ arm64) WASMTIME_ARCH="aarch64" ;; \
41
+ *) echo"Unsupported TARGETARCH: ${TARGETARCH}" && exit 1 ;; \
42
+ esac && \
43
+ curl --location"https://github.com/bytecodealliance/wasmtime/releases/download/v${WASMTIME_VERSION}/wasmtime-v${WASMTIME_VERSION}-${WASMTIME_ARCH}-linux.tar.xz" | \
28
44
xz --decompress | \
29
45
tar --strip-components 1 --directory ${WASMTIME_HOME} -x && \
30
46
ln -s ${WASMTIME_HOME}/wasmtime /usr/local/bin