diff -rupNd e:\boost_1_33_1.orig/boost/config/auto_link.hpp e:\boost_1_33_1/boost/config/auto_link.hpp --- e:\boost_1_33_1.orig/boost/config/auto_link.hpp 2005-08-16 12:30:58.000000000 +0200 +++ e:\boost_1_33_1/boost/config/auto_link.hpp 2008-04-21 19:20:31.421875000 +0200 @@ -124,11 +124,16 @@ BOOST_LIB_VERSION: The Boost version, // vc71: # define BOOST_LIB_TOOLSET "vc71" -#elif defined(BOOST_MSVC) && (BOOST_MSVC >= 1400) +#elif defined(BOOST_MSVC) && (BOOST_MSVC == 1400) // vc80: # define BOOST_LIB_TOOLSET "vc80" +#elif defined(BOOST_MSVC) && (BOOST_MSVC == 1500) + + // vc90: +# define BOOST_LIB_TOOLSET "vc90" + #elif defined(__BORLANDC__) // CBuilder 6: diff -rupNd e:\boost_1_33_1.orig/boost/config/compiler/visualc.hpp e:\boost_1_33_1/boost/config/compiler/visualc.hpp --- e:\boost_1_33_1.orig/boost/config/compiler/visualc.hpp 2005-09-10 05:16:40.000000000 +0200 +++ e:\boost_1_33_1/boost/config/compiler/visualc.hpp 2008-04-21 20:21:52.000000000 +0200 @@ -158,8 +158,8 @@ #error "Compiler not supported or configured - please reconfigure" #endif // -// last known and checked version is 1400 (VC8): -#if (_MSC_VER > 1400) +// last known and checked version is 1500 (VC9): +#if (_MSC_VER > 1500) # if defined(BOOST_ASSERT_CONFIG) # error "Unknown compiler version - please run the configure tests and report the results" # else diff -rupNd e:\boost_1_33_1.orig/boost/signals/detail/named_slot_map.hpp e:\boost_1_33_1/boost/signals/detail/named_slot_map.hpp --- e:\boost_1_33_1.orig/boost/signals/detail/named_slot_map.hpp 2005-11-02 13:48:40.000000000 +0100 +++ e:\boost_1_33_1/boost/signals/detail/named_slot_map.hpp 2008-04-21 19:23:05.203125000 +0200 @@ -100,7 +100,7 @@ public: void increment(); bool equal(const named_slot_map_iterator& other) const; -#if BOOST_WORKAROUND(_MSC_VER, <= 1400) +#if BOOST_WORKAROUND(_MSC_VER, <= 1500) void decrement(); void advance(difference_type); #endif diff -rupNd e:\boost_1_33_1.orig/libs/signals/src/named_slot_map.cpp e:\boost_1_33_1/libs/signals/src/named_slot_map.cpp --- e:\boost_1_33_1.orig/libs/signals/src/named_slot_map.cpp 2005-11-02 13:48:40.000000000 +0100 +++ e:\boost_1_33_1/libs/signals/src/named_slot_map.cpp 2008-04-21 19:23:38.250000000 +0200 @@ -64,7 +64,7 @@ named_slot_map_iterator::equal(const nam || slot_ == other.slot_)); } -#if BOOST_WORKAROUND(_MSC_VER, <= 1400) +#if BOOST_WORKAROUND(_MSC_VER, <= 1500) void named_slot_map_iterator::decrement() { assert(false); } void named_slot_map_iterator::advance(difference_type) { assert(false); } #endif diff -rupNd e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-tools.html e:\boost_1_33_1/tools/build/v1/vc-9_0-tools.html --- e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-tools.html 1970-01-01 01:00:00.000000000 +0100 +++ e:\boost_1_33_1/tools/build/v1/vc-9_0-tools.html 2005-11-23 08:07:26.000000000 +0100 @@ -0,0 +1,149 @@ + + + + + + + + + Boost.Build - vc-8_0 toolset + + + + + + + + + +
+

+

+
+

Boost.Build

+ +

vc-8_0 toolset

+
+
+ +

Introduction

+ +

Boost.Build's vc-8_0 toolset supports the + Microsoft Visual C++ .NET + 2005 (Visual Studio or Express edition). This toolset is an + extention to the msvc toolset + and is useful for when you need to have access to several versions of + Visual C++.

+ +

Configuration Variables

+

The vc-8_0 toolset responds to + the following variables which can be set in the environment or configured on + the jam command-line using -sVARIABLE_NAME=value: +

+ + + + + + + + + + + + + + + + + + + + + +
Variable NameSemanticsDefaultNotes
VC80_ROOTPath to installation of VC8 + C:\Program Files\Microsoft Visual Studio 8\VCIf MSVCDir is set in the environment, the toolset will + assume VCVARS32.BAThas already been called, and will + ignore this variable.
+

