Pārlūkot izejas kodu

improve installation steps for wasi-sdk and wabt on Windows (#4359)

liang.he 6 mēneši atpakaļ
vecāks
revīzija
965f2452c8
1 mainītis faili ar 49 papildinājumiem un 4 dzēšanām
  1. 49 4
      .github/actions/install-wasi-sdk-wabt/action.yml

+ 49 - 4
.github/actions/install-wasi-sdk-wabt/action.yml

@@ -30,14 +30,23 @@ runs:
       if: ${{ startsWith(inputs.os, 'ubuntu') }}
       shell: bash
       run: |
+        echo "Downloading wasi-sdk for Ubuntu..."
         sudo wget -O wasi-sdk.tar.gz --progress=dot:giga https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-25/wasi-sdk-25.0-x86_64-linux.tar.gz
+
+        echo "Extracting wasi-sdk..."
         sudo tar -xf wasi-sdk.tar.gz
         sudo ln -sf  wasi-sdk-25.0-x86_64-linux/ wasi-sdk
+
+        echo "Downloading wabt for Ubuntu..."
         sudo wget -O wabt.tar.gz     --progress=dot:giga https://github.com/WebAssembly/wabt/releases/download/1.0.37/wabt-1.0.37-ubuntu-20.04.tar.gz
+
+        echo "Extracting wabt..."
         sudo tar -xf wabt.tar.gz
         sudo ln -sf  wabt-1.0.37 wabt
+
         /opt/wasi-sdk/bin/clang --version
         /opt/wabt/bin/wasm-interp --version
+
         echo "::notice::wasi-sdk-25 and wabt-1.0.37 installed on ubuntu"
       working-directory: /opt
 
@@ -45,14 +54,23 @@ runs:
       if: ${{ inputs.os == 'macos-13' }}
       shell: bash
       run: |
+        echo "Downloading wasi-sdk for macOS-13..."
         sudo wget -O wasi-sdk.tar.gz --progress=dot:giga https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-25/wasi-sdk-25.0-x86_64-macos.tar.gz
+
+        echo "Extracting wasi-sdk..."
         sudo tar -xf wasi-sdk.tar.gz
         sudo ln -sf  wasi-sdk-25.0-x86_64-macos wasi-sdk
+
+        echo "Downloading wabt for macOS-13..."
         sudo wget -O wabt.tar.gz     --progress=dot:giga https://github.com/WebAssembly/wabt/releases/download/1.0.36/wabt-1.0.36-macos-12.tar.gz
+
+        echo "Extracting wabt..."
         sudo tar -xf wabt.tar.gz
         sudo ln -sf  wabt-1.0.36 wabt
+
         /opt/wasi-sdk/bin/clang --version
         /opt/wabt/bin/wasm-interp --version
+
         echo "::notice::wasi-sdk-25 and wabt-1.0.36 installed on macos-13"
       working-directory: /opt
 
@@ -60,21 +78,48 @@ runs:
       if: ${{ inputs.os == 'macos-14' }}
       shell: bash
       run: |
+        echo "Downloading wasi-sdk for macOS-14..."
         sudo wget -O wasi-sdk.tar.gz --progress=dot:giga https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-25/wasi-sdk-25.0-arm64-macos.tar.gz
+
+        echo "Extracting wasi-sdk..."
         sudo tar -xf wasi-sdk.tar.gz
         sudo ln -sf  wasi-sdk-25.0-arm64-macos wasi-sdk
+
+        echo "Downloading wabt for macOS-14..."
         sudo wget -O wabt.tar.gz     --progress=dot:giga https://github.com/WebAssembly/wabt/releases/download/1.0.37/wabt-1.0.37-macos-14.tar.gz
+
+        echo "Extracting wabt..."
         sudo tar -xf wabt.tar.gz
         sudo ln -sf  wabt-1.0.37 wabt
+
         /opt/wasi-sdk/bin/clang --version
         /opt/wabt/bin/wasm-interp --version
+
         echo "::notice::wasi-sdk-25 and wabt-1.0.37 installed on macos-14"
       working-directory: /opt
 
-    #TODO: Add support for Windows
     - name: Set up wasi-sdk and wabt on Windows
       if: ${{ startsWith(inputs.os, 'windows') }}
-      shell: powershell
+      shell: bash
       run: |
-        echo "::notice::Support for Windows is not implemented yet"
-        exit 1
+        choco install -y wget
+
+        mkdir -p /opt/wasi-sdk
+        mkdir -p /opt/wabt
+
+        echo "Downloading wasi-sdk for Windows..."
+        wget -O wasi-sdk.tar.gz --progress=dot:giga https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-25/wasi-sdk-25.0-x86_64-windows.tar.gz
+
+        echo "Extracting wasi-sdk..."
+        tar --strip-components=1 -xf wasi-sdk.tar.gz -C /opt/wasi-sdk
+
+        echo "Downloading wabt for Windows..."
+        wget -O wabt.tar.gz --progress=dot:giga https://github.com/WebAssembly/wabt/releases/download/1.0.37/wabt-1.0.37-windows.tar.gz
+
+        echo "Extracting wabt..."
+        tar --strip-components=1 -xf wabt.tar.gz -C /opt/wabt
+
+        /opt/wasi-sdk/bin/clang --version
+        /opt/wabt/bin/wasm-interp --version
+
+        echo "::notice::wasi-sdk-25 and wabt-1.0.37 installed on Windows"