diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 38986878168793..3ef68b62e21a8b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -237,6 +237,15 @@ jobs: with: config_hash: ${{ needs.check_source.outputs.config_hash }} + build_macos_free_threaded: + name: 'macOS (free-threaded)' + needs: check_source + if: needs.check_source.outputs.run_tests == 'true' && contains(github.event.pull_request.labels.*.name, 'topic-free-threaded') + uses: ./.github/workflows/reusable-build-macos.yml + with: + config_hash: ${{ needs.check_source.outputs.config_hash }} + free-threaded: true + build_ubuntu: name: 'Ubuntu' runs-on: ubuntu-20.04 diff --git a/.github/workflows/reusable-build-macos.yml b/.github/workflows/reusable-build-macos.yml index f4abeaf836dc2c..3f1faf6e5f9170 100644 --- a/.github/workflows/reusable-build-macos.yml +++ b/.github/workflows/reusable-build-macos.yml @@ -4,6 +4,10 @@ on: config_hash: required: true type: string + free-threaded: + required: false + type: boolean + default: false jobs: build_macos: @@ -30,6 +34,7 @@ jobs: ./configure \ --config-cache \ --with-pydebug \ + ${{ inputs.free-threaded && '--disable-gil' || '' }} \ --prefix=/opt/python-dev \ --with-openssl="$(brew --prefix openssl@3.0)" - name: Build CPython