On 01/11/07 10:35 -0600, Myles Watson wrote:
I forgot one more thing that I'd like help improving in buildrom:
I'd like to pass -j 6 to make to speed compilation (I added it to the kernel makefile for the target), but if you pass it to the top-level makefile it doesn't respect ordering. Is there a way to have the top-level makefile include a jobs setting without breaking the build?
-j should always be the number of cores on your system + 1. But ensuring that the code builds cleanly is the job of the system. If we have out of order issues with buildrom we can try to address them, but if we start getting too deeply into respecting strict dependencies then we will very quickly get overly complex. My suggestion is to pass in -j independently to each package so that you can get the speed advantage there.
This is yet another reason why I'm pushing so hard to move the LAB and kernel compile out of buildrom and into something else like buildroot or Firmware Linux or <insert favorite tool here>. I don't know if we want buildROM to be in the business of understanding how to build a distro - there are other packages out there that do a better job of that. Where buildROM comes in useful is managing the juxtaposition of LinuxBIOS and its payloads. So instead of building the kernel & LAB distro, if buildrom can pass control to buildroot or one of its friends, and then consume the resulting filesystem image and turn it into an ELF.
But until we get that working, I have no objection to passing -j <whatever> into the various Makefiles. We can make <whatever> a configurable option in the advanced settings.
Jordan