Boost logo

Boost-Build :

Subject: Re: [Boost-build] [boost-build] action with exact same source code failing for one Jamfile ("target has no type") and working for others - literally exactly the same code
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2015-08-24 14:01:19


Hi Steve,

On 24-Aug-15 7:02 PM, Steve Lorimer wrote:
> I've suddenly had bjam fail for only 1 instance of this tag-file action.
>
> error: target {
> Jamfile</home/steve/src/vc/cay/strategies/athena/gui>%Jamfile</home/steve/src/vc/cay/strategies/athena/gui>.tag-file-.
> { common%common.copy-athena_gui.EXE { gcc%gcc.link-athena_gui.EXE {
> gcc%gcc.compile.c++-main.o.OBJ { main.cpp.CPP } } { ... } } } } } has no
> type
>
> This is the Jamfile which is failing:
>
> constant EXE : *athena_gui* ;
>
> exe $(EXE)
> : [ glob *.cpp *.cc *.h *.qrc ]
> /cay/algo_gui/app//app
> /cay/strategies//*athena*/msg/
> ;
>
> install install-target : $(EXE) : <location>. ;
>
> notfile . : @tag-file : install-target : ;
> actions tag-file
> {
> $(TOP)/utils/bash/rm_tagged_output.sh $(>) short
> cp $(>) $(>).$(SHORT_TAG)
> }

I think the problem is not really with this Jamfile. The error message means that somewhere, where
Boost.Build needs a target with a type, it got instead the target with 'tag-file' as action and
no type. In other words, it got a target produced by the 'notfile' metatarget. Naturally,
that does not have a file type, since it's not even supposed to produce a file. Could it
be that some other Jamfile refers to this one?

- Volodya


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk