Boost logo

Boost-Build :

From: muchacho_30 (aachkar_at_[hidden])
Date: 2004-10-08 03:12:44


Sorry for the long post, but I have to explain this in detail.

I am trying to create a toolset called icc for the ImageCraft
compiler, so I am basing it on boost-build/tools/gcc.jam

My biggest problem is the linker. I copied and modified the following

flags OPTIONS <linkflags> ;
flags LINKPATH <library-path> ;
flags LIBRARIES <library-file> ;
flags FINDLIBS-ST <find-static-library> ;

feature libname : : free ; # I added these 2 lines
flags FINDLIBS-ST <libname> ;

actions link bind LIBRARIES # and modified this actions

C:/icc/bin/icc12w $(LN_FLAGS) -g $(OPTIONS) -Lc:/icc/lib -o "$(<:W)"
"$(>:W)" -l$(FINDLIBS-ST)

Now, in my generic/apps/rf/Jamfile, I have:

exe main : # Sources
vectors.c reset.c main.c cfg.c

# Local libraries
task cmd

# Public libraries

# Remote libraries
os c12 c12p

: # Requirements

: # Default Build

lib os : : <name>os ;
lib c12 : : <name>c12 ;
lib c12p : : <name>c12p ;

### Application Specific Files ###

lib task : task_console.c : <link>static ;
lib cmd : con_cmd_interpreter.c : <link>static ;

and one of my public libraries is:

lib bqueue : bqueue.c
: <link>static
#<name>bqueue ### Doesn't work!

My compiler needs to see something like -los to find the library
libos.a in its search path (which is currently hard-coded as
c:\icc\lib). I am getting on the command line something like:

icc12w -o {path}main.exe {path}file1.o file2.o ........ -los -lc12 c12p

which is good, but still missing: -lbqueue -lcrc -lnvm

The manual says we can use the <name> feature for pre-built libraries
(which is what I did for os, c12, c12p), however, the other libraries
(bqueue, crc, nvm) are being passed in the LIBRARIES variable as:


so, I cannot use -l$(LIBRARIES) because the linker appends the prefix
'lib' and the suffix '.a' to the above filenames.

I tried creating a feature called <libname> that would add the value
after it to the variable FINDLIBS-ST , however, it does not seem to
work like I think it should, or maybe I'm missing something?

Any help would be greatly appreciated.



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