Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-03-28 03:12:50

Andre Hentz wrote:

> > Alas, I think there's still one bit to be fixed. You've used
> > $(LIBRARY_PATH), etc, inside *action* response-file-2. The problem with
> > it is that response-file-2 is a piecemeal action. It might be called
> > several times and with the subset of sources which can fit to command
> > line. IOW, $(<) will we around the command line lenght limit, and
> > - adding extra elements might overflow
> > - if not, you'll output the list of searched libraries several times.
> understanding of piecemeal actions was incorrect.

OK. BTW, you can look it up in "jam_src/Jam.html". The action modifiers are
desribed there more-or-less good.

> > I actually meant that 'response-file' *rule* would contain.
> >
> > print.output $(target) ;
> > "$(FINDLIBS_ST:S=.lib)" ;
> That's what I first tried. It doesn't seem to work though. Looks
> like all variables are empty there. I couldn't understand the reason.

Oh... that's how 'on target' variables work: they are available directly only
in actions. Try

LIBRARY_PATH = [ on $(target) return $(LIBRARY_PATH) ] ;

inside rule body, and the same for other vars.

> > P.S. BTW, why did you change prototype for ''
> > and changed the body? You certainly had some reason, but I wanted to know
> > it so that it will be documeneted in CVS logs.
> is called from
> generators.try-one-generator with $(multiple) as the last argument. I
> should actually have changed the prototype to match, except
> for 'sources *' instead of 'sources +'.

OK, I understand now.

> Also, is being called without a $(name)
> argument. I think it is my fault for registering builtin.response-file
> using register-linker. Should I create a response-file-generator?

Nope, I think that using register-linker was a right move, and something's
wrong deeper. Just add a comment and I'll look into the issue after

- Volodya


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at