From 175ccd13f4838cc4d5fbe06f886dea4c81b6dc59 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 10:12:07 +0000 Subject: [PATCH 1/9] Enable Mac Arm64 build --- external/CMakeLists.txt | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index e9b3b28cb..ca49e72ea 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -340,7 +340,7 @@ endif (NOT FFTW3F_FOUND AND NOT USE_PRECOMPILED_LIBS) # So instead, we use FetchContent and build Boost at CMake configure time include(FetchContent) FetchContent_Declare(boost - URL https://boostorg.jfrog.io/artifactory/main/release/1.79.0/source/boost_1_79_0.tar.gz + URL https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.gz ) find_package(Boost QUIET) @@ -493,12 +493,17 @@ if (NOT FFMPEG_FOUND AND NOT USE_PRECOMPILED_LIBS) # We have to install this so OpenCV can find it # OpenCV doesn't currently build with ffmpeg 5, so use 4 + set(FFMPEG_EXTRA_LDFLAGS ${LAME_EXTRA_LDFLAGS}) + set(FFMPEG_EXTRA_CFLAGS ${LAME_EXTRA_CFLAGS}) + if (APPLE AND (XCODE_VERSION VERSION_GREATER_EQUAL 15.0.0)) + set(FFMPEG_EXTRA_LDFLAGS "${FFMPEG_EXTRA_LDFLAGS} -Wl,-ld_classic") + endif() ExternalProject_Add(ffmpeg GIT_REPOSITORY https://github.com/FFmpeg/FFmpeg.git GIT_TAG n4.4.2 DEPENDS ${X264_DEPENDS} ${X265_DEPENDS} ${OPUS_DEPENDS} ${FDK_AAC_DEPENDS} ${LAME_DEPENDS} PREFIX "${EXTERNAL_BUILD_LIBRARIES}/ffmpeg" - CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env PKG_CONFIG_PATH=${X264_PKG_CONFIG_DIR}:${X265_PKG_CONFIG_DIR}:${OPUS_PKG_CONFIG_DIR}:${FDK_AAC_PKG_CONFIG_DIR} /configure --prefix= --enable-shared --enable-gpl --enable-nonfree --enable-libx264 --enable-libx265 --enable-libopus --enable-libfdk-aac --enable-libmp3lame --extra-ldflags=${LAME_EXTRA_LDFLAGS} --extra-cflags=${LAME_EXTRA_CFLAGS} + CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env PKG_CONFIG_PATH=${X264_PKG_CONFIG_DIR}:${X265_PKG_CONFIG_DIR}:${OPUS_PKG_CONFIG_DIR}:${FDK_AAC_PKG_CONFIG_DIR} /configure --prefix= --enable-shared --enable-gpl --enable-nonfree --enable-libx264 --enable-libx265 --enable-libopus --enable-libfdk-aac --enable-libmp3lame --extra-ldflags=${FFMPEG_EXTRA_LDFLAGS} --extra-cflags=${FFMPEG_EXTRA_CFLAGS} BUILD_COMMAND ${MAKE} TEST_COMMAND "" ) @@ -1479,6 +1484,11 @@ if (WIN32 OR APPLE) endif (ENABLE_BLADERF) if (ENABLE_USRP AND Boost_FOUND AND NOT WIN32 AND ((NOT UHD_FOUND) OR (ENABLE_EXTERNAL_LIBRARIES STREQUAL "ON"))) + if (DEFINED PYTHON_EXECUTABLE) + set(UHD_PYTHON_ARGS "-DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE}") + else () + set(UHD_PYTHON_ARGS "") + endif () ExternalProject_Add(uhd GIT_REPOSITORY https://github.com/EttusResearch/uhd.git GIT_TAG v4.2.0.0 @@ -1490,7 +1500,7 @@ if (WIN32 OR APPLE) -DBoost_INCLUDE_DIR=${Boost_INCLUDE_DIR} -DLIBUSB_LIBRARIES=${LIBUSB_LIBRARIES} -DLIBUSB_INCLUDE_DIR=${LIBUSB_INCLUDE_DIR} - -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} + ${UHD_PYTHON_ARGS} -DCMAKE_INSTALL_NAME_DIR=/lib TEST_COMMAND "" ) From a519a01f8c2d3e5c5eaa53e5bf3a80193dea0210 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 10:22:53 +0000 Subject: [PATCH 2/9] Update UHD to 4.5 --- external/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index ca49e72ea..db28bb7c7 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -1491,7 +1491,7 @@ if (WIN32 OR APPLE) endif () ExternalProject_Add(uhd GIT_REPOSITORY https://github.com/EttusResearch/uhd.git - GIT_TAG v4.2.0.0 + GIT_TAG v4.5.0.0 DEPENDS ${LIBUSB_DEPENDS} ${Boost_DEPENDS} PREFIX "${EXTERNAL_BUILD_LIBRARIES}/uhd" SOURCE_SUBDIR "host" From ab45587788b21660ecb337e936002ef9eae79a00 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 10:58:50 +0000 Subject: [PATCH 3/9] Try --overwrite to fix python install issue --- .github/workflows/sdrangel.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index a191081fa..1dbb92c7e 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,7 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr + run: brew install --overwrite nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr - name: Configure SDRangel run: | mkdir build && cd build From d87ea496a6467f9ad652d30aa8a0cf99ad6109ea Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 11:39:31 +0000 Subject: [PATCH 4/9] Try --force to fix python install issue --- .github/workflows/sdrangel.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index 1dbb92c7e..ba00d23f7 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,7 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install --overwrite nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr + run: brew install --force --overwrite nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr - name: Configure SDRangel run: | mkdir build && cd build From 3feaac19ea4a12a1574b91dedcaf484f0ce208c7 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 12:38:45 +0000 Subject: [PATCH 5/9] Try deleting the file --- .github/workflows/sdrangel.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index ba00d23f7..5751b83f5 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,9 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install --force --overwrite nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr + run: | + rm -f /usr/local/bin/2to3 + brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr - name: Configure SDRangel run: | mkdir build && cd build From 97b568ec084f2758e728ac545cb1fd9226b7b052 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 13:34:30 +0000 Subject: [PATCH 6/9] Remove uhd to try to remove python dependency --- .github/workflows/sdrangel.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index 5751b83f5..13fb536a4 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,9 +109,7 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: | - rm -f /usr/local/bin/2to3 - brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf uhd soapysdr + run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr - name: Configure SDRangel run: | mkdir build && cd build From 18b999c671c51e378113d071a223e73933012312 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 13:39:24 +0000 Subject: [PATCH 7/9] Remove opencv, to avoid vtk, which pulls in python --- .github/workflows/sdrangel.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index 13fb536a4..3a0202070 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,7 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 opencv zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr + run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr - name: Configure SDRangel run: | mkdir build && cd build From ccade1bcc233683871869776653ee49259300f6f Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 14:09:47 +0000 Subject: [PATCH 8/9] Add qt --- .github/workflows/sdrangel.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index 3a0202070..3e7c15e50 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,7 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr + run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr qt - name: Configure SDRangel run: | mkdir build && cd build From 2709c546c9c40986057164b8b0462ee3d19489d3 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Mon, 30 Oct 2023 14:46:30 +0000 Subject: [PATCH 9/9] Try installing opencv separately --- .github/workflows/sdrangel.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sdrangel.yml b/.github/workflows/sdrangel.yml index 3e7c15e50..dd2699320 100644 --- a/.github/workflows/sdrangel.yml +++ b/.github/workflows/sdrangel.yml @@ -109,7 +109,11 @@ jobs: - name: Update brew run: brew update - name: Install brew packages - run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr qt + run: brew install nasm boost hidapi libusb fftw ffmpeg faad2 zlib airspy airspyhf hackrf rtl-sdr libbladerf soapysdr qt uhd + - name: Install brew opencv package + run: | + rm -f /usr/local/bin/2to3 + brew install opencv - name: Configure SDRangel run: | mkdir build && cd build