Note about warnings

+

The implementation of the standard C++ library bundled with + Visual C++ .NET 2005 might issue a number of spurious + warnings feature is deprecated when using Boost headers. The + warnings come from the "Safe" C++ Library, which labels many + standard C and C++ library constructs as deprecated when in fact + they may be used safely and + correctly. Define _SCL_SECURE_NO_DEPRECATE globally to + eliminate these errors. Alternatively, you can enclose all includes + of Boost headers and C++ standard library headers with #pragma + warning(disable:4996), as demonstrated below:

+ +


+  #pragma warning(push)

+  #pragma warning(disable : 4996)
+ #include <vector> + #include <algorithm> + #include <boost/shared_ptr.hpp> + #include <boost/noncopyable.hpp> + #include <boost/array.hpp>
+ #pragma warning(pop)
+
+

+

Note about Visual C++ 2005 Express Edition

+

Visual C++ 2005 Express Edition is distributed without Windows API + headers and libraries (that is Platform SDK). These headers and libraries + are required to build and use boost on Windows and can be + + downloaded from Microsoft web site, which also provides + + installation instruction. The only required component of + Platform SDK is "Microsoft Windows Core SDK". After installation is + completed, you will need to manually edit vsvars32.bat + file in %VS80COMNTOOLS% directory (default is + C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\ ) + and append full path to Platform SDK include, + lib and bin subdirectories to + INCLUDE, LIB and PATH + environment variables that are set in this file, respectively. + Alternatively, you might install Platform SDK to directory + %VC80_ROOT%\PlatformSDK (which usually resolves to + C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK ), + because this directory name is apparently preconfigured in default + installation of Visual C++ 2005 Express.

+ +

Boost build will call vsvars32.bat batch file + (indirectly through %VC80_ROOT%\bin\vcvars32.bat) in + order to set environment variables that are required by Visual C++ compiler + and linker if MSVCDir enrironment variable is not set. + If you set MSVCDir environment variable in your computer + configuration or any other batch file executed before boost build is + commenced, please make sure to adjust INCLUDE and + LIB accordingly in order to enable Visual C++ to use Platform SDK headers and libraries.

+ +

Please note that boost does not support Visual C++ 2005 + projects that are targeted on CLR platform. Currently the only supported + platform for Visual C++ line of compilers is Win32. This does not preclude + building GUI applications that use boost, because Win32 supports development + of Windows GUI applications, even though Visual C++ 2005 Express + lacks ATL, MFC or Windows application project template. + If you need GUI framework that can be used with Visual C++ 2005 Express, try + Win32 GUI + or SmartWin++ + or WTL + or many others + .

+
+ +

Revised + 23 November, 2005

+ +

Copyright © Dave Abrahams 2002, Bronek Kozicki 2005.

+ +

Distributed under the Boost Software License, Version 1.0. (See + accompanying file LICENSE_1_0.txt or + copy at www.boost.org/LICENSE_1_0.txt)

