From 04132ac6b703bbe191ce2cc5efe9a928e670f0c3 Mon Sep 17 00:00:00 2001 From: Zephyron Date: Sun, 21 Sep 2025 11:02:20 +1000 Subject: [PATCH 1/6] fix(ci): resolve submodule initialization failures in GitLab CI Signed-off-by: Zephyron --- .gitlab-ci.yml | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e1447e3ee..9df76ae2e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,7 +38,9 @@ build-linux: - echo 'fi' >> /usr/local/bin/shasum - chmod +x /usr/local/bin/shasum script: - - git submodule update --init --recursive + # Clean and reset submodules to handle any inconsistencies + - git submodule deinit --all --force || true + - git submodule update --init --recursive --force - mkdir -p build && cd build - cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=x86-64-v2 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti" -DCMAKE_CXX_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=x86-64-v2 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti -Wno-error -w" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--gc-sections -Wl,-O2 -Wl,--as-needed" -DSDL_PIPEWIRE=OFF -DCITRON_USE_BUNDLED_VCPKG=OFF -DUSE_DISCORD_PRESENCE=OFF -DBUNDLE_SPEEX=ON -DCITRON_USE_BUNDLED_FFMPEG=OFF -DCITRON_USE_QT_MULTIMEDIA=OFF -DCITRON_USE_QT_WEB_ENGINE=OFF - ninja @@ -102,7 +104,9 @@ build-linux-v3: - echo 'fi' >> /usr/local/bin/shasum - chmod +x /usr/local/bin/shasum script: - - git submodule update --init --recursive + # Clean and reset submodules to handle any inconsistencies + - git submodule deinit --all --force || true + - git submodule update --init --recursive --force - mkdir -p build && cd build - cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti" -DCMAKE_CXX_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti -Wno-error -w" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--gc-sections -Wl,-O2 -Wl,--as-needed" -DSDL_PIPEWIRE=OFF -DCITRON_USE_BUNDLED_VCPKG=OFF -DUSE_DISCORD_PRESENCE=OFF -DBUNDLE_SPEEX=ON -DCITRON_USE_BUNDLED_FFMPEG=OFF -DCITRON_USE_QT_MULTIMEDIA=OFF -DCITRON_USE_QT_WEB_ENGINE=OFF - ninja @@ -166,7 +170,9 @@ build-linux-steamdeck: - echo 'fi' >> /usr/local/bin/shasum - chmod +x /usr/local/bin/shasum script: - - git submodule update --init --recursive + # Clean and reset submodules to handle any inconsistencies + - git submodule deinit --all --force || true + - git submodule update --init --recursive --force - mkdir -p build && cd build - cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=znver2 -mtune=znver2 -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti" -DCMAKE_CXX_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=znver2 -mtune=znver2 -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti -Wno-error -w" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--gc-sections -Wl,-O2 -Wl,--as-needed" -DSDL_PIPEWIRE=OFF -DCITRON_USE_BUNDLED_VCPKG=OFF -DUSE_DISCORD_PRESENCE=OFF -DBUNDLE_SPEEX=ON -DCITRON_USE_BUNDLED_FFMPEG=OFF -DCITRON_USE_QT_MULTIMEDIA=OFF -DCITRON_USE_QT_WEB_ENGINE=OFF - ninja @@ -234,7 +240,9 @@ build-android: - unzip -q android-ndk-r26b-linux.zip - export ANDROID_NDK_HOME=$PWD/android-ndk-r26b script: - - git submodule update --init --recursive + # Clean and reset submodules to handle any inconsistencies + - git submodule deinit --all --force || true + - git submodule update --init --recursive --force - cmake -B build-android -S . -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=android-30 -DENABLE_QT=OFF -DENABLE_SDL2=OFF -DENABLE_WEB_SERVICE=OFF -DCITRON_USE_BUNDLED_VCPKG=ON -DCITRON_USE_BUNDLED_FFMPEG=ON -DANDROID_ARM_NEON=ON -DCITRON_ENABLE_LTO=ON - cmake --build build-android --config $BUILD_TYPE --parallel $CMAKE_BUILD_PARALLEL_LEVEL - cd src/android @@ -261,7 +269,9 @@ test-unit: - apt-get update -qq - apt-get install -y -qq build-essential cmake ninja-build git script: - - git submodule update --init --recursive + # Clean and reset submodules to handle any inconsistencies + - git submodule deinit --all --force || true + - git submodule update --init --recursive --force - cmake -B build-test -S . -DCMAKE_BUILD_TYPE=Debug -DCITRON_TESTS=ON -DENABLE_QT=OFF -DENABLE_SDL2=OFF -DENABLE_WEB_SERVICE=OFF - cmake --build build-test --config Debug --parallel $CMAKE_BUILD_PARALLEL_LEVEL - cd build-test From b585120025ef9f4396a0a73c11d186f36677e63c Mon Sep 17 00:00:00 2001 From: Zephyron Date: Sun, 21 Sep 2025 11:11:30 +1000 Subject: [PATCH 2/6] fix: add UpdateResult enum to updater dialog forward declarations Signed-off-by: Zephyron --- src/citron/updater/updater_dialog.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/citron/updater/updater_dialog.h b/src/citron/updater/updater_dialog.h index 3f02ee556..2ea96a822 100644 --- a/src/citron/updater/updater_dialog.h +++ b/src/citron/updater/updater_dialog.h @@ -18,7 +18,19 @@ // Forward declarations for non-Windows platforms namespace Updater { struct UpdateInfo; -class UpdaterService; +class UpdaterService { +public: + enum class UpdateResult { + Success, + Failed, + Cancelled, + NetworkError, + ExtractionError, + PermissionError, + InvalidArchive, + NoUpdateAvailable + }; +}; } #endif From a76c3e88086dfb4564bfd169facb425016db2ac8 Mon Sep 17 00:00:00 2001 From: Zephyron Date: Sun, 21 Sep 2025 11:33:26 +1000 Subject: [PATCH 3/6] fix: resolve UpdaterService redefinition error with conditional compilation Signed-off-by: Zephyron --- src/citron/updater/updater_dialog.cpp | 8 ++++++++ src/citron/updater/updater_dialog.h | 24 ++++++++++-------------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/src/citron/updater/updater_dialog.cpp b/src/citron/updater/updater_dialog.cpp index 87eb4cc48..42a93926d 100644 --- a/src/citron/updater/updater_dialog.cpp +++ b/src/citron/updater/updater_dialog.cpp @@ -374,7 +374,11 @@ void UpdaterDialog::ShowUpdateChecking() {} void UpdaterDialog::OnUpdateCheckCompleted(bool, const Updater::UpdateInfo&) {} void UpdaterDialog::OnUpdateDownloadProgress(int, qint64, qint64) {} void UpdaterDialog::OnUpdateInstallProgress(int, const QString&) {} +#ifdef _WIN32 void UpdaterDialog::OnUpdateCompleted(Updater::UpdaterService::UpdateResult, const QString&) {} +#else +void UpdaterDialog::OnUpdateCompleted(int, const QString&) {} +#endif void UpdaterDialog::OnUpdateError(const QString&) {} void UpdaterDialog::OnDownloadButtonClicked() {} void UpdaterDialog::OnCancelButtonClicked() {} @@ -391,7 +395,11 @@ void UpdaterDialog::ShowErrorState() {} void UpdaterDialog::UpdateDownloadProgress(int, qint64, qint64) {} void UpdaterDialog::UpdateInstallProgress(int, const QString&) {} QString UpdaterDialog::FormatBytes(qint64) const { return QString(); } +#ifdef _WIN32 QString UpdaterDialog::GetUpdateMessage(Updater::UpdaterService::UpdateResult) const { return QString(); } +#else +QString UpdaterDialog::GetUpdateMessage(int) const { return QString(); } +#endif #include "updater_dialog.moc" diff --git a/src/citron/updater/updater_dialog.h b/src/citron/updater/updater_dialog.h index 2ea96a822..48489208e 100644 --- a/src/citron/updater/updater_dialog.h +++ b/src/citron/updater/updater_dialog.h @@ -6,31 +6,19 @@ #include #include -#ifdef _WIN32 #include #include #include #include #include +#ifdef _WIN32 #include "citron/updater/updater_service.h" #else // Forward declarations for non-Windows platforms namespace Updater { struct UpdateInfo; -class UpdaterService { -public: - enum class UpdateResult { - Success, - Failed, - Cancelled, - NetworkError, - ExtractionError, - PermissionError, - InvalidArchive, - NoUpdateAvailable - }; -}; +class UpdaterService; } #endif @@ -58,7 +46,11 @@ private slots: void OnUpdateCheckCompleted(bool has_update, const Updater::UpdateInfo& update_info); void OnUpdateDownloadProgress(int percentage, qint64 bytes_received, qint64 bytes_total); void OnUpdateInstallProgress(int percentage, const QString& current_file); +#ifdef _WIN32 void OnUpdateCompleted(Updater::UpdaterService::UpdateResult result, const QString& message); +#else + void OnUpdateCompleted(int result, const QString& message); +#endif void OnUpdateError(const QString& error_message); void OnDownloadButtonClicked(); @@ -80,7 +72,11 @@ private: void UpdateInstallProgress(int percentage, const QString& current_file); QString FormatBytes(qint64 bytes) const; +#ifdef _WIN32 QString GetUpdateMessage(Updater::UpdaterService::UpdateResult result) const; +#else + QString GetUpdateMessage(int result) const; +#endif private: #ifdef _WIN32 From 0c4fc23dcd9b5819e7c92cc10cd119d9e99fbf9a Mon Sep 17 00:00:00 2001 From: Zephyron Date: Sun, 21 Sep 2025 11:45:41 +1000 Subject: [PATCH 4/6] fix: use gzip compression for CI artifacts to avoid size limit Signed-off-by: Zephyron --- .gitlab-ci.yml | 48 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 33 insertions(+), 15 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9df76ae2e..67eec8b74 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -68,15 +68,21 @@ build-linux: - echo "Total artifact size:" - du -sh citron.AppImage build/bin/citron 2>/dev/null || echo "Cannot measure artifact sizes" - echo "Compressing AppImage for upload..." - - xz -9 -c citron.AppImage > citron.AppImage.xz - - ls -la citron.AppImage.xz - - du -h citron.AppImage.xz - - echo "AppImage compressed with xz successfully" + - gzip -9 -c citron.AppImage > citron.AppImage.gz + - ls -la citron.AppImage.gz + - du -h citron.AppImage.gz + - echo "AppImage compressed with gzip successfully" + # Also create a smaller binary-only archive for fallback + - tar -czf citron-binary.tar.gz build/bin/ + - ls -la citron-binary.tar.gz + - du -h citron-binary.tar.gz artifacts: paths: - - citron.AppImage.xz + - citron.AppImage.gz + - citron-binary.tar.gz expire_in: 1 week when: always + max_size: 200MB only: - main - master @@ -134,15 +140,21 @@ build-linux-v3: - echo "Total artifact size:" - du -sh citron.AppImage build/bin/citron 2>/dev/null || echo "Cannot measure artifact sizes" - echo "Compressing AppImage for upload..." - - xz -9 -c citron.AppImage > citron.AppImage.xz - - ls -la citron.AppImage.xz - - du -h citron.AppImage.xz - - echo "AppImage compressed with xz successfully" + - gzip -9 -c citron.AppImage > citron.AppImage.gz + - ls -la citron.AppImage.gz + - du -h citron.AppImage.gz + - echo "AppImage compressed with gzip successfully" + # Also create a smaller binary-only archive for fallback + - tar -czf citron-binary.tar.gz build/bin/ + - ls -la citron-binary.tar.gz + - du -h citron-binary.tar.gz artifacts: paths: - - citron.AppImage.xz + - citron.AppImage.gz + - citron-binary.tar.gz expire_in: 1 week when: always + max_size: 200MB only: - main - master @@ -200,15 +212,21 @@ build-linux-steamdeck: - echo "Total artifact size:" - du -sh citron.AppImage build/bin/citron 2>/dev/null || echo "Cannot measure artifact sizes" - echo "Compressing AppImage for upload..." - - xz -9 -c citron.AppImage > citron.AppImage.xz - - ls -la citron.AppImage.xz - - du -h citron.AppImage.xz - - echo "AppImage compressed with xz successfully" + - gzip -9 -c citron.AppImage > citron.AppImage.gz + - ls -la citron.AppImage.gz + - du -h citron.AppImage.gz + - echo "AppImage compressed with gzip successfully" + # Also create a smaller binary-only archive for fallback + - tar -czf citron-binary.tar.gz build/bin/ + - ls -la citron-binary.tar.gz + - du -h citron-binary.tar.gz artifacts: paths: - - citron.AppImage.xz + - citron.AppImage.gz + - citron-binary.tar.gz expire_in: 1 week when: always + max_size: 200MB only: - main - master From ce73fce35ed63f5a8945e71c66d5bd571458d932 Mon Sep 17 00:00:00 2001 From: Zephyron Date: Sun, 21 Sep 2025 11:47:04 +1000 Subject: [PATCH 5/6] ci: Remove max_size Signed-off-by: Zephyron --- .gitlab-ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 67eec8b74..1d7e618c2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -82,7 +82,6 @@ build-linux: - citron-binary.tar.gz expire_in: 1 week when: always - max_size: 200MB only: - main - master @@ -154,7 +153,6 @@ build-linux-v3: - citron-binary.tar.gz expire_in: 1 week when: always - max_size: 200MB only: - main - master @@ -226,7 +224,6 @@ build-linux-steamdeck: - citron-binary.tar.gz expire_in: 1 week when: always - max_size: 200MB only: - main - master From 392058e7d958c9c5335a90f875a515726728b830 Mon Sep 17 00:00:00 2001 From: "Boss.sfc" Date: Sun, 21 Sep 2025 09:16:35 +0700 Subject: [PATCH 6/6] ci: fix march in cachyos v3 Signed-off-by: Boss.sfc --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1d7e618c2..bb3c27efd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -113,7 +113,7 @@ build-linux-v3: - git submodule deinit --all --force || true - git submodule update --init --recursive --force - mkdir -p build && cd build - - cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti" -DCMAKE_CXX_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti -Wno-error -w" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--gc-sections -Wl,-O2 -Wl,--as-needed" -DSDL_PIPEWIRE=OFF -DCITRON_USE_BUNDLED_VCPKG=OFF -DUSE_DISCORD_PRESENCE=OFF -DBUNDLE_SPEEX=ON -DCITRON_USE_BUNDLED_FFMPEG=OFF -DCITRON_USE_QT_MULTIMEDIA=OFF -DCITRON_USE_QT_WEB_ENGINE=OFF + - cmake .. -G Ninja -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=x86-64-v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti" -DCMAKE_CXX_FLAGS="-O3 -ffast-math -funsafe-math-optimizations -fno-math-errno -fno-trapping-math -freciprocal-math -ffp-contract=fast -fassociative-math -fno-rounding-math -fno-signaling-nans -march=x86-64-v3 -mtune=native -fomit-frame-pointer -fstrict-aliasing -frename-registers -fno-plt -funroll-loops -floop-interchange -floop-strip-mine -floop-block -fprefetch-loop-arrays -fpredictive-commoning -ftree-vectorize -fsplit-paths -finline-functions -finline-limit=1000 -finline-functions-called-once -fgcse-sm -fgcse-las -freorder-blocks-and-partition -fipa-pta -fipa-cp-clone -fwhole-program -flto=auto -fuse-linker-plugin -fvisibility=hidden -fdata-sections -ffunction-sections -fno-semantic-interposition -fopenmp -fexceptions -frtti -Wno-error -w" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--gc-sections -Wl,-O2 -Wl,--as-needed" -DSDL_PIPEWIRE=OFF -DCITRON_USE_BUNDLED_VCPKG=OFF -DUSE_DISCORD_PRESENCE=OFF -DBUNDLE_SPEEX=ON -DCITRON_USE_BUNDLED_FFMPEG=OFF -DCITRON_USE_QT_MULTIMEDIA=OFF -DCITRON_USE_QT_WEB_ENGINE=OFF - ninja - cd .. - echo "Build completed, checking for executables..."