aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-11-13 12:20:43 +0100
committerGitHub Enterprise <[email protected]>2025-11-13 12:20:43 +0100
commitb6efb4f1988c57e16b3bd258a5a713be3f743e49 (patch)
tree8ffe1c8b81afc68d54b6ac72a301b1c68ce2505b
parent5.7.9 (diff)
downloadzen-5.7.10-pre0.tar.xz
zen-5.7.10-pre0.zip
sentry/asan configuration tweaks (#649)v5.7.10-pre0
* Automated more of the decisions around which options to set when using ASAN * Also disabled Sentry by default as it's a bit annoying to have it upload crashes during development. Sentry is still automatically enabled and integrated as part of the `xmake bundle` step however so released builds will still have it.
-rw-r--r--.DS_Storebin6148 -> 0 bytes
-rw-r--r--.github/workflows/create_release.yml6
-rw-r--r--.github/workflows/validate.yml6
-rw-r--r--.gitignore4
-rw-r--r--CHANGELOG.md3
-rw-r--r--scripts/bundle.lua1
-rw-r--r--thirdparty/xmake.lua4
-rw-r--r--xmake.lua13
8 files changed, 24 insertions, 13 deletions
diff --git a/.DS_Store b/.DS_Store
deleted file mode 100644
index 038340bdc..000000000
--- a/.DS_Store
+++ /dev/null
Binary files differ
diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml
index 15fabad78..9b425f9c6 100644
--- a/.github/workflows/create_release.yml
+++ b/.github/workflows/create_release.yml
@@ -24,7 +24,7 @@ jobs:
- name: Config
run: |
- xmake config -v -y -m release
+ xmake config -v -y -m release --zensentry=yes
- name: Bundle
run: |
@@ -60,7 +60,7 @@ jobs:
- name: Config
run: |
- ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake config -v -y -m release
+ ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake config -v -y -m release --zensentry=yes
- name: Bundle
run: |
@@ -98,7 +98,7 @@ jobs:
- name: Config
run: |
- xmake config -v -y -m release
+ xmake config -v -y -m release --zensentry=yes
- name: Bundle
run: |
diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index 5547f3389..032ea2884 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -78,7 +78,7 @@ jobs:
- name: Config
run: |
- xmake config -vD -y -m ${{ matrix.config }} --arch=${{ matrix.arch }}
+ xmake config -vD -y -m ${{ matrix.config }} --arch=${{ matrix.arch }} --zensentry=yes
- name: Build & Test
if: ${{ matrix.config == 'debug' }}
@@ -133,7 +133,7 @@ jobs:
- name: Config
run: |
- ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake config -v -y -m ${{ matrix.config }} --arch=${{ matrix.arch }}
+ ./scripts/ue_build_linux/ue_build.sh ./.tmp-ue-toolchain xmake config -v -y -m ${{ matrix.config }} --arch=${{ matrix.arch }} --zensentry=yes
- name: Build & Test
if: ${{ matrix.config == 'debug' }}
@@ -183,7 +183,7 @@ jobs:
- name: Config
run: |
- xmake config -v -y -m ${{ matrix.config }} --arch=${{ matrix.arch }}
+ xmake config -v -y -m ${{ matrix.config }} --arch=${{ matrix.arch }} --zensentry=yes
- name: Build & Test
if: ${{ matrix.config == 'debug' }}
diff --git a/.gitignore b/.gitignore
index b4d5d8417..3d98ecff8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,6 +3,8 @@
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
+.DS_Store
+
# User-specific files
*.suo
*.user
@@ -32,8 +34,6 @@ vs20*/
# Visual Studio 2015/2017 cache/options directory
.vs/
-# Uncomment if you have tasks that create the project's static files in wwwroot
-#wwwroot/
# Files built by Visual Studio
*_i.c
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8ac185a26..270e1f919 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,7 @@
##
+- Improvement: Sentry is now disabled by default when building locally, to avoid uploading crashes due to local changes. CI builds still enable it just like before
+
+## 5.7.9
- Include all changes from 5.7.7
- Improvement: The build process no longer relies on vcpkg for external packages. Instead we now use xmake native packages, with package definitions in-tree (in `repo/`),
along with some in-tree snapshots in `thirdparty/`
diff --git a/scripts/bundle.lua b/scripts/bundle.lua
index 7f7828b41..debb1e615 100644
--- a/scripts/bundle.lua
+++ b/scripts/bundle.lua
@@ -25,6 +25,7 @@ local function _build(arch, debug, config_args)
"--clean",
"--mode="..variant,
"--arch="..arch,
+ "--zensentry=yes",
config_args)
if ret > 0 then
raise("Failed to configure xmake")
diff --git a/thirdparty/xmake.lua b/thirdparty/xmake.lua
index 6c5800f9d..35bbf87bf 100644
--- a/thirdparty/xmake.lua
+++ b/thirdparty/xmake.lua
@@ -53,7 +53,7 @@ target('protozero')
target('spdlog')
set_kind('headeronly')
set_group('thirdparty')
- add_headerfiles("spdlog/*.h")
+ add_headerfiles("spdlog/include/spdlog/**.h")
add_includedirs("spdlog/include", {public=true})
target('cpr')
@@ -61,7 +61,7 @@ target('cpr')
set_group('thirdparty')
set_languages("cxx20")
add_files("cpr/cpr/*.cpp")
- add_headerfiles("cpr/include/*.h")
+ add_headerfiles("cpr/include/**.h")
add_includedirs("cpr/include", {public=true})
if is_os("windows") then
add_cxxflags("/wd4668")
diff --git a/xmake.lua b/xmake.lua
index 0e6f122b6..7d0027243 100644
--- a/xmake.lua
+++ b/xmake.lua
@@ -2,10 +2,14 @@
set_configvar("ZEN_SCHEMA_VERSION", 5) -- force state wipe after 0.2.31 causing bad data (dan.engelbrecht)
+set_allowedplats("windows", "linux", "macosx")
+set_allowedarchs("windows|x64", "linux|x86_64", "macosx|x86_64", "macosx|arm64")
+
--------------------------------------------------------------------------
-- We support debug and release modes. On Windows we use static CRT to
-- minimize dependencies.
+set_allowedmodes("debug", "release")
add_rules("mode.debug", "mode.release")
if is_plat("windows") then
@@ -62,13 +66,16 @@ add_requires("http_parser", {system = false})
add_requires("json11", {system = false})
add_requires("lua", {system = false})
add_requires("lz4", {system = false})
-add_requires("mimalloc", {system = false})
add_requires("xxhash", {system = false})
add_requires("zlib", {system = false})
add_defines("EASTL_STD_ITERATOR_CATEGORY_ENABLED", "EASTL_DEPRECATIONS_FOR_2024_APRIL=EA_DISABLED")
add_requires("eastl", {system = false})
+if has_config("zenmimalloc") and not use_asan then
+ add_requires("mimalloc", {system = false})
+end
+
--------------------------------------------------------------------------
-- Crypto configuration. For reasons unknown each platform needs a
-- different package
@@ -200,14 +207,14 @@ function add_define_by_config(define, config_name)
end
option("zensentry")
- set_default(true)
+ set_default(false)
set_showmenu(true)
set_description("Enables Sentry support")
option_end()
add_define_by_config("ZEN_USE_SENTRY", "zensentry")
option("zenmimalloc")
- set_default(true)
+ set_default(not use_asan)
set_showmenu(true)
set_description("Use MiMalloc for faster memory management")
option_end()