diff --git a/.github/workflows/build-depends.yml b/.github/workflows/build-depends.yml index d3b855a575a35..5eafd46f9ca56 100644 --- a/.github/workflows/build-depends.yml +++ b/.github/workflows/build-depends.yml @@ -53,6 +53,16 @@ jobs: restore-keys: | depends-sources- + - name: Cache SDKs + uses: actions/cache@v4 + if: inputs.build-target == 'mac' + with: + path: | + depends/SDKs + key: depends-sdks-${{ hashFiles('depends/hosts/darwin.mk') }} + restore-keys: | + depends-sdks- + - name: Restore cached depends uses: actions/cache/restore@v4 id: restore @@ -66,7 +76,12 @@ jobs: depends-${{ hashFiles('contrib/containers/ci/Dockerfile') }}-${{ inputs.build-target }}- - name: Build depends - run: env ${{ steps.setup.outputs.DEP_OPTS }} HOST=${{ steps.setup.outputs.HOST }} make -j$(nproc) -C depends + run: | + export HOST="${{ steps.setup.outputs.HOST }}" + if [ "${HOST}" = "x86_64-apple-darwin" ]; then + ./contrib/containers/guix/scripts/setup-sdk + fi + env ${{ steps.setup.outputs.DEP_OPTS }} make -j$(nproc) -C depends - name: Save depends cache uses: actions/cache/save@v4 diff --git a/.github/workflows/build-src.yml b/.github/workflows/build-src.yml index 7caaf232c909b..88f91811f1188 100644 --- a/.github/workflows/build-src.yml +++ b/.github/workflows/build-src.yml @@ -44,6 +44,15 @@ jobs: echo "PR_BASE_SHA=${{ github.event.pull_request.base.sha || '' }}" >> $GITHUB_OUTPUT shell: bash + - name: Restore SDKs cache + uses: actions/cache/restore@v4 + if: inputs.build-target == 'mac' + with: + path: | + depends/SDKs + key: depends-sdks-${{ hashFiles('depends/hosts/darwin.mk') }} + fail-on-cache-miss: true + - name: Restore depends cache uses: actions/cache/restore@v4 with: