mirror of
https://github.com/boostorg/build.git
synced 2026-02-16 01:12:13 +00:00
Merge from trunk.
[SVN r33826]
This commit is contained in:
@@ -46,7 +46,7 @@ generators.register-linker como-win.link
|
||||
: <toolset>como <toolset-como:platform>win ;
|
||||
# Note that status of shared libraries support is not clear, so we don't
|
||||
# define the link.dll generator.
|
||||
generators.register-archiver como-winc.archive
|
||||
generators.register-archiver como-win.archive
|
||||
: OBJ : STATIC_LIB
|
||||
: <toolset>como <toolset-como:platform>win ;
|
||||
|
||||
@@ -84,19 +84,14 @@ flags como-win FINDLIBS <find-shared-library> ;
|
||||
flags como-win FINDLIBS <find-static-library> ;
|
||||
|
||||
RM = [ common.rm-command ] ;
|
||||
nl = "
|
||||
" ;
|
||||
|
||||
#### Link ####
|
||||
|
||||
rule link ( targets + : sources * : properties * )
|
||||
{
|
||||
common.response-file $(targets) : $(sources) : $(targets[2])
|
||||
: $(properties) ;
|
||||
}
|
||||
|
||||
# for como, we repeat all libraries so that dependencies are always resolved
|
||||
actions link bind LIBRARIES RSP
|
||||
actions link bind LIBRARIES
|
||||
{
|
||||
$(CONFIG_COMMAND) --no_version --no_prelink_verbose $(LINKFLAGS) -o "$(<[1]:S=)" @"$(RSP:W)" "$(LIBRARIES)" "$(FINDLIBS:S=.lib)" && $(RM) "$(RSP)"
|
||||
$(CONFIG_COMMAND) --no_version --no_prelink_verbose $(LINKFLAGS) -o "$(<[1]:S=)" @"@($(<[1]:W).rsp:E=$(nl)"$(>)")" "$(LIBRARIES)" "$(FINDLIBS:S=.lib)"
|
||||
}
|
||||
|
||||
actions compile.c
|
||||
@@ -116,9 +111,9 @@ rule archive ( targets + : sources * : properties * )
|
||||
common.response-file $(targets) : $(sources) : $(targets[2]) : $(properties) ;
|
||||
}
|
||||
|
||||
actions updated together piecemeal archive bind RSP
|
||||
actions updated together piecemeal archive
|
||||
{
|
||||
$(CONFIG_COMMAND) --no_version --no_prelink_verbose --prelink_object @"$(RSP:W)"
|
||||
lib $(ARFLAGS) /nologo /out:"$(<:S=.lib)" @"$(RSP:W)" && $(RM) "$(RSP)"
|
||||
$(CONFIG_COMMAND) --no_version --no_prelink_verbose --prelink_object "$(LIBRARIES)"
|
||||
lib $(ARFLAGS) /nologo /out:"$(<:S=.lib)" "$(LIBRARIES)"
|
||||
}
|
||||
|
||||
|
||||
@@ -78,6 +78,22 @@ rule init ( version ? : command * : options * )
|
||||
flags cw.compile .CC $(condition) : $(prefix)$(compiler) ;
|
||||
flags cw.link .LD $(condition) : $(prefix)$(linker) ;
|
||||
flags cw.archive .LD $(condition) : $(prefix)$(linker) ;
|
||||
|
||||
if [ MATCH ^([89]\\.) : $(version) ]
|
||||
{
|
||||
if [ os.name ] = NT
|
||||
{
|
||||
# The runtime libraries
|
||||
flags cw.compile CFLAGS <runtime-link>static/<threading>single/<runtime-debugging>off : -runtime ss ;
|
||||
flags cw.compile CFLAGS <runtime-link>static/<threading>single/<runtime-debugging>on : -runtime ssd ;
|
||||
|
||||
flags cw.compile CFLAGS <runtime-link>static/<threading>multi/<runtime-debugging>off : -runtime sm ;
|
||||
flags cw.compile CFLAGS <runtime-link>static/<threading>multi/<runtime-debugging>on : -runtime smd ;
|
||||
|
||||
flags cw.compile CFLAGS <runtime-link>shared/<runtime-debugging>off : -runtime dm ;
|
||||
flags cw.compile CFLAGS <runtime-link>shared/<runtime-debugging>on : -runtime dmd ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rule default-paths ( version ? ) # FIXME
|
||||
@@ -100,6 +116,9 @@ rule default-paths ( version ? ) # FIXME
|
||||
return $(possible-paths) ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
## declare generators
|
||||
|
||||
generators.register-c-compiler cw.compile.c++ : CPP : OBJ : <toolset>cw ;
|
||||
|
||||
@@ -660,6 +660,8 @@ flags msvc.link FINDLIBS_SA <find-shared-library> ;
|
||||
flags msvc.link LIBRARY_OPTION <toolset>msvc : "" : unchecked ;
|
||||
flags msvc.link LIBRARIES_MENTIONED_BY_FILE : <library-file> ;
|
||||
|
||||
flags msvc.archive AROPTIONS <archiveflags> ;
|
||||
|
||||
|
||||
rule link.dll ( targets + : sources * : properties * )
|
||||
{
|
||||
@@ -677,7 +679,7 @@ if [ os.name ] in NT
|
||||
actions archive
|
||||
{
|
||||
if exist "$(<[1])" DEL "$(<[1])"
|
||||
$(.LD) /lib /NOLOGO /out:"$(<[1])" @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)$(LIBRARIES_MENTIONED_BY_FILE) $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_ST:S=.lib)" $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_SA:S=.lib)")"
|
||||
$(.LD) /lib /NOLOGO $(AROPTIONS) /out:"$(<[1])" @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)$(LIBRARIES_MENTIONED_BY_FILE) $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_ST:S=.lib)" $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_SA:S=.lib)")"
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -685,7 +687,7 @@ else
|
||||
actions archive
|
||||
{
|
||||
$(RM) "$(<[1])"
|
||||
$(.LD) /lib /NOLOGO /out:"$(<[1])" @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)$(LIBRARIES_MENTIONED_BY_FILE) $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_ST:S=.lib)" $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_SA:S=.lib)")"
|
||||
$(.LD) /lib /NOLOGO $(AROPTIONS) /out:"$(<[1])" @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)$(LIBRARIES_MENTIONED_BY_FILE) $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_ST:S=.lib)" $(nl)"$(LIBRARY_OPTION)$(FINDLIBS_SA:S=.lib)")"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user