Better compatibility with default Jamfile configuration for MSVC
[SVN r12583]
This commit is contained in:
parent
0c89ad34bc
commit
2790baf4d6
@ -18,13 +18,15 @@ if ! $(COMO_PATH_SETUP) # do this once
|
||||
COMO_STDLIB_PATH ?= $(COMO_BASE)$(SLASH)$(DOTDOT)$(SLASH)libcomo ;
|
||||
|
||||
COMO_BACKEND_SETUP = $(COMO_BACKEND_SETUP) ;
|
||||
newline = "
|
||||
" ;
|
||||
if $(NT)
|
||||
{
|
||||
COMO_BACKEND_INCLUDE_SETUP ?= "set \"COMO_MS_INCLUDE="$(MSVCDir)"/include\"" ;
|
||||
COMO_BACKEND_INCLUDE_SETUP ?= "set \"COMO_MS_INCLUDE="$(VISUALC)"/include\"" ;
|
||||
COMO_BACKEND_LIB_SETUP ?= "set \"LIB="$(COMO_STDLIB_PATH)";%LIB%\"" ;
|
||||
COMO_PATH_SETUP ?= "set \"PATH="$(COMO_BIN_DIRECTORY)";%PATH%\"" ;
|
||||
COMO_BACKEND_SETUP ?= "call "\"$(MSVCDir)$(SLASH)bin$(SLASH)vcvars32"\"" ;
|
||||
COMO_BACKEND_SETUP ?= REM set MSVCDir or COMO_BACKEND_SETUP to set up the back end ;
|
||||
COMO_BACKEND_SETUP ?= "call "\"$(VISUALC)$(SLASH)bin$(SLASH)vcvars32"\"" ;
|
||||
COMO_BACKEND_SETUP ?= REM set VISUALC or COMO_BACKEND_SETUP to set up the back end ;
|
||||
COMO_BASE_SETUP ?= "set \"COMO_BASE=$(COMO_BASE)\"" ;
|
||||
COMO_PATH_SETUP ?= REM set COMO_BASE to set up the path for Comeau ;
|
||||
}
|
||||
@ -47,7 +49,7 @@ flags como STDHDRS <sysinclude> ;
|
||||
flags como LINKFLAGS <linkflags> ;
|
||||
|
||||
flags como STDHDRS : $(COMO_INCLUDE_PATH) ;
|
||||
flags como STDLIBPATH : $(COMO_STDLIB_PATH)$(SLASH) ;
|
||||
flags como STDLIB_PATH : $(COMO_STDLIB_PATH)$(SLASH) ;
|
||||
|
||||
flags como LIBPATH <library-path> ;
|
||||
flags como NEEDLIBS <library-file> ;
|
||||
|
@ -18,16 +18,29 @@ INTEL_TOOL_PATH ?= "" ; # Don't clobber adjoining text if INTELROOT isn't set
|
||||
|
||||
extends-toolset msvc ;
|
||||
|
||||
flags intel-win32 STDHDRS : $(VISUALC)$(SLASH)include ;
|
||||
|
||||
#### Link ####
|
||||
|
||||
rule Link-action
|
||||
{
|
||||
with-command-file intel-win32-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 intel-win32-Link-action bind NEEDLIBS
|
||||
{
|
||||
$(INTEL_TOOL_PATH)xilink /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" $(UNDEFS) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
$(MSVC_SETUP)
|
||||
$(INTEL_TOOL_PATH)xilink /nologo $(NOINCREMENTAL) $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /IMPLIB:$(<[2]) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
}
|
||||
|
||||
#### Cc #####
|
||||
|
@ -18,13 +18,15 @@ if ! $(COMO_PATH_SETUP) # do this once
|
||||
COMO_STDLIB_PATH ?= $(COMO_BASE)$(SLASH)$(DOTDOT)$(SLASH)libcomo ;
|
||||
|
||||
COMO_BACKEND_SETUP = $(COMO_BACKEND_SETUP) ;
|
||||
newline = "
|
||||
" ;
|
||||
if $(NT)
|
||||
{
|
||||
COMO_BACKEND_INCLUDE_SETUP ?= "set \"COMO_MS_INCLUDE="$(MSVCDir)"/include\"" ;
|
||||
COMO_BACKEND_INCLUDE_SETUP ?= "set \"COMO_MS_INCLUDE="$(VISUALC)"/include\"" ;
|
||||
COMO_BACKEND_LIB_SETUP ?= "set \"LIB="$(COMO_STDLIB_PATH)";%LIB%\"" ;
|
||||
COMO_PATH_SETUP ?= "set \"PATH="$(COMO_BIN_DIRECTORY)";%PATH%\"" ;
|
||||
COMO_BACKEND_SETUP ?= "call "\"$(MSVCDir)$(SLASH)bin$(SLASH)vcvars32"\"" ;
|
||||
COMO_BACKEND_SETUP ?= REM set MSVCDir or COMO_BACKEND_SETUP to set up the back end ;
|
||||
COMO_BACKEND_SETUP ?= "call "\"$(VISUALC)$(SLASH)bin$(SLASH)vcvars32"\"" ;
|
||||
COMO_BACKEND_SETUP ?= REM set VISUALC or COMO_BACKEND_SETUP to set up the back end ;
|
||||
COMO_BASE_SETUP ?= "set \"COMO_BASE=$(COMO_BASE)\"" ;
|
||||
COMO_PATH_SETUP ?= REM set COMO_BASE to set up the path for Comeau ;
|
||||
}
|
||||
@ -47,7 +49,7 @@ flags como STDHDRS <sysinclude> ;
|
||||
flags como LINKFLAGS <linkflags> ;
|
||||
|
||||
flags como STDHDRS : $(COMO_INCLUDE_PATH) ;
|
||||
flags como STDLIBPATH : $(COMO_STDLIB_PATH)$(SLASH) ;
|
||||
flags como STDLIB_PATH : $(COMO_STDLIB_PATH)$(SLASH) ;
|
||||
|
||||
flags como LIBPATH <library-path> ;
|
||||
flags como NEEDLIBS <library-file> ;
|
||||
|
@ -18,16 +18,29 @@ INTEL_TOOL_PATH ?= "" ; # Don't clobber adjoining text if INTELROOT isn't set
|
||||
|
||||
extends-toolset msvc ;
|
||||
|
||||
flags intel-win32 STDHDRS : $(VISUALC)$(SLASH)include ;
|
||||
|
||||
#### Link ####
|
||||
|
||||
rule Link-action
|
||||
{
|
||||
with-command-file intel-win32-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 intel-win32-Link-action bind NEEDLIBS
|
||||
{
|
||||
$(INTEL_TOOL_PATH)xilink /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" $(UNDEFS) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
$(MSVC_SETUP)
|
||||
$(INTEL_TOOL_PATH)xilink /nologo $(NOINCREMENTAL) $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" /IMPLIB:$(<[2]) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) "$(FINDLIBS)" @"$(>)"
|
||||
}
|
||||
|
||||
#### Cc #####
|
||||
|
Loading…
Reference in New Issue
Block a user