name: CI on: pull_request: push: branches: - main schedule: - cron: "0 0 * * *" jobs: linux_Debug: runs-on: ubuntu-24.04 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: sudo apt install -y llvm llvm-dev ninja-build mold curl libssl-dev libcurl4-openssl-dev - name: System information run: | uname -a lsb_release -a clang -v - name: Build and test run: | ./project.sh "build_type=Debug" test all linux_MinSizeRel: runs-on: ubuntu-24.04 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: sudo apt install -y llvm llvm-dev ninja-build mold curl libssl-dev libcurl4-openssl-dev - name: System information run: | uname -a lsb_release -a clang -v - name: Build and test run: | ./project.sh "build_type=MinSizeRel" test all linux_RelWithDebInfo: runs-on: ubuntu-24.04 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: sudo apt install -y llvm llvm-dev ninja-build mold curl libssl-dev libcurl4-openssl-dev - name: System information run: | uname -a lsb_release -a clang -v - name: Build and test run: | ./project.sh "build_type=RelWithDebInfo" test all linux_Release: runs-on: ubuntu-24.04 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: sudo apt install -y llvm llvm-dev ninja-build mold curl libssl-dev libcurl4-openssl-dev - name: System information run: | uname -a lsb_release -a clang -v - name: Build and test run: | ./project.sh "build_type=Release" test all macos_Debug: runs-on: macos-15 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | brew install llvm ninja - name: System information run: | uname -a sw_vers -productVersion clang -v - name: Build and test run: ./project.sh "build_type=Debug" test all macos_MinSizeRel: runs-on: macos-15 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | brew install llvm ninja - name: System information run: | uname -a sw_vers -productVersion clang -v - name: Build and test run: ./project.sh "build_type=MinSizeRel" test all macos_RelWithDebInfo: runs-on: macos-15 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | brew install llvm ninja - name: System information run: | uname -a sw_vers -productVersion clang -v - name: Build and test run: ./project.sh "build_type=RelWithDebInfo" test all macos_Release: runs-on: macos-15 timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | brew install llvm ninja - name: System information run: | uname -a sw_vers -productVersion clang -v - name: Build and test run: ./project.sh "build_type=Release" test all windows_Debug: runs-on: windows-latest timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | choco install ninja pwsh ./fetch-llvm.ps1 # - name: System information # run: | # systeminfo # clang -v - name: Build and test run: pwsh ./project.ps1 "-DCMAKE_PREFIX_PATH=clang+llvm-19.1.2-x86_64-pc-windows-msvc" "build_type=Debug" test all env: LANG: en_US.UTF-8 # Ensure UTF-8 encoding windows_MinSizeRel: runs-on: windows-latest timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | choco install ninja pwsh ./fetch-llvm.ps1 # - name: System information # run: | # systeminfo # clang -v - name: Build and test run: pwsh ./project.ps1 "-DCMAKE_PREFIX_PATH=clang+llvm-19.1.2-x86_64-pc-windows-msvc" "build_type=MinSizeRel" test all env: LANG: en_US.UTF-8 # Ensure UTF-8 encoding windows_RelWithDebInfo: runs-on: windows-latest timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | choco install ninja pwsh ./fetch-llvm.ps1 # - name: System information # run: | # systeminfo # clang -v - name: Build and test run: pwsh ./project.ps1 "-DCMAKE_PREFIX_PATH=clang+llvm-19.1.2-x86_64-pc-windows-msvc" "build_type=RelWithDebInfo" test all env: LANG: en_US.UTF-8 # Ensure UTF-8 encoding windows_Release: runs-on: windows-latest timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: | choco install ninja pwsh ./fetch-llvm.ps1 # - name: System information # run: | # systeminfo # clang -v - name: Build and test run: pwsh ./project.ps1 "-DCMAKE_PREFIX_PATH=clang+llvm-19.1.2-x86_64-pc-windows-msvc" "build_type=Release" test all env: LANG: en_US.UTF-8 # Ensure UTF-8 encoding