2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-14 12:42:11 +00:00

Initial commit

[SVN r11222]
This commit is contained in:
Beman Dawes
2001-09-24 15:22:49 +00:00
parent ee7d600ac3
commit a9bbd7bf70
2 changed files with 198 additions and 0 deletions

99
intel-win32-tools.jam Normal file
View File

@@ -0,0 +1,99 @@
# Intel Compiler (on Windows, using the Microsoft Standard Library)
# (C) Copyright David Abrahams 2001. Permission to copy, use,
# modify, sell and distribute this software is granted provided this
# copyright notice appears in all copies. This software is provided
# "as is" without express or implied warranty, and with no claim as
# to its suitability for any purpose.
# Adapted from msvc-tools.jam by Beman Dawes
# compute INTEL tool path
# You can either put the intel-win32 bin directory in your PATH, or you can set
# INTELROOT to point at the intel-win32 installation directory
INTEL_TOOL_PATH = $(INTELROOT)$(SLASH)bin$(SLASH) ;
INTEL_TOOL_PATH ?= "" ; # Don't clobber adjoining text if INTELROOT isn't set
flags intel-win32 CFLAGS <debug-symbols>on : /Zi ;
flags intel-win32 LINKFLAGS <debug-symbols>on : /DEBUG ;
flags intel-win32 CFLAGS <optimization>off : /Od ;
flags intel-win32 CFLAGS <optimization>speed : /O2 ;
flags intel-win32 CFLAGS <optimization>space : /O1 ;
flags intel-win32 CFLAGS <inlining>off : /Ob0 ;
flags intel-win32 CFLAGS <inlining>on : /Ob1 ;
flags intel-win32 CFLAGS <inline>full : /Ob2 ;
flags intel-win32 CFLAGS <exception-handling>on : /GX ;
flags intel-win32 CFLAGS <rtti>on : /GR ;
# Note that these two options actually imply multithreading support on INTEL
# because there is no single-threaded dynamic runtime library. Specifying
# <threading>multi would be a bad idea, though, because no option would be
# matched when the build uses the default settings of <runtime-link>dynamic
# and <threading>single.
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>dynamic : /MD ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>dynamic : /MDd ;
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>static/<threading>single : /ML ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>static/<threading>single : /MLd ;
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>static/<threading>multi : /MT ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>static/<threading>multi : /MTd ;
flags intel-win32 DEFINES <define> ;
flags intel-win32 UNDEFS <undef> ;
flags intel-win32 HDRS <include> ;
flags intel-win32 STDHDRS : $(INTELROOT)$(SLASH)include ;
flags intel-win32 STDLIBPATH : $(INTELROOT)$(SLASH)lib ;
flags intel-win32 LIBPATH <library-path> ;
flags intel-win32 NEEDLIBS <library-file> ;
flags intel-win32 NEEDLIBS <find-library> ;
flags intel-win32 LINKFLAGS <target-type>DLL : /DLL ;
#### Link ####
rule Link-action
{
intel-win32-Link-action $(<) : $(>) ;
}
actions intel-win32-Link-action bind NEEDLIBS
{
$(INTEL_TOOL_PATH)xilink /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" $(UNDEFS) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) $(NEEDLIBS) "$(>)"
}
#### Cc #####
rule Cc-action
{
intel-win32-Cc-action $(<) : $(>) ;
}
actions intel-win32-Cc-action
{
$(INTEL_TOOL_PATH)icl /Zm400 -nologo -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -Fo"$(<)" "$(>)"
}
#### C++ ####
rule C++-action
{
intel-win32-C++-action $(<) : $(>) ;
}
actions intel-win32-C++-action
{
$(INTEL_TOOL_PATH)icl /Zm400 -nologo -GX -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -Fo"$(<)" -Tp"$(>)"
}
#### Archive ####
rule Archive-action
{
intel-win32-Archive-action $(<) : $(>) ;
}
actions updated together piecemeal intel-win32-Archive-action
{
if exist "$(<)" set _$(<:B)_="$(<)"
$(INTEL_TOOL_PATH)xilink /lib /out:"$(<)" %_$(<:B)_% "$(>)"
}

99
v1/intel-win32-tools.jam Normal file
View File

@@ -0,0 +1,99 @@
# Intel Compiler (on Windows, using the Microsoft Standard Library)
# (C) Copyright David Abrahams 2001. Permission to copy, use,
# modify, sell and distribute this software is granted provided this
# copyright notice appears in all copies. This software is provided
# "as is" without express or implied warranty, and with no claim as
# to its suitability for any purpose.
# Adapted from msvc-tools.jam by Beman Dawes
# compute INTEL tool path
# You can either put the intel-win32 bin directory in your PATH, or you can set
# INTELROOT to point at the intel-win32 installation directory
INTEL_TOOL_PATH = $(INTELROOT)$(SLASH)bin$(SLASH) ;
INTEL_TOOL_PATH ?= "" ; # Don't clobber adjoining text if INTELROOT isn't set
flags intel-win32 CFLAGS <debug-symbols>on : /Zi ;
flags intel-win32 LINKFLAGS <debug-symbols>on : /DEBUG ;
flags intel-win32 CFLAGS <optimization>off : /Od ;
flags intel-win32 CFLAGS <optimization>speed : /O2 ;
flags intel-win32 CFLAGS <optimization>space : /O1 ;
flags intel-win32 CFLAGS <inlining>off : /Ob0 ;
flags intel-win32 CFLAGS <inlining>on : /Ob1 ;
flags intel-win32 CFLAGS <inline>full : /Ob2 ;
flags intel-win32 CFLAGS <exception-handling>on : /GX ;
flags intel-win32 CFLAGS <rtti>on : /GR ;
# Note that these two options actually imply multithreading support on INTEL
# because there is no single-threaded dynamic runtime library. Specifying
# <threading>multi would be a bad idea, though, because no option would be
# matched when the build uses the default settings of <runtime-link>dynamic
# and <threading>single.
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>dynamic : /MD ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>dynamic : /MDd ;
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>static/<threading>single : /ML ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>static/<threading>single : /MLd ;
flags intel-win32 CFLAGS <runtime-build>release/<runtime-link>static/<threading>multi : /MT ;
flags intel-win32 CFLAGS <runtime-build>debug/<runtime-link>static/<threading>multi : /MTd ;
flags intel-win32 DEFINES <define> ;
flags intel-win32 UNDEFS <undef> ;
flags intel-win32 HDRS <include> ;
flags intel-win32 STDHDRS : $(INTELROOT)$(SLASH)include ;
flags intel-win32 STDLIBPATH : $(INTELROOT)$(SLASH)lib ;
flags intel-win32 LIBPATH <library-path> ;
flags intel-win32 NEEDLIBS <library-file> ;
flags intel-win32 NEEDLIBS <find-library> ;
flags intel-win32 LINKFLAGS <target-type>DLL : /DLL ;
#### Link ####
rule Link-action
{
intel-win32-Link-action $(<) : $(>) ;
}
actions intel-win32-Link-action bind NEEDLIBS
{
$(INTEL_TOOL_PATH)xilink /nologo $(LINKFLAGS) /PDB:"$(<[1]:S=.pdb)" /out:"$(<[1])" $(UNDEFS) /LIBPATH:$(LIBPATH) /LIBPATH:$(STDLIBPATH) $(NEEDLIBS) "$(>)"
}
#### Cc #####
rule Cc-action
{
intel-win32-Cc-action $(<) : $(>) ;
}
actions intel-win32-Cc-action
{
$(INTEL_TOOL_PATH)icl /Zm400 -nologo -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -Fo"$(<)" "$(>)"
}
#### C++ ####
rule C++-action
{
intel-win32-C++-action $(<) : $(>) ;
}
actions intel-win32-C++-action
{
$(INTEL_TOOL_PATH)icl /Zm400 -nologo -GX -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -Fo"$(<)" -Tp"$(>)"
}
#### Archive ####
rule Archive-action
{
intel-win32-Archive-action $(<) : $(>) ;
}
actions updated together piecemeal intel-win32-Archive-action
{
if exist "$(<)" set _$(<:B)_="$(<)"
$(INTEL_TOOL_PATH)xilink /lib /out:"$(<)" %_$(<:B)_% "$(>)"
}