[openbeos] Re: Speeding up a partial build

  • From: Ingo Weinhold <bonefish@xxxxxxxxxxxxxxx>
  • To: Open BeOS <openbeos@xxxxxxxxxxxxx>
  • Date: Mon, 1 Mar 2004 13:37:49 +0100 (MET)

On Mon, 1 Mar 2004, Axel Dörfler wrote:

> as you may know, we are using a "jam" replacement that builds its
> dependencies over the whole tree. That is, if you want to build your
> tiny application, say "ls", you probably don't want to have "jam" read
> through all those Jamfiles with every invokation.
> Now, there is something simple you can do about it: just download a
> verbatim jam 2.4 (or soon, 2.5) and copy that into your ~/config/bin
> directory. But don't overwrite our version, or else you will have some
> problems building the thing; rename it to whatever you like (I called
> it "ljam" like, "local jam").
>
> When you now build something using "ljam", it won't be rebuild if any
> of its dependencies in other directories have been changed; i.e. the
> "Media" prefs app won't be rebuilt because libmedia.so has been
> changed. But, and that's sometimes important when you are developing
> something, it's much faster (which is the intention of the whole
> thing).
>
> If the AddResources rule annoys you that it can't build "rc", you can
> safely remove the dependency in the Jamrules file if you've already
> build it once.
> Change line 975 of current/Jamrules to:
>       Depends $(1) : $(2) ; #rc ;
>
> That's it. Hope that saves you some minutes over the development of R1
> :)
>
> Just keep in mind that you can't or shouldn't always use it; use it
> only when you know that it must work.

Just to add a warning: The plain jam is officially supported to work only
when run in the root directory of our tree. It may work in certain
subdirectories and if it does it will probably be faster, but you use it
that way on your own risk.

CU, Ingo

Other related posts: