mirror of
https://github.com/boostorg/build.git
synced 2026-02-15 00:52:16 +00:00
turn off incremental linking of DLLs, which was a major disaster for dependency tracking.
[SVN r11755]
This commit is contained in:
@@ -56,11 +56,21 @@ flags msvc LINKFLAGS <target-type>DLL : /DLL ;
|
||||
rule Link-action
|
||||
{
|
||||
with-command-file msvc-Link-action $(<) : $(>) $(NEEDLIBS) ;
|
||||
if $(<[2])
|
||||
{
|
||||
# incremental linking a DLL causes no end of problems: if the
|
||||
# actual exports don't change, the import .lib file is never
|
||||
# updated. Therefore, the .lib is always out-of-date and gets
|
||||
# rebuilt every time. I'm not sure that incremental linking is
|
||||
# such a great idea in general, but in this case I'm sure we
|
||||
# don't want it.
|
||||
NOINCREMENTAL on $(<) = /INCREMENTAL:NO ;
|
||||
}
|
||||
}
|
||||
|
||||
actions together msvc-Link-action bind NEEDLIBS
|
||||
{
|
||||
$(MSVC_TOOL_PATH)link /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
$(MSVC_TOOL_PATH)link /nologo $(NOINCREMENTAL) $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
}
|
||||
|
||||
#### Cc #####
|
||||
|
||||
@@ -56,11 +56,21 @@ flags msvc LINKFLAGS <target-type>DLL : /DLL ;
|
||||
rule Link-action
|
||||
{
|
||||
with-command-file msvc-Link-action $(<) : $(>) $(NEEDLIBS) ;
|
||||
if $(<[2])
|
||||
{
|
||||
# incremental linking a DLL causes no end of problems: if the
|
||||
# actual exports don't change, the import .lib file is never
|
||||
# updated. Therefore, the .lib is always out-of-date and gets
|
||||
# rebuilt every time. I'm not sure that incremental linking is
|
||||
# such a great idea in general, but in this case I'm sure we
|
||||
# don't want it.
|
||||
NOINCREMENTAL on $(<) = /INCREMENTAL:NO ;
|
||||
}
|
||||
}
|
||||
|
||||
actions together msvc-Link-action bind NEEDLIBS
|
||||
{
|
||||
$(MSVC_TOOL_PATH)link /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
$(MSVC_TOOL_PATH)link /nologo $(NOINCREMENTAL) $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
}
|
||||
|
||||
#### Cc #####
|
||||
|
||||
Reference in New Issue
Block a user