+ + + diff -rupNd e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-tools.jam e:\boost_1_33_1/tools/build/v1/vc-9_0-tools.jam --- e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-tools.jam 1970-01-01 01:00:00.000000000 +0100 +++ e:\boost_1_33_1/tools/build/v1/vc-9_0-tools.jam 2008-04-21 20:03:35.546875000 +0200 @@ -0,0 +1,35 @@ +extends-toolset msvc ; + +# singleton variables... +set-as-singleton VC90_ROOT ; + +if ! $(MSVCDir) +{ + if $(VS90COMNTOOLS) + { + VC90_ROOT ?= $(VS90COMNTOOLS:J=" ")..\\..\\VC ; + } + else + { + ProgramFiles ?= $(PROGRAMFILES) ; + VC90_ROOT ?= $(ProgramFiles:J=" ")"\\Microsoft Visual Studio 9.0\\VC" ; + } +} + +if $(VC90_ROOT) +{ + VC_TOOL_PATH = "$(VC90_ROOT)"\\bin\\ ; + VC_SETUP = "CALL \"$(VC_TOOL_PATH)vcvars32.BAT\" >nul" ; +} + +VC_PDB_NAME = vc90 ; +VC_MANIFEST = "mt -manifest " ; +VC_OUTPUTRESOURCE = -outputresource: ; + +feature native-wchar_t : on off ; +flags vc-9_0 C++FLAGS : /Zc:forScope ; +flags vc-9_0 C++FLAGS on : /Zc:wchar_t ; + +# The following #// line will be used by the regression test table generation +# program as the column heading for HTML tables. Must not include version number. +#//Micro-
soft
VC++
diff -rupNd e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-x86_amd64-tools.jam e:\boost_1_33_1/tools/build/v1/vc-9_0-x86_amd64-tools.jam --- e:\boost_1_33_1.orig/tools/build/v1/vc-9_0-x86_amd64-tools.jam 1970-01-01 01:00:00.000000000 +0100 +++ e:\boost_1_33_1/tools/build/v1/vc-9_0-x86_amd64-tools.jam 2008-04-21 20:03:57.625000000 +0200 @@ -0,0 +1,35 @@ +# +# This is my first cut at getting the x86 to amd64 cross compiler working +# with a change also to lwm_win32.hpp (no long_type is defined in THIS compiler) +# everything SEEMS to compile, tho it seems to step on the vc9.0 libraries +# I suspect we'll need to change that +# the executables fail to run on a 32bit OS, I'll install WinXP64 when I get back +# from my trip.... Wednesday Oct 6 and see what happens +# +# THIS IS PRELIMINARY ONLY +# +extends-toolset msvc ; + +# singleton variables... +set-as-singleton VC90_ROOT ; + +if ! $(MSVCDir) +{ + if $(VS90COMNTOOLS) + { + VC90_ROOT ?= $(VS90COMNTOOLS:J=" ")..\\..\\VC ; + } + else + { + ProgramFiles ?= $(PROGRAMFILES) ; + VC90_ROOT ?= $(ProgramFiles:J=" ")"\\Microsoft Visual Studio .NET Whidbey\\VC7" ; + } + VC_TOOL_PATH = "$(VC90_ROOT)"\\bin\\x86_amd64\\ ; + VC_SETUP = "CALL \"$(VC_TOOL_PATH)\\VCVARSamd64.bat\" >nul" ; +} + +VC_PDB_NAME = vc90 ; + +# The following #// line will be used by the regression test table generation +# program as the column heading for HTML tables. Must not include version number. +#//Micro-
soft
VC++
diff -rupNd e:\boost_1_33_1.orig/tools/build/v2/tools/msvc-config.jam e:\boost_1_33_1/tools/build/v2/tools/msvc-config.jam --- e:\boost_1_33_1.orig/tools/build/v2/tools/msvc-config.jam 2005-04-20 18:23:28.000000000 +0200 +++ e:\boost_1_33_1/tools/build/v2/tools/msvc-config.jam 2008-04-21 19:37:09.765625000 +0200 @@ -9,7 +9,7 @@ import toolset : using ; if [ os.name ] = NT { - for local R in 8.0 7.1 7.0 + for local R in 9.0 8.0 7.1 7.0 { local vc-path = [ W32_GETREG "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\$(R)\\Setup\\VC" diff -rupNd e:\boost_1_33_1.orig/tools/build/v2/tools/msvc.jam e:\boost_1_33_1/tools/build/v2/tools/msvc.jam --- e:\boost_1_33_1.orig/tools/build/v2/tools/msvc.jam 2005-07-15 08:35:58.000000000 +0200 +++ e:\boost_1_33_1/tools/build/v2/tools/msvc.jam 2008-04-21 20:28:05.546875000 +0200 @@ -122,7 +122,11 @@ rule init ( { # Even if version is not explicitly specified, try to detect the version # from the path. - if [ MATCH "(Microsoft Visual Studio 8)" : $(command) ] + if [ MATCH "(Microsoft Visual Studio 9)" : $(command) ] + { + version = 9.0 ; + } + else if [ MATCH "(Microsoft Visual Studio 8)" : $(command) ] { version = 8.0 ; } @@ -182,6 +186,7 @@ rule default-paths ( version ? ) local version-7.0-path = $(version-7-path) ; local version-7.1-path = $(ProgramFiles)"\\Microsoft Visual Studio .NET 2003\\VC7" ; local version-8.0-path = $(ProgramFiles)"\\Microsoft Visual Studio 8" ; + local version-9.0-path = $(ProgramFiles)"\\Microsoft Visual Studio 9.0" ; local VS71COMNTOOLS = [ modules.peek : VS71COMNTOOLS ] ; if $(VS71COMNTOOLS) @@ -207,12 +212,12 @@ rule default-paths ( version ? ) } else { - possible-paths += $(version-8.0-path) $(version-7.1-path) $(version-7.0-path) $(version-6-path) ; + possible-paths += $(version-9.0-path) $(version-8.0-path) $(version-7.1-path) $(version-7.0-path) $(version-6-path) ; } # The vccars32.bat is actually in "bin" directory. # (except for free VC7.1 tools) - possible-paths = $(possible-paths)\\bin $(possible-paths) ; + possible-paths = $(possible-paths)\\VC\\bin $(possible-paths)\\bin $(possible-paths) ; return $(possible-paths) ; }