diff '--color=auto' -Naur a/lib/freebl/Makefile b/lib/freebl/Makefile --- a/lib/freebl/Makefile 2026-09-09 19:46:15.505386235 +0300 +++ b/lib/freebl/Makefile 2026-09-09 19:47:22.985375793 +0300 @@ -654,7 +654,16 @@ libcrux_mldsa_core.c libcrux_mldsa_portable.c \ libcrux_mldsa44_portable.c libcrux_mldsa65_portable.c \ libcrux_mldsa87_portable.c +# Bug 2067434 - restrict these to the child build that compiles the real +# library. The parent (loader-only) and lowhash stub builds reset CSRCS to their +# single source file, and appending here bypasses that. The stub build shares +# its OBJDIR with the real single-shlib build, so under make -jN both would +# compile these to the same object files at once, producing truncated objects. +ifdef FREEBL_CHILD_BUILD +ifndef USE_STUB_BUILD CSRCS += $(LIBCRUX_SRCS) +endif +endif # Bug 1918767 / Bug 1918711 - by setting KRML_MUSTINLINE=inline here, we # avoid it being defined to `inline __forceinline` (for msvc) or `inline