Hi there,
I am trying to use tag feature for the project I have below is the rule itself;

rule tag ( name : type ? : property-set )
{  
    ECHO $(type) ;
    local tag = ;
    local properties = [ $(property-set).raw ] ;
    if <variant>debug in $(properties) { tag = d ; }
    if $(type) = SHARED_LIB
    {
        ECHO $(tag)shared ;
        local suffix = $(tag).dll ;
        return $(name)$(suffix:E="") ;
    }
    if $(type) = IMPORT_LIB
    {
        ECHO $(tag)shared ;
        local suffix = $(tag).lib ;
        return $(name)$(suffix:E="") ;
    }
    if $(type) = STATIC_LIB
    { 
        ECHO $(tag)static ;   
        local suffix = s$(tag).lib ;
        return $(name)$(suffix:E="") ;
    }

}

if i use static everything works fine, but when the type is shared the resulting library name is same as if the return value of tag haven't used at all

OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
OBJ
SHARED_LIB
dshared
IMPORT_LIB
dshared
...patience...
...found 378 targets...
...updating 5 targets...
compile-c-c++ bin\msvc-8.0\debug\threading-multi\DtsScenario.obj
DtsScenario.cxx
msvc.link.dll bin\msvc-8.0\debug\threading-multi\FmsUtil.dll
   Creating library bin\msvc-8.0\debug\threading-multi\FmsUtil.lib and object bi
n\msvc-8.0\debug\threading-multi\FmsUtil.exp
common.copy ..\bin\FmsUtil.dll
        1 file(s) copied.
common.copy ..\lib\FmsUtil.lib
        1 file(s) copied.
...updated 5 targets...

what is there to fix it?
Thanks
hurcan




Stay up to date on your PC, the Web, and your mobile phone with Windows Live. See Now