Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-01-13 04:43:25

Hi Michael,

> I often wondered about this code. In particular it seems odd that we
> don't have a common method to remove files.
> The closest we have is the "RM" variable as set in "common.jam".
> For some reason this does not have the "-f" option in the non NT case.
> This seems rather odd as it means it cannot be used to delete possible
> non existing files, as in the case of library file above.
> I have attached a simple patch for this. It simply changes the
> definition to.
> RM = rm -f ;

I've comitted your patch. Thanks.

> This allows the archive action for the cygwin case to me simplified and
> possibly combine it with the non cygwin version.

This should definitely be possible. Are you willing to try it?

> Alternatively it may be possible to use the "Clean" rule in this case.

In fact, it might be harder than this. For example, if you write:

rule achive
common.Clean $(<) : $(>) ;

You'll have the 'Clean' action executed *after* the 'archive' action. So,
maybe, it's better to grab 'RM' variable from 'common' and use that in
actions. And yes, using RM1 that Dave mentioned would make 'archive' action
the same for all platforms.

- Volodya


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