Marcus Holland-Moritz
997118da6e
build: one standard to rule them all
2025-07-28 22:46:46 +02:00
Marcus Holland-Moritz
2dec20b01f
build: completely refactor static build to support cross-compilation
2025-07-28 22:44:45 +02:00
Marcus Holland-Moritz
c3532ab2eb
build: only UPX a binary when using a supported architecture
2025-07-28 22:44:45 +02:00
Marcus Holland-Moritz
cdf69a7449
test: support running cross-compiled tools test
2025-07-28 22:44:45 +02:00
Marcus Holland-Moritz
c0725c40fb
build: support RISCV64 build (fixes gh #266 )
2025-07-18 17:55:19 +02:00
Marcus Holland-Moritz
ddcf7d3697
build: make UPX executable optional (not available e.g. on RISC-V)
2025-07-18 17:55:19 +02:00
Marcus Holland-Moritz
532e86934e
build: try adding /bigobj
for test targets
2025-07-18 17:55:19 +02:00
Marcus Holland-Moritz
7508b1db38
feat: use new minimal LRU cache implementation
2025-05-09 11:48:52 +02:00
Marcus Holland-Moritz
195c7e1461
build: only build all benchmarks if explicitly requested
2025-04-21 17:53:56 +02:00
Marcus Holland-Moritz
02b12418cc
build: group unit tests for better build times with LTO
2025-04-21 17:53:56 +02:00
Marcus Holland-Moritz
8436e7151f
build: support multiple STATIC_BUILD_EXTRA_PREFIX
directories
2025-04-21 17:53:56 +02:00
Marcus Holland-Moritz
24f87bbeaa
chore: drop DWARFSEXTRACT_MINIMAL
completely
...
Extracting by pattern is a mandatory feature for the `fuse-extract` use
case, so no point in being able to disable this.
2025-04-21 17:53:56 +02:00
Marcus Holland-Moritz
9cdfaffee6
build: update preferred versions of fmt, phmap, gtest
2025-04-14 00:19:48 +02:00
Marcus Holland-Moritz
e6ae08475a
feat: allow disabling advanced features in dwarfs-fuse-extract
2025-04-13 22:14:57 +02:00
Marcus Holland-Moritz
3f82610e75
build: simplify static linking
2025-04-13 16:29:52 +02:00
Marcus Holland-Moritz
876dda3db5
build: apparently we don't have a direct dependency on gflags
2025-04-11 22:41:11 +02:00
Marcus Holland-Moritz
7de8cf9344
feat: use an optimized memcpy
if possible
2025-04-10 18:45:15 +02:00
Marcus Holland-Moritz
084176d5fd
feat: try supporting mimalloc
2025-04-09 06:57:13 +02:00
Marcus Holland-Moritz
0cfeea7dd3
build: add tidy-fix
target
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
4a71c7a4a5
build: allow disabling of brotli, lz4, lzma
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
0b51ac2bb4
build: tag build artifacts correctly
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
2f053d89a7
build: add dwarfs-fuse-extract semi-universal binary
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
c8a426ff38
build: use upx -9 --best
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
9eb5ca94b1
refactor: migrate the only folly::Benchmark test to google-benchmark
2025-04-07 21:32:26 +02:00
Marcus Holland-Moritz
cd8c9f60ca
build: try using multithreaded CPack
2025-03-31 14:16:09 +02:00
Marcus Holland-Moritz
2501cf7783
chore(nilsimsa): add tests and benchmark
2025-03-31 14:16:09 +02:00
Marcus Holland-Moritz
cb883f6df4
build: add size-optimized release build
2025-03-31 14:16:09 +02:00
Marcus Holland-Moritz
b082fcb4d9
build: clean up dependencies
2025-03-31 14:16:09 +02:00
Marcus Holland-Moritz
91c810cee9
build: add support for artifact suffix
2025-03-31 14:16:09 +02:00
Marcus Holland-Moritz
5db0d1dd8e
build: don't install benchmark artifact if benchmark library is missing
2025-03-31 14:10:38 +02:00
Marcus Holland-Moritz
bbda0ffbae
build: add check-format
and tidy
targets
2025-03-31 14:10:38 +02:00
Marcus Holland-Moritz
9a9d5365b6
fix(build): make sure to use GNUInstallDirs everywhere (fixes gh #253 )
2025-03-19 22:25:15 +01:00
Marcus Holland-Moritz
8bdf6e8a83
build: see if jemalloc works on macOS now
2025-03-17 10:03:18 +01:00
Marcus Holland-Moritz
e1c041aebc
build: fix typo in fast_float option
2025-03-17 10:02:58 +01:00
Marcus Holland-Moritz
6b17f3d31f
refactor: only link jemalloc
against executables, not libraries
...
Linking `jemalloc` against executables is enough to replace *all* malloc
functionality with `jemalloc`. Linking it against a library will cause
issues for example with Python bindings. The downside is that Python
won't be using `jemalloc` by default, but likely malloc won't be the
bottleneck when using Python.
2025-03-17 09:42:52 +01:00
Marcus Holland-Moritz
689a43b19f
feat: add sorted_array_map
2025-03-17 07:15:54 +01:00
Marcus Holland-Moritz
ed4534c514
build: try to ensure we're building against the right headers
2025-03-15 08:19:07 +01:00
Marcus Holland-Moritz
45ac27bce5
build: fix target_include_directories for gtest/gmock
2025-03-15 08:19:07 +01:00
Marcus Holland-Moritz
9130d2a5de
build: separate tests with internal header dependencies
2025-03-15 08:19:07 +01:00
Marcus Holland-Moritz
5a71451d9d
build: add more library configuration details to cmake config
2025-03-15 08:19:07 +01:00
Marcus Holland-Moritz
4802438b14
build: move tool lib to tools
...
This enables us to completely skip the `include` folder when building
with `-DWITH_LIBDWARFS=OFF`. Otherwise, we're using includes that will
potentially not match the includes of the installed library.
2025-03-15 08:19:07 +01:00
Marcus Holland-Moritz
84e2a0e599
chore: provide single-header fast_float.h for folly/Conv.cpp
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
732ad42a16
build: no -Werror for the time being
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
e13d9cb6eb
chore: add binary for fuzzing the reader library
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
6424c6ff85
build: ensure fuzzing binaries can be built without warnings
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
48f423504c
build: enable -Wnrvo
warnings when available
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
afa370c7fa
build: add -Wpessimizing-move
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
9df98e69f0
build: -Wuseless-cast
is a C++ warnings
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
56dedbd05e
build: update preferred version of parallel hashmap
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
b349e584e0
feat: support case-insensitive lookups (fixes gh #232 )
2025-03-14 15:07:49 +01:00