From b5f8ee61a7f7e9bd291dd26b0585d03eb686c941 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 5 May 2024 13:19:16 +0200 Subject: Adding upstream version 1.46.3. Signed-off-by: Daniel Baumann --- .../.github/scripts/extract_from_release_notes.py | 60 -- .../.github/scripts/fetch_and_compare_version.py | 123 ---- .../scripts/reuse_latest_release_binaries.py | 102 ---- .../.github/workflows/build_docker_images.yml | 89 --- .../.github/workflows/build_iwasm_release.yml | 108 ---- .../.github/workflows/build_llvm_libraries.yml | 91 --- .../.github/workflows/build_wamr_lldb.yml | 197 ------- .../.github/workflows/build_wamr_sdk.yml | 78 --- .../.github/workflows/build_wamr_vscode_ext.yml | 73 --- .../.github/workflows/build_wamrc.yml | 86 --- .../.github/workflows/coding_guidelines.yml | 28 - .../workflows/compilation_on_android_ubuntu.yml | 645 --------------------- .../.github/workflows/compilation_on_macos.yml | 331 ----------- .../.github/workflows/compilation_on_nuttx.yml | 134 ----- .../.github/workflows/compilation_on_sgx.yml | 401 ------------- .../.github/workflows/compilation_on_windows.yml | 77 --- .../.github/workflows/create_tag.yml | 68 --- .../.github/workflows/release_process.yml | 215 ------- .../workflows/reuse_latest_release_binaries.yml | 68 --- .../.github/workflows/spec_test_on_nuttx.yml | 145 ----- 20 files changed, 3119 deletions(-) delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/extract_from_release_notes.py delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/fetch_and_compare_version.py delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/reuse_latest_release_binaries.py delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_docker_images.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_iwasm_release.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_llvm_libraries.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_lldb.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_sdk.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_vscode_ext.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamrc.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/coding_guidelines.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_android_ubuntu.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_macos.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_nuttx.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_sgx.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_windows.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/create_tag.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/release_process.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/reuse_latest_release_binaries.yml delete mode 100644 fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/spec_test_on_nuttx.yml (limited to 'fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github') diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/extract_from_release_notes.py b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/extract_from_release_notes.py deleted file mode 100644 index 3802d9211..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/extract_from_release_notes.py +++ /dev/null @@ -1,60 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -# - -""" -Extract the latest release notes content from RELEASE_NOTES.md -""" - -import argparse -import os -import sys -import traceback - - -def latest_content(release_notes_path): - """ - can't change the format of the original content - """ - content = "" - start_extract = False - with open(release_notes_path, encoding="utf-8") as f: - for line in f: - if line.startswith("## "): - if start_extract: - break - - start_extract = True - continue - - # hit a separated line - if line.startswith("---"): - break - - content += line - - content += os.linesep - return content - - -def main(): - """ - GO!GO!!GO!!! - """ - parser = argparse.ArgumentParser(description="run the sample and examine outputs") - parser.add_argument("release_notes_path", type=str) - args = parser.parse_args() - - ret = 1 - try: - print(latest_content(args.release_notes_path)) - ret = 0 - except AssertionError: - traceback.print_exc() - return ret - - -if __name__ == "__main__": - sys.exit(main()) diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/fetch_and_compare_version.py b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/fetch_and_compare_version.py deleted file mode 100644 index ac206cade..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/fetch_and_compare_version.py +++ /dev/null @@ -1,123 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -# - -import re -import shlex -import subprocess -import sys - - -def fetch_version_from_code(): - """ - search the semantic version definition in core/version.h - """ - major, minor, patch = "", "", "" - with open("core/version.h", encoding="utf-8") as f: - for line in f: - if "WAMR_VERSION" not in line: - continue - - major_match = re.search(r"WAMR_VERSION_MAJOR (\d+)", line) - if major_match is not None: - major = major_match.groups()[0] - continue - - minor_match = re.search(r"WAMR_VERSION_MINOR (\d+)", line) - if minor_match is not None: - minor = minor_match.groups()[0] - continue - - patch_match = re.search(r"WAMR_VERSION_PATCH (\d+)", line) - if patch_match is not None: - patch = patch_match.groups()[0] - - if len(major) == 0 or len(minor) == 0 or len(patch) == 0: - raise Exception( - "can't find the semantic version definition likes WAMR_VERSION_*" - ) - return f"WAMR-{major}.{minor}.{patch}" - - -def fetch_latest_git_tag(): - list_tag_cmd = ( - 'git tag --list WAMR-*.*.* --sort=committerdate --format="%(refname:short)"' - ) - p = subprocess.run(shlex.split(list_tag_cmd), capture_output=True, check=True) - - all_tags = p.stdout.decode().strip() - latest_tag = all_tags.split("\n")[-1] - return latest_tag - - -def match_version_pattern(v): - pattern = r"WAMR-\d+\.\d+\.\d+" - m = re.match(pattern, v) - return m is not None - - -def split_version_string(v): - """ - return the semantic version as an integer list - """ - pattern = r"WAMR-(\d+)\.(\d+)\.(\d+)" - m = re.match(pattern, v) - return [int(x) for x in m.groups()] - - -def compare_version_string(v1, v2): - """ - return value: - - 1. if v1 > v2 - - -1. if v1 < v2 - - 0. if v1 == v2 - """ - if not match_version_pattern(v1): - raise Exception(f"{v1} doesn't match the version pattern") - - if not match_version_pattern(v2): - raise Exception(f"{v2} doesn't match the version pattern") - - v1_sem_ver = split_version_string(v1) - v2_sem_ver = split_version_string(v2) - - return 0 if v1_sem_ver == v2_sem_ver else (1 if v1_sem_ver > v2_sem_ver else -1) - - -def is_major_or_minor_changed(v1, v2): - """ - return true if change either major of v2 or minor of v2 - return false or else - """ - if not match_version_pattern(v1): - raise Exception(f"{v1} doesn't match the version pattern") - - if not match_version_pattern(v2): - raise Exception(f"{v2} doesn't match the version pattern") - - v1_major, v1_minor, _ = split_version_string(v1) - v2_major, v2_minor, _ = split_version_string(v2) - - return v2_major != v1_major or v2_minor != v1_minor - - -def next_version(): - definition = fetch_version_from_code() - tag = fetch_latest_git_tag() - - new_version = "" - minor_changed = False - if compare_version_string(definition, tag) == 1: - new_version = definition.split("-")[-1] - - if is_major_or_minor_changed(tag, definition): - minor_changed = True - - return new_version, "major_minor_change" if minor_changed else "patch_change" - - -if __name__ == "__main__": - print(f"{next_version()[0]},{next_version()[1]}") - sys.exit(0) diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/reuse_latest_release_binaries.py b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/reuse_latest_release_binaries.py deleted file mode 100644 index 0fe2d9766..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/scripts/reuse_latest_release_binaries.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -# - -import argparse -import json -import os -import shlex -import subprocess -import sys -from urllib.error import HTTPError, URLError -import urllib.request - - -def get_last_commit(target_path, cwd): - last_commit_cmd = f"git log -n 1 --pretty=format:%H -- {target_path}" - p = subprocess.run( - shlex.split(last_commit_cmd), capture_output=True, check=True, cwd=cwd - ) - return p.stdout.decode().strip() - - -def fetch_git_tags(): - list_tag_cmd = ( - 'git tag --list WAMR-*.*.* --sort=committerdate --format="%(refname:short)"' - ) - p = subprocess.run(shlex.split(list_tag_cmd), capture_output=True, check=True) - - all_tags = p.stdout.decode().strip() - return all_tags.split("\n") - - -def download_binaries(binary_name_stem, cwd): - """ - 1. find the latest release name - 2. form assets download url: - """ - try: - all_tags = fetch_git_tags() - # *release_process.yml* will create a tag and release at first - second_last_tag = all_tags[-2] - latest_tag = all_tags[-1] - - latest_url = "https://api.github.com/repos/bytecodealliance/wasm-micro-runtime/releases/latest" - print(f"::notice::query the latest release with {latest_url}...") - with urllib.request.urlopen(latest_url) as response: - body = response.read() - - release_name = json.loads(body)["name"] - - # WAMR-X.Y.Z -> X.Y.Z - second_last_sem_ver = second_last_tag[5:] - latest_sem_ver = latest_tag[5:] - assert latest_sem_ver in binary_name_stem - name_stem_in_release = binary_name_stem.replace( - latest_sem_ver, second_last_sem_ver - ) - - # download and rename - for file_ext in (".zip", ".tar.gz"): - assets_url = f"https://github.com/bytecodealliance/wasm-micro-runtime/releases/download/{release_name}/{name_stem_in_release}{file_ext}" - local_path = f"{binary_name_stem}{file_ext}" - print(f"::notice::download from {assets_url} and save as {local_path}...") - urllib.request.urlretrieve(assets_url, local_path) - return True - except HTTPError as error: - print(error.status, error.reason) - except URLError as error: - print(error.reason) - except TimeoutError: - print("Request timeout") - - return False - - -def main(): - parser = argparse.ArgumentParser( - description="Reuse binaries of the latest release if no more modification on the_path since last_commit" - ) - parser.add_argument("working_directory", type=str) - parser.add_argument("--binary_name_stem", type=str) - parser.add_argument("--last_commit", type=str) - parser.add_argument("--the_path", type=str) - args = parser.parse_args() - - last_commit = get_last_commit(args.the_path, args.working_directory) - if last_commit == args.last_commit: - return download_binaries(args.binary_name_stem, args.working_directory) - else: - return False - - -if __name__ == "__main__": - # use output to indicate results - # echo "result=${result}" >> "$GITHUB_OUTPUT" - with open(os.environ.get("GITHUB_OUTPUT"), 'a') as output_file: - output_file.write("result=hit\n" if main() else "result=not-hit\n") - - # always return 0 - sys.exit(0) diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_docker_images.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_docker_images.yml deleted file mode 100644 index 819bf94c3..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_docker_images.yml +++ /dev/null @@ -1,89 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: Create and publish Docker images - -on: - workflow_call: - inputs: - upload_url: - description: upload binary assets to the URL of release - type: string - required: true - ver_num: - description: a semantic version number. - type: string - required: true - -jobs: - build-and-push-images: - runs-on: ubuntu-22.04 - - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Build and save Docker image(wasm-debug-server:${{ inputs.ver_num }}) to tar file - run: | - docker build -t wasm-debug-server:${{ inputs.ver_num }} . - docker save -o wasm-debug-server.tar wasm-debug-server:${{ inputs.ver_num }} - working-directory: test-tools/wamr-ide/WASM-Debug-Server/Docker - - - name: compress the tar file - run: | - tar czf wasm-debug-server-${{ inputs.ver_num }}.tar.gz wasm-debug-server.tar - zip wasm-debug-server-${{ inputs.ver_num }}.zip wasm-debug-server.tar - working-directory: test-tools/wamr-ide/WASM-Debug-Server/Docker - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/WASM-Debug-Server/Docker/wasm-debug-server-${{ inputs.ver_num }}.tar.gz - asset_name: wasm-debug-server-${{ inputs.ver_num }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/WASM-Debug-Server/Docker/wasm-debug-server-${{ inputs.ver_num }}.zip - asset_name: wasm-debug-server-${{ inputs.ver_num }}.zip - asset_content_type: application/zip - - - name: Build and save Docker image(wasm-toolchain:${{ inputs.ver_num }}) to tar file - run: | - docker build -t wasm-toolchain:${{ inputs.ver_num }} . - docker save -o wasm-toolchain.tar wasm-toolchain:${{ inputs.ver_num }} - working-directory: test-tools/wamr-ide/WASM-Toolchain/Docker - - - name: compress the tar file - run: | - tar czf wasm-toolchain-${{ inputs.ver_num }}.tar.gz wasm-toolchain.tar - zip wasm-toolchain-${{ inputs.ver_num }}.zip wasm-toolchain.tar - working-directory: test-tools/wamr-ide/WASM-Toolchain/Docker - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/WASM-Toolchain/Docker/wasm-toolchain-${{ inputs.ver_num }}.tar.gz - asset_name: wasm-toolchain-${{ inputs.ver_num }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/WASM-Toolchain/Docker/wasm-toolchain-${{ inputs.ver_num }}.zip - asset_name: wasm-toolchain-${{ inputs.ver_num }}.zip - asset_content_type: application/zip - diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_iwasm_release.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_iwasm_release.yml deleted file mode 100644 index 64aa9a92c..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_iwasm_release.yml +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: build iwasm release - -on: - workflow_call: - inputs: - arch: - description: arch of the release - type: string - required: false - default: x86_64 - cwd: - description: workfing directory - type: string - required: true - llvm_cache_key: - description: the cache key of llvm libraries - type: string - required: true - runner: - description: OS of compilation - type: string - required: true - upload_url: - description: a semantic version number. it is required when `release` is true. - type: string - required: false - ver_num: - description: a semantic version number. it is required when `release` is true. - type: string - required: false - -jobs: - build: - runs-on: ${{ inputs.runner }} - steps: - - uses: actions/checkout@v3 - - - name: get cached LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ inputs.llvm_cache_key }} - fail-on-cache-miss: true - - - name: generate iwasm binary release - run: | - cmake -S . -B build \ - -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_FAST_JIT=1 -DWAMR_BUILD_JIT=1 \ - -DWAMR_BUILD_CUSTOM_NAME_SECTION=0 \ - -DWAMR_BUILD_DEBUG_INTERP=0 \ - -DWAMR_BUILD_DEBUG_AOT=0 \ - -DWAMR_BUILD_DUMP_CALL_STACK=0 \ - -DWAMR_BUILD_LIBC_UVWASI=0 \ - -DWAMR_BUILD_LIBC_EMCC=0 \ - -DWAMR_BUILD_LIB_RATS=0 \ - -DWAMR_BUILD_LOAD_CUSTOM_SECTION=0 \ - -DWAMR_BUILD_MEMORY_PROFILING=0 \ - -DWAMR_BUILD_MINI_LOADER=0 \ - -DWAMR_BUILD_MULTI_MODULE=0 \ - -DWAMR_BUILD_PERF_PROFILING=0 \ - -DWAMR_BUILD_SPEC_TEST=0 \ - -DWAMR_BUILD_BULK_MEMORY=1 \ - -DWAMR_BUILD_LIB_PTHREAD=1 \ - -DWAMR_BUILD_LIB_PTHREAD_SEMAPHORE=1 \ - -DWAMR_BUILD_LIB_WASI_THREADS=1 \ - -DWAMR_BUILD_LIBC_BUILTIN=1 \ - -DWAMR_BUILD_LIBC_WASI=1 \ - -DWAMR_BUILD_REF_TYPES=1 \ - -DWAMR_BUILD_SIMD=1 \ - -DWAMR_BUILD_SHARED_MEMORY=1 \ - -DWAMR_BUILD_TAIL_CALL=1 \ - -DWAMR_BUILD_THREAD_MGR=1 - cmake --build build --config Release --parallel 4 - working-directory: ${{ inputs.cwd }} - - - name: compress the binary - run: | - tar czf iwasm-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz iwasm - zip iwasm-${{ inputs.ver_num }}-${{ inputs.runner }}.zip iwasm - working-directory: ${{ inputs.cwd }}/build - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: ${{ inputs.cwd }}/build/iwasm-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz - asset_name: iwasm-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: ${{ inputs.cwd }}/build/iwasm-${{ inputs.ver_num }}-${{ inputs.runner }}.zip - asset_name: iwasm-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_llvm_libraries.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_llvm_libraries.yml deleted file mode 100644 index 7ef1dd63f..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_llvm_libraries.yml +++ /dev/null @@ -1,91 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: Reusable workflow-build_llvm_libraries - -on: - workflow_call: - inputs: - os: - required: true - type: string - arch: - required: true - type: string - outputs: - cache_key: - description: "A cached key of LLVM libraries" - value: ${{ jobs.build_llvm_libraries.outputs.key}} - -jobs: - build_llvm_libraries: - runs-on: ${{ inputs.os }} - outputs: - key: ${{ steps.create_lib_cache_key.outputs.key}} - - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: install dependencies - run: /usr/bin/env python3 -m pip install -r requirements.txt - working-directory: build-scripts - - - name: retrive the last commit ID - id: get_last_commit - run: echo "last_commit=$(GH_TOKEN=${{ secrets.GITHUB_TOKEN }} /usr/bin/env python3 ./build_llvm.py --llvm-ver)" >> $GITHUB_OUTPUT - working-directory: build-scripts - - # Bump the prefix number to evict all previous caches and - # enforce a clean build, in the unlikely case that some - # weird build error occur and llvm/build becomes a potential - # suspect. - - name: form the cache key of libraries - id: create_lib_cache_key - run: echo "key=0-llvm-libraries-${{ inputs.os }}-${{ inputs.arch }}-${{ steps.get_last_commit.outputs.last_commit }}" >> $GITHUB_OUTPUT - - - name: Cache LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ steps.create_lib_cache_key.outputs.key}} - - - uses: actions/cache@v3 - with: - path: ~/.ccache - key: 0-ccache-${{ inputs.os }}-${{ steps.get_last_commit.outputs.last_commit }} - restore-keys: | - 0-ccache-${{ inputs.os }} - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' && inputs.os == 'ubuntu-20.04' - - - uses: actions/cache@v3 - with: - path: ~/.cache/ccache - key: 0-ccache-${{ inputs.os }}-${{ steps.get_last_commit.outputs.last_commit }} - restore-keys: | - 0-ccache-${{ inputs.os }} - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' && inputs.os == 'ubuntu-22.04' - - - run: sudo apt install -y ccache ninja-build - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' && startsWith(inputs.os, 'ubuntu') - - - uses: actions/cache@v3 - with: - path: ~/Library/Caches/ccache - key: 0-ccache-${{ inputs.os }}-${{ steps.get_last_commit.outputs.last_commit }} - restore-keys: | - 0-ccache-${{ inputs.os }} - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' && startsWith(inputs.os, 'macos') - - - run: brew install ccache ninja - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' && startsWith(inputs.os, 'macos') - - - name: Build LLVM libraries - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: /usr/bin/env python3 ./build_llvm.py --arch ${{ inputs.arch }} - working-directory: build-scripts diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_lldb.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_lldb.yml deleted file mode 100644 index ba491ad3a..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_lldb.yml +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: build wamr lldb - -on: - workflow_call: - inputs: - arch: - description: arch of the release - type: string - required: false - default: x86_64 - runner: - description: OS of compilation - type: string - required: true - upload_url: - description: upload binary assets to the URL of release - type: string - required: true - ver_num: - description: a semantic version number - type: string - required: true - -jobs: - try_reuse: - uses: ./.github/workflows/reuse_latest_release_binaries.yml - with: - binary_name_stem: "wamr-lldb-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}" - last_commit: "ea63ba4bd010c2285623ad4acc0262a4d63bcfea" - the_path: "./build-scripts/lldb-wasm.patch" - upload_url: ${{ inputs.upload_url }} - - build: - needs: try_reuse - if: needs.try_reuse.outputs.result != 'hit' - runs-on: ${{ inputs.runner }} - steps: - - uses: actions/checkout@v3 - - - name: Cache build - id: lldb_build_cache - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm-project/build/bin - ./core/deps/llvm-project/build/include - ./core/deps/llvm-project/build/lib - ./core/deps/llvm-project/build/libexec - ./core/deps/llvm-project/build/share - ./core/deps/llvm-project/lldb/tools/ - ./core/deps/llvm-project/wamr-lldb/ - key: ${{inputs.arch}}-${{ inputs.runner }}-lldb_build - - - name: setup xcode macos - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'macos') - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: latest-stable - - # Remove xCode command line tools, to prevent duplicate symbol compilation failures - - name: install utils macos - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'macos') - run: | - brew install swig cmake ninja libedit - sudo rm -rf /Library/Developer/CommandLineTools - - - name: intsall utils ubuntu - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'ubuntu') - run: sudo apt update && sudo apt-get install -y lld ninja-build - - # `git clone` takes ~7m - - name: download llvm - if: steps.lldb_build_cache.outputs.cache-hit != 'true' - run: | - wget https://github.com/llvm/llvm-project/archive/1f27fe6128769f00197925c3b8f6abb9d0e5cd2e.zip - unzip -q 1f27fe6128769f00197925c3b8f6abb9d0e5cd2e.zip - mv llvm-project-1f27fe6128769f00197925c3b8f6abb9d0e5cd2e llvm-project - working-directory: core/deps/ - - - name: apply wamr patch - if: steps.lldb_build_cache.outputs.cache-hit != 'true' - run: | - git init - git config user.email "action@github.com" - git config user.name "github action" - git apply ../../../build-scripts/lldb-wasm.patch - working-directory: core/deps/llvm-project - - - name: build lldb ubuntu - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'ubuntu') - run: | - echo "start to build lldb..." - mkdir -p wamr-lldb - cmake -S ./llvm -B build \ - -G Ninja \ - -DCMAKE_INSTALL_PREFIX=../wamr-lldb \ - -DCMAKE_BUILD_TYPE:STRING="Release" \ - -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ - -DLLVM_ENABLE_PROJECTS="clang;lldb" \ - -DLLVM_TARGETS_TO_BUILD:STRING="X86;WebAssembly" \ - -DLLVM_BUILD_BENCHMARKS:BOOL=OFF \ - -DLLVM_BUILD_DOCS:BOOL=OFF \ - -DLLVM_BUILD_EXAMPLES:BOOL=OFF \ - -DLLVM_BUILD_LLVM_DYLIB:BOOL=OFF \ - -DLLVM_BUILD_TESTS:BOOL=OFF \ - -DLLVM_INCLUDE_BENCHMARKS:BOOL=OFF \ - -DLLVM_INCLUDE_DOCS:BOOL=OFF \ - -DLLVM_INCLUDE_EXAMPLES:BOOL=OFF \ - -DLLVM_INCLUDE_TESTS:BOOL=OFF \ - -DLLVM_ENABLE_BINDINGS:BOOL=OFF \ - -DLLVM_ENABLE_LIBXML2:BOOL=ON \ - -DLLDB_ENABLE_PYTHON:BOOL=OFF \ - -DLLVM_ENABLE_LLD:BOOL=ON - cmake --build build --target lldb install --parallel $(nproc) - working-directory: core/deps/llvm-project - - - name: build lldb macos - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'macos') - run: | - echo "start to build lldb..." - mkdir -p wamr-lldb - cmake -S ./llvm -B build \ - -G Ninja \ - -DCMAKE_INSTALL_PREFIX=../wamr-lldb \ - -DCMAKE_BUILD_TYPE:STRING="Release" \ - -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ - -DLLVM_ENABLE_PROJECTS="clang;lldb" \ - -DLLVM_TARGETS_TO_BUILD:STRING="X86;WebAssembly" \ - -DLLVM_BUILD_BENCHMARKS:BOOL=OFF \ - -DLLVM_BUILD_DOCS:BOOL=OFF \ - -DLLVM_BUILD_EXAMPLES:BOOL=OFF \ - -DLLVM_BUILD_LLVM_DYLIB:BOOL=OFF \ - -DLLVM_BUILD_TESTS:BOOL=OFF \ - -DLLVM_INCLUDE_BENCHMARKS:BOOL=OFF \ - -DLLVM_INCLUDE_DOCS:BOOL=OFF \ - -DLLVM_INCLUDE_EXAMPLES:BOOL=OFF \ - -DLLVM_INCLUDE_TESTS:BOOL=OFF \ - -DLLVM_BUILD_BENCHMARKS:BOOL=OFF \ - -DLLVM_BUILD_DOCS:BOOL=OFF \ - -DLLVM_BUILD_LLVM_DYLIB:BOOL=OFF \ - -DLLVM_ENABLE_BINDINGS:BOOL=OFF \ - -DLLVM_ENABLE_LIBXML2:BOOL=ON \ - -DLLDB_ENABLE_PYTHON:BOOL=OFF \ - -DLLDB_BUILD_FRAMEWORK:BOOL=OFF - cmake --build build --target lldb install --parallel $(nproc) - working-directory: core/deps/llvm-project - - - name: pack a distribution - if: steps.lldb_build_cache.outputs.cache-hit != 'true' - run: | - mkdir -p wamr-lldb/bin - mkdir -p wamr-lldb/lib - cp build/bin/lldb* wamr-lldb/bin - cp lldb/tools/lldb-vscode/package.json wamr-lldb - cp -r lldb/tools/lldb-vscode/syntaxes/ wamr-lldb - working-directory: core/deps/llvm-project - - - name: pack ubuntu specific libraries - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'ubuntu') - run: | - cp build/lib/liblldb*.so wamr-lldb/lib - cp build/lib/liblldb*.so.* wamr-lldb/lib - working-directory: core/deps/llvm-project - - - name: pack macos specific libraries - if: steps.lldb_build_cache.outputs.cache-hit != 'true' && contains(inputs.runner, 'macos') - run: | - cp build/lib/liblldb*.dylib wamr-lldb/lib - working-directory: core/deps/llvm-project - - - name: compress the binary - run: | - tar czf wamr-lldb-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz wamr-lldb - zip -r wamr-lldb-${{ inputs.ver_num }}-${{ inputs.runner }}.zip wamr-lldb - working-directory: core/deps/llvm-project - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: core/deps/llvm-project/wamr-lldb-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz - asset_name: wamr-lldb-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: core/deps/llvm-project/wamr-lldb-${{ inputs.ver_num }}-${{ inputs.runner }}.zip - asset_name: wamr-lldb-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_sdk.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_sdk.yml deleted file mode 100644 index fff6d85df..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_sdk.yml +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: build wamr-sdk - -on: - workflow_call: - inputs: - arch: - description: arch of the release - type: string - required: false - default: x86_64 - config_file: - description: warm-sdk config file path - type: string - required: true - runner: - description: OS of compilation - type: string - required: true - upload_url: - description: upload binary assets to the URL of release - type: string - required: true - ver_num: - description: a semantic version number - type: string - required: true - wasi_sdk_url: - description: download WASI_SDK from this URL - type: string - required: true - -jobs: - build: - runs-on: ${{ inputs.runner }} - steps: - - uses: actions/checkout@v3 - - - name: download and install wasi-sdk - run: | - cd /opt - basename=$(basename ${{ inputs.wasi_sdk_url }}) - sudo wget --progress=dot:giga ${{ inputs.wasi_sdk_url }} - sudo tar -xzf ${basename} - sudo rm ${basename} - sudo mv wasi-sdk-* wasi-sdk - - - name: generate wamr-sdk release - run: | - ./build_sdk.sh -n wamr-sdk -x $(pwd)/${{ inputs.config_file }} - working-directory: wamr-sdk - - - name: compress the binary - run: | - tar czf wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz wamr-sdk - zip -r wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.zip wamr-sdk - working-directory: wamr-sdk/out - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: wamr-sdk/out/wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz - asset_name: wamr-sdk-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: wamr-sdk/out/wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.zip - asset_name: wamr-sdk-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_vscode_ext.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_vscode_ext.yml deleted file mode 100644 index 297dc9b9e..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamr_vscode_ext.yml +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: build wamr-ide vscode extension - -on: - workflow_call: - inputs: - upload_url: - description: upload binary assets to the URL of release - type: string - required: true - ver_num: - description: a semantic version number. - type: string - required: true - -jobs: - build: - runs-on: ubuntu-22.04 - steps: - - uses: actions/checkout@v3 - - - name: Use Node.js 14.x - uses: actions/setup-node@v3 - with: - node-version: 14.x - - - name: set vscode extension to correct version - run: | - npm install -g json - json -I -f package.json -e "this.version=\"${{ inputs.ver_num }}\"" - working-directory: test-tools/wamr-ide/VSCode-Extension - - - name: generate wamr ide vscode extension - run: | - npm install -g vsce - rm -rf node_modules - npm install - vsce package - working-directory: test-tools/wamr-ide/VSCode-Extension - - - name: publish wamr ide vscode extension to the vsce marketplace - if: ${{ github.repository == 'bytecodealliance/wasm-micro-runtime' }} - run: | - vsce publish -p ${{ secrets.TOKEN }} - working-directory: test-tools/wamr-ide/VSCode-Extension - - - name: compress the vscode extension - run: | - mv wamride-*.vsix wamr-ide.vsix - tar czf wamr-ide-${{ inputs.ver_num }}.tar.gz wamr-ide.vsix - zip wamr-ide-${{ inputs.ver_num }}.zip wamr-ide.vsix - working-directory: test-tools/wamr-ide/VSCode-Extension - - - name: upload release tar.gz - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/VSCode-Extension/wamr-ide-${{ inputs.ver_num }}.tar.gz - asset_name: wamr-ide-${{ inputs.ver_num }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: test-tools/wamr-ide/VSCode-Extension/wamr-ide-${{ inputs.ver_num }}.zip - asset_name: wamr-ide-${{ inputs.ver_num }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamrc.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamrc.yml deleted file mode 100644 index 11c5de9ba..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/build_wamrc.yml +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: build wamrc - -on: - workflow_call: - inputs: - arch: - description: arch of the release - type: string - required: false - default: x86_64 - llvm_cache_key: - description: the cache key of llvm libraries - type: string - required: true - release: - description: it is a part of the release process - type: boolean - required: true - runner: - description: OS of compilation - type: string - required: true - upload_url: - description: a semantic version number. it is required when `release` is true. - type: string - required: false - ver_num: - description: a semantic version number. it is required when `release` is true. - type: string - required: false - -jobs: - build: - runs-on: ${{ inputs.runner }} - steps: - - uses: actions/checkout@v3 - - - name: get cached LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ inputs.llvm_cache_key }} - fail-on-cache-miss: true - - - name: generate wamrc binary release - run: | - cmake -S . -B build - cmake --build build --config Release --parallel 4 - working-directory: wamr-compiler - - - name: compress the binary - if: inputs.release - run: | - tar czf wamrc-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz wamrc - zip wamrc-${{ inputs.ver_num }}-${{ inputs.runner }}.zip wamrc - working-directory: wamr-compiler/build - - - name: upload release tar.gz - if: inputs.release - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: wamr-compiler/build/wamrc-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz - asset_name: wamrc-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - if: inputs.release - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: wamr-compiler/build/wamrc-${{ inputs.ver_num }}-${{ inputs.runner }}.zip - asset_name: wamrc-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/coding_guidelines.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/coding_guidelines.yml deleted file mode 100644 index 259e84fe5..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/coding_guidelines.yml +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: Coding Guidelines - -on: - # will be triggered on PR events - pull_request: - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - compliance_job: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - # github.event.pull_request.base.label = ${{github.repository}}/${{github.base_ref}} - - name: Run Coding Guidelines Checks - run: /usr/bin/env python3 ./ci/coding_guidelines_check.py --commits ${{ github.event.pull_request.base.sha }}..HEAD diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_android_ubuntu.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_android_ubuntu.yml deleted file mode 100644 index 2a57f6219..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_android_ubuntu.yml +++ /dev/null @@ -1,645 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: compilation on android, ubuntu-20.04, ubuntu-22.04 - -on: - # will be triggered on PR events - pull_request: - types: - - opened - - synchronize - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_android_ubuntu.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # will be triggered on push events - push: - branches: - - main - - "dev/**" - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_android_ubuntu.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -env: - # For BUILD - AOT_BUILD_OPTIONS: " -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_FAST_JIT=0 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - CLASSIC_INTERP_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_FAST_JIT=0 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - FAST_INTERP_BUILD_OPTIONS: " -DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=1 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_FAST_JIT=0 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - FAST_JIT_BUILD_OPTIONS: " -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_FAST_JIT=1 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - LLVM_LAZY_JIT_BUILD_OPTIONS: " -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_FAST_JIT=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=1" - LLVM_EAGER_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_FAST_JIT=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=0" - MULTI_TIER_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_FAST_JIT=1 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=1" - # For Spec Test - DEFAULT_TEST_OPTIONS: "-s spec -b -P" - MULTI_MODULES_TEST_OPTIONS: "-s spec -b -M -P" - SIMD_TEST_OPTIONS: "-s spec -b -S -P" - THREADS_TEST_OPTIONS: "-s spec -b -p -P" - X86_32_TARGET_TEST_OPTIONS: "-m x86_32 -P" - WASI_TEST_OPTIONS: "-s wasi_certification -w" - -jobs: - build_llvm_libraries_on_ubuntu_2004: - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-20.04" - arch: "X86" - - build_llvm_libraries_on_ubuntu_2204: - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-22.04" - arch: "X86" - - build_wamrc: - needs: - [build_llvm_libraries_on_ubuntu_2004, build_llvm_libraries_on_ubuntu_2204] - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - os: ubuntu-20.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - - os: ubuntu-22.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - steps: - - name: checkout - uses: actions/checkout@v3 - - # since jobs.id can't contain the dot character - # it is hard to use `format` to assemble the cache key - - name: Get LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Build wamrc - run: | - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - working-directory: wamr-compiler - - build_iwasm_linux_gcc4_8: - runs-on: ubuntu-latest - container: - image: ubuntu:14.04 - strategy: - matrix: - make_options_run_mode: [ - # Running mode - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - $FAST_JIT_BUILD_OPTIONS, - ] - make_options_feature: [ - # Features - "-DWAMR_BUILD_CUSTOM_NAME_SECTION=1", - "-DWAMR_BUILD_DEBUG_AOT=1", - "-DWAMR_BUILD_DEBUG_INTERP=1", - "-DWAMR_BUILD_DUMP_CALL_STACK=1", - "-DWAMR_BUILD_LIB_PTHREAD=1", - "-DWAMR_BUILD_LIB_WASI_THREADS=1", - "-DWAMR_BUILD_LOAD_CUSTOM_SECTION=1", - "-DWAMR_BUILD_MINI_LOADER=1", - "-DWAMR_BUILD_MEMORY_PROFILING=1", - "-DWAMR_BUILD_MULTI_MODULE=1", - "-DWAMR_BUILD_PERF_PROFILING=1", - "-DWAMR_BUILD_REF_TYPES=1", - "-DWAMR_BUILD_SIMD=1", - "-DWAMR_BUILD_TAIL_CALL=1", - "-DWAMR_DISABLE_HW_BOUND_CHECK=1", - ] - exclude: - # uncompatiable feature and platform - # uncompatiable mode and feature - # MULTI_MODULE only on INTERP mode - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - # SIMD only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - # DEBUG_INTERP only on CLASSIC INTERP mode - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - # DEBUG_AOT only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # TODO: DEBUG_AOT on JIT - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # MINI_LOADER only on INTERP mode - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: Install dependencies - run: apt update && apt install -y make g++-4.8 gcc-4.8 wget git - - - name: Install cmake - run: | - wget https://github.com/Kitware/CMake/releases/download/v3.26.1/cmake-3.26.1-linux-x86_64.tar.gz -O cmake.tar.gz - tar xzf cmake.tar.gz - cp cmake-3.26.1-linux-x86_64/bin/cmake /usr/local/bin - cp -r cmake-3.26.1-linux-x86_64/share/cmake-3.26/ /usr/local/share/ - - - name: Build iwasm - run: | - mkdir build && cd build - cmake .. ${{ matrix.make_options_run_mode }} ${{ matrix.make_options_feature }} -DCMAKE_C_COMPILER=gcc-4.8 -DCMAKE_CXX_COMPILER=g++-4.8 - cmake --build . --config Release --parallel 4 - working-directory: product-mini/platforms/linux - - build_iwasm: - needs: - [build_llvm_libraries_on_ubuntu_2004, build_llvm_libraries_on_ubuntu_2204] - runs-on: ${{ matrix.os }} - strategy: - matrix: - make_options_run_mode: [ - # Running mode - $AOT_BUILD_OPTIONS, - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - $FAST_JIT_BUILD_OPTIONS, - $LLVM_LAZY_JIT_BUILD_OPTIONS, - $LLVM_EAGER_JIT_BUILD_OPTIONS, - $MULTI_TIER_JIT_BUILD_OPTIONS, - ] - make_options_feature: [ - # Features - "-DWAMR_BUILD_CUSTOM_NAME_SECTION=1", - "-DWAMR_BUILD_DEBUG_AOT=1", - "-DWAMR_BUILD_DEBUG_INTERP=1", - "-DWAMR_BUILD_DUMP_CALL_STACK=1", - "-DWAMR_BUILD_LIB_PTHREAD=1", - "-DWAMR_BUILD_LIB_WASI_THREADS=1", - "-DWAMR_BUILD_LOAD_CUSTOM_SECTION=1", - "-DWAMR_BUILD_MINI_LOADER=1", - "-DWAMR_BUILD_MEMORY_PROFILING=1", - "-DWAMR_BUILD_MULTI_MODULE=1", - "-DWAMR_BUILD_PERF_PROFILING=1", - "-DWAMR_BUILD_REF_TYPES=1", - "-DWAMR_BUILD_SIMD=1", - "-DWAMR_BUILD_TAIL_CALL=1", - "-DWAMR_DISABLE_HW_BOUND_CHECK=1", - ] - os: [ubuntu-20.04, ubuntu-22.04] - platform: [android, linux] - exclude: - # uncompatiable feature and platform - # uncompatiable mode and feature - # MULTI_MODULE only on INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $MULTI_TIER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - # SIMD only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - # DEBUG_INTERP only on CLASSIC INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $MULTI_TIER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - # DEBUG_AOT only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # TODO: DEBUG_AOT on JIT - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $MULTI_TIER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # MINI_LOADER only on INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $MULTI_TIER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - # Fast-JIT and Multi-Tier-JIT mode don't support android(X86-32) - - make_options_run_mode: $FAST_JIT_BUILD_OPTIONS - platform: android - - make_options_run_mode: $MULTI_TIER_JIT_BUILD_OPTIONS - platform: android - # only test andorid on ubuntu latest - - os: ubuntu-20.04 - platform: android - include: - - os: ubuntu-20.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - - os: ubuntu-22.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - steps: - - name: checkout - uses: actions/checkout@v3 - - # only download llvm cache when needed - - name: Get LLVM libraries - id: retrieve_llvm_libs - if: endsWith(matrix.make_options_run_mode, '_JIT_BUILD_OPTIONS') - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: endsWith(matrix.make_options_run_mode, '_JIT_BUILD_OPTIONS') && (steps.retrieve_llvm_libs.outputs.cache-hit != 'true') - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Build iwasm - run: | - mkdir build && cd build - cmake .. ${{ matrix.make_options_run_mode }} ${{ matrix.make_options_feature }} - cmake --build . --config Release --parallel 4 - working-directory: product-mini/platforms/${{ matrix.platform }} - - build_samples_wasm_c_api: - needs: - [ - build_iwasm, - build_llvm_libraries_on_ubuntu_2004, - build_llvm_libraries_on_ubuntu_2204, - build_wamrc, - ] - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - sanitizer: ["", "ubsan"] - make_options: [ - # Running mode - $AOT_BUILD_OPTIONS, - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - $FAST_JIT_BUILD_OPTIONS, - $LLVM_LAZY_JIT_BUILD_OPTIONS, - $LLVM_EAGER_JIT_BUILD_OPTIONS, - $MULTI_TIER_JIT_BUILD_OPTIONS, - ] - os: [ubuntu-20.04, ubuntu-22.04] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-linux.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-ubuntu.tar.gz", - ] - include: - - os: ubuntu-20.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - - os: ubuntu-22.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: Get LLVM libraries - id: retrieve_llvm_libs - if: (!endsWith(matrix.make_options, '_INTERP_BUILD_OPTIONS')) - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: (!endsWith(matrix.make_options, '_INTERP_BUILD_OPTIONS')) && (steps.retrieve_llvm_libs.outputs.cache-hit != 'true') - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: Build wamrc - if: (!endsWith(matrix.make_options, '_INTERP_BUILD_OPTIONS')) - run: | - mkdir build && cd build - cmake -DSANITIZER="${{matrix.sanitizer}}" .. - cmake --build . --config Release --parallel 4 - working-directory: wamr-compiler - - - name: Build Sample [wasm-c-api] - run: | - VERBOSE=1 - cmake -S . -B build ${{ matrix.make_options }} -DSANITIZER="${{matrix.sanitizer}}" - cmake --build build --config Release --parallel 4 - ctest --test-dir build --output-on-failure - working-directory: samples/wasm-c-api - - build_samples_others: - needs: [build_iwasm] - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-20.04, ubuntu-22.04] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-linux.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-ubuntu.tar.gz", - ] - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wasi-sdk - run: | - cd /opt - sudo wget ${{ matrix.wasi_sdk_release }} - sudo tar -xzf wasi-sdk-*.tar.gz - sudo mv wasi-sdk-20.0 wasi-sdk - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: Build Sample [basic] - run: | - cd samples/basic - ./build.sh - ./run.sh - - - name: Build Sample [file] - run: | - cd samples/file - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./src/iwasm -f wasm-app/file.wasm -d . - - - name: Build Sample [multi-thread] - run: | - cd samples/multi-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/test.wasm - - - name: Build Sample [multi-module] - run: | - cd samples/multi-module - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./multi_module - - - name: Build Sample [spawn-thread] - run: | - cd samples/spawn-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./spawn_thread - - - name: Build Sample [ref-types] - run: | - cd samples/ref-types - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./hello - - - name: Build Sample [simple] - run: | - ./build.sh -p host-interp - python3 ./sample_test_run.py $(pwd)/out - exit $? - working-directory: ./samples/simple - - - name: Build Sample [wasi-threads] - run: | - cd samples/wasi-threads - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/no_pthread.wasm - - test: - needs: - [ - build_iwasm, - build_llvm_libraries_on_ubuntu_2004, - build_llvm_libraries_on_ubuntu_2204, - build_wamrc, - ] - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-20.04, ubuntu-22.04] - running_mode: - [ - "classic-interp", - "fast-interp", - "jit", - "aot", - "fast-jit", - "multi-tier-jit", - ] - test_option: - [ - $DEFAULT_TEST_OPTIONS, - $MULTI_MODULES_TEST_OPTIONS, - $SIMD_TEST_OPTIONS, - $THREADS_TEST_OPTIONS, - $WASI_TEST_OPTIONS, - ] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-linux.tar.gz", - ] - include: - - os: ubuntu-20.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - ubuntu_version: "20.04" - - os: ubuntu-22.04 - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - ubuntu_version: "22.04" - exclude: - # uncompatiable modes and features - # classic-interp and fast-interp don't support simd - - running_mode: "classic-interp" - test_option: $SIMD_TEST_OPTIONS - - running_mode: "fast-interp" - test_option: $SIMD_TEST_OPTIONS - # aot and jit don't support multi module - - running_mode: "aot" - test_option: $MULTI_MODULES_TEST_OPTIONS - - running_mode: "jit" - test_option: $MULTI_MODULES_TEST_OPTIONS - # fast-jit doesn't support multi module, simd - - running_mode: "fast-jit" - test_option: $MULTI_MODULES_TEST_OPTIONS - - running_mode: "fast-jit" - test_option: $SIMD_TEST_OPTIONS - # multi-tier-jit doesn't support multi module, simd - - running_mode: "multi-tier-jit" - test_option: $MULTI_MODULES_TEST_OPTIONS - - running_mode: "multi-tier-jit" - test_option: $SIMD_TEST_OPTIONS - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wasi-sdk - if: matrix.test_option == '$WASI_TEST_OPTIONS' - run: | - cd /opt - sudo wget ${{ matrix.wasi_sdk_release }} - sudo tar -xzf wasi-sdk-*.tar.gz - sudo mv wasi-sdk-20.0 wasi-sdk - - - name: set env variable(if llvm are used) - if: matrix.running_mode == 'aot' || matrix.running_mode == 'jit' || matrix.running_mode == 'multi-tier-jit' - run: echo "USE_LLVM=true" >> $GITHUB_ENV - - - name: set env variable(if x86_32 test needed) - if: > - (matrix.test_option == '$DEFAULT_TEST_OPTIONS' || matrix.test_option == '$THREADS_TEST_OPTIONS' - || matrix.test_option == '$WASI_TEST_OPTIONS') - && matrix.running_mode != 'fast-jit' && matrix.running_mode != 'jit' && matrix.running_mode != 'multi-tier-jit' - run: echo "TEST_ON_X86_32=true" >> $GITHUB_ENV - - #only download llvm libraries in jit and aot mode - - name: Get LLVM libraries - if: env.USE_LLVM == 'true' - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: env.USE_LLVM == 'true' && steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: install jq JSON processor - if: matrix.running_mode == 'aot' && matrix.test_option == '$WASI_TEST_OPTIONS' - run: sudo apt-get update && sudo apt install -y jq - - - name: Build WASI thread tests - if: matrix.test_option == '$WASI_TEST_OPTIONS' - run: bash build.sh - working-directory: ./core/iwasm/libraries/lib-wasi-threads/test/ - - - name: build socket api tests - if: matrix.test_option == '$WASI_TEST_OPTIONS' - run: bash build.sh - working-directory: ./core/iwasm/libraries/lib-socket/test/ - - - name: run tests - timeout-minutes: 10 - run: ./test_wamr.sh ${{ matrix.test_option }} -t ${{ matrix.running_mode }} - working-directory: ./tests/wamr-test-suites - - #only install x32 support libraries when to run x86_32 cases - - name: install x32 support libraries - if: env.TEST_ON_X86_32 == 'true' - run: - # Add another apt repository as some packages cannot - # be downloaded with the github default repository - sudo curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc && - sudo apt-add-repository https://packages.microsoft.com/ubuntu/${{ matrix.ubuntu_version }}/prod && - sudo apt-get update && - sudo apt install -y g++-multilib lib32gcc-9-dev - - - name: run tests x86_32 - timeout-minutes: 10 - if: env.TEST_ON_X86_32 == 'true' - run: ./test_wamr.sh ${{ env.X86_32_TARGET_TEST_OPTIONS }} ${{ matrix.test_option }} -t ${{ matrix.running_mode }} - working-directory: ./tests/wamr-test-suites diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_macos.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_macos.yml deleted file mode 100644 index aaa97d038..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_macos.yml +++ /dev/null @@ -1,331 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: compilation on macos-latest - -on: - # will be triggered on PR events - pull_request: - types: - - opened - - synchronize - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_macos.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # will be triggered on push events - push: - branches: - - main - - "dev/**" - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_macos.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -env: - AOT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - CLASSIC_INTERP_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - FAST_INTERP_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=1 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - LLVM_LAZY_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=1" - LLVM_EAGER_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=0" - -jobs: - build_llvm_libraries: - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "macos-latest" - arch: "X86" - - build_wamrc: - needs: [build_llvm_libraries] - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - os: macos-latest - llvm_cache_key: ${{ needs.build_llvm_libraries.outputs.cache_key }} - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: Get LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Build wamrc - run: | - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - working-directory: wamr-compiler - - build_iwasm: - needs: [build_llvm_libraries] - runs-on: ${{ matrix.os }} - strategy: - matrix: - make_options_run_mode: [ - # Running mode - $AOT_BUILD_OPTIONS, - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - $LLVM_LAZY_JIT_BUILD_OPTIONS, - $LLVM_EAGER_JIT_BUILD_OPTIONS, - ] - make_options_feature: [ - # Features - "-DWAMR_BUILD_CUSTOM_NAME_SECTION=1", - # doesn't support - #"-DWAMR_BUILD_DEBUG_AOT=1", - "-DWAMR_BUILD_DEBUG_INTERP=1", - "-DWAMR_BUILD_DUMP_CALL_STACK=1", - "-DWAMR_BUILD_LIB_PTHREAD=1", - "-DWAMR_BUILD_LIB_WASI_THREADS=1", - "-DWAMR_BUILD_LOAD_CUSTOM_SECTION=1", - "-DWAMR_BUILD_MINI_LOADER=1", - "-DWAMR_BUILD_MEMORY_PROFILING=1", - "-DWAMR_BUILD_MULTI_MODULE=1", - "-DWAMR_BUILD_PERF_PROFILING=1", - "-DWAMR_BUILD_REF_TYPES=1", - "-DWAMR_BUILD_SIMD=1", - "-DWAMR_BUILD_TAIL_CALL=1", - "-DWAMR_DISABLE_HW_BOUND_CHECK=1", - ] - os: [macos-latest] - platform: [darwin] - exclude: - # uncompatiable feature and platform - # uncompatiable mode and feature - # MULTI_MODULE only on INTERP mode - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - # SIMD only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_SIMD=1" - # DEBUG_INTERP only on CLASSIC INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_INTERP=1" - # DEBUG_AOT only on JIT/AOT mode - - make_options_run_mode: $CLASSIC_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $FAST_INTERP_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # TODO: DEBUG_AOT on JIT - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_DEBUG_AOT=1" - # MINI_LOADER only on INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $LLVM_LAZY_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - - make_options_run_mode: $LLVM_EAGER_JIT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - include: - - os: macos-latest - llvm_cache_key: ${{ needs.build_llvm_libraries.outputs.cache_key }} - steps: - - name: checkout - uses: actions/checkout@v3 - - # only download llvm cache when needed - - name: Get LLVM libraries - id: retrieve_llvm_libs - if: endsWith(matrix.make_options_run_mode, '_JIT_BUILD_OPTIONS') - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: endsWith(matrix.make_options_run_mode, '_JIT_BUILD_OPTIONS') && (steps.retrieve_llvm_libs.outputs.cache-hit != 'true') - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Build iwasm - run: | - mkdir build && cd build - cmake .. ${{ matrix.make_options_run_mode }} ${{ matrix.make_options_feature }} - cmake --build . --config Release --parallel 4 - working-directory: product-mini/platforms/${{ matrix.platform }} - - build_samples_wasm_c_api: - needs: [build_iwasm] - runs-on: ${{ matrix.os }} - strategy: - matrix: - make_options: [ - # Running modes supported - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - # Running modes unsupported - #$LLVM_LAZY_JIT_BUILD_OPTIONS, - #$LLVM_EAGER_JIT_BUILD_OPTIONS, - #$AOT_BUILD_OPTIONS, - ] - os: [macos-latest] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-macos.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-macos-12.tar.gz", - ] - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: Build Sample [wasm-c-api] - run: | - cmake -S . -B build ${{ matrix.make_options }} - cmake --build build --config Release --parallel 4 - ctest --test-dir build - working-directory: samples/wasm-c-api - - build_samples_others: - needs: [build_iwasm] - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [macos-latest] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-20/wasi-sdk-20.0-macos.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-macos-12.tar.gz", - ] - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wasi-sdk - run: | - cd /opt - sudo wget ${{ matrix.wasi_sdk_release }} - sudo tar -xzf wasi-sdk-*.tar.gz - sudo mv wasi-sdk-20.0 wasi-sdk - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: Build Sample [basic] - run: | - cd samples/basic - ./build.sh - ./run.sh - - - name: Build Sample [file] - run: | - cd samples/file - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./src/iwasm -f wasm-app/file.wasm -d . - - - name: Build Sample [multi-thread] - run: | - cd samples/multi-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/test.wasm - - - name: Build Sample [multi-module] - run: | - cd samples/multi-module - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./multi_module - - - name: Build Sample [spawn-thread] - run: | - cd samples/spawn-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./spawn_thread - - - name: Build Sample [ref-types] - run: | - cd samples/ref-types - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./hello - - - name: Build Sample [wasi-threads] - run: | - cd samples/wasi-threads - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/no_pthread.wasm diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_nuttx.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_nuttx.yml deleted file mode 100644 index f338c8dea..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_nuttx.yml +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: compilation on nuttx - -on: - # will be triggered on PR events - pull_request: - types: - - opened - - synchronize - paths: - - ".github/workflows/compilation_on_nuttx.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # will be triggered on push events - push: - branches: - - main - - "dev/**" - paths: - - ".github/workflows/compilation_on_nuttx.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -env: - WASI_SDK_PATH: "/opt/wasi-sdk" - -jobs: - build_iwasm_on_nuttx: - runs-on: ubuntu-22.04 - strategy: - matrix: - nuttx_board_config: [ - # x64 - "boards/sim/sim/sim/configs/nsh", - # cortex-m0 - "boards/arm/rp2040/raspberrypi-pico/configs/nsh", - # cortex-m7 - "boards/arm/stm32h7/nucleo-h743zi/configs/nsh", - # riscv32imac - "boards/risc-v/qemu-rv/rv-virt/configs/nsh", - # riscv64imac - "boards/risc-v/qemu-rv/rv-virt/configs/nsh64", - # riscv64gc - "boards/risc-v/k210/maix-bit/configs/nsh", - ] - wamr_config_option: [ - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_FAST=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_FAST=y\\nCONFIG_INTERPRETERS_WAMR_LIBC_WASI=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_FAST=y\\nCONFIG_INTERPRETERS_WAMR_LIBC_BUILTIN=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_CLASSIC=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_CLASSIC=y\\nCONFIG_INTERPRETERS_WAMR_LIBC_WASI=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_CLASSIC=y\\nCONFIG_INTERPRETERS_WAMR_LIBC_BUILTIN=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\nCONFIG_INTERPRETERS_WAMR_LIBC_BUILTIN=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_AOT=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_FAST=y\\n", - "CONFIG_INTERPRETERS_WAMR=y\\nCONFIG_INTERPRETERS_WAMR_CLASSIC=y\\n", - ] - - steps: - - name: Install Utilities - run: | - sudo apt install -y kconfig-frontends-nox genromfs - pip3 install pyelftools - pip3 install cxxfilt - - - name: Install ARM Compilers - if: contains(matrix.nuttx_board_config, 'arm') - run: sudo apt install -y gcc-arm-none-eabi - - - name: Install RISC-V Compilers - if: contains(matrix.nuttx_board_config, 'risc-v') - run: | - curl -L https://static.dev.sifive.com/dev-tools/freedom-tools/v2020.12/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-ubuntu14.tar.gz > riscv.tar.gz - tar xvf riscv.tar.gz - echo "$PWD/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-ubuntu14/bin" >> $GITHUB_PATH - - - name: Install WASI-SDK - run: | - curl -L https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz > wasi-sdk.tar.gz - tar xvf wasi-sdk.tar.gz - sudo mv wasi-sdk-* /opt/wasi-sdk - - - name: Checkout NuttX - uses: actions/checkout@v3 - with: - repository: apache/incubator-nuttx - path: nuttx - - - name: Checkout NuttX Apps - uses: actions/checkout@v3 - with: - repository: apache/incubator-nuttx-apps - path: apps - - - name: Checkout WAMR - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - path: apps/interpreters/wamr/wamr - - - name: Enable WAMR for NuttX - run: | - find nuttx/boards -name defconfig | xargs sed -i '$a\CONFIG_EOL_IS_LF=y\nCONFIG_PSEUDOFS_SOFTLINKS=y\n${{ matrix.wamr_config_option }}' - find nuttx/boards/sim -name defconfig | xargs sed -i '$a\CONFIG_LIBM=y\n' - - - name: Build - run: | - cd nuttx - tools/configure.sh ${{ matrix.nuttx_board_config }} - make -j$(nproc) EXTRAFLAGS=-Werror diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_sgx.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_sgx.yml deleted file mode 100644 index f17261118..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_sgx.yml +++ /dev/null @@ -1,401 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: compilation on SGX - -on: - # will be triggered on PR events - pull_request: - types: - - opened - - synchronize - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_sgx.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # will be triggered on push events - push: - branches: - - main - - "dev/**" - paths: - - ".github/workflows/build_llvm_libraries.yml" - - ".github/workflows/compilation_on_sgx.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -env: - AOT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - CLASSIC_INTERP_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - FAST_INTERP_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=0 -DWAMR_BUILD_FAST_INTERP=1 -DWAMR_BUILD_INTERP=1 -DWAMR_BUILD_JIT=0 -DWAMR_BUILD_LAZY_JIT=0" - LLVM_LAZY_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=1" - LLVM_EAGER_JIT_BUILD_OPTIONS: "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_FAST_INTERP=0 -DWAMR_BUILD_INTERP=0 -DWAMR_BUILD_JIT=1 -DWAMR_BUILD_LAZY_JIT=0" - -jobs: - build_llvm_libraries: - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-20.04" - arch: "X86" - - build_iwasm: - runs-on: ${{ matrix.os }} - strategy: - matrix: - make_options_run_mode: [ - # Running modes supported - $AOT_BUILD_OPTIONS, - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - # Running modes unsupported - #$LLVM_LAZY_JIT_BUILD_OPTIONS, - #$LLVM_EAGER_JIT_BUILD_OPTIONS, - ] - make_options_feature: [ - # Features - "-DWAMR_BUILD_CUSTOM_NAME_SECTION=1", - # doesn't support - # "-DWAMR_BUILD_DEBUG_AOT=1", - # "-DWAMR_BUILD_DEBUG_INTERP=1", - "-DWAMR_BUILD_DUMP_CALL_STACK=1", - "-DWAMR_BUILD_LIB_PTHREAD=1", - "-DWAMR_BUILD_LIB_WASI_THREADS=1", - "-DWAMR_BUILD_LOAD_CUSTOM_SECTION=1", - "-DWAMR_BUILD_MINI_LOADER=1", - "-DWAMR_BUILD_MEMORY_PROFILING=1", - "-DWAMR_BUILD_MULTI_MODULE=1", - "-DWAMR_BUILD_PERF_PROFILING=1", - "-DWAMR_BUILD_REF_TYPES=1", - # doesn't support - # "-DWAMR_BUILD_SIMD=1", - "-DWAMR_BUILD_TAIL_CALL=1", - "-DWAMR_DISABLE_HW_BOUND_CHECK=1", - "-DWAMR_BUILD_SGX_IPFS=1", - ] - os: [ubuntu-20.04] - platform: [linux-sgx] - exclude: - # uncompatiable mode and feature - # MULTI_MODULE only on INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MULTI_MODULE=1" - # MINI_LOADER only on INTERP mode - - make_options_run_mode: $AOT_BUILD_OPTIONS - make_options_feature: "-DWAMR_BUILD_MINI_LOADER=1" - steps: - - name: install SGX SDK and necessary libraries - run: | - mkdir -p /opt/intel - cd /opt/intel - wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin - chmod +x sgx_linux_x64_sdk_2.15.100.3.bin - echo 'yes' | ./sgx_linux_x64_sdk_2.15.100.3.bin - echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list - wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - - sudo apt update - sudo apt install -y libsgx-launch libsgx-urts - source /opt/intel/sgxsdk/environment - - - name: checkout - uses: actions/checkout@v3 - - - name: Build iwasm - run: | - mkdir build && cd build - cmake .. ${{ matrix.make_options_run_mode }} ${{ matrix.make_options_feature }} - cmake --build . --config Release --parallel 4 - working-directory: product-mini/platforms/${{ matrix.platform }} - - build_wamrc: - needs: [build_llvm_libraries] - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - os: ubuntu-20.04 - llvm_cache_key: ${{ needs.build_llvm_libraries.outputs.cache_key }} - steps: - - name: install SGX SDK and necessary libraries - run: | - mkdir -p /opt/intel - cd /opt/intel - wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin - chmod +x sgx_linux_x64_sdk_2.15.100.3.bin - echo 'yes' | ./sgx_linux_x64_sdk_2.15.100.3.bin - echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list - wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - - sudo apt update - sudo apt install -y libsgx-launch libsgx-urts - source /opt/intel/sgxsdk/environment - - - name: checkout - uses: actions/checkout@v3 - - - name: Get LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Build wamrc - run: | - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - working-directory: wamr-compiler - - build_samples_wasm_c_api: - needs: [build_iwasm] - runs-on: ${{ matrix.os }} - strategy: - matrix: - make_options: [ - # Running modes supported - $CLASSIC_INTERP_BUILD_OPTIONS, - $FAST_INTERP_BUILD_OPTIONS, - # Running modes unsupported - #$LLVM_EAGER_JIT_BUILD_OPTIONS, - #$LLVM_LAZY_JIT_BUILD_OPTIONS, - #$AOT_BUILD_OPTIONS, - ] - os: [ubuntu-20.04] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-ubuntu.tar.gz", - ] - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: install SGX SDK and necessary libraries - run: | - mkdir -p /opt/intel - cd /opt/intel - wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin - chmod +x sgx_linux_x64_sdk_2.15.100.3.bin - echo 'yes' | ./sgx_linux_x64_sdk_2.15.100.3.bin - echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list - wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - - sudo apt update - sudo apt install -y libsgx-launch libsgx-urts - source /opt/intel/sgxsdk/environment - - - name: Build Sample [wasm-c-api] - run: | - cmake -S . -B build ${{ matrix.make_options }} - cmake --build build --config Release --parallel 4 - ctest --test-dir build - working-directory: samples/wasm-c-api - - build_samples_others: - needs: [build_iwasm] - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-20.04] - wasi_sdk_release: - [ - "https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz", - ] - wabt_release: - [ - "https://github.com/WebAssembly/wabt/releases/download/1.0.31/wabt-1.0.31-ubuntu.tar.gz", - ] - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: download and install wasi-sdk - run: | - cd /opt - sudo wget ${{ matrix.wasi_sdk_release }} - sudo tar -xzf wasi-sdk-*.tar.gz - sudo mv wasi-sdk-19.0 wasi-sdk - - - name: download and install wabt - run: | - cd /opt - sudo wget ${{ matrix.wabt_release }} - sudo tar -xzf wabt-1.0.31-*.tar.gz - sudo mv wabt-1.0.31 wabt - - - name: build wasi-libc (needed for wasi-threads) - run: | - mkdir wasi-libc - cd wasi-libc - git init - # "Fix a_store operation in atomic.h" commit on main branch - git fetch https://github.com/WebAssembly/wasi-libc \ - 1dfe5c302d1c5ab621f7abf04620fae92700fd22 - git checkout FETCH_HEAD - make \ - AR=/opt/wasi-sdk/bin/llvm-ar \ - NM=/opt/wasi-sdk/bin/llvm-nm \ - CC=/opt/wasi-sdk/bin/clang \ - THREAD_MODEL=posix - working-directory: core/deps - - - name: install SGX SDK and necessary libraries - run: | - mkdir -p /opt/intel - cd /opt/intel - wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin - chmod +x sgx_linux_x64_sdk_2.15.100.3.bin - echo 'yes' | ./sgx_linux_x64_sdk_2.15.100.3.bin - echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list - wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - - sudo apt update - sudo apt install -y libsgx-launch libsgx-urts - source /opt/intel/sgxsdk/environment - - - name: Build Sample [basic] - run: | - cd samples/basic - ./build.sh - ./run.sh - - - name: Build Sample [file] - run: | - cd samples/file - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./src/iwasm -f wasm-app/file.wasm -d . - - - name: Build Sample [multi-thread] - run: | - cd samples/multi-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/test.wasm - - - name: Build Sample [multi-module] - run: | - cd samples/multi-module - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./multi_module - - - name: Build Sample [spawn-thread] - run: | - cd samples/spawn-thread - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./spawn_thread - - - name: Build Sample [ref-types] - run: | - cd samples/ref-types - mkdir build && cd build - cmake .. - cmake --build . --config Release --parallel 4 - ./hello - - - name: Build Sample [wasi-threads] - run: | - cd samples/wasi-threads - mkdir build && cd build - cmake -DWASI_SYSROOT=`pwd`/../../../core/deps/wasi-libc/sysroot .. - cmake --build . --config Release --parallel 4 - ./iwasm wasm-apps/no_pthread.wasm - - spec_test_default: - needs: [build_iwasm, build_llvm_libraries, build_wamrc] - runs-on: ubuntu-20.04 - strategy: - matrix: - running_mode: ["classic-interp", "fast-interp", "aot"] - test_option: ["-x -p -s spec -b -P", "-x -p -s spec -S -b -P"] - llvm_cache_key: ["${{ needs.build_llvm_libraries.outputs.cache_key }}"] - # classic-interp and fast-interp don't support simd - exclude: - - running_mode: "classic-interp" - test_option: "-x -p -s spec -S -b -P" - - running_mode: "fast-interp" - test_option: "-x -p -s spec -S -b -P" - - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: Get LLVM libraries - if: matrix.running_mode == 'aot' - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: matrix.running_mode == 'aot' && steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: install SGX SDK and necessary libraries - run: | - mkdir -p /opt/intel - cd /opt/intel - wget https://download.01.org/intel-sgx/sgx-linux/2.15/distro/ubuntu20.04-server/sgx_linux_x64_sdk_2.15.100.3.bin - chmod +x sgx_linux_x64_sdk_2.15.100.3.bin - echo 'yes' | ./sgx_linux_x64_sdk_2.15.100.3.bin - echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list - wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - - sudo apt update - sudo apt install -y libsgx-launch libsgx-urts - - - name: run spec tests - run: | - source /opt/intel/sgxsdk/environment - ./test_wamr.sh ${{ matrix.test_option }} -t ${{ matrix.running_mode }} - working-directory: ./tests/wamr-test-suites diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_windows.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_windows.yml deleted file mode 100644 index 0d38e8ae5..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/compilation_on_windows.yml +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: compilation on windows-latest - -on: - # will be triggered on PR events - pull_request: - types: - - opened - - synchronize - paths: - - ".github/workflows/compilation_on_windows.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # will be triggered on push events - push: - branches: - - main - - "dev/**" - paths: - - ".github/workflows/compilation_on_windows.yml" - - "build-scripts/**" - - "core/**" - - "!core/deps/**" - - "product-mini/**" - - "samples/**" - - "!samples/workload/**" - - "tests/wamr-test-suites/**" - - "wamr-compiler/**" - - "wamr-sdk/**" - # allow to be triggered manually - workflow_dispatch: - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - build: - runs-on: windows-latest - strategy: - matrix: - build_options: [ - "-DWAMR_BUILD_AOT=1 -DWAMR_BUILD_INTERP=0", - "-DWAMR_BUILD_AOT=0", - "-DWAMR_BUILD_TAIL_CALL=1", - "-DWAMR_BUILD_CUSTOM_NAME_SECTION=1", - "-DWAMR_DISABLE_HW_BOUND_CHECK=1", - "-DWAMR_BUILD_REF_TYPES=1", - "-DWAMR_BUILD_SIMD=1", - "-DWAMR_BUILD_DEBUG_INTERP=1", - "-DWAMR_BUILD_LIB_PTHREAD=1", - "-DWAMR_BUILD_LIB_WASI_THREADS=1" - ] - steps: - - uses: actions/checkout@v3 - - - name: clone uvwasi library - run: | - cd core/deps - git clone https://github.com/nodejs/uvwasi.git - - name: Build iwasm - run: | - cd product-mini/platforms/windows - mkdir build && cd build - cmake .. ${{ matrix.build_options }} - cmake --build . --config Release --parallel 4 diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/create_tag.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/create_tag.yml deleted file mode 100644 index 3a145bf04..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/create_tag.yml +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: create a tag - -on: - workflow_call: - outputs: - minor_version: - description: "the new version is a minor version or a major version" - value: ${{ jobs.create_tag.outputs.minor_version}} - new_ver: - description: "the new version" - value: ${{ jobs.create_tag.outputs.new_ver}} - new_tag: - description: "the new tag just created" - value: ${{ jobs.create_tag.outputs.new_tag}} - -jobs: - create_tag: - runs-on: ubuntu-latest - outputs: - minor_version: ${{ steps.preparation.outputs.minor_version }} - new_ver: ${{ steps.preparation.outputs.new_ver }} - new_tag: ${{ steps.preparation.outputs.new_tag }} - - steps: - - uses: actions/checkout@v3 - # Full git history is needed to get a proper list of commits and tags - with: - fetch-depth: 0 - - - name: prepare - id: preparation - run: | - # show latest 3 versions - git tag --list WAMR-*.*.* --sort=committerdate --format="%(refname:short)" | tail -n 3 - # compare latest git tag and semantic version definition - result=$(python3 ./.github/scripts/fetch_and_compare_version.py) - echo "script result is ${result}" - # - # return in a form like "WAMR-X.Y.Z,major_minor_change" or ",patch_change" - new_ver=$(echo "${result}" | awk -F',' '{print $1}') - diff_versioning=$(echo "${result}" | awk -F',' '{print $2}') - echo "next version is ${new_ver}, it ${diff_versioning}" - # - # set output - if [[ ${diff_versioning} == 'major_minor_change' ]];then - echo "minor_version=true" >> "$GITHUB_OUTPUT" - else - echo "minor_version=false" >> "$GITHUB_OUTPUT" - fi - # - # - if [[ -z ${new_ver} ]]; then - echo "::error::please indicate the right semantic version in core/version.h" - echo "new_ver=''" >> "$GITHUB_OUTPUT" - echo "new_tag=''" >> "$GITHUB_OUTPUT" - exit 1 - else - echo "new_ver=${new_ver}" >> "$GITHUB_OUTPUT" - echo "new_tag=WAMR-${new_ver}" >> "$GITHUB_OUTPUT" - fi - - - name: push tag - if: steps.preparation.outputs.new_tag != '' - run: | - git tag ${{ steps.preparation.outputs.new_tag }} - git push origin --force --tags diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/release_process.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/release_process.yml deleted file mode 100644 index 4188b4d40..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/release_process.yml +++ /dev/null @@ -1,215 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: the binary release processes - -on: - workflow_dispatch: - inputs: - require_confirmation: - description: "If the process requires a confirmation" - type: boolean - required: false - default: false - -# Cancel any in-flight jobs for the same PR/branch so there's only one active -# at a time -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - create_tag: - uses: ./.github/workflows/create_tag.yml - - create_release: - needs: [create_tag] - runs-on: ubuntu-latest - outputs: - upload_url: ${{ steps.create_release.outputs.upload_url }} - steps: - - uses: actions/checkout@v3 - - - name: prepare the release note - run: | - extract_result="$(python3 ./.github/scripts/extract_from_release_notes.py RELEASE_NOTES.md)" - echo "RELEASE_NOTE<> $GITHUB_ENV - echo "${extract_result}" >> $GITHUB_ENV - echo "EOF" >> $GITHUB_ENV - - - name: create a release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ needs.create_tag.outputs.new_tag }} - release_name: ${{ needs.create_tag.outputs.new_tag }} - prerelease: ${{ inputs.require_confirmation || needs.create_tag.outputs.minor_version }} - draft: false - body: ${{ env.RELEASE_NOTE }} - - # - # LLVM_LIBRARIES - build_llvm_libraries_on_ubuntu_2004: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-20.04" - arch: "X86" - - build_llvm_libraries_on_ubuntu_2204: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-22.04" - arch: "X86" - - build_llvm_libraries_on_macos: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "macos-latest" - arch: "X86" - - # - # WAMRC - release_wamrc_on_ubuntu_2004: - needs: [create_tag, create_release, build_llvm_libraries_on_ubuntu_2004] - uses: ./.github/workflows/build_wamrc.yml - with: - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - release: true - runner: ubuntu-20.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - release_wamrc_on_ubuntu_2204: - needs: [create_tag, create_release, build_llvm_libraries_on_ubuntu_2204 ] - uses: ./.github/workflows/build_wamrc.yml - with: - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - release: true - runner: ubuntu-22.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver }} - - release_wamrc_on_ubuntu_macos: - needs: [create_tag, create_release, build_llvm_libraries_on_macos] - uses: ./.github/workflows/build_wamrc.yml - with: - llvm_cache_key: ${{ needs.build_llvm_libraries_on_macos.outputs.cache_key }} - release: true - runner: macos-latest - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver }} - - # - # IWASM - release_iwasm_on_ubuntu_2004: - needs: [create_tag, create_release, build_llvm_libraries_on_ubuntu_2004] - uses: ./.github/workflows/build_iwasm_release.yml - with: - cwd: product-mini/platforms/linux - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2004.outputs.cache_key }} - runner: ubuntu-20.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - release_iwasm_on_ubuntu_2204: - needs: [create_tag, create_release, build_llvm_libraries_on_ubuntu_2204] - uses: ./.github/workflows/build_iwasm_release.yml - with: - cwd: product-mini/platforms/linux - llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }} - runner: ubuntu-22.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - release_iwasm_on_macos: - needs: [create_tag, create_release, build_llvm_libraries_on_macos] - uses: ./.github/workflows/build_iwasm_release.yml - with: - cwd: product-mini/platforms/darwin - llvm_cache_key: ${{ needs.build_llvm_libraries_on_macos.outputs.cache_key }} - runner: macos-latest - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - # - # WAMR_SDK - release_wamr_sdk_on_ubuntu_2004: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_sdk.yml - with: - config_file: wamr_config_ubuntu_release.cmake - runner: ubuntu-20.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz - - release_wamr_sdk_on_ubuntu_2204: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_sdk.yml - with: - config_file: wamr_config_ubuntu_release.cmake - runner: ubuntu-22.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz - - release_wamr_sdk_on_macos: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_sdk.yml - with: - config_file: wamr_config_macos_release.cmake - runner: macos-latest - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-macos.tar.gz - - # - # vscode extension cross-platform - release_wamr_ide_vscode_ext: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_vscode_ext.yml - secrets: inherit - with: - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver }} - - # - # vscode extension docker images package - release_wamr_ide_docker_images_package: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_docker_images.yml - with: - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver }} - - # - # WAMR_LLDB - release_wamr_lldb_on_ubuntu_2004: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_lldb.yml - with: - runner: ubuntu-20.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - release_wamr_lldb_on_ubuntu_2204: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_lldb.yml - with: - runner: ubuntu-22.04 - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} - - release_wamr_lldb_on_macos_universal: - needs: [create_tag, create_release] - uses: ./.github/workflows/build_wamr_lldb.yml - with: - runner: macos-latest - arch: universal - upload_url: ${{ needs.create_release.outputs.upload_url }} - ver_num: ${{ needs.create_tag.outputs.new_ver}} diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/reuse_latest_release_binaries.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/reuse_latest_release_binaries.yml deleted file mode 100644 index 7f82672a6..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/reuse_latest_release_binaries.yml +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -name: reuse binaries of the latest release if no more modification on the_path since last_commit - -on: - workflow_call: - inputs: - binary_name_stem: - type: string - required: true - last_commit: - type: string - required: true - the_path: - type: string - required: true - upload_url: - description: upload binary assets to the URL of release - type: string - required: true - outputs: - result: - value: ${{ jobs.build.outputs.result }} - -jobs: - reuse: - runs-on: ubuntu-latest - outputs: - result: ${{ steps.try_reuse.outputs.result }} - steps: - - uses: actions/checkout@v3 - # Full git history is needed to get a proper list of commits and tags - with: - fetch-depth: 0 - - - name: try to reuse binaries - id: try_reuse - run: | - echo '::echo::on' - python3 ./.github/scripts/reuse_latest_release_binaries.py \ - --binary_name_stem ${{ inputs.binary_name_stem }} \ - --last_commit ${{ inputs.last_commit }} \ - --the_path ${{ inputs.the_path }} . - ls -lh . - - - run: echo ${{ steps.try_reuse.outputs.result }} - - - name: upload release tar.gz - if: steps.try_reuse.outputs.result == 'hit' - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: ${{ inputs.binary_name_stem }}.tar.gz - asset_name: ${{ inputs.binary_name_stem }}.tar.gz - asset_content_type: application/x-gzip - - - name: upload release zip - if: steps.try_reuse.outputs.result == 'hit' - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ inputs.upload_url }} - asset_path: ${{ inputs.binary_name_stem }}.zip - asset_name: ${{ inputs.binary_name_stem }}.zip - asset_content_type: application/zip diff --git a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/spec_test_on_nuttx.yml b/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/spec_test_on_nuttx.yml deleted file mode 100644 index 7b8403777..000000000 --- a/fluent-bit/lib/wasm-micro-runtime-WAMR-1.2.2/.github/workflows/spec_test_on_nuttx.yml +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright (C) 2019 Intel Corporation. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - -name: spec test on nuttx - -on: - schedule: - - cron: '0 0 * * *' - - workflow_dispatch: - -env: - LLVM_CACHE_SUFFIX: "build-llvm_libraries_ex" - WASI_SDK_PATH: "/opt/wasi-sdk" - -jobs: - build_llvm_libraries: - uses: ./.github/workflows/build_llvm_libraries.yml - with: - os: "ubuntu-22.04" - arch: "ARM RISCV AArch64" - - spec_test_on_qemu: - runs-on: ${{ matrix.os }} - needs: [build_llvm_libraries] - strategy: - matrix: - os: [ubuntu-22.04] - nuttx_board_config: [ - # cortex-a9 - "boards/arm/imx6/sabre-6quad/configs/nsh", - # riscv32imac - "boards/risc-v/qemu-rv/rv-virt/configs/nsh", - # riscv64imac - # "boards/risc-v/qemu-rv/rv-virt/configs/nsh64", - ] - wamr_test_option: [ - # "-t fast-interp", - "-t aot", - "-t aot -X" - ] - llvm_cache_key: [ "${{ needs.build_llvm_libraries.outputs.cache_key }}" ] - steps: - - name: Install Utilities - run: | - sudo apt install -y kconfig-frontends-nox genromfs - - - name: Install ARM Compilers - if: contains(matrix.nuttx_board_config, 'arm') - run: sudo apt install -y gcc-arm-none-eabi - - - name: Install RISC-V Compilers - if: contains(matrix.nuttx_board_config, 'risc-v') - run: | - curl -L https://static.dev.sifive.com/dev-tools/freedom-tools/v2020.12/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-ubuntu14.tar.gz > riscv.tar.gz - tar xvf riscv.tar.gz - echo "$PWD/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-ubuntu14/bin" >> $GITHUB_PATH - - - name: Install WASI-SDK - run: | - curl -L https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz > wasi-sdk.tar.gz - tar xvf wasi-sdk.tar.gz - sudo mv wasi-sdk-* /opt/wasi-sdk - - - name: Checkout NuttX - uses: actions/checkout@v3 - with: - repository: apache/incubator-nuttx - path: nuttx - - - name: Checkout NuttX Apps - uses: actions/checkout@v3 - with: - repository: apache/incubator-nuttx-apps - path: apps - - - name: Checkout WAMR - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - path: apps/interpreters/wamr/wamr - - - name: Get LLVM libraries - id: retrieve_llvm_libs - uses: actions/cache@v3 - with: - path: | - ./core/deps/llvm/build/bin - ./core/deps/llvm/build/include - ./core/deps/llvm/build/lib - ./core/deps/llvm/build/libexec - ./core/deps/llvm/build/share - key: ${{ matrix.llvm_cache_key }} - - - name: Quit if cache miss - if: steps.retrieve_llvm_libs.outputs.cache-hit != 'true' - run: echo "::error::can not get prebuilt llvm libraries" && exit 1 - - - name: Copy LLVM - run: cp -r core/deps/llvm apps/interpreters/wamr/wamr/core/deps/llvm - - - name: Enable WAMR for NuttX - run: | - find nuttx/boards -name defconfig | xargs sed -i '$a\CONFIG_INTERPRETERS_WAMR=y\nCONFIG_INTERPRETERS_WAMR_STACKSIZE=32768\nCONFIG_INTERPRETERS_WAMR_AOT=y\nCONFIG_INTERPRETERS_WAMR_FAST=y\nCONFIG_INTERPRETERS_WAMR_LOG=y\nCONFIG_INTERPRETERS_WAMR_LIBC_BUILTIN=y\nCONFIG_INTERPRETERS_WAMR_REF_TYPES=y\nCONFIG_INTERPRETERS_WAMR_ENABLE_SPEC_TEST=y\nCONFIG_INTERPRETERS_WAMR_SHARED_MEMORY=y\nCONFIG_INTERPRETERS_WAMR_BULK_MEMORY=y\n' - find nuttx/boards -name defconfig | xargs sed -i '$a\CONFIG_EOL_IS_LF=y\nCONFIG_ARM_SEMIHOSTING_HOSTFS=y\nCONFIG_ARM_SEMIHOSTING_HOSTFS_CACHE_COHERENCE=y\nCONFIG_RISCV_SEMIHOSTING_HOSTFS=y\nCONFIG_FS_HOSTFS=y\nCONFIG_LIBC_FLOATINGPOINT=y\n' - - - name: Build wamrc - working-directory: apps/interpreters/wamr/wamr/wamr-compiler - run: | - cmake -Bbuild . - cmake --build build - - - name: Build - run: | - cd nuttx - tools/configure.sh ${{ matrix.nuttx_board_config }} - make -j$(nproc) - echo "firmware=$PWD/nuttx" >> $GITHUB_ENV - - - name: Test on ARM - if: endsWith(matrix.nuttx_board_config, 'sabre-6quad/configs/nsh') - run: | - curl -L https://github.com/xpack-dev-tools/qemu-arm-xpack/releases/download/v7.1.0-1/xpack-qemu-arm-7.1.0-1-linux-x64.tar.gz > xpack-qemu-arm.tar.gz - tar xvf xpack-qemu-arm.tar.gz - export PATH=$PATH:$PWD/xpack-qemu-arm-7.1.0-1/bin - cd apps/interpreters/wamr/wamr/tests/wamr-test-suites - ./test_wamr.sh -s spec ${{ matrix.wamr_test_option }} -m thumbv7_vfp -b -Q -P -F ${{ env.firmware }} - - - name: Test on RISCV32 - if: endsWith(matrix.nuttx_board_config, 'rv-virt/configs/nsh') - run: | - curl -L https://github.com/xpack-dev-tools/qemu-riscv-xpack/releases/download/v7.1.0-1/xpack-qemu-riscv-7.1.0-1-linux-x64.tar.gz > xpack-qemu-riscv.tar.gz - tar xvf xpack-qemu-riscv.tar.gz - export PATH=$PATH:$PWD/xpack-qemu-riscv-7.1.0-1/bin - cd apps/interpreters/wamr/wamr/tests/wamr-test-suites - ./test_wamr.sh -s spec ${{ matrix.wamr_test_option }} -m RISCV32 -b -Q -P -F ${{ env.firmware }} - - - name: Test on RISCV64 - if: endsWith(matrix.nuttx_board_config, 'rv-virt/configs/nsh64') - run: | - curl -L https://github.com/xpack-dev-tools/qemu-riscv-xpack/releases/download/v7.1.0-1/xpack-qemu-riscv-7.1.0-1-linux-x64.tar.gz > xpack-qemu-riscv.tar.gz - tar xvf xpack-qemu-riscv.tar.gz - export PATH=$PATH:$PWD/xpack-qemu-riscv-7.1.0-1/bin - cd apps/interpreters/wamr/wamr/tests/wamr-test-suites - ./test_wamr.sh -s spec ${{ matrix.wamr_test_option }} -m riscv64 -b -Q -P -F ${{ env.firmware }} -- cgit v1.2.3