From 6220ea0320dc52aabf183b07917825e7cfcc7e41 Mon Sep 17 00:00:00 2001 From: Yuri Witte Date: Mon, 31 Aug 2026 23:33:36 +0100 Subject: [PATCH 1/5] use ccache, update JUCE to 9.0.1 --- .github/workflows/build.yml | 28 +++++++++++++++++----------- CMakePresets.json | 10 +++++++--- JUCE | 2 +- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f916abe..060cbca 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,25 +2,24 @@ name: build on: push: - branches: [ main, dev ] + branches: [ main, dev, use-ccache ] pull_request: branches: - '*' + workflow_dispatch: + +env: + CCACHE_SLOPPINESS: include_file_ctime,include_file_mtime,time_macros jobs: build: strategy: fail-fast: false matrix: - include: - - os: ubuntu-latest - name: linux - - os: macos-latest - name: mac - - os: windows-latest - name: windows - - name: ${{ matrix.name }} + os: [ macos-latest, windows-latest, ubuntu-latest ] + buildType: [ Release, Debug ] + + name: ${{ matrix.os }} runs-on: ${{ matrix.os }} steps: @@ -33,6 +32,13 @@ jobs: with: arch: x64 + - name: Setup ccache + uses: hendrikmuhs/ccache-action@v1.2 + with: + key: ${{ runner.os }}-ccache + max-size: 2000M + verbose: 2 + - name: install linux dependencies if: runner.os == 'Linux' run: | @@ -40,7 +46,7 @@ jobs: sudo apt install libasound2-dev libxinerama-dev libx11-dev libxext-dev libfreetype-dev libwebkit2gtk-4.1-dev libglu1-mesa-dev xvfb ninja-build - name: configure - run: cmake --preset default + run: cmake . --preset ci - name: build run: cmake --build --preset ci diff --git a/CMakePresets.json b/CMakePresets.json index 3f1906b..daafc5f 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -7,11 +7,15 @@ "binaryDir": "${sourceDir}/__build" }, { - "name": "linux-sandbox", + "name": "ci", "generator": "Ninja", - "binaryDir": "${sourceDir}/__build-linux-sandbox", + "binaryDir": "${sourceDir}/__build", "cacheVariables": { - "CMAKE_BUILD_TYPE": "Release" + "CMAKE_BUILD_TYPE": "Release", + "CMAKE_C_COMPILER_LAUNCHER": "ccache", + "CMAKE_CXX_COMPILER_LAUNCHER": "ccache", + "CMAKE_OBJC_COMPILER_LAUNCHER": "ccache", + "CMAKE_OBJCXX_COMPILER_LAUNCHER": "ccache" } } ], diff --git a/JUCE b/JUCE index 7c9d378..ee9bb7b 160000 --- a/JUCE +++ b/JUCE @@ -1 +1 @@ -Subproject commit 7c9d3783b127263d72bb65fe0a7e2dc8a02a7ac2 +Subproject commit ee9bb7b4d8fa7cdfcde5d1e85e859bf02c6112f5 From 28c0495314ee8334e66983478b8ff85913fd72bc Mon Sep 17 00:00:00 2001 From: Yuri Witte Date: Mon, 31 Aug 2026 23:56:23 +0100 Subject: [PATCH 2/5] set ccache dir on Linux and Windows --- .github/workflows/build.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 060cbca..17822ec 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -39,6 +39,12 @@ jobs: max-size: 2000M verbose: 2 + - name: Configure ccache + if: runner.os != 'macOS' + run: | + ccache --set-config=cache_dir=${{ github.workspace }}/.ccache + ccache --zero-stats + - name: install linux dependencies if: runner.os == 'Linux' run: | From 90673c74d75c5d339a9fb0e207e084514454f890 Mon Sep 17 00:00:00 2001 From: Yuri Witte Date: Tue, 1 Sep 2026 00:57:19 +0100 Subject: [PATCH 3/5] update ccache-action, use ubuntu 26.04, update minimum cmake version --- .github/workflows/build.yml | 11 ++--------- CMakeLists.txt | 7 ++++--- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 17822ec..bcc11c9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,8 +16,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ macos-latest, windows-latest, ubuntu-latest ] - buildType: [ Release, Debug ] + os: [ macos-latest, windows-latest, ubuntu-26.04 ] name: ${{ matrix.os }} runs-on: ${{ matrix.os }} @@ -33,18 +32,12 @@ jobs: arch: x64 - name: Setup ccache - uses: hendrikmuhs/ccache-action@v1.2 + uses: hendrikmuhs/ccache-action@v1.2.24 with: key: ${{ runner.os }}-ccache max-size: 2000M verbose: 2 - - name: Configure ccache - if: runner.os != 'macOS' - run: | - ccache --set-config=cache_dir=${{ github.workspace }}/.ccache - ccache --zero-stats - - name: install linux dependencies if: runner.os == 'Linux' run: | diff --git a/CMakeLists.txt b/CMakeLists.txt index 1d68ac4..1ea8fde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,14 +1,15 @@ -cmake_minimum_required(VERSION 3.28) +cmake_minimum_required(VERSION 4.3) +project(Eq VERSION 1.0.0) + + set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64") set(CMAKE_OSX_DEPLOYMENT_TARGET 10.15) - # add_compile_options(-fsanitize=address) # add_link_options(-fsanitize=address) # add_link_options(-fsanitize=thread) -project(Eq VERSION 1.0.0) add_subdirectory(JUCE) From d1e879f4beac96d0515c6edbbbde8c95422b5ee1 Mon Sep 17 00:00:00 2001 From: Yuri Witte Date: Wed, 2 Sep 2026 16:04:48 +0100 Subject: [PATCH 4/5] don't set CCACHE_SLOPPINESS --- .github/workflows/build.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bcc11c9..d88f92f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,9 +8,6 @@ on: - '*' workflow_dispatch: -env: - CCACHE_SLOPPINESS: include_file_ctime,include_file_mtime,time_macros - jobs: build: strategy: From d8fd3a3c5c803a173d5d9be4bb32a2c7addd4810 Mon Sep 17 00:00:00 2001 From: Yuri Witte Date: Wed, 2 Sep 2026 16:24:57 +0100 Subject: [PATCH 5/5] clean up --- .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 d88f92f..a4b504b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: build on: push: - branches: [ main, dev, use-ccache ] + branches: [ main, dev ] pull_request: branches: - '*'