Boost logo

Boost-Build :

From: muchacho_30 (js_at_[hidden])
Date: 2004-10-06 14:05:39

PLEASE REPLY TO js at simplytech dot com


I am writing a new generator for a new C compiler (ImageCraft) which is
currently not supported by Boost-Build v2. I based it on gcc.jam which
describes how to extend the toolset to support the GCC compiler.
Everything works well except for the following:

1. The complier generates files that I would like to delete when 'bjam
clean' is invoked. For example, I can't make it clean up the file
'bqueue.lis' and I don't know where to invoke the common.Clean rule

2. I would like to be able to add a PREFIX to the library name(just
like in Classic Jam and Boost-Build v1, we could add PRELIB).

Here's a piece from my icc.jam :

feature.extend toolset : icc ;

type.set-generated-target-suffix OBJ : <toolset>icc : o ; #
Object Suffix
type.set-generated-target-suffix STATIC_LIB : <toolset>icc : a ; #
Library Suffix

generators.register-c-compiler icc.compile.c : C : OBJ :
<toolset>icc ;
generators.register-composing icc.archive : OBJ : STATIC_LIB :
<toolset>icc ;

actions compile.c
C:/icc/bin/icc12w $(OPTIONS) -D$(DEFINES) -I"$(INCLUDES)"
$(CC_FLAGS) -c -o "$(<:W)" "$(>:W)"

actions piecemeal archive
c:/icc/bin/ilibw $(AR_FLAGS) "$(<:W)" "$(>:W)"

I have tried to add and remove the following, but it had no effect:

rule compile.c
common.Clean clean :
<..!..!..!generic!libs!bqueue/icc/debug/link-static>bqueue.lis ;


as well as this:

rule compile.c
common.Clean clean : bqueue.lis ;
# common.Clean clean : $(1:S=.lis) ;
# common.Clean clean : $(1:G=:S=.lis) ;


Any help would be greatly appreciated!
Or if you have any sample files (other than the examples that come with

Thank you!
Alain Achkar, M. Eng.

js at simplytech dot com


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