From 88c5554970133a37e9959ff0251d65e9982a7750 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 5 Dec 2024 09:08:02 +0000 Subject: [PATCH 1/9] Update mac_x64 build to macos-13, as github no longer supports 12. --- .github/workflows/mac.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 598bde0b2f..36a28c3045 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -9,7 +9,7 @@ on: jobs: build_mac_x64: - runs-on: macos-12 + runs-on: macos-13 steps: - uses: actions/checkout@v4 with: From 405073d198f40bfb0c9b03524d1991718e5dd768 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 5 Dec 2024 10:15:18 +0000 Subject: [PATCH 2/9] Install svn needed to build lame --- .github/workflows/mac.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 36a28c3045..9f9114931d 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -15,6 +15,10 @@ jobs: with: submodules: true fetch-depth: 0 + - name: Update brew + run: brew update + - name: Install brew packages + run: brew install nasm subversion - name: Install SDRplay API run: | wget https://www.sdrplay.com/software/SDRplayAPI-macos-installer-universal-3.15.0.pkg From ec0ffa005a78cdec5da8cb2c9c7f7dabeb6b56b8 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 5 Dec 2024 13:11:08 +0000 Subject: [PATCH 3/9] Try macos-14, as 13 fails due to https://github.com/actions/runner-images/issues/7522 --- .github/workflows/mac.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 9f9114931d..f09acb1b64 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -9,7 +9,7 @@ on: jobs: build_mac_x64: - runs-on: macos-13 + runs-on: macos-14 steps: - uses: actions/checkout@v4 with: From a9385cb91c49b17550d1ee68283f39535ade1504 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 5 Dec 2024 14:40:08 +0000 Subject: [PATCH 4/9] macos-14 is arm only --- .github/workflows/mac.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index f09acb1b64..9f9114931d 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -9,7 +9,7 @@ on: jobs: build_mac_x64: - runs-on: macos-14 + runs-on: macos-13 steps: - uses: actions/checkout@v4 with: From 4519e512c6079521f9a61f161e54f5bdac12be94 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Wed, 22 Jan 2025 20:45:22 +0000 Subject: [PATCH 5/9] Retry make package in case hdituil fails --- .github/workflows/mac.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 9f9114931d..28c2b05687 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -44,7 +44,17 @@ jobs: - name: Build SDRangel on Mac run: | cd build - make -j4 package + RETRIES=3 + COUNT=1 + while [ $COUNT -lt $RETRIES ]; do + make -j4 package + if [ $? -eq 0 ]; then + RETRIES=0 + break + fi + let COUNT=$COUNT+1 + done + shell: bash - name: Get version id: get_version run: | From c9c9febe4141fcdda13e4800fd86dd9a4bddffdf Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Wed, 22 Jan 2025 21:38:00 +0000 Subject: [PATCH 6/9] Use version 4.1 of x265 as master is broken on Mac. --- external/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index d84f585231..33d5948c7a 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -420,6 +420,7 @@ if (NOT FFMPEG_FOUND AND NOT USE_PRECOMPILED_LIBS) if (NOT X265_FOUND OR X265_EXTERNAL) ExternalProject_Add(x265 GIT_REPOSITORY https://bitbucket.org/multicoreware/x265_git.git + GIT_TAG 4.1 PREFIX "${EXTERNAL_BUILD_LIBRARIES}/x265" SOURCE_SUBDIR "source" CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX= From 9ea7ade57f9919644a73cf5abb5c5b45c43f5213 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Wed, 22 Jan 2025 21:38:22 +0000 Subject: [PATCH 7/9] Try continue-on-error: true to allow make to be retried --- .github/workflows/mac.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 28c2b05687..4d64098dee 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -55,6 +55,7 @@ jobs: let COUNT=$COUNT+1 done shell: bash + continue-on-error: true - name: Get version id: get_version run: | From 2ea5ef220b33024a306d6173a7c210875844cf40 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 23 Jan 2025 08:53:01 +0000 Subject: [PATCH 8/9] Add set +e to allow script to continue on error --- .github/workflows/mac.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 4d64098dee..65a5014cdd 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -46,6 +46,7 @@ jobs: cd build RETRIES=3 COUNT=1 + set +e while [ $COUNT -lt $RETRIES ]; do make -j4 package if [ $? -eq 0 ]; then From 6df8b94637663d6758f9bc54e0eaad687689ace5 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 23 Jan 2025 11:02:37 +0000 Subject: [PATCH 9/9] Try to fix arm build as well. --- .github/workflows/mac.yml | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 65a5014cdd..a646a48218 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -44,11 +44,15 @@ jobs: - name: Build SDRangel on Mac run: | cd build - RETRIES=3 + make -j4 + - name: Create dmg + run: | + cd build + RETRIES=5 COUNT=1 set +e while [ $COUNT -lt $RETRIES ]; do - make -j4 package + make package if [ $? -eq 0 ]; then RETRIES=0 break @@ -115,7 +119,23 @@ jobs: - name: Build SDRangel on Mac run: | cd build - make -j3 package + make -j3 + - name: Create dmg + run: | + cd build + RETRIES=5 + COUNT=1 + set +e + while [ $COUNT -lt $RETRIES ]; do + make package + if [ $? -eq 0 ]; then + RETRIES=0 + break + fi + let COUNT=$COUNT+1 + done + shell: bash + continue-on-error: true - name: Get version id: get_version run: |