Commit: e7cd9a0a86d4c44451cf5e85476e54cd71af96e4
Parent: 4baca1fb2305fe9399fa6998d27b0cb521c7c80a
Author: Randy Palamar
Date: Tue, 10 Mar 2026 05:23:03 -0600
build: add -lm when linking tests
It seems that the way some distros configure their compiler makes
it less aggressive about removing unused functions prior to
linking.
Diffstat:
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/build.c b/build.c
@@ -696,7 +696,6 @@ cc_single_file(Arena a, CommandList cc, char *exe, char *src, char *dest, char *
char *executable[] = {src, is_msvc? "/Fe:" : "-o", dest};
char *object[] = {is_msvc? "/c" : "-c", src, is_msvc? "/Fo:" : "-o", dest};
-
cmd_append_count(&a, &cc, exe? executable : object,
exe? countof(executable) : countof(object));
if (exe) cmd_pdb(&a, &cc, exe);
@@ -861,7 +860,7 @@ build_tests(Arena arena)
cmd_append(&arena, &cc, EXTRA_FLAGS);
#define TEST_PROGRAMS \
- X("throughput", LINK_LIB("zstd"), W32_DECL(LINK_LIB("Synchronization")))
+ X("throughput", LINK_LIB("m"), LINK_LIB("zstd"), W32_DECL(LINK_LIB("Synchronization"))) \
os_make_directory(OUTPUT("tests"));
if (!is_msvc) cmd_append(&arena, &cc, "-Wno-unused-function");