diff --git a/.github/workflows/amd64_macos_bazel.yml b/.github/workflows/amd64_macos_bazel.yml deleted file mode 100644 index 5b73bce..0000000 --- a/.github/workflows/amd64_macos_bazel.yml +++ /dev/null @@ -1,102 +0,0 @@ -# ref: https://github.com/actions/runner-images -name: amd64 MacOS Bazel - -# Controls when the action will run. -on: - push: - branches: - - master - pull_request: - branches: - - master - workflow_dispatch: - -concurrency: - # Each run on master gets its own group, so that master runs are never - # cancelled and every commit gets a CI result. Setting - # cancel-in-progress to false would not suffice: a new run still cancels - # a pending run in the same group. - group: ${{github.workflow}}-${{github.ref == 'refs/heads/master' && github.run_id || github.ref}} - cancel-in-progress: true - -# Building using the github runner environement directly. -jobs: - native: - strategy: - matrix: - bazel: [ - {compilation_mode: opt}, - {compilation_mode: dbg}, - ] - cpp: [ - {version: 17, flags: "-std=c++17"}, - #{version: 20, flags: "-std=c++20"}, - ] - python: [ - {version: '3.11'}, - ] - exclude: - # only test `-c dbg` build with C++17 - - cpp: {version: 20} - bazel: {compilation_mode: dbg} - fail-fast: false - name: MacOS•Bazel(${{ matrix.bazel.compilation_mode }})•C++${{ matrix.cpp.version }}•Python${{ matrix.python.version }} - runs-on: macos-26-intel # Intel (x86_64) runner - steps: - - uses: actions/checkout@v7 - - name: Set Java to OpenJDK 17 (Temurin) - uses: actions/setup-java@v6 - with: - distribution: 'temurin' - java-version: '17' - - name: Setup Python - uses: actions/setup-python@v7 - with: - python-version: ${{ matrix.python.version }} - - name: Check Python - run: | - python --version - python -m platform - - uses: bazel-contrib/setup-bazel@0.19.1 - with: - bazelisk-cache: true - # One disk cache per configuration: a cache is written once per key, - # and the configurations do not share compile actions. - disk-cache: ${{github.workflow}}-${{matrix.bazel.compilation_mode}}-cxx${{matrix.cpp.version}}-py${{matrix.python.version}} - repository-cache: true - # Only master saves caches; pull requests restore master's caches - # (by key prefix), so they pay only for what they change, and the - # repository's 10 GB cache storage is not filled with per-PR copies. - cache-save: ${{github.ref == 'refs/heads/master'}} - # Bazel 9 also keeps extracted repositories (e.g. Python toolchains) - # in the repository cache, which grew the saved cache from about - # 0.4 GB to 1.6 GB; restoring that takes longer than re-extracting. - bazelrc: common --repo_contents_cache= - - name: Check Bazel - run: bazel version - - name: Build - run: > - bazel build - --config=ci - -c ${{ matrix.bazel.compilation_mode }} - --@rules_python//python/config_settings:python_version=${{ matrix.python.version }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} - --subcommands=pretty_print - --enable_bzlmod - //... - - name: Test - run: > - bazel test - --config=ci - -c ${{ matrix.bazel.compilation_mode }} - --@rules_python//python/config_settings:python_version=${{ matrix.python.version }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} - --subcommands=pretty_print - --enable_bzlmod - //... - - amd64_macos_bazel: - runs-on: ubuntu-latest - needs: native - steps: - - uses: actions/checkout@v7 diff --git a/.github/workflows/amd64_macos_cmake.yml b/.github/workflows/amd64_macos_cmake.yml deleted file mode 100644 index eb41311..0000000 --- a/.github/workflows/amd64_macos_cmake.yml +++ /dev/null @@ -1,86 +0,0 @@ -# ref: https://github.com/actions/runner-images -name: amd64 MacOS CMake - -# Controls when the action will run. -on: - push: - branches: - - master - pull_request: - branches: - - master - workflow_dispatch: - -concurrency: - # Each run on master gets its own group, so that master runs are never - # cancelled and every commit gets a CI result. Setting - # cancel-in-progress to false would not suffice: a new run still cancels - # a pending run in the same group. - group: ${{github.workflow}}-${{github.ref == 'refs/heads/master' && github.run_id || github.ref}} - cancel-in-progress: true - -# Building using the github runner environement directly. -jobs: - native: - strategy: - matrix: - python: [ - {version: '3.10'}, - {version: '3.11'}, - {version: '3.12'}, - #{version: '3.13'}, - ] - cmake: [ - #{generator: "Xcode", config: Release, build_target: ALL_BUILD, test_target: RUN_TESTS, install_target: install}, - {generator: "Unix Makefiles", config: Release, build_target: all, test_target: test, install_target: install}, - ] - fail-fast: false - name: MacOS•CMake(${{ matrix.cmake.generator }})•Python${{ matrix.python.version }} - runs-on: macos-26-intel # Intel (x86_64) runner - steps: - - uses: actions/checkout@v7 - - name: Setup Python - uses: actions/setup-python@v7 - with: - python-version: ${{ matrix.python.version }} - - name: Update Path - run: | - echo "$HOME/Library/Python/${{ matrix.python.version }}/bin" >> $GITHUB_PATH - echo "$HOME/.local/bin" >> $GITHUB_PATH - - name: Check Python - run: python --version - - name: Install Python requirements - run: python -m pip install --upgrade -r $(python -c 'import sys; print("./pybind11_abseil/requirements/requirements_lock_%d_%d.txt" % (sys.version_info[:2]))') - - name: Check CMake - run: cmake --version - - name: Configure - run: > - cmake -S. -Bbuild - -G "${{ matrix.cmake.generator }}" - -DCMAKE_BUILD_TYPE=${{ matrix.cmake.config }} - -DCMAKE_INSTALL_PREFIX=install - - name: Build - run: > - cmake --build build - --config ${{ matrix.cmake.config }} - --target ${{ matrix.cmake.build_target }} - -v -j2 - - name: Test - run: > - CTEST_OUTPUT_ON_FAILURE=1 - cmake --build build - --config ${{ matrix.cmake.config }} - --target ${{ matrix.cmake.test_target }} - -v - - name: Install - run: > - cmake --build build - --config ${{ matrix.cmake.config }} - --target ${{ matrix.cmake.install_target }} - -v - - amd64_macos_cmake: - runs-on: ubuntu-latest - needs: native - steps: - - uses: actions/checkout@v7 diff --git a/README.md b/README.md index 2a2764f..2237d03 100644 --- a/README.md +++ b/README.md @@ -4,14 +4,11 @@ Github-CI: | OS \ Build system | Bazel | CMake | |:------- | :---: | :---: | | Linux (`amd64`) | [![Build Status][amd64_linux_bazel_status]][amd64_linux_bazel_link] | [![Build Status][amd64_linux_cmake_status]][amd64_linux_cmake_link] | -| MacOS (`amd64`) | [![Build Status][amd64_macos_bazel_status]][amd64_macos_bazel_link] | [![Build Status][amd64_macos_cmake_status]][amd64_macos_cmake_link] | | MacOS (`arm64`) | [![Build Status][arm64_macos_bazel_status]][arm64_macos_bazel_link] | [![Build Status][arm64_macos_cmake_status]][arm64_macos_cmake_link] | | Windows (`amd64`) | [![Build Status][amd64_windows_bazel_status]][amd64_windows_bazel_link] | [![Build Status][amd64_windows_cmake_status]][amd64_windows_cmake_link] | [amd64_linux_bazel_status]: ./../../actions/workflows/amd64_linux_bazel.yml/badge.svg [amd64_linux_bazel_link]: ./../../actions/workflows/amd64_linux_bazel.yml -[amd64_macos_bazel_status]: ./../../actions/workflows/amd64_macos_bazel.yml/badge.svg -[amd64_macos_bazel_link]: ./../../actions/workflows/amd64_macos_bazel.yml [arm64_macos_bazel_status]: ./../../actions/workflows/arm64_macos_bazel.yml/badge.svg [arm64_macos_bazel_link]: ./../../actions/workflows/arm64_macos_bazel.yml [amd64_windows_bazel_status]: ./../../actions/workflows/amd64_windows_bazel.yml/badge.svg @@ -19,8 +16,6 @@ Github-CI: [amd64_linux_cmake_status]: ./../../actions/workflows/amd64_linux_cmake.yml/badge.svg [amd64_linux_cmake_link]: ./../../actions/workflows/amd64_linux_cmake.yml -[amd64_macos_cmake_status]: ./../../actions/workflows/amd64_macos_cmake.yml/badge.svg -[amd64_macos_cmake_link]: ./../../actions/workflows/amd64_macos_cmake.yml [arm64_macos_cmake_status]: ./../../actions/workflows/arm64_macos_cmake.yml/badge.svg [arm64_macos_cmake_link]: ./../../actions/workflows/arm64_macos_cmake.yml [amd64_windows_cmake_status]: ./../../actions/workflows/amd64_windows_cmake.yml/badge.svg