summaryrefslogtreecommitdiff
path: root/Jamrules.jam
diff options
context:
space:
mode:
Diffstat (limited to 'Jamrules.jam')
-rw-r--r--Jamrules.jam26
1 files changed, 19 insertions, 7 deletions
diff --git a/Jamrules.jam b/Jamrules.jam
index 54806a6..02bbe6f 100644
--- a/Jamrules.jam
+++ b/Jamrules.jam
@@ -8,7 +8,7 @@ if ( $(toolset:I=^mingw) || $(toolset) = "gcc" )
}
else
{
- GCCPATH = "%$(toolset)_PATH%\bin\\" ;
+ GCCPATH = "%$(toolset)_PATH%\\bin\\" ;
}
CCFLAGS += -D$(defines) ;
@@ -39,12 +39,12 @@ if ( $(toolset:I=^mingw) || $(toolset) = "gcc" )
actions LinkAction
{
- "$(GCCPATH)g++" $(>) -o $(<) -static-libgcc $(LDFLAGS)
+ "$(GCCPATH)g++" $(>) -o $(<) -static-libgcc -static $(LDFLAGS)
}
- actions CoverageAction
+ actions maxtargets 1 CoverageAction
{
- "$(GCCPATH)gcov" $(>:\\) $(GCOVFLAGS) | perl tests/gcov-filter.pl
+ "$(GCCPATH)gcov" $(>) $(GCOVFLAGS) | perl tests/gcov-filter.pl
}
}
else if ( $(toolset:I=^msvc) )
@@ -69,6 +69,15 @@ else if ( $(toolset:I=^msvc) )
CCFLAGS += /W3 ; # lots of warnings at W4 in standard library
}
+ if ( $(toolset) = msvc7 || $(toolset) = msvc71 || $(toolset) = msvc8 )
+ {
+ CCFLAGS += "/I\"%$(toolset)_PATH%\\PlatformSDK\\include\"" ;
+ }
+ else if ( $(toolset) != msvc6 )
+ {
+ CCFLAGS += "/I\"%WINSDK_PATH%\\Include\"" ;
+ }
+
if ( ! ( PUGIXML_NO_EXCEPTIONS in $(defines) ) )
{
CCFLAGS += /EHsc ;
@@ -107,7 +116,7 @@ else if ( $(toolset:I=^msvc) )
actions LinkAction
{
- "%$(toolset)_PATH%\bin$(postfix)\link.exe" /SUBSYSTEM:CONSOLE /NOLOGO /OUT:$(<) $(>) /LIBPATH:"%$(toolset)_PATH%\lib$(postfix)" /LIBPATH:"%$(toolset)_PATH%\PlatformSDK\lib" /LIBPATH:"%WINSDK_PATH%\Lib$(sdk_postfix)" $(LDFLAGS)
+ "%$(toolset)_PATH%\bin$(postfix)\link.exe" /SUBSYSTEM:CONSOLE /NOLOGO /OUT:$(<) /PDB:$(<:S=.pdb) $(>) /LIBPATH:"%$(toolset)_PATH%\lib$(postfix)" /LIBPATH:"%$(toolset)_PATH%\PlatformSDK\lib" /LIBPATH:"%WINSDK_PATH%\Lib$(sdk_postfix)" $(LDFLAGS)
}
actions CoverageAction
@@ -136,7 +145,7 @@ else if ( $(toolset) = "ic8" )
actions ObjectAction
{
- "%$(toolset)_PATH%\bin\icl.exe" /W4 /WX /Wport /Qwd981,444,280,383,909,304,167,177 /I"%$(msvc)_PATH%\include" /I"%$(toolset)_PATH%\include" /c $(>) /Fo$(<) /nologo $(CCFLAGS)
+ "%$(toolset)_PATH%\bin\icl.exe" /W4 /WX /Wport /Qwd981,444,280,383,909,304,167,177,1419 /I"%$(msvc)_PATH%\include" /I"%$(msvc)_PATH%\PlatformSDK\Include" /I"%$(toolset)_PATH%\include" /c $(>) /Fo$(<) /nologo $(CCFLAGS)
}
actions LibraryAction
@@ -183,7 +192,7 @@ else if ( $(toolset:I=^dmc) )
actions LinkAction
{
- "%$(toolset)_PATH%\bin\link.exe" $(>:\\) , $(<:\\) , nul , $(LDFLAGS:\\)
+ "%$(toolset)_PATH%\bin\link.exe" $(>:\\) , $(<:\\) , nul , $(LDFLAGS:\\) -L/co/ma
}
actions CoverageAction
@@ -400,6 +409,9 @@ rule CleanCoverage TARGET
# clean object files
local FILES = $($(SOURCE)_objects:S=.gcda) ;
+ # disable "independent target" warnings
+ NotFile $(FILES) ;
+
DeleteAction $(CLEAN_TARGET) : $(FILES) ;
}