1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-19 23:03:53 -04:00
nix/tests/unit/libstore
Jade Lovelace 2625e9fb0a Ban building Nix with NDEBUG
When reviewing old PRs, I found that #9997 adds some code to ensure one
particular assert is always present. But, removing asserts isn't
something we do in our own release builds either in the flake here or in
nixpkgs, and is plainly a bad idea that increases support burden,
especially if other distros make bad choices of build flags in their Nix
packaging.

For context, the assert macro in the C standard is defined to do nothing
if NDEBUG is set.

There is no way in our build system to set -DNDEBUG without manually
adding it to CFLAGS, so this is simply a configuration we do not use.
Let's ban it at compile time.

I put this preprocessor directive in src/libutil.cc because it is not
obvious where else to put it, and it seems like the most logical file
since you are not getting a usable nix without it.
2024-03-02 11:22:46 -08:00
..
data Create unit tests for the serve proto handshake 2024-01-22 12:43:11 -05:00
test-data
common-protocol.cc
content-address.cc Add Git object hashing to the store layer 2024-02-27 11:27:34 -05:00
derivation.cc
derived-path.cc
downstream-placeholder.cc Move tests to separate directories, and document 2023-12-01 10:48:58 -05:00
local.mk
machines.cc Convert Machine::speedFactor from a non-neg int to a non-neg float 2024-01-24 01:03:07 -05:00
nar-info-disk-cache.cc
nar-info.cc
outputs-spec.cc Ban building Nix with NDEBUG 2024-03-02 11:22:46 -08:00
path-info.cc HashType: Rename to HashAlgorithm 2023-12-06 23:43:42 +01:00
path.cc Disallow store path names that are . or .. (plus opt. -) 2024-01-31 18:35:19 +01:00
references.cc
serve-protocol.cc Shut up a gcc warning 2024-01-29 15:22:44 +01:00
worker-protocol.cc worker protocol: serialise cgroup stats in BuildResult (#9598) 2023-12-13 16:37:17 -05:00