build(Makefile): LLD linker, objects/ dir, LTO+linker opts

- Compiler selection: Remove TCC, default to Clang, GCC fallback
- LLD linker: -fuse-ld=lld for all builds (peachwm + peachmsg)
- Object relocation: .o files output to objects/{src,parser,protocols,peachmsg}/
- Clean target: rm -rf objects + transitional stale .o cleanup
- Release: -flto=thin, linker opts (gc-sections, icf=safe, z now, etc.)
- Release: strip both peachwm and peachmsg binaries
- README + CONTRIBUTING: Add LLD dependency, update build docs
- .gitignore: Add objects/ directory
This commit is contained in:
2026-07-05 20:27:47 -04:00
parent 2773724d77
commit 79e7e26a49
4 changed files with 58 additions and 38 deletions
+1
View File
@@ -56,3 +56,4 @@ dkms.conf
.opencode/
.omo/
objects/