Page MenuHomeFreeBSD

Add a tools/build/ script that bootstraps bmake and then runs the build

Authored by arichardson on Aug 17 2018, 1:59 PM.



This makes it possible to compile on non-FreeBSD systems since make will
usually be GNU make there. Even if they include bmake, it will often
either be a broken version or too old to build FreeBSD.

Test Plan

With this script I've been able to compile on Linux+MacOS (once I've applied
all the other patches from

Diff Detail

Lint ErrorsExcuse: should be on one line
Errortools/build/ E501
Errortools/build/ E501
Errortools/build/ E501
No Unit Test Coverage
Build Status
Buildable 18892
Build 18546: arc lint + arc unit

Event Timeline

Probably best to save this commit for last as once you commit it, people will try it. The change generally works fine for me.


We should fix if it isn't too gross. I recently changed it to handle GCC from base/gcc installed as /usr/bin/cc in rS333414.

I've tested the latest in github today on Arch Linux and was able to build world and kernel - however at this moment, I haven't been able to test what has been built anywhere.

Pass -fuse-ld=$XLD when building with clang

I gave this a cursory glance and it seems broadly reasonable. I think it's fine to commit to tools/.

I'll commit this once all the dependent patches have been committed.

Stop setting -fuse-ld=, this should be handled by D26055

This revision was not accepted when it landed; it landed in state Needs Review.Sep 21 2020, 3:49 PM
This revision was automatically updated to reflect the committed changes.