From ec4f76697c7873a3f6f7743679312a9ccd3fad06 Mon Sep 17 00:00:00 2001 From: Daniel Collin Date: Sun, 30 Nov 2025 20:10:22 +0100 Subject: [PATCH 1/2] Build macOS universal binary (x86_64 + arm64) Now that BASS is removed, we can build universal binaries that run natively on both Intel and Apple Silicon Macs. Changes: - Update CMAKE_OSX_ARCHITECTURES to include both x86_64 and arm64 - Update release workflow to explicitly build universal binary - Add verification step to confirm both architectures are present - Rename release artifact to RocketEditor-macOS-universal.zip --- .github/workflows/release.yml | 13 +++++++++---- CMakeLists.txt | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ba24926..fbc1431 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,21 +15,26 @@ jobs: submodules: true - name: Configure - run: cmake -B build -S . -DCMAKE_BUILD_TYPE=Release + run: cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" - name: Build run: cmake --build build --parallel + - name: Verify universal binary + run: | + file build/RocketEditor.app/Contents/MacOS/RocketEditor + lipo -info build/RocketEditor.app/Contents/MacOS/RocketEditor + - name: Package run: | cd build - zip -r RocketEditor-macOS.zip RocketEditor.app + zip -r RocketEditor-macOS-universal.zip RocketEditor.app - name: Upload artifact uses: actions/upload-artifact@v4 with: name: RocketEditor-macOS - path: build/RocketEditor-macOS.zip + path: build/RocketEditor-macOS-universal.zip build_windows: runs-on: windows-latest @@ -78,5 +83,5 @@ jobs: uses: softprops/action-gh-release@v1 with: files: | - RocketEditor-macOS.zip + RocketEditor-macOS-universal.zip RocketEditor-Windows.zip diff --git a/CMakeLists.txt b/CMakeLists.txt index cc039e3..a934c06 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ project(RocketEditor) cmake_minimum_required(VERSION 3.5...3.28) -set(CMAKE_OSX_ARCHITECTURES x86_64) +set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64") set(RKT_EXE_NAME "RocketEditor") set(EXAMPLE_NAME "BasicExample") From fe8736eae53a1f4a06d8a3b01aa51d833a3499b5 Mon Sep 17 00:00:00 2001 From: Daniel Collin Date: Sun, 30 Nov 2025 20:12:03 +0100 Subject: [PATCH 2/2] Fix strict-prototypes warning in minimp3.h for macOS --- external/minimp3/minimp3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/minimp3/minimp3.h b/external/minimp3/minimp3.h index 3220ae1..4a46f3c 100644 --- a/external/minimp3/minimp3.h +++ b/external/minimp3/minimp3.h @@ -176,7 +176,7 @@ static int have_simd(void) #define VMUL_S(x, s) vmulq_f32(x, vmovq_n_f32(s)) #define VREV(x) vcombine_f32(vget_high_f32(vrev64q_f32(x)), vget_low_f32(vrev64q_f32(x))) typedef float32x4_t f4; -static int have_simd() +static int have_simd(void) { /* TODO: detect neon for !MINIMP3_ONLY_SIMD */ return 1; }