From b7b410fe73ca4c9de00b7a66eced8579c7e82e6e Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 17:05:00 -0700 Subject: [PATCH 01/16] try installing Rosetta and build for Intel --- .github/workflows/build.yml | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3f08ae208..5278e5082 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,12 +24,12 @@ jobs: cc: cl cxx: cl name: Windows-x64 - - runner: macos-13 # Should be Intel + - runner: macos-14 preset: mac cc: cc cxx: c++ name: macOS-Intel - - runner: macos-14 # This is supposed to be M1 + - runner: macos-14 preset: mac cc: cc cxx: c++ @@ -54,17 +54,28 @@ jobs: - Release runs-on: ${{ matrix.os.runner }} + env: + MACOS_ARCH_COMMAND: '' # default to nothing steps: - uses: actions/checkout@v4 with: submodules: recursive - - name: Install macOS dependencies - if: ${{ matrix.os.preset == 'mac' }} + - name: Install macOS Rosetta 2 and Brew + if: ${{ matrix.os.name == 'macOS-Intel' }} run: | - # Install packages from Homebrew - brew bundle install + /usr/sbin/softwareupdate --install-rosetta --agree-to-license + echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV + arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + + - name: Install macOS ARM dependencies + if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-ARM' }} + run: brew bundle install + + - name: Install macOS Intel dependencies + if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} + run: arch -x86_64 /usr/local/homebrew/bin/brew bundle install - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} @@ -104,18 +115,18 @@ jobs: env: CC: ${{ matrix.os.cc }} CXX: ${{ matrix.os.cxx }} - run: cmake --preset ${{ matrix.os.preset }} -DBUILD_TESTING=ON -DENABLE_LOGGER=ON -DFORCE_PORTABLE_INSTALL=ON -DBUILD_EDITOR=ON -DUSE_EXTERNAL_PLOG=ON + run: $MACOS_ARCH_COMMAND cmake --preset ${{ matrix.os.preset }} -DBUILD_TESTING=ON -DENABLE_LOGGER=ON -DFORCE_PORTABLE_INSTALL=ON -DBUILD_EDITOR=ON -DUSE_EXTERNAL_PLOG=ON - name: Build ${{ matrix.build_type }} - run: cmake --build --preset ${{ matrix.os.preset }} --config ${{ matrix.build_type }} --verbose + run: $MACOS_ARCH_COMMAND cmake --build --preset ${{ matrix.os.preset }} --config ${{ matrix.build_type }} --verbose - name: Run ${{ matrix.build_type }} Unittests if: ${{ matrix.os.preset != 'linux-cross-arm64' }} - run: ctest --preset ${{ matrix.os.preset }} -C ${{ matrix.build_type }} + run: $MACOS_ARCH_COMMAND ctest --preset ${{ matrix.os.preset }} -C ${{ matrix.build_type }} - name: Local install # There no cmake install presets so install in traditional way - run: cmake --install builds/${{ matrix.os.preset }}/ --config ${{ matrix.build_type }} + run: $MACOS_ARCH_COMMAND cmake --install builds/${{ matrix.os.preset }}/ --config ${{ matrix.build_type }} - name: Upload Artifacts uses: actions/upload-artifact@v4 From f3f8d1e5fa1cdefdde12db3327e76c760ec1e9fa Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 17:23:07 -0700 Subject: [PATCH 02/16] Set-up brew path correctly before bundle install --- .github/workflows/build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5278e5082..1f4ddcb50 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -75,7 +75,9 @@ jobs: - name: Install macOS Intel dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} - run: arch -x86_64 /usr/local/homebrew/bin/brew bundle install + run: | + $MACOS_ARCH_COMMAND eval "$(/usr/local/bin/brew shellenv)" + $MACOS_ARCH_COMMAND /usr/local/bin/brew bundle install - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} From f8d01651a594b3d282348218ec707a4ae0afc621 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 17:33:01 -0700 Subject: [PATCH 03/16] eval without arch -x86_64 --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1f4ddcb50..7b1127b83 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -76,7 +76,7 @@ jobs: - name: Install macOS Intel dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} run: | - $MACOS_ARCH_COMMAND eval "$(/usr/local/bin/brew shellenv)" + eval "$(/usr/local/bin/brew shellenv)" $MACOS_ARCH_COMMAND /usr/local/bin/brew bundle install - name: Install Linux dependencies From 572070ad23899a69f798f073e19323aa0288515b Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 18:16:03 -0700 Subject: [PATCH 04/16] use direct arch --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7b1127b83..921fd7195 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -77,7 +77,7 @@ jobs: if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} run: | eval "$(/usr/local/bin/brew shellenv)" - $MACOS_ARCH_COMMAND /usr/local/bin/brew bundle install + arch -x86_64 /usr/local/bin/brew bundle install - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} From cb3aedce3c633892b8cc21ed0d66c7a510890cda Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 18:43:31 -0700 Subject: [PATCH 05/16] Specify the shell for macOS Intel --- .github/workflows/build.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 921fd7195..e5b9ecb90 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -64,10 +64,11 @@ jobs: - name: Install macOS Rosetta 2 and Brew if: ${{ matrix.os.name == 'macOS-Intel' }} + shell: arch -x86_64 /bin/bash -e {0} run: | /usr/sbin/softwareupdate --install-rosetta --agree-to-license echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV - arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - name: Install macOS ARM dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-ARM' }} @@ -75,9 +76,10 @@ jobs: - name: Install macOS Intel dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} + shell: arch -x86_64 /bin/bash -e {0} run: | eval "$(/usr/local/bin/brew shellenv)" - arch -x86_64 /usr/local/bin/brew bundle install + /usr/local/bin/brew bundle install - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} From fd8909296ac7f8a2446984d1cb81ea861d43aec2 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 18:47:03 -0700 Subject: [PATCH 06/16] Do not use shell when installing Rosetta 2 --- .github/workflows/build.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e5b9ecb90..25a484f40 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -62,7 +62,13 @@ jobs: with: submodules: recursive - - name: Install macOS Rosetta 2 and Brew + - name: Install macOS Rosetta 2 + if: ${{ matrix.os.name == 'macOS-Intel' }} + run: | + /usr/sbin/softwareupdate --install-rosetta --agree-to-license + echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV + + - name: Install Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | From b9fb1aa2b8271d17a1e94f192596b052219d5301 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 18:48:29 -0700 Subject: [PATCH 07/16] Do not intall Rosetta with brew --- .github/workflows/build.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 25a484f40..49f3f4d9b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,8 +72,6 @@ jobs: if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | - /usr/sbin/softwareupdate --install-rosetta --agree-to-license - echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - name: Install macOS ARM dependencies From c049d3572529762ac620117c03ac857d334338f7 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 19:04:21 -0700 Subject: [PATCH 08/16] Tell me the arch of cmake --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 49f3f4d9b..b4ada65c3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -84,6 +84,7 @@ jobs: run: | eval "$(/usr/local/bin/brew shellenv)" /usr/local/bin/brew bundle install + file /usr/local/bin/cmake - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} From c7f48142c64af26d9386f0d6d8d9f88f57aed881 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 19:18:11 -0700 Subject: [PATCH 09/16] Overwrite PATH for future steps when running as macOS Intel --- .github/workflows/build.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b4ada65c3..2f4de2b55 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -82,8 +82,13 @@ jobs: if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | + which brew + echo $PATH eval "$(/usr/local/bin/brew shellenv)" - /usr/local/bin/brew bundle install + which brew + echo $PATH + echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH for future steps so the Intel Brew and its installs are enshrined as the default + brew bundle install file /usr/local/bin/cmake - name: Install Linux dependencies From dc8aff0b506fc56ddd3c7b7d0c8c764651a3e9f9 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 19:49:46 -0700 Subject: [PATCH 10/16] Specify shell per runner --- .github/workflows/build.yml | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2f4de2b55..e98c2cd39 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,38 +24,44 @@ jobs: cc: cl cxx: cl name: Windows-x64 + shell: '' - runner: macos-14 preset: mac cc: cc cxx: c++ name: macOS-Intel + shell: arch -x86_64 /bin/bash -e {0} - runner: macos-14 preset: mac cc: cc cxx: c++ name: macOS-ARM + shell: '' - runner: ubuntu-latest preset: linux cc: gcc cxx: g++ name: Linux-x64 + shell: '' - runner: ubuntu-latest preset: linux cc: clang cxx: clang++ name: Linux-x64-clang + shell: '' - runner: ubuntu-latest preset: linux-cross-arm64 cc: gcc cxx: g++++ name: Linux-cross-arm64 + shell: '' build_type: - Debug - Release runs-on: ${{ matrix.os.runner }} - env: - MACOS_ARCH_COMMAND: '' # default to nothing +# env: +# MACOS_ARCH_COMMAND: '' # default to nothing steps: - uses: actions/checkout@v4 @@ -66,11 +72,11 @@ jobs: if: ${{ matrix.os.name == 'macOS-Intel' }} run: | /usr/sbin/softwareupdate --install-rosetta --agree-to-license - echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV +# echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV - name: Install Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} - shell: arch -x86_64 /bin/bash -e {0} + shell: ${{ matrix.os.shell }} run: | /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" @@ -80,16 +86,11 @@ jobs: - name: Install macOS Intel dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} - shell: arch -x86_64 /bin/bash -e {0} + shell: ${{ matrix.os.shell }} run: | - which brew - echo $PATH eval "$(/usr/local/bin/brew shellenv)" - which brew - echo $PATH echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH for future steps so the Intel Brew and its installs are enshrined as the default brew bundle install - file /usr/local/bin/cmake - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} @@ -126,21 +127,25 @@ jobs: - name: Configure CMake if: ${{ matrix.os.preset != 'linux-cross-arm64' }} + shell: ${{ matrix.os.shell }} env: CC: ${{ matrix.os.cc }} CXX: ${{ matrix.os.cxx }} - run: $MACOS_ARCH_COMMAND cmake --preset ${{ matrix.os.preset }} -DBUILD_TESTING=ON -DENABLE_LOGGER=ON -DFORCE_PORTABLE_INSTALL=ON -DBUILD_EDITOR=ON -DUSE_EXTERNAL_PLOG=ON + run: cmake --preset ${{ matrix.os.preset }} -DBUILD_TESTING=ON -DENABLE_LOGGER=ON -DFORCE_PORTABLE_INSTALL=ON -DBUILD_EDITOR=ON -DUSE_EXTERNAL_PLOG=ON - name: Build ${{ matrix.build_type }} - run: $MACOS_ARCH_COMMAND cmake --build --preset ${{ matrix.os.preset }} --config ${{ matrix.build_type }} --verbose + shell: ${{ matrix.os.shell }} + run: cmake --build --preset ${{ matrix.os.preset }} --config ${{ matrix.build_type }} --verbose - name: Run ${{ matrix.build_type }} Unittests if: ${{ matrix.os.preset != 'linux-cross-arm64' }} - run: $MACOS_ARCH_COMMAND ctest --preset ${{ matrix.os.preset }} -C ${{ matrix.build_type }} + shell: ${{ matrix.os.shell }} + run: ctest --preset ${{ matrix.os.preset }} -C ${{ matrix.build_type }} - name: Local install + shell: ${{ matrix.os.shell }} # There no cmake install presets so install in traditional way - run: $MACOS_ARCH_COMMAND cmake --install builds/${{ matrix.os.preset }}/ --config ${{ matrix.build_type }} + run: cmake --install builds/${{ matrix.os.preset }}/ --config ${{ matrix.build_type }} - name: Upload Artifacts uses: actions/upload-artifact@v4 From c0d62f94ceb4e6d96b868b7639f27d64f27b88d4 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 20:24:10 -0700 Subject: [PATCH 11/16] Does it work without arch after install --- .github/workflows/build.yml | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e98c2cd39..c01f1c10e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,44 +24,36 @@ jobs: cc: cl cxx: cl name: Windows-x64 - shell: '' - runner: macos-14 preset: mac cc: cc cxx: c++ name: macOS-Intel - shell: arch -x86_64 /bin/bash -e {0} - runner: macos-14 preset: mac cc: cc cxx: c++ name: macOS-ARM - shell: '' - runner: ubuntu-latest preset: linux cc: gcc cxx: g++ name: Linux-x64 - shell: '' - runner: ubuntu-latest preset: linux cc: clang cxx: clang++ name: Linux-x64-clang - shell: '' - runner: ubuntu-latest preset: linux-cross-arm64 cc: gcc cxx: g++++ name: Linux-cross-arm64 - shell: '' build_type: - Debug - Release runs-on: ${{ matrix.os.runner }} -# env: -# MACOS_ARCH_COMMAND: '' # default to nothing steps: - uses: actions/checkout@v4 @@ -70,13 +62,11 @@ jobs: - name: Install macOS Rosetta 2 if: ${{ matrix.os.name == 'macOS-Intel' }} - run: | - /usr/sbin/softwareupdate --install-rosetta --agree-to-license -# echo "MACOS_ARCH_COMMAND=arch -x86_64" >> $GITHUB_ENV - + run: /usr/sbin/softwareupdate --install-rosetta --agree-to-license + - name: Install Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} - shell: ${{ matrix.os.shell }} + shell: arch -x86_64 /bin/bash -e {0} run: | /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" @@ -86,7 +76,7 @@ jobs: - name: Install macOS Intel dependencies if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} - shell: ${{ matrix.os.shell }} + shell: arch -x86_64 /bin/bash -e {0} run: | eval "$(/usr/local/bin/brew shellenv)" echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH for future steps so the Intel Brew and its installs are enshrined as the default From 3189a29739dff7979f11bdef56ef2fc6343ac325 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 20:27:13 -0700 Subject: [PATCH 12/16] this time without all the shell config --- .github/workflows/build.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c01f1c10e..7e55d4023 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -117,23 +117,19 @@ jobs: - name: Configure CMake if: ${{ matrix.os.preset != 'linux-cross-arm64' }} - shell: ${{ matrix.os.shell }} env: CC: ${{ matrix.os.cc }} CXX: ${{ matrix.os.cxx }} run: cmake --preset ${{ matrix.os.preset }} -DBUILD_TESTING=ON -DENABLE_LOGGER=ON -DFORCE_PORTABLE_INSTALL=ON -DBUILD_EDITOR=ON -DUSE_EXTERNAL_PLOG=ON - name: Build ${{ matrix.build_type }} - shell: ${{ matrix.os.shell }} run: cmake --build --preset ${{ matrix.os.preset }} --config ${{ matrix.build_type }} --verbose - name: Run ${{ matrix.build_type }} Unittests if: ${{ matrix.os.preset != 'linux-cross-arm64' }} - shell: ${{ matrix.os.shell }} run: ctest --preset ${{ matrix.os.preset }} -C ${{ matrix.build_type }} - name: Local install - shell: ${{ matrix.os.shell }} # There no cmake install presets so install in traditional way run: cmake --install builds/${{ matrix.os.preset }}/ --config ${{ matrix.build_type }} From 2f060343e138e3420307c9fe4efaf87371b79517 Mon Sep 17 00:00:00 2001 From: halprin Date: Sun, 15 Dec 2024 21:03:56 -0700 Subject: [PATCH 13/16] Improve if statements and documentation --- .github/workflows/build.yml | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7e55d4023..d64d8ba01 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,12 +24,12 @@ jobs: cc: cl cxx: cl name: Windows-x64 - - runner: macos-14 + - runner: macos-14 # Apple Silicon, but we cross-compile preset: mac cc: cc cxx: c++ name: macOS-Intel - - runner: macos-14 + - runner: macos-14 # Apple Silicon preset: mac cc: cc cxx: c++ @@ -67,21 +67,20 @@ jobs: - name: Install Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} - run: | - /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - - - name: Install macOS ARM dependencies - if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-ARM' }} - run: brew bundle install + run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - name: Install macOS Intel dependencies - if: ${{ matrix.os.preset == 'mac' && matrix.os.name == 'macOS-Intel' }} + if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | - eval "$(/usr/local/bin/brew shellenv)" - echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH for future steps so the Intel Brew and its installs are enshrined as the default + eval "$(/usr/local/bin/brew shellenv)" # makes the Intel version of Brew and its installs are enshrined as the default + echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH so the above step persists into the future steps brew bundle install + - name: Install macOS ARM dependencies + if: ${{ matrix.os.name == 'macOS-ARM' }} + run: brew bundle install + - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} run: | From 842e3149e20baac7f2892aecd0e3b841e24b2eea Mon Sep 17 00:00:00 2001 From: halprin Date: Tue, 17 Dec 2024 18:25:48 -0700 Subject: [PATCH 14/16] Try not running brew in x86_64 --- .github/workflows/build.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d64d8ba01..7350bea3c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -69,16 +69,14 @@ jobs: shell: arch -x86_64 /bin/bash -e {0} run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - - name: Install macOS Intel dependencies + - name: Enshrine Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | eval "$(/usr/local/bin/brew shellenv)" # makes the Intel version of Brew and its installs are enshrined as the default echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH so the above step persists into the future steps - brew bundle install - - name: Install macOS ARM dependencies - if: ${{ matrix.os.name == 'macOS-ARM' }} + - name: Install macOS dependencies run: brew bundle install - name: Install Linux dependencies From 61e77ff8da7cbf1bd3fdf7b067cd24bf0c22f0ea Mon Sep 17 00:00:00 2001 From: halprin Date: Tue, 17 Dec 2024 18:44:22 -0700 Subject: [PATCH 15/16] Consolidate steps but add some debug output --- .github/workflows/build.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7350bea3c..ea00c5e00 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -65,19 +65,21 @@ jobs: run: /usr/sbin/softwareupdate --install-rosetta --agree-to-license - name: Install Intel version of Brew - if: ${{ matrix.os.name == 'macOS-Intel' }} - shell: arch -x86_64 /bin/bash -e {0} - run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - - - name: Enshrine Intel version of Brew if: ${{ matrix.os.name == 'macOS-Intel' }} shell: arch -x86_64 /bin/bash -e {0} run: | + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" eval "$(/usr/local/bin/brew shellenv)" # makes the Intel version of Brew and its installs are enshrined as the default echo "PATH=$PATH" >> $GITHUB_ENV # modify $PATH so the above step persists into the future steps - name: Install macOS dependencies - run: brew bundle install + if: ${{ matrix.os.preset == 'mac' }} + run: | + file $(which cmake) + which brew + brew bundle install + file $(which cmake) + file /usr/local/bin/cmake - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }} From 3b741a9febc21e94ef311d18a9ee6c48dc626371 Mon Sep 17 00:00:00 2001 From: halprin Date: Tue, 17 Dec 2024 19:17:46 -0700 Subject: [PATCH 16/16] Remove debug programs --- .github/workflows/build.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ea00c5e00..db2295695 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -74,12 +74,7 @@ jobs: - name: Install macOS dependencies if: ${{ matrix.os.preset == 'mac' }} - run: | - file $(which cmake) - which brew - brew bundle install - file $(which cmake) - file /usr/local/bin/cmake + run: brew bundle install - name: Install Linux dependencies if: ${{ matrix.os.runner == 'ubuntu-latest' }}