From 385a22a6fe5a62672c8788c9d675d648c54df3f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:24:40 +0200 Subject: [PATCH 01/13] Update libnode to 22.23.1 and fix RelWithDebInfo builds. --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 46d5eecb627..a75d5a6cc1d 100644 --- a/conanfile.py +++ b/conanfile.py @@ -65,7 +65,7 @@ def requirements(self): self.requires("gli/cci.20210515") # NOTE: not maintained for 4 years self.requires("glslang/1.4.350.0") self.requires("liblo/0.35@overte/stable") # For hifiOSC - self.requires("libnode/22.22.3@overte/stable#12c9d377b2df64060e312a93bf14592f") + self.requires("libnode/22.23.1@overte/stable#d73b93ec99eae5b0c1d85296e0453d8e") self.requires("nlohmann_json/3.11.2") self.requires("nvidia-texture-tools/2023.01@overte/stable#bb4a28e5438f69332299cc23b770fc07") self.requires("onetbb/2021.10.0") From dee94c50593fc481b34f4eaa468e0902902aae52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:24:57 +0200 Subject: [PATCH 02/13] Fix usage of conan-relwithdebinfo in CLion. --- .idea/cmake.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.idea/cmake.xml b/.idea/cmake.xml index 28ac684d530..7ef1b58b772 100644 --- a/.idea/cmake.xml +++ b/.idea/cmake.xml @@ -3,21 +3,21 @@ - + - + - + - + - + From d58689b4d1283bb720809bcc4e30331a84107d8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:26:39 +0200 Subject: [PATCH 03/13] Switch to RelWithDebInfo builds. --- .github/actions/setup-windows/action.yml | 2 +- .github/workflows/build.yml | 10 +++++----- BUILD_LINUX.md | 8 ++++---- BUILD_WIN.md | 6 +++--- winprepareVS22.bat | 4 ++-- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/actions/setup-windows/action.yml b/.github/actions/setup-windows/action.yml index 4a78138ce83..101bd2e4dcc 100644 --- a/.github/actions/setup-windows/action.yml +++ b/.github/actions/setup-windows/action.yml @@ -7,7 +7,7 @@ runs: shell: bash run: | if [[ "${{ matrix.os }}" = "Windows 2022" ]]; then - echo "CONAN_PROFILE='./tools/conan-profiles/vs-22-release'" >> $GITHUB_ENV + echo "CONAN_PROFILE='./tools/conan-profiles/vs-22-relwithdebinfo'" >> $GITHUB_ENV else echo "Not sure which Conan profile to use. Exiting." && exit 1 fi diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7802c54e580..a209844bbd1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -68,7 +68,7 @@ jobs: # We use a third-party runner hosted by depot.dev to avoid timing out in case Qt has to be built from source. runner: depot-windows-2022-16 # Which GitHub Actions Runner to use. When using `image` this just needs to run the build container. arch: x86_64 - cmake_build_type: Release + cmake_build_type: RelWithDebInfo qt_source: source # Which Qt Conan package to use. `system`, `source`, or `aqt`. rendering_backend: OpenGL # Which OVERTE_RENDERING_BACKEND to build. - id: ubuntu-opengl-amd64 @@ -76,7 +76,7 @@ jobs: image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 # Container image used for building. Built from /tools/ci-script/linux-ci/Dockerfile_x runner: depot-ubuntu-24.04-16 arch: amd64 - cmake_build_type: Release + cmake_build_type: RelWithDebInfo qt_source: source rendering_backend: OpenGL - id: ubuntu-vulkan-amd64 @@ -84,7 +84,7 @@ jobs: image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 runner: depot-ubuntu-24.04-16 arch: amd64 - cmake_build_type: Release + cmake_build_type: RelWithDebInfo qt_source: source rendering_backend: Vulkan - id: ubuntu-opengl-aarch64 @@ -92,7 +92,7 @@ jobs: image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-aarch64 runner: depot-ubuntu-24.04-arm-16 arch: aarch64 - cmake_build_type: Release + cmake_build_type: RelWithDebInfo qt_source: source rendering_backend: OpenGL - id: ubuntu-vulkan-aarch64 @@ -100,7 +100,7 @@ jobs: image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-aarch64 runner: depot-ubuntu-24.04-arm-16 arch: aarch64 - cmake_build_type: Release + cmake_build_type: RelWithDebInfo qt_source: source rendering_backend: Vulkan - id: codechecker diff --git a/BUILD_LINUX.md b/BUILD_LINUX.md index 772fdf2ee9e..b2dc61609b5 100644 --- a/BUILD_LINUX.md +++ b/BUILD_LINUX.md @@ -7,7 +7,7 @@ SPDX-License-Identifier: Apache-2.0 # Build Linux -*Last Updated on 2026-04-16* +*Last Updated on 2026-07-17* Please read the [general build guide](BUILD.md) for information on dependencies required for all platforms. Only Linux specific instructions are found in this file. @@ -119,10 +119,10 @@ If you don't do this, Conan will still complain if it notices system packages be Install the dependencies with conan ```bash cd overte -conan install . -s build_type=Release -b missing -pr:a=tools/conan-profiles/linux -of build -c tools.cmake.cmaketoolchain:generator="Ninja Multi-Config" +conan install . -s build_type=RelWithDebInfo -b missing -pr:a=tools/conan-profiles/linux -of build -c tools.cmake.cmaketoolchain:generator="Ninja Multi-Config" ``` -If you want to build Debug or RelWithDebInfo versions, change the `build_type` to `Debug` or `RelWithDebInfo` and run the command again. E.g.: +If you want to build Debug or Release versions, change the `build_type` to `Debug` or `Release` and run the command again. E.g.: ```bash conan install . -s build_type=Debug -b missing -pr:a=tools/conan-profiles/linux -of build -c tools.cmake.cmaketoolchain:generator="Ninja Multi-Config" ``` @@ -136,7 +136,7 @@ cmake --preset conan-default To compile the Domain server: ```bash -cmake --build --preset conan-release --target domain-server assignment-client +cmake --build --preset conan-relwithdebinfo --target domain-server assignment-client ``` *Note: For a server, it is not necessary to compile the Interface.* diff --git a/BUILD_WIN.md b/BUILD_WIN.md index e4d00d2f522..99fd96b8b75 100644 --- a/BUILD_WIN.md +++ b/BUILD_WIN.md @@ -7,7 +7,7 @@ SPDX-License-Identifier: Apache-2.0 # Build Windows -*Last Updated on 2025-08-01* +*Last Updated on 2026-07-15* This is a stand-alone guide for creating your first Overte build for Windows 64-bit. @@ -97,7 +97,7 @@ Run the Command Prompt from Start and run the following commands: ```bash cd "%OVERTE_DIR%" -conan install . -b missing -pr=tools/conan-profiles/vs-22-release -of build +conan install . -b missing -pr=tools/conan-profiles/vs-22-relwithdebinfo -of build conan install . -b missing -pr=tools/conan-profiles/vs-22-debug -of build cmake --preset conan-default ``` @@ -188,4 +188,4 @@ To fix this, install "C++ vXX.XX (...) ATL (...)" replacing XX.XX with the first ### `warning : cannot resolve item 'api-ms-win-(...)-l1-1-0.dll'` You may be able to ignore this warning. My assumption is that the MSVC version used is incompatible with the currently installed Windows SDK, -and Overte will just use the newer SDK during runtime. \ No newline at end of file +and Overte will just use the newer SDK during runtime. diff --git a/winprepareVS22.bat b/winprepareVS22.bat index 69d31e58004..b0eea5c8437 100644 --- a/winprepareVS22.bat +++ b/winprepareVS22.bat @@ -1,7 +1,7 @@ ECHO Running conan -conan install . -b missing -pr=tools/conan-profiles/vs-22-release -of build +conan install . -b missing -pr=tools/conan-profiles/vs-22-relwithdebinfo -of build conan install . -b missing -pr=tools/conan-profiles/vs-22-debug -of build -conan cache clean "*" -sbd +conan cache clean "*" -sbdt ECHO Running cmake cmake --preset conan-default ECHO CMake has finished From 38015c0a246ee65684b9fea793c6e4ad832a038f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:26:47 +0200 Subject: [PATCH 04/13] Fix maybe-uninitialized warning on GCC-11 with RelWithDebInfo. --- libraries/gpu/src/gpu/Texture_ktx.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/gpu/src/gpu/Texture_ktx.cpp b/libraries/gpu/src/gpu/Texture_ktx.cpp index 9ddf41e26e7..1032df719a7 100644 --- a/libraries/gpu/src/gpu/Texture_ktx.cpp +++ b/libraries/gpu/src/gpu/Texture_ktx.cpp @@ -594,7 +594,7 @@ std::pair Texture::build(const ktx::KTXDescriptor& d // Assing the mips availables texture->setStoredMipFormat(mipFormat); - IrradianceKTXPayload irradianceKtxKeyValue; + IrradianceKTXPayload irradianceKtxKeyValue{}; if (IrradianceKTXPayload::findInKeyValues(descriptor.keyValues, irradianceKtxKeyValue)) { texture->overrideIrradiance(std::make_shared(irradianceKtxKeyValue._irradianceSH)); } From 7e275e41c8e2e0c854b273dd40b968141a9817aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:27:27 +0200 Subject: [PATCH 05/13] Remove outdated Visual Studio 2019 files. --- tools/conan-profiles/vs-19-debug | 14 -------------- tools/conan-profiles/vs-19-debug-ninja | 16 ---------------- tools/conan-profiles/vs-19-release | 14 -------------- tools/conan-profiles/vs-19-release-ninja | 16 ---------------- tools/conan-profiles/vs-19-relwithdebinfo | 16 ---------------- winprepareVS19.bat | 8 -------- 6 files changed, 84 deletions(-) delete mode 100644 tools/conan-profiles/vs-19-debug delete mode 100644 tools/conan-profiles/vs-19-debug-ninja delete mode 100644 tools/conan-profiles/vs-19-release delete mode 100644 tools/conan-profiles/vs-19-release-ninja delete mode 100644 tools/conan-profiles/vs-19-relwithdebinfo delete mode 100644 winprepareVS19.bat diff --git a/tools/conan-profiles/vs-19-debug b/tools/conan-profiles/vs-19-debug deleted file mode 100644 index 7e2a340e70e..00000000000 --- a/tools/conan-profiles/vs-19-debug +++ /dev/null @@ -1,14 +0,0 @@ -[settings] -os=Windows -arch=x86_64 -compiler=msvc -# Both libnode and webrtc-audio-processing require C++20 -compiler.cppstd=20 -compiler.version=192 -compiler.runtime=dynamic -compiler.runtime_type=Debug -build_type=Debug -[options] -Overte/*:qt_source=source -# Required for building oneTBB. -hwloc/*:shared=True diff --git a/tools/conan-profiles/vs-19-debug-ninja b/tools/conan-profiles/vs-19-debug-ninja deleted file mode 100644 index 46df1bcc1e7..00000000000 --- a/tools/conan-profiles/vs-19-debug-ninja +++ /dev/null @@ -1,16 +0,0 @@ -[settings] -os=Windows -arch=x86_64 -compiler=msvc -# Both libnode and webrtc-audio-processing require C++20 -compiler.cppstd=20 -compiler.version=192 -compiler.runtime=dynamic -compiler.runtime_type=Debug -build_type=Debug -[conf] -tools.cmake.cmaketoolchain:generator=Ninja -[options] -Overte/*:qt_source=source -# Required for building oneTBB. -hwloc/*:shared=True diff --git a/tools/conan-profiles/vs-19-release b/tools/conan-profiles/vs-19-release deleted file mode 100644 index a7bce7c6cc8..00000000000 --- a/tools/conan-profiles/vs-19-release +++ /dev/null @@ -1,14 +0,0 @@ -[settings] -os=Windows -arch=x86_64 -compiler=msvc -# Both libnode and webrtc-audio-processing require C++20 -compiler.cppstd=20 -compiler.version=192 -compiler.runtime=dynamic -compiler.runtime_type=Release -build_type=Release -[options] -Overte/*:qt_source=source -# Required for building oneTBB. -hwloc/*:shared=True diff --git a/tools/conan-profiles/vs-19-release-ninja b/tools/conan-profiles/vs-19-release-ninja deleted file mode 100644 index da6a90bda23..00000000000 --- a/tools/conan-profiles/vs-19-release-ninja +++ /dev/null @@ -1,16 +0,0 @@ -[settings] -os=Windows -arch=x86_64 -compiler=msvc -# Both libnode and webrtc-audio-processing require C++20 -compiler.cppstd=20 -compiler.version=192 -compiler.runtime=dynamic -compiler.runtime_type=Release -build_type=Release -[conf] -tools.cmake.cmaketoolchain:generator=Ninja -[options] -Overte/*:qt_source=source -# Required for building oneTBB. -hwloc/*:shared=True diff --git a/tools/conan-profiles/vs-19-relwithdebinfo b/tools/conan-profiles/vs-19-relwithdebinfo deleted file mode 100644 index c89fd597d52..00000000000 --- a/tools/conan-profiles/vs-19-relwithdebinfo +++ /dev/null @@ -1,16 +0,0 @@ -[settings] -os=Windows -os_build=Windows -arch=x86_64 -arch_build=x86_64 -compiler=Visual Studio -# Both libnode and webrtc-audio-processing require C++20 -compiler.cppstd=20 -compiler.version=16 -build_type=Release -# libnode's build system seems to only support Release and Debug on Windows. RelWithDebInfo is not a valid option. -libnode/*:build_type=Release -[options] -Overte/*:qt_source=source -# Required for building oneTBB. -hwloc/*:shared=True diff --git a/winprepareVS19.bat b/winprepareVS19.bat deleted file mode 100644 index d0c68112933..00000000000 --- a/winprepareVS19.bat +++ /dev/null @@ -1,8 +0,0 @@ -ECHO Running conan -conan install . -b missing -pr=tools/conan-profiles/vs-19-release -of build -conan install . -b missing -pr=tools/conan-profiles/vs-19-debug -of build -conan cache clean "*" -sbd -ECHO Running cmake -cmake --preset conan-default -ECHO CMake has finished -pause From 47ae941a90864e6e463e79b002086f6189c08cab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Fri, 17 Jul 2026 19:28:08 +0200 Subject: [PATCH 06/13] Upload debugging symbols to Sentry and enable crash reporting. --- .../sentry-debugging-symbols/action.yml | 14 +++++++++++ .github/actions/setup-macos/action.yml | 4 +++ .github/actions/setup-windows/action.yml | 4 +++ .github/workflows/build.yml | 25 +++++++++++++++---- .../linux-ci/Dockerfile_build_ubuntu-22.04 | 10 ++++++-- 5 files changed, 50 insertions(+), 7 deletions(-) create mode 100644 .github/actions/sentry-debugging-symbols/action.yml diff --git a/.github/actions/sentry-debugging-symbols/action.yml b/.github/actions/sentry-debugging-symbols/action.yml new file mode 100644 index 00000000000..e9273146855 --- /dev/null +++ b/.github/actions/sentry-debugging-symbols/action.yml @@ -0,0 +1,14 @@ +name: "Upload debugging symbols to Sentry" +description: | + Uses Sentry-cli to upload debugging symbols to Sentry. +inputs: + SENTRY_DEBUG_TOKEN: + required: true + description: "Access token for uploading debugging symbols to Sentry." +runs: + using: "composite" + steps: + - name: Upload debugging symbols to Sentry + shell: bash + run: | + sentry-cli debug-files upload -o overte -p overte --include-sources --wait-for 120 --auth-token ${{ inputs.SENTRY_DEBUG_TOKEN }} build/ diff --git a/.github/actions/setup-macos/action.yml b/.github/actions/setup-macos/action.yml index cb47192b890..854f4b3ad3a 100644 --- a/.github/actions/setup-macos/action.yml +++ b/.github/actions/setup-macos/action.yml @@ -22,3 +22,7 @@ runs: shell: bash run: | python3 -m pip install boto3 PyGithub conan html5lib setuptools + + - name: Install Sentry-cli + shell: bash + run: curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="3.6.0" sh diff --git a/.github/actions/setup-windows/action.yml b/.github/actions/setup-windows/action.yml index 101bd2e4dcc..537d3dc09d4 100644 --- a/.github/actions/setup-windows/action.yml +++ b/.github/actions/setup-windows/action.yml @@ -66,3 +66,7 @@ runs: echo "Printing Conan global.conf…" && cat ${CONAN_HOME}/global.conf echo "Printing Conan remotes.json…" && cat ${CONAN_HOME}/remotes.json echo "Printing Conan source_credentials.json…" && cat ${CONAN_HOME}/source_credentials.json + + - name: Install Sentry-cli + shell: bash + run: curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="3.6.0" sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a209844bbd1..751c9e39b42 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -73,7 +73,7 @@ jobs: rendering_backend: OpenGL # Which OVERTE_RENDERING_BACKEND to build. - id: ubuntu-opengl-amd64 os: Ubuntu 22.04 - image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 # Container image used for building. Built from /tools/ci-script/linux-ci/Dockerfile_x + image: docker.io/overte/overte-full-build:2026-07-17-ubuntu-22.04-amd64 # Container image used for building. Built from /tools/ci-script/linux-ci/Dockerfile_x runner: depot-ubuntu-24.04-16 arch: amd64 cmake_build_type: RelWithDebInfo @@ -81,7 +81,7 @@ jobs: rendering_backend: OpenGL - id: ubuntu-vulkan-amd64 os: Ubuntu 22.04 - image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 + image: docker.io/overte/overte-full-build:2026-07-17-ubuntu-22.04-amd64 runner: depot-ubuntu-24.04-16 arch: amd64 cmake_build_type: RelWithDebInfo @@ -89,7 +89,7 @@ jobs: rendering_backend: Vulkan - id: ubuntu-opengl-aarch64 os: Ubuntu 22.04 - image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-aarch64 + image: docker.io/overte/overte-full-build:2026-07-17-ubuntu-22.04-aarch64 runner: depot-ubuntu-24.04-arm-16 arch: aarch64 cmake_build_type: RelWithDebInfo @@ -97,7 +97,7 @@ jobs: rendering_backend: OpenGL - id: ubuntu-vulkan-aarch64 os: Ubuntu 22.04 - image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-aarch64 + image: docker.io/overte/overte-full-build:2026-07-17-ubuntu-22.04-aarch64 runner: depot-ubuntu-24.04-arm-16 arch: aarch64 cmake_build_type: RelWithDebInfo @@ -105,7 +105,7 @@ jobs: rendering_backend: Vulkan - id: codechecker os: Ubuntu 22.04 - image: docker.io/overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 + image: docker.io/overte/overte-full-build:2026-07-17-ubuntu-22.04-amd64 # depot-ubuntu-24.04-16 runs out of disk space when building debug Qt. runner: depot-ubuntu-24.04-32 arch: amd64 @@ -152,10 +152,15 @@ jobs: echo "OVERTE_RELEASE_TYPE=PR" >> $GITHUB_ENV echo "OVERTE_RELEASE_NUMBER=${{ github.event.number }}" >> $GITHUB_ENV echo "GIT_COMMIT_SHORT=${PULL_REQUEST_SHA::7}" >> $GITHUB_ENV + echo "OVERTE_BACKTRACE_URL=https://o4504831972343808.ingest.sentry.io/api/4504832427950080/minidump/?sentry_key=f511de295975461b8f92a36f4a4a4f32" >> $GITHUB_ENV + echo "OVERTE_BACKTRACE_TOKEN=PR_${{ github.event.number }}_${PULL_REQUEST_SHA::7}" >> $GITHUB_ENV + elif [ "${{github.event_name}}" = "push" ] && [ "${{github.event.action}}" == "tag" ]; then echo "OVERTE_RELEASE_TYPE=RELEASE" >> $GITHUB_ENV echo "OVERTE_RELEASE_NUMBER=${{ github.ref_name }}" >> $GITHUB_ENV echo "GIT_COMMIT_SHORT=${GITHUB_SHA::7}" >> $GITHUB_ENV + echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" + echo "OVERTE_BACKTRACE_TOKEN=${{ github.ref_name }}_${GITHUB_SHA::7}" >> $GITHUB_ENV if [[ "${{ github.ref_name }}" == *"rc"* ]]; then # release candidate # The uploader already creates a subfolder for each RELEASE_NUMBER. echo "UPLOAD_PREFIX=build/overte/release-candidate/" >> $GITHUB_ENV @@ -167,6 +172,8 @@ jobs: # Nightlies ignore OVERTE_RELEASE_NUMBER and instead use the build date. echo "OVERTE_RELEASE_NUMBER=''" >> $GITHUB_ENV echo "GIT_COMMIT_SHORT=${GITHUB_SHA::7}" >> $GITHUB_ENV + echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" + echo "OVERTE_BACKTRACE_TOKEN=Nightly-$(date +%Y-%m-%d)_${GITHUB_SHA::7}" >> $GITHUB_ENV else echo "Unexpected Action event! Failing…" exit 1; @@ -318,6 +325,14 @@ jobs: shell: bash run: cmake --build --target packaged-server-console --preset conan-${CMAKE_BUILD_TYPE,,} + - name: Upload debugging symbols to Sentry + # We don't have access to the access token on Pull Request builds. + if: github.event_name != 'pull_request' + continue-on-error: true + uses: ./.github/actions/sentry-debugging-symbols + with: + SENTRY_DEBUG_TOKEN: ${{ secrets.SENTRY_DEBUG_UPLOAD_TOKEN }} + - name: Build installer shell: bash run: | diff --git a/tools/ci-scripts/linux-ci/Dockerfile_build_ubuntu-22.04 b/tools/ci-scripts/linux-ci/Dockerfile_build_ubuntu-22.04 index 760759ba5c9..1d2c186d45a 100644 --- a/tools/ci-scripts/linux-ci/Dockerfile_build_ubuntu-22.04 +++ b/tools/ci-scripts/linux-ci/Dockerfile_build_ubuntu-22.04 @@ -4,7 +4,7 @@ # SPDX-License-Identifier: Apache-2.0 # Docker file for building Overte -# Example build: docker build --no-cache --progress=plain -t overte/overte-full-build:2026-06-21-ubuntu-22.04-amd64 -f Dockerfile_build_ubuntu-22.04 . +# Example build: docker build --no-cache --progress=plain -t overte/overte-full-build:2026-07-17-ubuntu-22.04-amd64 -f Dockerfile_build_ubuntu-22.04 . FROM ubuntu:22.04 LABEL maintainer="Julian Groß (julian.gro@overte.org)" LABEL description="Development image for full Overte builds" @@ -152,7 +152,7 @@ if [ $(uname -m) = "x86_64" ]; then # ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: '/tmp/tmpz4phh0l0/output.json' pip3 install --upgrade pip # The CodeChecker versions needs to be the same as requested by the CodeChecker-Action. - pip3 install codechecker==6.28.0 + pip3 install codechecker==6.28.2 # Get new CppCheck, instead of Ubuntu's outdated version. wget -O cppcheck.tar.gz https://github.com/cppcheck-opensource/cppcheck/archive/refs/tags/2.21.0.tar.gz @@ -178,6 +178,12 @@ else fi EOF +# +# Sentry +# +# Install Sentry-cli for uploading debugging symbols. +RUN curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="3.6.0" sh + # # Platform specific build variables # From 0e9a015acb971eaa2fd92bc5f568d22628ed33df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Wed, 22 Jul 2026 15:15:57 +0200 Subject: [PATCH 07/13] Fix backtrace token and backtrace URL not being applied. --- .github/workflows/build.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 751c9e39b42..a095387692c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -159,7 +159,7 @@ jobs: echo "OVERTE_RELEASE_TYPE=RELEASE" >> $GITHUB_ENV echo "OVERTE_RELEASE_NUMBER=${{ github.ref_name }}" >> $GITHUB_ENV echo "GIT_COMMIT_SHORT=${GITHUB_SHA::7}" >> $GITHUB_ENV - echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" + echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" >> $GITHUB_ENV echo "OVERTE_BACKTRACE_TOKEN=${{ github.ref_name }}_${GITHUB_SHA::7}" >> $GITHUB_ENV if [[ "${{ github.ref_name }}" == *"rc"* ]]; then # release candidate # The uploader already creates a subfolder for each RELEASE_NUMBER. @@ -172,7 +172,7 @@ jobs: # Nightlies ignore OVERTE_RELEASE_NUMBER and instead use the build date. echo "OVERTE_RELEASE_NUMBER=''" >> $GITHUB_ENV echo "GIT_COMMIT_SHORT=${GITHUB_SHA::7}" >> $GITHUB_ENV - echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" + echo "OVERTE_BACKTRACE_URL=${{ secrets.SENTRY_MINIDUMP_ENDPOINT }}" >> $GITHUB_ENV echo "OVERTE_BACKTRACE_TOKEN=Nightly-$(date +%Y-%m-%d)_${GITHUB_SHA::7}" >> $GITHUB_ENV else echo "Unexpected Action event! Failing…" @@ -250,9 +250,9 @@ jobs: shell: bash run: | if [[ "${{ matrix.os }}" =~ "Windows" ]]; then - cmake --preset conan-default -DOVERTE_RENDERING_BACKEND=${{ matrix.rendering_backend }} -DOVERTE_RELEASE_NUMBER=$OVERTE_RELEASE_NUMBER -DOVERTE_GIT_COMMIT_SHORT=$GIT_COMMIT_SHORT -DOVERTE_RELEASE_TYPE=$OVERTE_RELEASE_TYPE $CMAKE_EXTRA + cmake --preset conan-default -DOVERTE_RENDERING_BACKEND=${{ matrix.rendering_backend }} -DOVERTE_RELEASE_NUMBER=$OVERTE_RELEASE_NUMBER -DOVERTE_GIT_COMMIT_SHORT=$GIT_COMMIT_SHORT -DOVERTE_RELEASE_TYPE=$OVERTE_RELEASE_TYPE -DOVERTE_BACKTRACE_URL=$OVERTE_BACKTRACE_URL -DOVERTE_BACKTRACE_TOKEN=$OVERTE_BACKTRACE_TOKEN $CMAKE_EXTRA else - cmake --preset conan-${CMAKE_BUILD_TYPE,,} -DOVERTE_RENDERING_BACKEND=${{ matrix.rendering_backend }} -DOVERTE_RELEASE_NUMBER=$OVERTE_RELEASE_NUMBER -DOVERTE_GIT_COMMIT_SHORT=$GIT_COMMIT_SHORT -DOVERTE_RELEASE_TYPE=$OVERTE_RELEASE_TYPE $CMAKE_EXTRA + cmake --preset conan-${CMAKE_BUILD_TYPE,,} -DOVERTE_RENDERING_BACKEND=${{ matrix.rendering_backend }} -DOVERTE_RELEASE_NUMBER=$OVERTE_RELEASE_NUMBER -DOVERTE_GIT_COMMIT_SHORT=$GIT_COMMIT_SHORT -DOVERTE_RELEASE_TYPE=$OVERTE_RELEASE_TYPE -DOVERTE_BACKTRACE_URL=$OVERTE_BACKTRACE_URL -DOVERTE_BACKTRACE_TOKEN=$OVERTE_BACKTRACE_TOKEN $CMAKE_EXTRA fi - name: Run CodeChecker static analysis From 5244e15a4805bac54d8c64d23741d1cac2c23451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Mon, 3 Aug 2026 12:12:02 +0200 Subject: [PATCH 08/13] Add Sentry-Native. --- BUILD.md | 6 +- CMakeLists.txt | 2 +- assignment-client/CMakeLists.txt | 2 +- cmake/macros/AddCrashpad.cmake | 62 ------------------- cmake/macros/AddSentry.cmake | 54 ++++++++++++++++ conanfile.py | 2 +- domain-server/CMakeLists.txt | 2 +- interface/CMakeLists.txt | 2 +- libraries/networking/CMakeLists.txt | 2 +- .../CrashHandlerBackend_Crashpad.cpp | 4 +- .../CrashHandlerBackend_None.cpp | 3 +- tools/oven/CMakeLists.txt | 2 +- 12 files changed, 69 insertions(+), 74 deletions(-) delete mode 100644 cmake/macros/AddCrashpad.cmake create mode 100644 cmake/macros/AddSentry.cmake diff --git a/BUILD.md b/BUILD.md index c6ff29c10bc..cf98adc3857 100644 --- a/BUILD.md +++ b/BUILD.md @@ -1,13 +1,13 @@ # General Build Information -*Last Updated on 2025-03-17* +*Last Updated on 2026-07-29* ## OS Specific Build Guides @@ -78,6 +78,8 @@ BUILD_GLOBAL_SERVICES=STABLE #### Possible CMake Variables ```text +// Build with crash reporting. +OVERTE_USE_SENTRY // The URL to post the dump to. OVERTE_BACKTRACE_URL // The identifying tag of the release. diff --git a/CMakeLists.txt b/CMakeLists.txt index 968f8a0826b..6686e47cd62 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -96,7 +96,7 @@ set(OVERTE_USE_OPTIMIZED_IK OFF CACHE BOOL "Use optimized IK.") set(OVERTE_DISABLE_KTX_CACHE OFF CACHE BOOL "Disable KTX Cache.") set(OVERTE_USE_KHR_ROBUSTNESS OFF CACHE BOOL "Use KHR_robustness.") set(OVERTE_USE_SYSTEM_LIBS OFF CACHE BOOL "Build with system dependencies.") - +set(OVERTE_USE_SENTRY OFF CACHE BOOL "Build with Sentry crash reporting.") set(OVERTE_BACKTRACE_URL "" CACHE STRING "URL to an endpoint for uploading crash-dumps. For example Sentry.") set(OVERTE_BACKTRACE_TOKEN "" CACHE STRING "Token used to identify this build, for use in uploading crash-dumps.") diff --git a/assignment-client/CMakeLists.txt b/assignment-client/CMakeLists.txt index f8656670b62..1da0e538f07 100644 --- a/assignment-client/CMakeLists.txt +++ b/assignment-client/CMakeLists.txt @@ -24,7 +24,7 @@ link_hifi_libraries( include_hifi_library_headers(procedural) include_hifi_library_headers(entities) -add_crashpad() +add_sentry() target_breakpad() if (OVERTE_BUILD_TOOLS) diff --git a/cmake/macros/AddCrashpad.cmake b/cmake/macros/AddCrashpad.cmake deleted file mode 100644 index 2543c0b507c..00000000000 --- a/cmake/macros/AddCrashpad.cmake +++ /dev/null @@ -1,62 +0,0 @@ -# -# AddCrashpad.cmake -# cmake/macros -# -# Created by Clement Brisset on 01/19/18. -# Copyright 2018 High Fidelity, Inc. -# Copyright 2025 Overte e.V. -# -# Distributed under the Apache License, Version 2.0. -# See the accompanying file LICENSE or http:#www.apache.org/licenses/LICENSE-2.0.html -# - -macro(add_crashpad) - set (USE_CRASHPAD TRUE) - message(STATUS "Checking crashpad config") - - if (OVERTE_BACKTRACE_URL STREQUAL "") - message(STATUS "Checking crashpad config - -DOVERTE_BACKTRACE_URL is empty, disabled.") - set(USE_CRASHPAD FALSE) - endif() - - if (OVERTE_BACKTRACE_TOKEN STREQUAL "") - message(STATUS "Checking crashpad config - -DOVERTE_BACKTRACE_TOKEN is empty, disabled.") - set(USE_CRASHPAD FALSE) - endif() - - if (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64") - message(STATUS "Checking crashpad config - Linux aarch64 is not supported by crashpad, disabled.") - set(USE_CRASHPAD FALSE) - endif() - - if (USE_CRASHPAD) - message(STATUS "Checking crashpad config - enabled.") - get_property(CRASHPAD_CHECKED GLOBAL PROPERTY CHECKED_FOR_CRASHPAD_ONCE) - if (NOT CRASHPAD_CHECKED) - find_package(Crashpad REQUIRED) - - set_property(GLOBAL PROPERTY CHECKED_FOR_CRASHPAD_ONCE TRUE) - endif() - - add_definitions(-DHAS_CRASHPAD) - add_definitions(-DOVERTE_BACKTRACE_URL=\"${OVERTE_BACKTRACE_URL}\") - add_definitions(-DOVERTE_BACKTRACE_TOKEN=\"${OVERTE_BACKTRACE_TOKEN}\") - - target_include_directories(${TARGET_NAME} PRIVATE ${CRASHPAD_INCLUDE_DIRS}) - target_link_libraries(${TARGET_NAME} ${CRASHPAD_LIBRARY} ${CRASHPAD_UTIL_LIBRARY} ${CRASHPAD_BASE_LIBRARY}) - - if (WIN32) - set_target_properties(${TARGET_NAME} PROPERTIES LINK_FLAGS "/ignore:4099") - elseif (APPLE) - find_library(Security Security) - target_link_libraries(${TARGET_NAME} ${Security}) - target_link_libraries(${TARGET_NAME} "-lbsm") - endif() - - add_custom_command( - TARGET ${TARGET_NAME} - POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CRASHPAD_HANDLER_EXE_PATH} "$/" - ) - endif () -endmacro() diff --git a/cmake/macros/AddSentry.cmake b/cmake/macros/AddSentry.cmake new file mode 100644 index 00000000000..4c1c05a6aff --- /dev/null +++ b/cmake/macros/AddSentry.cmake @@ -0,0 +1,54 @@ +# +# AddSentry.cmake +# cmake/macros +# +# Created by Clement Brisset on 01/19/18. +# Copyright 2018 High Fidelity, Inc. +# Copyright 2025-2026 Overte e.V. +# +# Distributed under the Apache License, Version 2.0. +# See the accompanying file LICENSE or http:#www.apache.org/licenses/LICENSE-2.0.html +# + +macro(add_sentry) + if (OVERTE_USE_SENTRY) + if (OVERTE_BACKTRACE_URL STREQUAL "") + message(FATAL_ERROR "Crashpad is enabled, but -DOVERTE_BACKTRACE_URL is empty!") + endif() + if (OVERTE_BACKTRACE_TOKEN STREQUAL "") + message(FATAL_ERROR "Crashpad is enabled, but -DOVERTE_BACKTRACE_TOKEN is empty!") + endif() + + find_package(Sentry QUIET REQUIRED) + + add_definitions(-DHAS_SENTRY) + add_definitions(-DOVERTE_BACKTRACE_URL=\"${OVERTE_BACKTRACE_URL}\") + add_definitions(-DOVERTE_BACKTRACE_TOKEN=\"${OVERTE_BACKTRACE_TOKEN}\") + + target_link_libraries(${TARGET_NAME} sentry-native::sentry-native) + + + # if (WIN32) + # set_target_properties(${TARGET_NAME} PROPERTIES LINK_FLAGS "/ignore:4099") + # elseif (APPLE) + # find_library(Security Security) + # target_link_libraries(${TARGET_NAME} ${Security}) + # target_link_libraries(${TARGET_NAME} "-lbsm") + # endif() + + + # Find and pass crashpad_hander to CPack for packaging. crashpad_handler is used for sending crash reports to Sentry. + find_program(CRASHPAD_HANDLER_EXECUTABLE crashpad_handler PATHS "${sentry_INCLUDE_DIR}/../bin/" NO_DEFAULT_PATH) + if (NOT CRASHPAD_HANDLER_EXECUTABLE) + message(FATAL_ERROR "Could not find Crashpad-handler at ${sentry_INCLUDE_DIR}/../bin/. Crashpad-handler is required for submitting crash reports to Sentry.") + endif () + # TODO: Make sure we are packaging crashpad_handler into our AppImages/installers. + set(CPACK_CRASHPAD_HANDLER_EXECUTABLE ${CRASHPAD_HANDLER_EXECUTABLE}) + + add_custom_command( + TARGET ${TARGET_NAME} + POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CRASHPAD_HANDLER_EXECUTABLE} "$/" + ) + endif () +endmacro() diff --git a/conanfile.py b/conanfile.py index a75d5a6cc1d..1751e5a6264 100644 --- a/conanfile.py +++ b/conanfile.py @@ -56,7 +56,6 @@ def requirements(self): self.requires("artery-font-format/1.0.1") # FIXME: update to 1.1 self.requires("bullet3/3.25") self.requires("cgltf/1.14@overte/stable") - # self.requires("crashpad/cci.20220219" ) # Broken self.requires("discord-rpc/3.4.0@overte/stable") self.requires("draco/1.3.5") # FIXME: update to newer version self.requires("etc2comp/cci.20170424") # NOTE: archived upstream @@ -76,6 +75,7 @@ def requirements(self): self.requires("quazip/1.4") self.requires("scribe/2019.02@overte/stable") self.requires("sdl/2.32.10") + self.requires("sentry-native/0.14.2") # Crash reporting self.requires("spirv-cross/1.4.350.0") self.requires("spirv-tools/1.4.350.0") self.requires("steamworks/158a@overte/prebuild") diff --git a/domain-server/CMakeLists.txt b/domain-server/CMakeLists.txt index 011fd115bd3..e1e8717d0c6 100644 --- a/domain-server/CMakeLists.txt +++ b/domain-server/CMakeLists.txt @@ -36,7 +36,7 @@ target_zlib() target_quazip() target_openssl() -add_crashpad() +add_sentry() target_breakpad() # libcrypto uses dlopen in libdl diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index b61ea38306f..0796d220263 100644 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -242,7 +242,7 @@ target_bullet() set(OpenGL_GL_PREFERENCE "GLVND") target_opengl() -add_crashpad() +add_sentry() target_breakpad() target_json() target_glm() diff --git a/libraries/networking/CMakeLists.txt b/libraries/networking/CMakeLists.txt index 3550cf424e7..4bcf1b209cb 100644 --- a/libraries/networking/CMakeLists.txt +++ b/libraries/networking/CMakeLists.txt @@ -4,7 +4,7 @@ link_hifi_libraries(shared platform) target_openssl() target_tbb() -add_crashpad() +add_sentry() target_breakpad() if (WIN32 OR (UNIX AND NOT APPLE)) diff --git a/libraries/networking/src/crash-handler/CrashHandlerBackend_Crashpad.cpp b/libraries/networking/src/crash-handler/CrashHandlerBackend_Crashpad.cpp index cf893f267b4..1f45eb3346b 100644 --- a/libraries/networking/src/crash-handler/CrashHandlerBackend_Crashpad.cpp +++ b/libraries/networking/src/crash-handler/CrashHandlerBackend_Crashpad.cpp @@ -10,7 +10,7 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // -#if HAS_CRASHPAD +#if HAS_SENTRY #include "CrashHandler.h" @@ -519,4 +519,4 @@ void startCrashHookMonitor(QCoreApplication* app) { #endif // Q_OS_WIN } -#endif // HAS_CRASHPAD +#endif // HAS_SENTRY diff --git a/libraries/networking/src/crash-handler/CrashHandlerBackend_None.cpp b/libraries/networking/src/crash-handler/CrashHandlerBackend_None.cpp index 59441255756..cdf015f2c65 100644 --- a/libraries/networking/src/crash-handler/CrashHandlerBackend_None.cpp +++ b/libraries/networking/src/crash-handler/CrashHandlerBackend_None.cpp @@ -4,12 +4,13 @@ // // Created by Clement Brisset on 01/19/18. // Copyright 2018 High Fidelity, Inc. +// Copyright 2026 Overte e.V. // // Distributed under the Apache License, Version 2.0. // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // -#if !defined(HAS_CRASHPAD) && !defined(HAS_BREAKPAD) +#if !defined(HAS_SENTRY) && !defined(HAS_CRASHPAD) && !defined(HAS_BREAKPAD) #include "CrashHandler.h" diff --git a/tools/oven/CMakeLists.txt b/tools/oven/CMakeLists.txt index 3cf954b2139..81e2f9e2d61 100644 --- a/tools/oven/CMakeLists.txt +++ b/tools/oven/CMakeLists.txt @@ -11,7 +11,7 @@ include_hifi_library_headers(script-engine) setup_memory_debugger() setup_thread_debugger() -add_crashpad() +add_sentry() target_breakpad() From 0d757becca5e7cbcda0e49ea3fdd096c78d5ef73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Tue, 4 Aug 2026 23:40:52 +0200 Subject: [PATCH 09/13] Use larger Windows Runner to avoid running out of disk space. --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a095387692c..df12d877f37 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -66,7 +66,8 @@ jobs: - id: windows os: Windows 2022 # We use a third-party runner hosted by depot.dev to avoid timing out in case Qt has to be built from source. - runner: depot-windows-2022-16 # Which GitHub Actions Runner to use. When using `image` this just needs to run the build container. + # depot-windows-2022-1 runs out of disk space when building RelWithDebInfo Qt. + runner: depot-windows-2022-32 # Which GitHub Actions Runner to use. When using `image` this just needs to run the build container. arch: x86_64 cmake_build_type: RelWithDebInfo qt_source: source # Which Qt Conan package to use. `system`, `source`, or `aqt`. From 60275a31b074d8e9bc02d480a8d3271e4727ad37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Tue, 4 Aug 2026 23:41:49 +0200 Subject: [PATCH 10/13] Use Openssl system package with some more debug printing for https://github.com/overte-org/overte-conan-recipes/issues/1 --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 1751e5a6264..25d84147bfc 100644 --- a/conanfile.py +++ b/conanfile.py @@ -90,7 +90,7 @@ def requirements(self): if self.options.qt_source == "system": self.requires("qt/5.15.2@overte/system", force=True) if self.settings.os == "Linux": - openssl = "openssl/system@overte/stable#24c4df65c52791c4955f7d47d9faef0d" + openssl = "openssl/system@overte/system#74cd53974fe6a60b21693f2c9653b15f" elif self.options.qt_source == "aqt": self.requires("qt/5.15.2@overte/aqt", force=True) else: From 421477045b04f26c72bf953627510910e7b09cec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Mon, 10 Aug 2026 17:53:33 +0200 Subject: [PATCH 11/13] Use Openssl system package with some more debug printing for https://github.com/overte-org/overte-conan-recipes/issues/1 --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 25d84147bfc..ebb9d12227b 100644 --- a/conanfile.py +++ b/conanfile.py @@ -96,7 +96,7 @@ def requirements(self): else: if self.settings.os == "Linux": # Use system OpenSSL to work around OpenSSL being missing from libnode's rpath and this cascading down to Interface. - openssl = "openssl/system@overte/stable#24c4df65c52791c4955f7d47d9faef0d" + openssl = "openssl/system@overte/system#74cd53974fe6a60b21693f2c9653b15f" self.requires("fcitx5-qt/5.1.13@overte/stable#41b7ae9082f32e1ad83fd8a43a2c8460") self.requires("qt/5.15.18@overte/experimental#3a9079f3023351a7319be352cc6f4665", force=True) # Replace Conan Center's glib package with our own duplicate to avoid their outdated binary cache. https://github.com/conan-io/conan-center-index/issues/17876 From c3c2cb902b87915517ed9af02f910d5998257924 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Mon, 10 Aug 2026 17:55:37 +0200 Subject: [PATCH 12/13] Ugly workaround for https://github.com/overte-org/overte-conan-recipes/issues/1 --- .github/actions/conan-install/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/conan-install/action.yml b/.github/actions/conan-install/action.yml index d4e7597e4e3..283f5e3a1f5 100644 --- a/.github/actions/conan-install/action.yml +++ b/.github/actions/conan-install/action.yml @@ -23,5 +23,5 @@ runs: run: | # Run twice to work around OpenSSL not being found. See: https://github.com/overte-org/overte-conan-recipes/issues/1 # `--format=json > build.json` creates a graph of dependencies, which can later be used to check for cache misses. - conan install . -s compiler.cppstd=${{ inputs.cppstd }} -s build_type=${{ inputs.build_type }} -o 'Overte/*:qt_source='${{ inputs.qt_source }} -b missing -pr=${{ inputs.conan_profile }} -of build --format=json > build.json + conan install . -s compiler.cppstd=${{ inputs.cppstd }} -s build_type=${{ inputs.build_type }} -o 'Overte/*:qt_source='${{ inputs.qt_source }} -b missing -pr=${{ inputs.conan_profile }} -of build --format=json > build.json || echo "Command failed. Retrying in case this is https://github.com/overte-org/overte-conan-recipes/issues/1" conan install . -s compiler.cppstd=${{ inputs.cppstd }} -s build_type=${{ inputs.build_type }} -o 'Overte/*:qt_source='${{ inputs.qt_source }} -b missing -pr=${{ inputs.conan_profile }} -of build From 3ccc5714427a84a36f9f8375b7a0d345799ba97e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Gro=C3=9F?= Date: Mon, 10 Aug 2026 18:06:14 +0200 Subject: [PATCH 13/13] Remove target_breakpad() as breakpad support is removed in https://github.com/overte-org/overte/pull/2382 --- assignment-client/CMakeLists.txt | 1 - cmake/macros/TargetBreakpad.cmake | 22 ---------------------- domain-server/CMakeLists.txt | 1 - interface/CMakeLists.txt | 1 - libraries/networking/CMakeLists.txt | 1 - tools/oven/CMakeLists.txt | 1 - 6 files changed, 27 deletions(-) delete mode 100644 cmake/macros/TargetBreakpad.cmake diff --git a/assignment-client/CMakeLists.txt b/assignment-client/CMakeLists.txt index 1da0e538f07..e08b4a79839 100644 --- a/assignment-client/CMakeLists.txt +++ b/assignment-client/CMakeLists.txt @@ -25,7 +25,6 @@ include_hifi_library_headers(procedural) include_hifi_library_headers(entities) add_sentry() -target_breakpad() if (OVERTE_BUILD_TOOLS) add_dependencies(${TARGET_NAME} oven) diff --git a/cmake/macros/TargetBreakpad.cmake b/cmake/macros/TargetBreakpad.cmake deleted file mode 100644 index 58626ad17be..00000000000 --- a/cmake/macros/TargetBreakpad.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright 2018 High Fidelity, Inc. -# Created by Gabriel Calero & Cristian Duarte on 2018/03/13 -# -# Distributed under the Apache License, Version 2.0. -# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html -# -macro(TARGET_BREAKPAD) - if (ANDROID) - set(INSTALL_DIR ${HIFI_ANDROID_PRECOMPILED}/breakpad) - set(BREAKPAD_INCLUDE_DIRS "${INSTALL_DIR}/include" CACHE STRING INTERNAL) - set(LIB_DIR ${INSTALL_DIR}/lib) - list(APPEND BREAKPAD_LIBRARIES ${LIB_DIR}/libbreakpad_client.a) - target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${BREAKPAD_INCLUDE_DIRS}) - if (USE_BREAKPAD) - add_definitions(-DHAS_BREAKPAD) - endif() - endif() - target_link_libraries(${TARGET_NAME} ${BREAKPAD_LIBRARIES}) -endmacro() - - diff --git a/domain-server/CMakeLists.txt b/domain-server/CMakeLists.txt index e1e8717d0c6..f42208f411e 100644 --- a/domain-server/CMakeLists.txt +++ b/domain-server/CMakeLists.txt @@ -37,7 +37,6 @@ target_quazip() target_openssl() add_sentry() -target_breakpad() # libcrypto uses dlopen in libdl if (UNIX) diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index 0796d220263..913cc86887b 100644 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -243,7 +243,6 @@ target_bullet() set(OpenGL_GL_PREFERENCE "GLVND") target_opengl() add_sentry() -target_breakpad() target_json() target_glm() target_discord_rpc() diff --git a/libraries/networking/CMakeLists.txt b/libraries/networking/CMakeLists.txt index 4bcf1b209cb..8acad8e911d 100644 --- a/libraries/networking/CMakeLists.txt +++ b/libraries/networking/CMakeLists.txt @@ -5,7 +5,6 @@ link_hifi_libraries(shared platform) target_openssl() target_tbb() add_sentry() -target_breakpad() if (WIN32 OR (UNIX AND NOT APPLE)) if (NOT DISABLE_WEBRTC ) diff --git a/tools/oven/CMakeLists.txt b/tools/oven/CMakeLists.txt index 81e2f9e2d61..fa610890b29 100644 --- a/tools/oven/CMakeLists.txt +++ b/tools/oven/CMakeLists.txt @@ -12,7 +12,6 @@ include_hifi_library_headers(script-engine) setup_memory_debugger() setup_thread_debugger() add_sentry() -target_breakpad() if (WIN32)