On 2011-01-10 at 09:15:42 [+0100], pete.goodeve@xxxxxxxxxxxx wrote: > On Sun, Jan 09, 2011 at 12:26:36PM +0100, Ingo Weinhold wrote: > > > > I'd generally recommend to use the build profiles instead (i.e. "jam -q > > @myprofile update libbe.so"). > > > > When building under Haiku one can let the build system prepare a directory > > with the test app and all required libraries via a few lines in the > > UserBuildConfig. E.g.: > > > > HaikuInstall menu-test : /boot/home/Desktop/menu-test > > : MenuTestApp > > : install-menu-test > > ; > > > > HaikuInstall menu-test : /boot/home/Desktop/menu-test/lib > > : libbe.so > > : install-menu-test > > ; > > > > A "jam -q menu-test" will then build both the test app and libbe and copy > > them to the respective directory. The "install-menu-test" is the grist to > > be used for the installed targets (should be something reasonably unique), > > the other parameters should be obvious. > > (:-)) Not necessarily... Jam was pretty much a Here-Be-Dragons region, > until today anyway. I've spent most of it on an intensive cramming > session, and I now have a much better idea of how Jam functions. > (I probably worked from the wrong end -- started with the Jam manual > and ended up with Ryan's useful tutorial.) Still some gaps, but I > at least now know how to read a Jamfile. (I assume that was the only > way to find out what, say, HaikuInstall actually does?) A good deal of Haiku build system specific rules have some documentation at the top of their implementations (find them in build/jam/*). In case of HaikuInstall that's virtually non-existent, though. The parameters are, in this order, the name of the pseudo-target to bind the action to, the directory into which to copy the files, the build system targets to copy there, and the already mentioned grist. > There seem > to be a few Haiku specials, like (User)BuildConfig (and @profiles?), > that I can't find documented elsewhere. Have a look at build/jam/UserBuildConfig.ReadMe. It documents what can be done in your UserBuildConfig file, including a section about build profiles. CU, Ingo