From fc8e1fafc7c912fbe83fa947af5057e53d78c7e3 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 20:35:09 +0200 Subject: [PATCH 1/8] ci: only save sccache on master --- .github/workflows/build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4094a5a8201..d412e2d2220 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -140,6 +140,8 @@ jobs: if: startsWith(matrix.os, 'windows') with: variant: sccache + # only save on on the default (master) branch + save: ${{ github.event_name == 'push' }} key: sccache-build-${{ matrix.os }}-${{ matrix.qt-version }}-${{ matrix.skip-crashpad }} restore-keys: | sccache-build-${{ matrix.os }}-${{ matrix.qt-version }} From 3a30d6713ccecce70386ffb332621edc016e36ab Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 20:37:00 +0200 Subject: [PATCH 2/8] build: add signals2 to PCH --- src/PrecompiledHeader.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/PrecompiledHeader.hpp b/src/PrecompiledHeader.hpp index a4a45395486..0ba2603e837 100644 --- a/src/PrecompiledHeader.hpp +++ b/src/PrecompiledHeader.hpp @@ -3,6 +3,7 @@ # include # include # include +# include # include # include # include From 9a2836612f286c9d289ece28bad7f102d3c15af7 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 20:37:46 +0200 Subject: [PATCH 3/8] build: add circular_buffer to PCH used in limitedqueue --- src/PrecompiledHeader.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/PrecompiledHeader.hpp b/src/PrecompiledHeader.hpp index 0ba2603e837..2d0d7688e38 100644 --- a/src/PrecompiledHeader.hpp +++ b/src/PrecompiledHeader.hpp @@ -1,4 +1,5 @@ #ifdef __cplusplus +# include # include # include # include From ac531cf482cef750a7b83a40b6fece52f897469c Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 20:38:14 +0200 Subject: [PATCH 4/8] build: remove duplicate includes from PCH --- src/PrecompiledHeader.hpp | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/PrecompiledHeader.hpp b/src/PrecompiledHeader.hpp index 2d0d7688e38..fa0279218fa 100644 --- a/src/PrecompiledHeader.hpp +++ b/src/PrecompiledHeader.hpp @@ -100,25 +100,12 @@ # include # include # include -# include # include # include # include # include # include # include -# include -# include -# include -# include -# include -# include -# include -# include -# include -# include -# include -# include # include # include # include From c00861859adcb6b7b71a36bb63e957dda90a6d8b Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 20:41:33 +0200 Subject: [PATCH 5/8] fix: remove rarely used includes --- src/PrecompiledHeader.hpp | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/PrecompiledHeader.hpp b/src/PrecompiledHeader.hpp index fa0279218fa..a774d57d856 100644 --- a/src/PrecompiledHeader.hpp +++ b/src/PrecompiledHeader.hpp @@ -14,40 +14,29 @@ # include # include # include -# include # include # include # include # include -# include # include # include # include # include # include -# include -# include # include # include # include # include # include # include -# include -# include -# include # include -# include # include # include # include # include # include -# include -# include # include # include -# include # include # include # include @@ -60,7 +49,6 @@ # include # include # include -# include # include # include # include @@ -94,7 +82,6 @@ # include # include # include -# include # include # include # include From 0f0ec407b6c5a935fb71602702f690b876e3562d Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 21:17:23 +0200 Subject: [PATCH 6/8] ci: enable pch on some windows jobs ...except for one --- .github/workflows/build.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d412e2d2220..79f293f8144 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,6 +32,7 @@ jobs: plugins: [false] skip-artifact: [false] skip-crashpad: [false] + skip-pch: [false] clang-tidy-review: [false] include: # Ubuntu 20.04, Qt 5.12 @@ -41,6 +42,7 @@ jobs: plugins: false skip-artifact: false skip-crashpad: false + skip-pch: true clang-tidy-review: false # Ubuntu 22.04, Qt 5.15 - os: ubuntu-22.04 @@ -49,6 +51,7 @@ jobs: plugins: false skip-artifact: false skip-crashpad: false + skip-pch: true clang-tidy-review: true # Ubuntu 22.04, Qt 6.2.4 - tests LTO & plugins - os: ubuntu-22.04 @@ -57,6 +60,7 @@ jobs: plugins: true skip-artifact: false skip-crashpad: false + skip-pch: true clang-tidy-review: false # Test for disabling crashpad on Windows - os: windows-latest @@ -65,6 +69,7 @@ jobs: plugins: false skip-artifact: true skip-crashpad: true + skip-pch: true clang-tidy-review: false fail-fast: false @@ -183,13 +188,15 @@ jobs: - name: Build (Windows) if: startsWith(matrix.os, 'windows') shell: pwsh + env: + C2_USE_PCH: ${{ matrix.skip-pch && 'OFF' || 'ON' }} run: | cd build cmake ` -G"NMake Makefiles" ` -DCMAKE_BUILD_TYPE=RelWithDebInfo ` -DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" ` - -DUSE_PRECOMPILED_HEADERS=OFF ` + -DUSE_PRECOMPILED_HEADERS=${{ env.C2_USE_PCH }} ` -DBUILD_WITH_CRASHPAD="$Env:C2_ENABLE_CRASHPAD" ` -DCHATTERINO_LTO="$Env:C2_ENABLE_LTO" ` -DCHATTERINO_PLUGINS="$Env:C2_PLUGINS" ` From c0a24cfae0aee9ba6d10ad9a9d56d44a75d27473 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 21:45:57 +0200 Subject: [PATCH 7/8] fix: remove matrix opt and check in env block --- .github/workflows/build.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 79f293f8144..8f1fa9dfcb5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,7 +32,6 @@ jobs: plugins: [false] skip-artifact: [false] skip-crashpad: [false] - skip-pch: [false] clang-tidy-review: [false] include: # Ubuntu 20.04, Qt 5.12 @@ -42,7 +41,6 @@ jobs: plugins: false skip-artifact: false skip-crashpad: false - skip-pch: true clang-tidy-review: false # Ubuntu 22.04, Qt 5.15 - os: ubuntu-22.04 @@ -51,7 +49,6 @@ jobs: plugins: false skip-artifact: false skip-crashpad: false - skip-pch: true clang-tidy-review: true # Ubuntu 22.04, Qt 6.2.4 - tests LTO & plugins - os: ubuntu-22.04 @@ -60,7 +57,6 @@ jobs: plugins: true skip-artifact: false skip-crashpad: false - skip-pch: true clang-tidy-review: false # Test for disabling crashpad on Windows - os: windows-latest @@ -69,7 +65,6 @@ jobs: plugins: false skip-artifact: true skip-crashpad: true - skip-pch: true clang-tidy-review: false fail-fast: false @@ -189,7 +184,8 @@ jobs: if: startsWith(matrix.os, 'windows') shell: pwsh env: - C2_USE_PCH: ${{ matrix.skip-pch && 'OFF' || 'ON' }} + # Enable PCH when crashpad is enabled + C2_USE_PCH: ${{ matrix.skip-crashpad && 'OFF' || 'ON' }} run: | cd build cmake ` From 577970b00ac4518aa97e8740f1aaee5c75968d95 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Wed, 19 Jul 2023 21:48:50 +0200 Subject: [PATCH 8/8] fix: clarify Windows --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8f1fa9dfcb5..ea52aade5e0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -184,15 +184,15 @@ jobs: if: startsWith(matrix.os, 'windows') shell: pwsh env: - # Enable PCH when crashpad is enabled - C2_USE_PCH: ${{ matrix.skip-crashpad && 'OFF' || 'ON' }} + # Enable PCH on Windows when crashpad is enabled + C2_WINDOWS_USE_PCH: ${{ matrix.skip-crashpad && 'OFF' || 'ON' }} run: | cd build cmake ` -G"NMake Makefiles" ` -DCMAKE_BUILD_TYPE=RelWithDebInfo ` -DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" ` - -DUSE_PRECOMPILED_HEADERS=${{ env.C2_USE_PCH }} ` + -DUSE_PRECOMPILED_HEADERS=${{ env.C2_WINDOWS_USE_PCH }} ` -DBUILD_WITH_CRASHPAD="$Env:C2_ENABLE_CRASHPAD" ` -DCHATTERINO_LTO="$Env:C2_ENABLE_LTO" ` -DCHATTERINO_PLUGINS="$Env:C2_PLUGINS" `