From c9b06c509a6177e0d61e1653c95e18e66680ddca Mon Sep 17 00:00:00 2001 From: Junrou Nishida Date: Sat, 21 Dec 2024 16:37:34 +0900 Subject: [PATCH] ci: update compilers --- .github/workflows/linux-test.yml | 28 +++++++--------------------- .github/workflows/macos-test.yml | 14 ++++++++++++++ .github/workflows/package.yml | 9 +++++++++ .github/workflows/windows-test.yml | 2 +- docker/linux/x86_64/Dockerfile | 6 +++--- third_party/opencv.BUILD | 2 +- 6 files changed, 35 insertions(+), 26 deletions(-) diff --git a/.github/workflows/linux-test.yml b/.github/workflows/linux-test.yml index 103ae9f06..d48cb8db0 100644 --- a/.github/workflows/linux-test.yml +++ b/.github/workflows/linux-test.yml @@ -16,7 +16,7 @@ on: required: true jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 with: @@ -37,7 +37,7 @@ jobs: Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/**/*.cs Packages/com.github.homuler.mediapipe/PackageResources/MediaPipe/*.bytes Packages/com.github.homuler.mediapipe/PackageResources/MediaPipe/*.txt - key: libs-ubuntu-22.04-v1-${{ hashFiles('cache_key.txt') }} + key: libs-ubuntu-24.04-v1-${{ hashFiles('cache_key.txt') }} # Setup build tools - name: Mount bazel cache @@ -45,10 +45,10 @@ jobs: uses: actions/cache/restore@v4 with: path: "~/.cache/bazel" - key: bazel-ubuntu-22.04-v1-${{ hashFiles('WORKSPACE') }}-${{ hashFiles('cache_key.txt') }} + key: bazel-ubuntu-24.04-v1-${{ hashFiles('WORKSPACE') }}-${{ hashFiles('cache_key.txt') }} restore-keys: | - bazel-ubuntu-22.04-v1-${{ hashFiles('WORKSPACE') }}- - bazel-ubuntu-22.04-v1- + bazel-ubuntu-24.04-v1-${{ hashFiles('WORKSPACE') }}- + bazel-ubuntu-24.04-v1- - name: Remove cache_key.txt run: | @@ -63,20 +63,6 @@ jobs: - name: Install dependencies if: steps.cache-libs.outputs.cache-hit != 'true' run: | - # install GCC/G++ 11 - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y - sudo apt-get update - sudo apt-get install -y --no-install-recommends gcc-11 g++-11 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100 --slave /usr/bin/g++ g++ /usr/bin/g++-11 - - # install Clang 16 - wget https://apt.llvm.org/llvm.sh - chmod +x llvm.sh - sudo ./llvm.sh 16 - sudo ln -sf /usr/bin/clang-16 /usr/bin/clang - sudo ln -sf /usr/bin/clang++-16 /usr/bin/clang++ - sudo ln -sf /usr/bin/clang-format-16 /usr/bin/clang-format - # install NuGet sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe bash -c 'echo -e "#!/bin/bash\nmono /usr/local/bin/nuget.exe \$@" | sudo tee -a /usr/local/bin/nuget' @@ -106,7 +92,7 @@ jobs: uses: actions/cache/save@v4 with: path: ~/.cache/bazel - key: bazel-ubuntu-22.04-v1-${{ hashFiles('WORKSPACE') }}-${{ hashFiles('cache_key.txt') }} + key: bazel-ubuntu-24.04-v1-${{ hashFiles('WORKSPACE') }}-${{ hashFiles('cache_key.txt') }} test: runs-on: ${{ matrix.os }} @@ -115,7 +101,7 @@ jobs: fail-fast: false matrix: os: - - ubuntu-22.04 + - ubuntu-24.04 unityVersion: - 2022.3.34f1 - 2021.3.33f1 diff --git a/.github/workflows/macos-test.yml b/.github/workflows/macos-test.yml index 6e01a9581..0496785ab 100644 --- a/.github/workflows/macos-test.yml +++ b/.github/workflows/macos-test.yml @@ -22,6 +22,20 @@ jobs: with: ref: ${{ inputs.ref }} + - name: Install Clang 16 + run: | + brew install llvm + echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"' >> /Users/runner/.bash_profile + echo 'export LDFLAGS="-L/usr/local/opt/llvm/lib"' >> /Users/runner/.bash_profile + echo 'export CPPFLAGS="-I/usr/local/opt/llvm/include"' >> /Users/runner/.bash_profile + + - name: Check Clang + run: | + sudo rm -rf /Library/Developer/CommandLineTools + xcode-select --install + which clang + clang --version + # Cache built libraries - name: Concat native library source files run: | diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index dd0b089d1..7f72b6676 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -113,6 +113,15 @@ jobs: with: ref: ${{ inputs.ref }} + - name: Install Clang 16 + run: | + brew install llvm + echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"' >> /Users/runner/.bash_profile + echo 'export LDFLAGS="-L/usr/local/opt/llvm/lib"' >> /Users/runner/.bash_profile + echo 'export CPPFLAGS="-I/usr/local/opt/llvm/include"' >> /Users/runner/.bash_profile + + clang --version + # Setup Python - uses: actions/setup-python@v5 with: diff --git a/.github/workflows/windows-test.yml b/.github/workflows/windows-test.yml index 5a2fe2a13..d5229b395 100644 --- a/.github/workflows/windows-test.yml +++ b/.github/workflows/windows-test.yml @@ -13,7 +13,7 @@ on: required: true jobs: build: - runs-on: windows-2019 + runs-on: windows-2022 steps: - uses: actions/checkout@v4 with: diff --git a/docker/linux/x86_64/Dockerfile b/docker/linux/x86_64/Dockerfile index bd82b16c9..21c65dbc7 100644 --- a/docker/linux/x86_64/Dockerfile +++ b/docker/linux/x86_64/Dockerfile @@ -40,11 +40,11 @@ RUN curl -O https://ftp.gnu.org/gnu/binutils/binutils-2.36.tar.gz && \ make && \ make install -# Install gcc-11 +# Install gcc-15 RUN add-apt-repository ppa:ubuntu-toolchain-r/test -y && \ apt-get update && \ - apt-get install -y --no-install-recommends gcc-11 g++-11 && \ - update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100 --slave /usr/bin/g++ g++ /usr/bin/g++-11 + apt-get install -y --no-install-recommends gcc-15 g++-15 && \ + update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-15 100 --slave /usr/bin/g++ g++ /usr/bin/g++-15 # Install Clang 16 RUN curl https://apt.llvm.org/llvm.sh -o llvm.sh && \ diff --git a/third_party/opencv.BUILD b/third_party/opencv.BUILD index a82e1a102..f968958aa 100644 --- a/third_party/opencv.BUILD +++ b/third_party/opencv.BUILD @@ -183,7 +183,7 @@ cmake( cache_entries = CACHE_ENTRIES, generate_args = select({ "@bazel_tools//src/conditions:windows": [ - "-G \"Visual Studio 16 2019\"", + "-G \"Visual Studio 17 2022\"", "-A x64", ], "//conditions:default": [],