diff --git a/config.htm b/config.htm
index 6ee593ab..3a802c3d 100644
--- a/config.htm
+++ b/config.htm
@@ -21,6 +21,7 @@
Macros that describe optional features
Boost Helper Macros
Boost Informational Macros
+ Macros for libraries with separate source code
Guidelines for Boost Authors
Adding New Defect Macros
Adding New Feature Test Macros
@@ -216,6 +217,22 @@ export LIBS="-lpthread"
BOOST_HAS_PTHREADS is set. This option may be set automatically by the config
system when it detects that the compiler is in "strict mode".
+
+ BOOST_DISABLE_ABI_HEADERS |
+ Stops boost headers from including any prefix/suffix headers that normally
+ control things like struct packing and alignment. |
+
+
+ BOOST_ABI_PREFIX |
+ A prefix header to include in place of whatever boost.config would normally
+ select, any replacement should set up struct packing and alignment options as
+ required. |
+
+
+ BOOST_ABI_SUFFIX |
+ A suffix header to include in place of whatever boost.config would normally
+ select, any replacement should undo the effects of the prefix header. |
+
Advanced configuration usage
By setting various macros on the compiler command line or by editing <boost/config/user.hpp>,
@@ -709,6 +726,13 @@ void g() { return f(); }
Platform |
The platform has the POSIX API clock_gettime. |
+
+ BOOST_HAS_DECLSPEC
+ |
+ Compiler |
+ The compiler uses __declspec(dllexport) and __declspec(dllimport) to
+ export/import symbols from dll's. |
+
BOOST_HAS_DIRENT_H |
Platform |
@@ -913,23 +937,21 @@ void g() { return f(); }
BOOST_EXPLICIT_TEMPLATE_TYPE(t)
- BOOST_EXPLICIT_TEMPLATE_NON_TYPE(t, v)
-
- BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(t)
- BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(t, v)
+ BOOST_EXPLICIT_TEMPLATE_NON_TYPE(t, v)
+ BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(t)
+ BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(t, v)
|
- Some compilers silently "fold" different function template
- instantiations if some of the template parameters don't appear
- in the function parameter list. For instance:
-
- #include <iostream>
+ Some compilers silently "fold" different function template instantiations if
+ some of the template parameters don't appear in the function parameter list.
+ For instance:
+ #include <iostream>
#include <ostream>
#include <typeinfo>
template <int n>
void f() { std::cout << n << ' '; }
- template <typename T>
+ template <typename T>
void g() { std::cout << typeid(T).name() << ' '; }
int main() {
@@ -940,29 +962,28 @@ void g() { return f(); }
g<double>();
}
- incorrectly outputs "2 2 double double " on VC++ 6.
-
- These macros, to be used in the function parameter list, fix the
- problem without effects on the calling syntax. For instance, in
- the case above write:
-
+ incorrectly outputs "2 2 double double " on VC++ 6. These macros, to
+ be used in the function parameter list, fix the problem without effects on the
+ calling syntax. For instance, in the case above write:
+
template <int n>
void f(BOOST_EXPLICIT_TEMPLATE_NON_TYPE(int, n)) { ... }
template <typename T>
void g(BOOST_EXPLICIT_TEMPLATE_TYPE(T)) { ... }
-
- Beware that they can declare (for affected compilers) a dummy
- defaulted parameter, so they
-
a) should be always invoked *at the end* of the parameter list
- b) can't be used if your function template is multiply declared.
-
-
- Furthermore, in order to add any needed comma separator, an "APPEND_*"
- version must be used when the macro invocation appears after a normal
- parameter declaration or after the invocation of another macro of this
- same group.
+ Beware that they can declare (for affected compilers) a dummy defaulted parameter,
+ so they
+
+
+ a) should be always invoked *at the end* of the parameter list
+
+ b) can't be used if your function template is multiply declared.
+
+
+ Furthermore, in order to add any needed comma separator, an "APPEND_*" version
+ must be used when the macro invocation appears after a normal parameter
+ declaration or after the invocation of another macro of this same group.
|
|
@@ -1076,7 +1097,93 @@ void g() { return f(); }
- Guidelines for Boost Authors
+ Macros for libraries with separate source code
+ The following macros and helper headers are of use to authors whose libraries
+ include separate source code, and are intended to address two issues: fixing
+ the ABI of the compiled library, and selecting which compiled library to link
+ against based upon the compilers settings.
+ ABI Fixing
+ When linking against a pre-compiled library it vital that the ABI used by the
+ compiler when building the library matches exactly the ABI
+ used by the code using the library. In this case ABI means things like
+ the struct packing arrangement used, the name mangling scheme used, or the size
+ of some types (enum types for example). This is separate from things like
+ threading support, or runtime library variations, which have to be dealt with
+ by build variants. To put this in perspective there is one compiler
+ (Borland's) that has so many compiler options that make subtle changes to the
+ ABI, that at least in theory there 3200 combinations, and that's without
+ considering runtime library variations. Fortunately these variations can
+ be managed by #pragma's that tell the compiler what ABI to use for the types
+ declared in your library, in order to avoid sprinkling #pragma's all over the
+ boost headers, there are some prefix and suffix headers that do the job,
+ typical usage would be:
+
+#ifndef MY_INCLUDE_GUARD
+#define MY_INCLUDE_GUARD
+
+// all includes go here:
+#include <boost/config.hpp>
+#include <whatever>
+
+#ifdef BOOST_HAS_ABI_HEADERS
+# include BOOST_ABI_PREFIX
+#endif
+
+namespace boost{
+// your code goes here
+}
+
+#ifdef BOOST_HAS_ABI_HEADERS
+# include BOOST_ABI_SUFFIX
+#endif
+
+
+#endif // include guard
+
+ The user can disable this mechanism by defining BOOST_DISABLE_ABI_HEADERS, or
+ they can define BOOST_ABI_PREFIX and/or BOOST_ABI_SUFFIX to point to their own
+ prefix/suffix headers if they so wish.
+ Automatic library selection
+ It is essential that users link to a build of a library which was built against
+ the same runtime library that their application will be built against - if this
+ does not happen then the library will not be binary compatible with their own
+ code - and there is a high likelihood that their application will
+ experience runtime crashes. These kinds of problems can be extremely
+ time consuming and difficult to debug, and often lead to frustrated users and
+ authors alike (simply selecting the right library to link against is not as
+ easy as it seems when their are 6-8 of them to chose from, and some users seem
+ to be blissfully unaware that there even are different runtimes available to
+ them).
+ To solve this issue, some compilers allow source code to contain #pragma's that
+ instruct the linker which library to link against, all the user need do is
+ include the headers they need, place the compiled libraries in their library
+ search path, and the compiler and linker do the rest. Boost.config
+ supports this via the header <boost/config/auto_link.hpp>, before
+ including this header one or more of the following macros need to be defined:
+
+
+
+ BOOST_LIB_NAME |
+ Required: A string containing the basename of the library, for example
+ "boost_regex". |
+
+
+ BOOST_DYN_LINK |
+ Optional: when set link to dll rather than static library. |
+
+
+ BOOST_LIB_DIAGNOSTIC |
+ Optional: when set the header will print out the name of the library selected
+ (useful for debugging). |
+
+
+
+ If the compiler supports this mechanism, then it will be told to link against
+ the appropriately named library, the actual algorithm used to mangle the name
+ of the library is documented inside <boost/config/auto_link.hpp> and has
+ to match that used to create the libraries via bjam (see boost.regex Jamfile
+ for an example: we're working on simplifying this).
+ Guidelines for Boost Authors
The boost/config.hpp header is used to
pass configuration information to other boost files, allowing them to cope with
platform dependencies such as arithmetic byte ordering, compiler pragmas, or
diff --git a/test/Jamfile b/test/Jamfile
index 4f795b9a..9b0a49db 100644
--- a/test/Jamfile
+++ b/test/Jamfile
@@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Sun Aug 3 11:37:53 GMTST 2003,
+# This file was automatically generated on Fri Aug 15 12:02:00 GMTST 2003,
# by libs/config/tools/generate
#
# If you need to alter build preferences then set them in
@@ -16,6 +16,7 @@ include $(BOOST_ROOT)/libs/config/test/options.jam ;
run config_info.cpp config_options ;
run config_test.cpp ../../test/build/boost_test_exec_monitor config_options ;
run limits_test.cpp config_test_options ;
+run abi/abi_test.cpp abi/main.cpp config_options ;
test-suite "BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP" :
[ run no_arg_dep_lookup_pass.cpp config_test_options ]
@@ -251,4 +252,3 @@ test-suite "BOOST_MSVC_STD_ITERATOR" :
test-suite "BOOST_HAS_WINTHREADS" :
[ run has_winthreads_pass.cpp config_test_options ]
[ compile-fail has_winthreads_fail.cpp config_test_options ] ;
-
diff --git a/test/abi/abi_test.cpp b/test/abi/abi_test.cpp
new file mode 100644
index 00000000..de17fe0b
--- /dev/null
+++ b/test/abi/abi_test.cpp
@@ -0,0 +1,26 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+
+#include "abi_test.hpp"
+
+
+char abi_test::virtual_one()const
+{
+ return c;
+}
+
+boost::int32_t abi_test::virtual_two()const
+{
+ return i;
+}
+
+abi_test::abi_test()
+{
+ c = 0x12;
+ i = 0x5678;
+}
diff --git a/test/abi/abi_test.hpp b/test/abi/abi_test.hpp
new file mode 100644
index 00000000..de2fb61b
--- /dev/null
+++ b/test/abi/abi_test.hpp
@@ -0,0 +1,51 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+
+#ifndef BOOST_ABI_TEST_HPP
+#define BOOST_ABI_TEST_HPP
+
+#include
+#include
+
+#ifdef BOOST_HAS_ABI_HEADERS
+#include BOOST_ABI_PREFIX
+#endif
+
+//
+// the following class is designed to break if the ABI
+// it's compiled with does not match that of the client
+// calling it....
+//
+
+struct empty{};
+
+class abi_test : protected empty
+{
+private:
+ empty e;
+ char c;
+ boost::int32_t i;
+public:
+ inline char inline_one()const
+ { return c; }
+ inline boost::int32_t inline_two()const
+ { return i; }
+
+ virtual char virtual_one()const;
+ virtual boost::int32_t virtual_two()const;
+
+ abi_test();
+};
+
+
+
+#ifdef BOOST_HAS_ABI_HEADERS
+#include BOOST_ABI_SUFFIX
+#endif
+
+#endif // BOOST_ABI_TEST_HPP
\ No newline at end of file
diff --git a/test/abi/main.cpp b/test/abi/main.cpp
new file mode 100644
index 00000000..94c5a826
--- /dev/null
+++ b/test/abi/main.cpp
@@ -0,0 +1,29 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+//
+// before we do anything else, we need to mess with the compilers ABI:
+//
+#ifdef _MSC_VER
+#pragma pack(1)
+#elif defined(__BORLANDC__)
+#pragma option -Ve- -Vx- -a1 -b-
+#endif
+#include
+#include "abi_test.hpp"
+
+
+int main()
+{
+ abi_test t;
+ if((t.inline_one() != t.virtual_one()) || (t.inline_two() != t.virtual_two()))
+ {
+ fwrite("Failed ABI test", 1, 15, stdout);
+ return -1;
+ }
+ return 0;
+}
\ No newline at end of file
diff --git a/test/config_test.cpp b/test/config_test.cpp
index 50a8a642..42e8f382 100644
--- a/test/config_test.cpp
+++ b/test/config_test.cpp
@@ -10,7 +10,7 @@
// Do not edit this file, it was generated automatically by
// ../tools/generate from boost_*.cxx on
-// Sun Aug 3 11:37:53 GMTST 2003
+// Fri Aug 15 12:02:00 GMTST 2003
#include
#define BOOST_INCLUDE_MAIN
diff --git a/test/link/Jamfile b/test/link/Jamfile
new file mode 100644
index 00000000..48bd6603
--- /dev/null
+++ b/test/link/Jamfile
@@ -0,0 +1,12 @@
+# copyright John Maddock 2003
+
+subproject libs/config/test/link ;
+
+dll link_test : link_test.cpp
+ :
+ dynamic
+ BOOST_DYN_LINK=1
+ $(BOOST_ROOT)
+ :
+ debug release
+ ;
diff --git a/test/link/bc_gen.sh b/test/link/bc_gen.sh
new file mode 100644
index 00000000..23a9af11
--- /dev/null
+++ b/test/link/bc_gen.sh
@@ -0,0 +1,284 @@
+#! /bin/bash
+
+libname=""
+src=""
+header=""
+all_dep=""
+
+# current makefile:
+out=""
+# temporary file:
+tout=""
+# install target temp file:
+iout=""
+# debug flag:
+debug="no"
+# compile options:
+opts=""
+# main output sub-directory:
+subdir=""
+
+#######################################################################
+#
+# section for C++ Builder
+#
+#######################################################################
+
+function bcb_gen_lib()
+{
+ all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe"
+ echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout
+#
+# set up section comments:
+ cat >> $tout << EOF
+########################################################
+#
+# section for $libname.lib
+#
+########################################################
+EOF
+#
+# process source files:
+ all_obj=""
+ all_lib_obj=""
+ for file in $src
+ do
+ obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
+ obj="$subdir\\$libname\\$obj"
+ all_obj="$all_obj $obj"
+ all_lib_obj="$all_lib_obj -+$obj"
+ echo "$obj: $file \$(ALL_HEADER)" >> $tout
+ echo " bcc32 @&&|" >> $tout
+ echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -o$obj $file" >> $tout
+ echo "|" >> $tout
+ echo "" >> $tout
+ done
+#
+# now for the directories for this library:
+ echo "$subdir\\$libname : " >> $tout
+ echo " -@mkdir $subdir\\$libname" >> $tout
+ echo "" >> $tout
+#
+# now for the clean options for this library:
+ all_clean="$all_clean $libname""_clean"
+ echo "$libname"_clean : >> $tout
+ echo " del $subdir\\$libname\\"'*.obj' >> $tout
+ echo " del $subdir\\$libname\\"'*.il?' >> $tout
+ echo " del $subdir\\$libname\\"'*.csm' >> $tout
+ echo " del $subdir\\$libname\\"'*.tds' >> $tout
+ echo "" >> $tout
+#
+# now for the main target for this library:
+ echo $subdir\\$libname.lib : $all_obj >> $tout
+ echo " tlib @&&|" >> $tout
+ echo "/P128 /C /u /a \$(XSFLAGS) $subdir\\$libname.lib $all_lib_obj" >> $tout
+ echo "|" >> $tout
+ echo "" >> $tout
+# now the test program:
+ echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout
+ echo " bcc32 \$(INCLUDES) $opts \$(CXXFLAGS) -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout
+ echo " $subdir"'\'"$libname.exe" >> $tout
+ echo "" >> $tout
+}
+
+function bcb_gen_dll()
+{
+ all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe"
+ echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout
+ echo " copy $subdir\\$libname.dll \$(BCROOT)\\bin" >> $iout
+ echo " copy $subdir\\$libname.tds \$(BCROOT)\\bin" >> $iout
+#
+# set up section comments:
+ cat >> $tout << EOF
+########################################################
+#
+# section for $libname.lib
+#
+########################################################
+EOF
+#
+# process source files:
+ all_obj=""
+ for file in $src
+ do
+ obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
+ obj="$subdir\\$libname\\$obj"
+ all_obj="$all_obj $obj"
+ echo "$obj: $file \$(ALL_HEADER)" >> $tout
+ echo " bcc32 @&&|" >> $tout
+ echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -DBOOST_DYN_LINK -o$obj $file" >> $tout
+ echo "|" >> $tout
+ echo "" >> $tout
+ done
+#
+# now for the directories for this library:
+ echo "$subdir\\$libname :" >> $tout
+ echo " -@mkdir $subdir\\$libname" >> $tout
+ echo "" >> $tout
+#
+# now for the clean options for this library:
+ all_clean="$all_clean $libname""_clean"
+ echo "$libname"_clean : >> $tout
+ echo " del $subdir\\$libname\\"'*.obj' >> $tout
+ echo " del $subdir\\$libname\\"'*.il?' >> $tout
+ echo " del $subdir\\$libname\\"'*.csm' >> $tout
+ echo " del $subdir\\$libname\\"'*.tds' >> $tout
+ echo " del $subdir\\"'*.tds' >> $tout
+ echo "" >> $tout
+#
+# now for the main target for this library:
+ echo $subdir\\$libname.lib : $all_obj >> $tout
+ echo " bcc32 @&&|" >> $tout
+ echo "-lw-dup -lw-dpl $opts -e$subdir\\$libname.dll \$(XLFLAGS) $all_obj \$(LIBS)" >> $tout
+ echo "|" >> $tout
+ echo " implib -w $subdir\\$libname.lib $subdir\\$libname.dll" >> $tout
+ echo "" >> $tout
+# now the test program:
+ echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout
+ echo " bcc32 \$(INCLUDES) $opts \$(CXXFLAGS) -DBOOST_DYN_LINK -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout
+ echo " $subdir"'\'"$libname.exe" >> $tout
+ echo "" >> $tout
+}
+
+
+
+function bcb_gen()
+{
+ tout="temp"
+ iout="temp_install"
+ all_dep="$subdir"
+ all_clean=""
+ echo > $out
+ echo > $tout
+ rm -f $iout
+
+ libname="liblink_test_${subdir}_ss"
+ opts="-tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../"
+ bcb_gen_lib
+
+ libname="liblink_test_${subdir}_ms"
+ opts="-tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../"
+ bcb_gen_lib
+
+ libname="link_test_${subdir}_md"
+ opts="-tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_dll
+
+ libname="link_test_${subdir}_sd"
+ opts="-tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_dll
+
+ libname="liblink_test_${subdir}_md"
+ opts="-tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_lib
+
+ libname="liblink_test_${subdir}_sd"
+ opts="-tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_lib
+
+ if test "$has_stlport" = "yes"; then
+
+ libname="liblink_test_${subdir}_ssdd"
+ opts="-tWM- -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../"
+ bcb_gen_lib
+
+ libname="liblink_test_${subdir}_msdd"
+ opts="-tWM -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../"
+ bcb_gen_lib
+
+ libname="link_test_${subdir}_mddd"
+ opts="-tWD -tWM -tWR -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_dll
+
+ libname="link_test_${subdir}_sddd"
+ opts="-tWD -tWR -tWM- -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_dll
+
+ libname="liblink_test_${subdir}_mddd"
+ opts="-tWD -tWM -tWR -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_lib
+
+ libname="liblink_test_${subdir}_sddd"
+ opts="-tWD -tWR -tWM- -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
+ bcb_gen_lib
+
+ fi
+
+ cat > $out << EOF
+#
+# auto generated makefile for C++ Builder
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended)
+# make clean
+# removes all temporary files.
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional libraries to link to here:
+#
+LIBS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!ifndef BCROOT
+BCROOT=\$(MAKEDIR)\\..
+!endif
+
+EOF
+ echo "" >> $out
+ echo "ALL_HEADER=$header" >> $out
+ echo "" >> $out
+ echo "all : $all_dep" >> $out
+ echo >> $out
+ echo "clean : $all_clean" >> $out
+ echo >> $out
+ echo "install : all" >> $out
+ cat $iout >> $out
+ echo >> $out
+ echo $subdir : >> $out
+ echo " -@mkdir $subdir" >> $out
+ echo "" >> $out
+
+ cat $tout >> $out
+}
+
+. common.sh
+
+#
+# generate C++ Builder 4 files:
+out="bcb4.mak"
+subdir="bcb4"
+bcb_gen
+#
+# generate C++ Builder 5 files:
+out="bcb5.mak"
+subdir="bcb5"
+bcb_gen
+#
+# generate C++ Builder 6 files:
+out="bcb6.mak"
+subdir="bcb6"
+has_stlport="yes"
+bcb_gen
+
+
+
+
+
diff --git a/test/link/bcb4.mak b/test/link/bcb4.mak
new file mode 100644
index 00000000..457d0cc2
--- /dev/null
+++ b/test/link/bcb4.mak
@@ -0,0 +1,231 @@
+#
+# auto generated makefile for C++ Builder
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended)
+# make clean
+# removes all temporary files.
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional libraries to link to here:
+#
+LIBS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!ifndef BCROOT
+BCROOT=$(MAKEDIR)\..
+!endif
+
+
+ALL_HEADER=
+
+all : bcb4 bcb4\liblink_test_bcb4_ss bcb4\liblink_test_bcb4_ss.lib bcb4\liblink_test_bcb4_ss.exe bcb4\liblink_test_bcb4_ms bcb4\liblink_test_bcb4_ms.lib bcb4\liblink_test_bcb4_ms.exe bcb4\link_test_bcb4_md bcb4\link_test_bcb4_md.lib bcb4\link_test_bcb4_md.exe bcb4\link_test_bcb4_sd bcb4\link_test_bcb4_sd.lib bcb4\link_test_bcb4_sd.exe bcb4\liblink_test_bcb4_md bcb4\liblink_test_bcb4_md.lib bcb4\liblink_test_bcb4_md.exe bcb4\liblink_test_bcb4_sd bcb4\liblink_test_bcb4_sd.lib bcb4\liblink_test_bcb4_sd.exe
+
+clean : liblink_test_bcb4_ss_clean liblink_test_bcb4_ms_clean link_test_bcb4_md_clean link_test_bcb4_sd_clean liblink_test_bcb4_md_clean liblink_test_bcb4_sd_clean
+
+install : all
+ copy bcb4\liblink_test_bcb4_ss.lib $(BCROOT)\lib
+ copy bcb4\liblink_test_bcb4_ms.lib $(BCROOT)\lib
+ copy bcb4\link_test_bcb4_md.lib $(BCROOT)\lib
+ copy bcb4\link_test_bcb4_md.dll $(BCROOT)\bin
+ copy bcb4\link_test_bcb4_md.tds $(BCROOT)\bin
+ copy bcb4\link_test_bcb4_sd.lib $(BCROOT)\lib
+ copy bcb4\link_test_bcb4_sd.dll $(BCROOT)\bin
+ copy bcb4\link_test_bcb4_sd.tds $(BCROOT)\bin
+ copy bcb4\liblink_test_bcb4_md.lib $(BCROOT)\lib
+ copy bcb4\liblink_test_bcb4_sd.lib $(BCROOT)\lib
+
+bcb4 :
+ -@mkdir bcb4
+
+
+########################################################
+#
+# section for liblink_test_bcb4_ss.lib
+#
+########################################################
+bcb4\liblink_test_bcb4_ss\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb4\liblink_test_bcb4_ss\link_test.obj link_test.cpp
+|
+
+bcb4\liblink_test_bcb4_ss :
+ -@mkdir bcb4\liblink_test_bcb4_ss
+
+liblink_test_bcb4_ss_clean :
+ del bcb4\liblink_test_bcb4_ss\*.obj
+ del bcb4\liblink_test_bcb4_ss\*.il?
+ del bcb4\liblink_test_bcb4_ss\*.csm
+ del bcb4\liblink_test_bcb4_ss\*.tds
+
+bcb4\liblink_test_bcb4_ss.lib : bcb4\liblink_test_bcb4_ss\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb4\liblink_test_bcb4_ss.lib -+bcb4\liblink_test_bcb4_ss\link_test.obj
+|
+
+bcb4\liblink_test_bcb4_ss.exe : main.cpp bcb4\liblink_test_bcb4_ss.lib
+ bcc32 $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb4 -e./bcb4/liblink_test_bcb4_ss.exe main.cpp
+ bcb4\liblink_test_bcb4_ss.exe
+
+########################################################
+#
+# section for liblink_test_bcb4_ms.lib
+#
+########################################################
+bcb4\liblink_test_bcb4_ms\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb4\liblink_test_bcb4_ms\link_test.obj link_test.cpp
+|
+
+bcb4\liblink_test_bcb4_ms :
+ -@mkdir bcb4\liblink_test_bcb4_ms
+
+liblink_test_bcb4_ms_clean :
+ del bcb4\liblink_test_bcb4_ms\*.obj
+ del bcb4\liblink_test_bcb4_ms\*.il?
+ del bcb4\liblink_test_bcb4_ms\*.csm
+ del bcb4\liblink_test_bcb4_ms\*.tds
+
+bcb4\liblink_test_bcb4_ms.lib : bcb4\liblink_test_bcb4_ms\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb4\liblink_test_bcb4_ms.lib -+bcb4\liblink_test_bcb4_ms\link_test.obj
+|
+
+bcb4\liblink_test_bcb4_ms.exe : main.cpp bcb4\liblink_test_bcb4_ms.lib
+ bcc32 $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb4 -e./bcb4/liblink_test_bcb4_ms.exe main.cpp
+ bcb4\liblink_test_bcb4_ms.exe
+
+########################################################
+#
+# section for link_test_bcb4_md.lib
+#
+########################################################
+bcb4\link_test_bcb4_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb4\link_test_bcb4_md\link_test.obj link_test.cpp
+|
+
+bcb4\link_test_bcb4_md :
+ -@mkdir bcb4\link_test_bcb4_md
+
+link_test_bcb4_md_clean :
+ del bcb4\link_test_bcb4_md\*.obj
+ del bcb4\link_test_bcb4_md\*.il?
+ del bcb4\link_test_bcb4_md\*.csm
+ del bcb4\link_test_bcb4_md\*.tds
+ del bcb4\*.tds
+
+bcb4\link_test_bcb4_md.lib : bcb4\link_test_bcb4_md\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb4\link_test_bcb4_md.dll $(XLFLAGS) bcb4\link_test_bcb4_md\link_test.obj $(LIBS)
+|
+ implib -w bcb4\link_test_bcb4_md.lib bcb4\link_test_bcb4_md.dll
+
+bcb4\link_test_bcb4_md.exe : main.cpp bcb4\link_test_bcb4_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb4 -e./bcb4/link_test_bcb4_md.exe main.cpp
+ bcb4\link_test_bcb4_md.exe
+
+########################################################
+#
+# section for link_test_bcb4_sd.lib
+#
+########################################################
+bcb4\link_test_bcb4_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb4\link_test_bcb4_sd\link_test.obj link_test.cpp
+|
+
+bcb4\link_test_bcb4_sd :
+ -@mkdir bcb4\link_test_bcb4_sd
+
+link_test_bcb4_sd_clean :
+ del bcb4\link_test_bcb4_sd\*.obj
+ del bcb4\link_test_bcb4_sd\*.il?
+ del bcb4\link_test_bcb4_sd\*.csm
+ del bcb4\link_test_bcb4_sd\*.tds
+ del bcb4\*.tds
+
+bcb4\link_test_bcb4_sd.lib : bcb4\link_test_bcb4_sd\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb4\link_test_bcb4_sd.dll $(XLFLAGS) bcb4\link_test_bcb4_sd\link_test.obj $(LIBS)
+|
+ implib -w bcb4\link_test_bcb4_sd.lib bcb4\link_test_bcb4_sd.dll
+
+bcb4\link_test_bcb4_sd.exe : main.cpp bcb4\link_test_bcb4_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb4 -e./bcb4/link_test_bcb4_sd.exe main.cpp
+ bcb4\link_test_bcb4_sd.exe
+
+########################################################
+#
+# section for liblink_test_bcb4_md.lib
+#
+########################################################
+bcb4\liblink_test_bcb4_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb4\liblink_test_bcb4_md\link_test.obj link_test.cpp
+|
+
+bcb4\liblink_test_bcb4_md :
+ -@mkdir bcb4\liblink_test_bcb4_md
+
+liblink_test_bcb4_md_clean :
+ del bcb4\liblink_test_bcb4_md\*.obj
+ del bcb4\liblink_test_bcb4_md\*.il?
+ del bcb4\liblink_test_bcb4_md\*.csm
+ del bcb4\liblink_test_bcb4_md\*.tds
+
+bcb4\liblink_test_bcb4_md.lib : bcb4\liblink_test_bcb4_md\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb4\liblink_test_bcb4_md.lib -+bcb4\liblink_test_bcb4_md\link_test.obj
+|
+
+bcb4\liblink_test_bcb4_md.exe : main.cpp bcb4\liblink_test_bcb4_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb4 -e./bcb4/liblink_test_bcb4_md.exe main.cpp
+ bcb4\liblink_test_bcb4_md.exe
+
+########################################################
+#
+# section for liblink_test_bcb4_sd.lib
+#
+########################################################
+bcb4\liblink_test_bcb4_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb4\liblink_test_bcb4_sd\link_test.obj link_test.cpp
+|
+
+bcb4\liblink_test_bcb4_sd :
+ -@mkdir bcb4\liblink_test_bcb4_sd
+
+liblink_test_bcb4_sd_clean :
+ del bcb4\liblink_test_bcb4_sd\*.obj
+ del bcb4\liblink_test_bcb4_sd\*.il?
+ del bcb4\liblink_test_bcb4_sd\*.csm
+ del bcb4\liblink_test_bcb4_sd\*.tds
+
+bcb4\liblink_test_bcb4_sd.lib : bcb4\liblink_test_bcb4_sd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb4\liblink_test_bcb4_sd.lib -+bcb4\liblink_test_bcb4_sd\link_test.obj
+|
+
+bcb4\liblink_test_bcb4_sd.exe : main.cpp bcb4\liblink_test_bcb4_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb4 -e./bcb4/liblink_test_bcb4_sd.exe main.cpp
+ bcb4\liblink_test_bcb4_sd.exe
+
diff --git a/test/link/bcb5.mak b/test/link/bcb5.mak
new file mode 100644
index 00000000..790e8f44
--- /dev/null
+++ b/test/link/bcb5.mak
@@ -0,0 +1,231 @@
+#
+# auto generated makefile for C++ Builder
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended)
+# make clean
+# removes all temporary files.
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional libraries to link to here:
+#
+LIBS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!ifndef BCROOT
+BCROOT=$(MAKEDIR)\..
+!endif
+
+
+ALL_HEADER=
+
+all : bcb5 bcb5\liblink_test_bcb5_ss bcb5\liblink_test_bcb5_ss.lib bcb5\liblink_test_bcb5_ss.exe bcb5\liblink_test_bcb5_ms bcb5\liblink_test_bcb5_ms.lib bcb5\liblink_test_bcb5_ms.exe bcb5\link_test_bcb5_md bcb5\link_test_bcb5_md.lib bcb5\link_test_bcb5_md.exe bcb5\link_test_bcb5_sd bcb5\link_test_bcb5_sd.lib bcb5\link_test_bcb5_sd.exe bcb5\liblink_test_bcb5_md bcb5\liblink_test_bcb5_md.lib bcb5\liblink_test_bcb5_md.exe bcb5\liblink_test_bcb5_sd bcb5\liblink_test_bcb5_sd.lib bcb5\liblink_test_bcb5_sd.exe
+
+clean : liblink_test_bcb5_ss_clean liblink_test_bcb5_ms_clean link_test_bcb5_md_clean link_test_bcb5_sd_clean liblink_test_bcb5_md_clean liblink_test_bcb5_sd_clean
+
+install : all
+ copy bcb5\liblink_test_bcb5_ss.lib $(BCROOT)\lib
+ copy bcb5\liblink_test_bcb5_ms.lib $(BCROOT)\lib
+ copy bcb5\link_test_bcb5_md.lib $(BCROOT)\lib
+ copy bcb5\link_test_bcb5_md.dll $(BCROOT)\bin
+ copy bcb5\link_test_bcb5_md.tds $(BCROOT)\bin
+ copy bcb5\link_test_bcb5_sd.lib $(BCROOT)\lib
+ copy bcb5\link_test_bcb5_sd.dll $(BCROOT)\bin
+ copy bcb5\link_test_bcb5_sd.tds $(BCROOT)\bin
+ copy bcb5\liblink_test_bcb5_md.lib $(BCROOT)\lib
+ copy bcb5\liblink_test_bcb5_sd.lib $(BCROOT)\lib
+
+bcb5 :
+ -@mkdir bcb5
+
+
+########################################################
+#
+# section for liblink_test_bcb5_ss.lib
+#
+########################################################
+bcb5\liblink_test_bcb5_ss\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb5\liblink_test_bcb5_ss\link_test.obj link_test.cpp
+|
+
+bcb5\liblink_test_bcb5_ss :
+ -@mkdir bcb5\liblink_test_bcb5_ss
+
+liblink_test_bcb5_ss_clean :
+ del bcb5\liblink_test_bcb5_ss\*.obj
+ del bcb5\liblink_test_bcb5_ss\*.il?
+ del bcb5\liblink_test_bcb5_ss\*.csm
+ del bcb5\liblink_test_bcb5_ss\*.tds
+
+bcb5\liblink_test_bcb5_ss.lib : bcb5\liblink_test_bcb5_ss\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb5\liblink_test_bcb5_ss.lib -+bcb5\liblink_test_bcb5_ss\link_test.obj
+|
+
+bcb5\liblink_test_bcb5_ss.exe : main.cpp bcb5\liblink_test_bcb5_ss.lib
+ bcc32 $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb5 -e./bcb5/liblink_test_bcb5_ss.exe main.cpp
+ bcb5\liblink_test_bcb5_ss.exe
+
+########################################################
+#
+# section for liblink_test_bcb5_ms.lib
+#
+########################################################
+bcb5\liblink_test_bcb5_ms\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb5\liblink_test_bcb5_ms\link_test.obj link_test.cpp
+|
+
+bcb5\liblink_test_bcb5_ms :
+ -@mkdir bcb5\liblink_test_bcb5_ms
+
+liblink_test_bcb5_ms_clean :
+ del bcb5\liblink_test_bcb5_ms\*.obj
+ del bcb5\liblink_test_bcb5_ms\*.il?
+ del bcb5\liblink_test_bcb5_ms\*.csm
+ del bcb5\liblink_test_bcb5_ms\*.tds
+
+bcb5\liblink_test_bcb5_ms.lib : bcb5\liblink_test_bcb5_ms\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb5\liblink_test_bcb5_ms.lib -+bcb5\liblink_test_bcb5_ms\link_test.obj
+|
+
+bcb5\liblink_test_bcb5_ms.exe : main.cpp bcb5\liblink_test_bcb5_ms.lib
+ bcc32 $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb5 -e./bcb5/liblink_test_bcb5_ms.exe main.cpp
+ bcb5\liblink_test_bcb5_ms.exe
+
+########################################################
+#
+# section for link_test_bcb5_md.lib
+#
+########################################################
+bcb5\link_test_bcb5_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb5\link_test_bcb5_md\link_test.obj link_test.cpp
+|
+
+bcb5\link_test_bcb5_md :
+ -@mkdir bcb5\link_test_bcb5_md
+
+link_test_bcb5_md_clean :
+ del bcb5\link_test_bcb5_md\*.obj
+ del bcb5\link_test_bcb5_md\*.il?
+ del bcb5\link_test_bcb5_md\*.csm
+ del bcb5\link_test_bcb5_md\*.tds
+ del bcb5\*.tds
+
+bcb5\link_test_bcb5_md.lib : bcb5\link_test_bcb5_md\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb5\link_test_bcb5_md.dll $(XLFLAGS) bcb5\link_test_bcb5_md\link_test.obj $(LIBS)
+|
+ implib -w bcb5\link_test_bcb5_md.lib bcb5\link_test_bcb5_md.dll
+
+bcb5\link_test_bcb5_md.exe : main.cpp bcb5\link_test_bcb5_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb5 -e./bcb5/link_test_bcb5_md.exe main.cpp
+ bcb5\link_test_bcb5_md.exe
+
+########################################################
+#
+# section for link_test_bcb5_sd.lib
+#
+########################################################
+bcb5\link_test_bcb5_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb5\link_test_bcb5_sd\link_test.obj link_test.cpp
+|
+
+bcb5\link_test_bcb5_sd :
+ -@mkdir bcb5\link_test_bcb5_sd
+
+link_test_bcb5_sd_clean :
+ del bcb5\link_test_bcb5_sd\*.obj
+ del bcb5\link_test_bcb5_sd\*.il?
+ del bcb5\link_test_bcb5_sd\*.csm
+ del bcb5\link_test_bcb5_sd\*.tds
+ del bcb5\*.tds
+
+bcb5\link_test_bcb5_sd.lib : bcb5\link_test_bcb5_sd\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb5\link_test_bcb5_sd.dll $(XLFLAGS) bcb5\link_test_bcb5_sd\link_test.obj $(LIBS)
+|
+ implib -w bcb5\link_test_bcb5_sd.lib bcb5\link_test_bcb5_sd.dll
+
+bcb5\link_test_bcb5_sd.exe : main.cpp bcb5\link_test_bcb5_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb5 -e./bcb5/link_test_bcb5_sd.exe main.cpp
+ bcb5\link_test_bcb5_sd.exe
+
+########################################################
+#
+# section for liblink_test_bcb5_md.lib
+#
+########################################################
+bcb5\liblink_test_bcb5_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb5\liblink_test_bcb5_md\link_test.obj link_test.cpp
+|
+
+bcb5\liblink_test_bcb5_md :
+ -@mkdir bcb5\liblink_test_bcb5_md
+
+liblink_test_bcb5_md_clean :
+ del bcb5\liblink_test_bcb5_md\*.obj
+ del bcb5\liblink_test_bcb5_md\*.il?
+ del bcb5\liblink_test_bcb5_md\*.csm
+ del bcb5\liblink_test_bcb5_md\*.tds
+
+bcb5\liblink_test_bcb5_md.lib : bcb5\liblink_test_bcb5_md\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb5\liblink_test_bcb5_md.lib -+bcb5\liblink_test_bcb5_md\link_test.obj
+|
+
+bcb5\liblink_test_bcb5_md.exe : main.cpp bcb5\liblink_test_bcb5_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb5 -e./bcb5/liblink_test_bcb5_md.exe main.cpp
+ bcb5\liblink_test_bcb5_md.exe
+
+########################################################
+#
+# section for liblink_test_bcb5_sd.lib
+#
+########################################################
+bcb5\liblink_test_bcb5_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb5\liblink_test_bcb5_sd\link_test.obj link_test.cpp
+|
+
+bcb5\liblink_test_bcb5_sd :
+ -@mkdir bcb5\liblink_test_bcb5_sd
+
+liblink_test_bcb5_sd_clean :
+ del bcb5\liblink_test_bcb5_sd\*.obj
+ del bcb5\liblink_test_bcb5_sd\*.il?
+ del bcb5\liblink_test_bcb5_sd\*.csm
+ del bcb5\liblink_test_bcb5_sd\*.tds
+
+bcb5\liblink_test_bcb5_sd.lib : bcb5\liblink_test_bcb5_sd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb5\liblink_test_bcb5_sd.lib -+bcb5\liblink_test_bcb5_sd\link_test.obj
+|
+
+bcb5\liblink_test_bcb5_sd.exe : main.cpp bcb5\liblink_test_bcb5_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb5 -e./bcb5/liblink_test_bcb5_sd.exe main.cpp
+ bcb5\liblink_test_bcb5_sd.exe
+
diff --git a/test/link/bcb6.mak b/test/link/bcb6.mak
new file mode 100644
index 00000000..090d11f2
--- /dev/null
+++ b/test/link/bcb6.mak
@@ -0,0 +1,413 @@
+#
+# auto generated makefile for C++ Builder
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended)
+# make clean
+# removes all temporary files.
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional libraries to link to here:
+#
+LIBS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!ifndef BCROOT
+BCROOT=$(MAKEDIR)\..
+!endif
+
+
+ALL_HEADER=
+
+all : bcb6 bcb6\liblink_test_bcb6_ss bcb6\liblink_test_bcb6_ss.lib bcb6\liblink_test_bcb6_ss.exe bcb6\liblink_test_bcb6_ms bcb6\liblink_test_bcb6_ms.lib bcb6\liblink_test_bcb6_ms.exe bcb6\link_test_bcb6_md bcb6\link_test_bcb6_md.lib bcb6\link_test_bcb6_md.exe bcb6\link_test_bcb6_sd bcb6\link_test_bcb6_sd.lib bcb6\link_test_bcb6_sd.exe bcb6\liblink_test_bcb6_md bcb6\liblink_test_bcb6_md.lib bcb6\liblink_test_bcb6_md.exe bcb6\liblink_test_bcb6_sd bcb6\liblink_test_bcb6_sd.lib bcb6\liblink_test_bcb6_sd.exe bcb6\liblink_test_bcb6_ssdd bcb6\liblink_test_bcb6_ssdd.lib bcb6\liblink_test_bcb6_ssdd.exe bcb6\liblink_test_bcb6_msdd bcb6\liblink_test_bcb6_msdd.lib bcb6\liblink_test_bcb6_msdd.exe bcb6\link_test_bcb6_mddd bcb6\link_test_bcb6_mddd.lib bcb6\link_test_bcb6_mddd.exe bcb6\link_test_bcb6_sddd bcb6\link_test_bcb6_sddd.lib bcb6\link_test_bcb6_sddd.exe bcb6\liblink_test_bcb6_mddd bcb6\liblink_test_bcb6_mddd.lib bcb6\liblink_test_bcb6_mddd.exe bcb6\liblink_test_bcb6_sddd bcb6\liblink_test_bcb6_sddd.lib bcb6\liblink_test_bcb6_sddd.exe
+
+clean : liblink_test_bcb6_ss_clean liblink_test_bcb6_ms_clean link_test_bcb6_md_clean link_test_bcb6_sd_clean liblink_test_bcb6_md_clean liblink_test_bcb6_sd_clean liblink_test_bcb6_ssdd_clean liblink_test_bcb6_msdd_clean link_test_bcb6_mddd_clean link_test_bcb6_sddd_clean liblink_test_bcb6_mddd_clean liblink_test_bcb6_sddd_clean
+
+install : all
+ copy bcb6\liblink_test_bcb6_ss.lib $(BCROOT)\lib
+ copy bcb6\liblink_test_bcb6_ms.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_md.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_md.dll $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_md.tds $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_sd.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_sd.dll $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_sd.tds $(BCROOT)\bin
+ copy bcb6\liblink_test_bcb6_md.lib $(BCROOT)\lib
+ copy bcb6\liblink_test_bcb6_sd.lib $(BCROOT)\lib
+ copy bcb6\liblink_test_bcb6_ssdd.lib $(BCROOT)\lib
+ copy bcb6\liblink_test_bcb6_msdd.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_mddd.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_mddd.dll $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_mddd.tds $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_sddd.lib $(BCROOT)\lib
+ copy bcb6\link_test_bcb6_sddd.dll $(BCROOT)\bin
+ copy bcb6\link_test_bcb6_sddd.tds $(BCROOT)\bin
+ copy bcb6\liblink_test_bcb6_mddd.lib $(BCROOT)\lib
+ copy bcb6\liblink_test_bcb6_sddd.lib $(BCROOT)\lib
+
+bcb6 :
+ -@mkdir bcb6
+
+
+########################################################
+#
+# section for liblink_test_bcb6_ss.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_ss\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb6\liblink_test_bcb6_ss\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_ss :
+ -@mkdir bcb6\liblink_test_bcb6_ss
+
+liblink_test_bcb6_ss_clean :
+ del bcb6\liblink_test_bcb6_ss\*.obj
+ del bcb6\liblink_test_bcb6_ss\*.il?
+ del bcb6\liblink_test_bcb6_ss\*.csm
+ del bcb6\liblink_test_bcb6_ss\*.tds
+
+bcb6\liblink_test_bcb6_ss.lib : bcb6\liblink_test_bcb6_ss\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_ss.lib -+bcb6\liblink_test_bcb6_ss\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_ss.exe : main.cpp bcb6\liblink_test_bcb6_ss.lib
+ bcc32 $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_ss.exe main.cpp
+ bcb6\liblink_test_bcb6_ss.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_ms.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_ms\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb6\liblink_test_bcb6_ms\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_ms :
+ -@mkdir bcb6\liblink_test_bcb6_ms
+
+liblink_test_bcb6_ms_clean :
+ del bcb6\liblink_test_bcb6_ms\*.obj
+ del bcb6\liblink_test_bcb6_ms\*.il?
+ del bcb6\liblink_test_bcb6_ms\*.csm
+ del bcb6\liblink_test_bcb6_ms\*.tds
+
+bcb6\liblink_test_bcb6_ms.lib : bcb6\liblink_test_bcb6_ms\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_ms.lib -+bcb6\liblink_test_bcb6_ms\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_ms.exe : main.cpp bcb6\liblink_test_bcb6_ms.lib
+ bcc32 $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_ms.exe main.cpp
+ bcb6\liblink_test_bcb6_ms.exe
+
+########################################################
+#
+# section for link_test_bcb6_md.lib
+#
+########################################################
+bcb6\link_test_bcb6_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb6\link_test_bcb6_md\link_test.obj link_test.cpp
+|
+
+bcb6\link_test_bcb6_md :
+ -@mkdir bcb6\link_test_bcb6_md
+
+link_test_bcb6_md_clean :
+ del bcb6\link_test_bcb6_md\*.obj
+ del bcb6\link_test_bcb6_md\*.il?
+ del bcb6\link_test_bcb6_md\*.csm
+ del bcb6\link_test_bcb6_md\*.tds
+ del bcb6\*.tds
+
+bcb6\link_test_bcb6_md.lib : bcb6\link_test_bcb6_md\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb6\link_test_bcb6_md.dll $(XLFLAGS) bcb6\link_test_bcb6_md\link_test.obj $(LIBS)
+|
+ implib -w bcb6\link_test_bcb6_md.lib bcb6\link_test_bcb6_md.dll
+
+bcb6\link_test_bcb6_md.exe : main.cpp bcb6\link_test_bcb6_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb6 -e./bcb6/link_test_bcb6_md.exe main.cpp
+ bcb6\link_test_bcb6_md.exe
+
+########################################################
+#
+# section for link_test_bcb6_sd.lib
+#
+########################################################
+bcb6\link_test_bcb6_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb6\link_test_bcb6_sd\link_test.obj link_test.cpp
+|
+
+bcb6\link_test_bcb6_sd :
+ -@mkdir bcb6\link_test_bcb6_sd
+
+link_test_bcb6_sd_clean :
+ del bcb6\link_test_bcb6_sd\*.obj
+ del bcb6\link_test_bcb6_sd\*.il?
+ del bcb6\link_test_bcb6_sd\*.csm
+ del bcb6\link_test_bcb6_sd\*.tds
+ del bcb6\*.tds
+
+bcb6\link_test_bcb6_sd.lib : bcb6\link_test_bcb6_sd\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb6\link_test_bcb6_sd.dll $(XLFLAGS) bcb6\link_test_bcb6_sd\link_test.obj $(LIBS)
+|
+ implib -w bcb6\link_test_bcb6_sd.lib bcb6\link_test_bcb6_sd.dll
+
+bcb6\link_test_bcb6_sd.exe : main.cpp bcb6\link_test_bcb6_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb6 -e./bcb6/link_test_bcb6_sd.exe main.cpp
+ bcb6\link_test_bcb6_sd.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_md.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_md\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb6\liblink_test_bcb6_md\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_md :
+ -@mkdir bcb6\liblink_test_bcb6_md
+
+liblink_test_bcb6_md_clean :
+ del bcb6\liblink_test_bcb6_md\*.obj
+ del bcb6\liblink_test_bcb6_md\*.il?
+ del bcb6\liblink_test_bcb6_md\*.csm
+ del bcb6\liblink_test_bcb6_md\*.tds
+
+bcb6\liblink_test_bcb6_md.lib : bcb6\liblink_test_bcb6_md\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_md.lib -+bcb6\liblink_test_bcb6_md\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_md.exe : main.cpp bcb6\liblink_test_bcb6_md.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_md.exe main.cpp
+ bcb6\liblink_test_bcb6_md.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_sd.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_sd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb6\liblink_test_bcb6_sd\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_sd :
+ -@mkdir bcb6\liblink_test_bcb6_sd
+
+liblink_test_bcb6_sd_clean :
+ del bcb6\liblink_test_bcb6_sd\*.obj
+ del bcb6\liblink_test_bcb6_sd\*.il?
+ del bcb6\liblink_test_bcb6_sd\*.csm
+ del bcb6\liblink_test_bcb6_sd\*.tds
+
+bcb6\liblink_test_bcb6_sd.lib : bcb6\liblink_test_bcb6_sd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_sd.lib -+bcb6\liblink_test_bcb6_sd\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_sd.exe : main.cpp bcb6\liblink_test_bcb6_sd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_sd.exe main.cpp
+ bcb6\liblink_test_bcb6_sd.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_ssdd.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_ssdd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM- -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb6\liblink_test_bcb6_ssdd\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_ssdd :
+ -@mkdir bcb6\liblink_test_bcb6_ssdd
+
+liblink_test_bcb6_ssdd_clean :
+ del bcb6\liblink_test_bcb6_ssdd\*.obj
+ del bcb6\liblink_test_bcb6_ssdd\*.il?
+ del bcb6\liblink_test_bcb6_ssdd\*.csm
+ del bcb6\liblink_test_bcb6_ssdd\*.tds
+
+bcb6\liblink_test_bcb6_ssdd.lib : bcb6\liblink_test_bcb6_ssdd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_ssdd.lib -+bcb6\liblink_test_bcb6_ssdd\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_ssdd.exe : main.cpp bcb6\liblink_test_bcb6_ssdd.lib
+ bcc32 $(INCLUDES) -tWM- -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_ssdd.exe main.cpp
+ bcb6\liblink_test_bcb6_ssdd.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_msdd.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_msdd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWM -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -obcb6\liblink_test_bcb6_msdd\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_msdd :
+ -@mkdir bcb6\liblink_test_bcb6_msdd
+
+liblink_test_bcb6_msdd_clean :
+ del bcb6\liblink_test_bcb6_msdd\*.obj
+ del bcb6\liblink_test_bcb6_msdd\*.il?
+ del bcb6\liblink_test_bcb6_msdd\*.csm
+ del bcb6\liblink_test_bcb6_msdd\*.tds
+
+bcb6\liblink_test_bcb6_msdd.lib : bcb6\liblink_test_bcb6_msdd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_msdd.lib -+bcb6\liblink_test_bcb6_msdd\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_msdd.exe : main.cpp bcb6\liblink_test_bcb6_msdd.lib
+ bcc32 $(INCLUDES) -tWM -D_STLP_DEBUG -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_msdd.exe main.cpp
+ bcb6\liblink_test_bcb6_msdd.exe
+
+########################################################
+#
+# section for link_test_bcb6_mddd.lib
+#
+########################################################
+bcb6\link_test_bcb6_mddd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb6\link_test_bcb6_mddd\link_test.obj link_test.cpp
+|
+
+bcb6\link_test_bcb6_mddd :
+ -@mkdir bcb6\link_test_bcb6_mddd
+
+link_test_bcb6_mddd_clean :
+ del bcb6\link_test_bcb6_mddd\*.obj
+ del bcb6\link_test_bcb6_mddd\*.il?
+ del bcb6\link_test_bcb6_mddd\*.csm
+ del bcb6\link_test_bcb6_mddd\*.tds
+ del bcb6\*.tds
+
+bcb6\link_test_bcb6_mddd.lib : bcb6\link_test_bcb6_mddd\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWM -tWR -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb6\link_test_bcb6_mddd.dll $(XLFLAGS) bcb6\link_test_bcb6_mddd\link_test.obj $(LIBS)
+|
+ implib -w bcb6\link_test_bcb6_mddd.lib bcb6\link_test_bcb6_mddd.dll
+
+bcb6\link_test_bcb6_mddd.exe : main.cpp bcb6\link_test_bcb6_mddd.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb6 -e./bcb6/link_test_bcb6_mddd.exe main.cpp
+ bcb6\link_test_bcb6_mddd.exe
+
+########################################################
+#
+# section for link_test_bcb6_sddd.lib
+#
+########################################################
+bcb6\link_test_bcb6_sddd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -obcb6\link_test_bcb6_sddd\link_test.obj link_test.cpp
+|
+
+bcb6\link_test_bcb6_sddd :
+ -@mkdir bcb6\link_test_bcb6_sddd
+
+link_test_bcb6_sddd_clean :
+ del bcb6\link_test_bcb6_sddd\*.obj
+ del bcb6\link_test_bcb6_sddd\*.il?
+ del bcb6\link_test_bcb6_sddd\*.csm
+ del bcb6\link_test_bcb6_sddd\*.tds
+ del bcb6\*.tds
+
+bcb6\link_test_bcb6_sddd.lib : bcb6\link_test_bcb6_sddd\link_test.obj
+ bcc32 @&&|
+-lw-dup -lw-dpl -tWD -tWR -tWM- -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -ebcb6\link_test_bcb6_sddd.dll $(XLFLAGS) bcb6\link_test_bcb6_sddd\link_test.obj $(LIBS)
+|
+ implib -w bcb6\link_test_bcb6_sddd.lib bcb6\link_test_bcb6_sddd.dll
+
+bcb6\link_test_bcb6_sddd.exe : main.cpp bcb6\link_test_bcb6_sddd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_STLP_DEBUG -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -L./bcb6 -e./bcb6/link_test_bcb6_sddd.exe main.cpp
+ bcb6\link_test_bcb6_sddd.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_mddd.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_mddd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWM -tWR -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb6\liblink_test_bcb6_mddd\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_mddd :
+ -@mkdir bcb6\liblink_test_bcb6_mddd
+
+liblink_test_bcb6_mddd_clean :
+ del bcb6\liblink_test_bcb6_mddd\*.obj
+ del bcb6\liblink_test_bcb6_mddd\*.il?
+ del bcb6\liblink_test_bcb6_mddd\*.csm
+ del bcb6\liblink_test_bcb6_mddd\*.tds
+
+bcb6\liblink_test_bcb6_mddd.lib : bcb6\liblink_test_bcb6_mddd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_mddd.lib -+bcb6\liblink_test_bcb6_mddd\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_mddd.exe : main.cpp bcb6\liblink_test_bcb6_mddd.lib
+ bcc32 $(INCLUDES) -tWD -tWM -tWR -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_mddd.exe main.cpp
+ bcb6\liblink_test_bcb6_mddd.exe
+
+########################################################
+#
+# section for liblink_test_bcb6_sddd.lib
+#
+########################################################
+bcb6\liblink_test_bcb6_sddd\link_test.obj: link_test.cpp $(ALL_HEADER)
+ bcc32 @&&|
+-c $(INCLUDES) -tWD -tWR -tWM- -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -obcb6\liblink_test_bcb6_sddd\link_test.obj link_test.cpp
+|
+
+bcb6\liblink_test_bcb6_sddd :
+ -@mkdir bcb6\liblink_test_bcb6_sddd
+
+liblink_test_bcb6_sddd_clean :
+ del bcb6\liblink_test_bcb6_sddd\*.obj
+ del bcb6\liblink_test_bcb6_sddd\*.il?
+ del bcb6\liblink_test_bcb6_sddd\*.csm
+ del bcb6\liblink_test_bcb6_sddd\*.tds
+
+bcb6\liblink_test_bcb6_sddd.lib : bcb6\liblink_test_bcb6_sddd\link_test.obj
+ tlib @&&|
+/P128 /C /u /a $(XSFLAGS) bcb6\liblink_test_bcb6_sddd.lib -+bcb6\liblink_test_bcb6_sddd\link_test.obj
+|
+
+bcb6\liblink_test_bcb6_sddd.exe : main.cpp bcb6\liblink_test_bcb6_sddd.lib
+ bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_STLP_DEBUG -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -L./bcb6 -e./bcb6/liblink_test_bcb6_sddd.exe main.cpp
+ bcb6\liblink_test_bcb6_sddd.exe
+
diff --git a/test/link/common.sh b/test/link/common.sh
new file mode 100644
index 00000000..34bc44b0
--- /dev/null
+++ b/test/link/common.sh
@@ -0,0 +1,8 @@
+#
+# locate all the header dependencies:
+header=""
+#
+# locate all the source files:
+src=link_test.cpp
+
+
diff --git a/test/link/link_test.cpp b/test/link/link_test.cpp
new file mode 100644
index 00000000..276e23f7
--- /dev/null
+++ b/test/link/link_test.cpp
@@ -0,0 +1,25 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+
+#define BOOST_CONFIG_SOURCE
+
+#include "link_test.hpp"
+
+bool BOOST_CONFIG_DECL check_options(
+ bool m_dyn_link,
+ bool m_dyn_rtl,
+ bool m_has_threads,
+ bool m_debug,
+ bool m_stlp_debug)
+{
+ return (m_dyn_link == dyn_link)
+ && (m_dyn_rtl == dyn_rtl)
+ && (m_has_threads == has_threads)
+ && (m_debug == debug)
+ && (m_stlp_debug == stl_debug);
+}
diff --git a/test/link/link_test.hpp b/test/link/link_test.hpp
new file mode 100644
index 00000000..32083eae
--- /dev/null
+++ b/test/link/link_test.hpp
@@ -0,0 +1,76 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+#ifndef BOOST_LINK_TEST_HPP
+#define BOOST_LINK_TEST_HPP
+
+#include
+
+//
+// set up code to determine our compilers options,
+// we will check that these are the same in the
+// .exe and the .dll:
+//
+#ifdef BOOST_DYN_LINK
+static const bool dyn_link = true;
+#else
+static const bool dyn_link = false;
+#endif
+#if defined(_DLL) || defined(_RTLDLL)
+static const bool dyn_rtl = true;
+#else
+static const bool dyn_rtl = false;
+#endif
+#if defined(BOOST_HAS_THREADS)
+static const bool has_threads = true;
+#else
+static const bool has_threads = false;
+#endif
+#if defined(_DEBUG)
+static const bool debug = true;
+#else
+static const bool debug = false;
+#endif
+#if defined(__STL_DEBUG) || defined(_STLP_DEBUG)
+static const bool stl_debug = true;
+#else
+static const bool stl_debug = false;
+#endif
+
+//
+// set up import and export options:
+//
+#if defined(BOOST_HAS_DECLSPEC) && defined(BOOST_DYN_LINK)
+# ifdef BOOST_CONFIG_SOURCE
+# define BOOST_CONFIG_DECL __declspec(dllexport)
+# else
+# define BOOST_CONFIG_DECL __declspec(dllimport)
+# endif
+#endif
+#ifndef BOOST_CONFIG_DECL
+# define BOOST_CONFIG_DECL
+#endif
+
+//
+// define our entry point:
+//
+bool BOOST_CONFIG_DECL check_options(
+ bool m_dyn_link,
+ bool m_dyn_rtl,
+ bool m_has_threads,
+ bool m_debug,
+ bool m_stlp_debug);
+
+//
+// set up automatic linking:
+//
+#if !defined(BOOST_CONFIG_SOURCE) && !defined(BOOST_CONFIG_NO_LIB)
+# define BOOST_LIB_NAME "link_test"
+# include
+#endif
+
+#endif // BOOST_LINK_TEST_HPP
diff --git a/test/link/main.cpp b/test/link/main.cpp
new file mode 100644
index 00000000..d500e979
--- /dev/null
+++ b/test/link/main.cpp
@@ -0,0 +1,14 @@
+// (C) Copyright John Maddock 2003. 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.
+
+// See http://www.boost.org for the most recent version.
+
+#include "link_test.hpp"
+
+int main()
+{
+ return check_options(dyn_link, dyn_rtl, has_threads, debug, stl_debug) ? 0 : -1;
+}
+
diff --git a/test/link/vc6-stlport.mak b/test/link/vc6-stlport.mak
new file mode 100644
index 00000000..0827ecd7
--- /dev/null
+++ b/test/link/vc6-stlport.mak
@@ -0,0 +1,288 @@
+#
+# auto generated makefile for VC6+STLPort
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+!IF "$(STLPORT_PATH)" == ""
+!ERROR Variable STLPORT_PATH not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc6-stlport_ms_dir ./vc6-stlport/liblink_test_vc6-stlport_ms.lib ./vc6-stlport/liblink_test_vc6-stlport_ms.exe liblink_test_vc6-stlport_msd_dir ./vc6-stlport/liblink_test_vc6-stlport_msd.lib ./vc6-stlport/liblink_test_vc6-stlport_msd.exe link_test_vc6-stlport_mdd_dir ./vc6-stlport/link_test_vc6-stlport_mdd.lib ./vc6-stlport/link_test_vc6-stlport_mdd.exe link_test_vc6-stlport_md_dir ./vc6-stlport/link_test_vc6-stlport_md.lib ./vc6-stlport/link_test_vc6-stlport_md.exe liblink_test_vc6-stlport_md_dir ./vc6-stlport/liblink_test_vc6-stlport_md.lib ./vc6-stlport/liblink_test_vc6-stlport_md.exe liblink_test_vc6-stlport_mdd_dir ./vc6-stlport/liblink_test_vc6-stlport_mdd.lib ./vc6-stlport/liblink_test_vc6-stlport_mdd.exe link_test_vc6-stlport_mddd_dir ./vc6-stlport/link_test_vc6-stlport_mddd.lib ./vc6-stlport/link_test_vc6-stlport_mddd.exe liblink_test_vc6-stlport_msdd_dir ./vc6-stlport/liblink_test_vc6-stlport_msdd.lib ./vc6-stlport/liblink_test_vc6-stlport_msdd.exe liblink_test_vc6-stlport_mddd_dir ./vc6-stlport/liblink_test_vc6-stlport_mddd.lib ./vc6-stlport/liblink_test_vc6-stlport_mddd.exe
+
+clean : liblink_test_vc6-stlport_ms_clean liblink_test_vc6-stlport_msd_clean link_test_vc6-stlport_mdd_clean link_test_vc6-stlport_md_clean liblink_test_vc6-stlport_md_clean liblink_test_vc6-stlport_mdd_clean link_test_vc6-stlport_mddd_clean liblink_test_vc6-stlport_msdd_clean liblink_test_vc6-stlport_mddd_clean
+
+install : stlport_check all
+ copy vc6-stlport\liblink_test_vc6-stlport_ms.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_msd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\link_test_vc6-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\link_test_vc6-stlport_mdd.dll "$(MSVCDIR)\bin"
+ copy vc6-stlport\link_test_vc6-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\link_test_vc6-stlport_md.dll "$(MSVCDIR)\bin"
+ copy vc6-stlport\liblink_test_vc6-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\link_test_vc6-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\link_test_vc6-stlport_mddd.dll "$(MSVCDIR)\bin"
+ copy vc6-stlport\link_test_vc6-stlport_mddd.pdb "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_msdd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_msdd.pdb "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc6-stlport\liblink_test_vc6-stlport_mddd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc6-stlport\$(NULL)" mkdir vc6-stlport
+
+stlport_check : $(STLPORT_PATH)\stlport\string
+ echo
+
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_ms.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_ms/ -Fdvc6-stlport/liblink_test_vc6-stlport_ms.pdb link_test.cpp
+
+liblink_test_vc6-stlport_ms_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_ms\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_ms
+
+liblink_test_vc6-stlport_ms_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_ms\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_ms\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_ms\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_ms\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_ms.lib : vc6-stlport/liblink_test_vc6-stlport_ms/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_ms.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_ms/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_ms.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_ms.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_msd.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_msd/ -Fdvc6-stlport/liblink_test_vc6-stlport_msd.pdb link_test.cpp
+
+liblink_test_vc6-stlport_msd_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_msd\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_msd
+
+liblink_test_vc6-stlport_msd_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_msd\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_msd\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_msd\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_msd\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_msd.lib : vc6-stlport/liblink_test_vc6-stlport_msd/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_msd.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_msd/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_msd.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_msd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_msd.exe
+
+########################################################
+#
+# section for link_test_vc6-stlport_mdd.lib
+#
+########################################################
+vc6-stlport/link_test_vc6-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test_vc6-stlport_mdd/ -Fdvc6-stlport/link_test_vc6-stlport_mdd.pdb link_test.cpp
+
+link_test_vc6-stlport_mdd_dir :
+ @if not exist "vc6-stlport\link_test_vc6-stlport_mdd\$(NULL)" mkdir vc6-stlport\link_test_vc6-stlport_mdd
+
+link_test_vc6-stlport_mdd_clean :
+ del vc6-stlport\link_test_vc6-stlport_mdd\*.obj
+ del vc6-stlport\link_test_vc6-stlport_mdd\*.idb
+ del vc6-stlport\link_test_vc6-stlport_mdd\*.exp
+ del vc6-stlport\link_test_vc6-stlport_mdd\*.pch
+
+./vc6-stlport/link_test_vc6-stlport_mdd.lib : vc6-stlport/link_test_vc6-stlport_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test_vc6-stlport_mdd.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test_vc6-stlport_mdd.dll" /implib:"vc6-stlport/link_test_vc6-stlport_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test_vc6-stlport_mdd/link_test.obj
+
+./vc6-stlport/link_test_vc6-stlport_mdd.exe : main.cpp ./vc6-stlport/link_test_vc6-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -o ./vc6-stlport/link_test_vc6-stlport_mdd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\link_test_vc6-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc6-stlport_md.lib
+#
+########################################################
+vc6-stlport/link_test_vc6-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test_vc6-stlport_md/ -Fdvc6-stlport/link_test_vc6-stlport_md.pdb link_test.cpp
+
+link_test_vc6-stlport_md_dir :
+ @if not exist "vc6-stlport\link_test_vc6-stlport_md\$(NULL)" mkdir vc6-stlport\link_test_vc6-stlport_md
+
+link_test_vc6-stlport_md_clean :
+ del vc6-stlport\link_test_vc6-stlport_md\*.obj
+ del vc6-stlport\link_test_vc6-stlport_md\*.idb
+ del vc6-stlport\link_test_vc6-stlport_md\*.exp
+ del vc6-stlport\link_test_vc6-stlport_md\*.pch
+
+./vc6-stlport/link_test_vc6-stlport_md.lib : vc6-stlport/link_test_vc6-stlport_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test_vc6-stlport_md.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test_vc6-stlport_md.dll" /implib:"vc6-stlport/link_test_vc6-stlport_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test_vc6-stlport_md/link_test.obj
+
+./vc6-stlport/link_test_vc6-stlport_md.exe : main.cpp ./vc6-stlport/link_test_vc6-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc6-stlport/link_test_vc6-stlport_md.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\link_test_vc6-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_md.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_md/ -Fdvc6-stlport/liblink_test_vc6-stlport_md.pdb link_test.cpp
+
+liblink_test_vc6-stlport_md_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_md\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_md
+
+liblink_test_vc6-stlport_md_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_md\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_md\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_md\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_md\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_md.lib : vc6-stlport/liblink_test_vc6-stlport_md/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_md.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_md/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_md.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_md.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_mdd.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_mdd/ -Fdvc6-stlport/liblink_test_vc6-stlport_mdd.pdb link_test.cpp
+
+liblink_test_vc6-stlport_mdd_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_mdd\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_mdd
+
+liblink_test_vc6-stlport_mdd_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_mdd\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_mdd\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_mdd\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_mdd\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_mdd.lib : vc6-stlport/liblink_test_vc6-stlport_mdd/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_mdd.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_mdd/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_mdd.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_mdd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc6-stlport_mddd.lib
+#
+########################################################
+vc6-stlport/link_test_vc6-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test_vc6-stlport_mddd/ -Fdvc6-stlport/link_test_vc6-stlport_mddd.pdb link_test.cpp
+
+link_test_vc6-stlport_mddd_dir :
+ @if not exist "vc6-stlport\link_test_vc6-stlport_mddd\$(NULL)" mkdir vc6-stlport\link_test_vc6-stlport_mddd
+
+link_test_vc6-stlport_mddd_clean :
+ del vc6-stlport\link_test_vc6-stlport_mddd\*.obj
+ del vc6-stlport\link_test_vc6-stlport_mddd\*.idb
+ del vc6-stlport\link_test_vc6-stlport_mddd\*.exp
+ del vc6-stlport\link_test_vc6-stlport_mddd\*.pch
+
+./vc6-stlport/link_test_vc6-stlport_mddd.lib : vc6-stlport/link_test_vc6-stlport_mddd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test_vc6-stlport_mddd.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test_vc6-stlport_mddd.dll" /implib:"vc6-stlport/link_test_vc6-stlport_mddd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test_vc6-stlport_mddd/link_test.obj
+
+./vc6-stlport/link_test_vc6-stlport_mddd.exe : main.cpp ./vc6-stlport/link_test_vc6-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -o ./vc6-stlport/link_test_vc6-stlport_mddd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\link_test_vc6-stlport_mddd.exe
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_msdd.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_msdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_msdd/ -Fdvc6-stlport/liblink_test_vc6-stlport_msdd.pdb link_test.cpp
+
+liblink_test_vc6-stlport_msdd_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_msdd\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_msdd
+
+liblink_test_vc6-stlport_msdd_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_msdd\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_msdd\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_msdd\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_msdd\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_msdd.lib : vc6-stlport/liblink_test_vc6-stlport_msdd/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_msdd.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_msdd/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_msdd.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_msdd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_msdd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_msdd.exe
+
+########################################################
+#
+# section for liblink_test_vc6-stlport_mddd.lib
+#
+########################################################
+vc6-stlport/liblink_test_vc6-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test_vc6-stlport_mddd/ -Fdvc6-stlport/liblink_test_vc6-stlport_mddd.pdb link_test.cpp
+
+liblink_test_vc6-stlport_mddd_dir :
+ @if not exist "vc6-stlport\liblink_test_vc6-stlport_mddd\$(NULL)" mkdir vc6-stlport\liblink_test_vc6-stlport_mddd
+
+liblink_test_vc6-stlport_mddd_clean :
+ del vc6-stlport\liblink_test_vc6-stlport_mddd\*.obj
+ del vc6-stlport\liblink_test_vc6-stlport_mddd\*.idb
+ del vc6-stlport\liblink_test_vc6-stlport_mddd\*.exp
+ del vc6-stlport\liblink_test_vc6-stlport_mddd\*.pch
+
+./vc6-stlport/liblink_test_vc6-stlport_mddd.lib : vc6-stlport/liblink_test_vc6-stlport_mddd/link_test.obj
+ link -lib /nologo /out:vc6-stlport/liblink_test_vc6-stlport_mddd.lib $(XSFLAGS) vc6-stlport/liblink_test_vc6-stlport_mddd/link_test.obj
+
+./vc6-stlport/liblink_test_vc6-stlport_mddd.exe : main.cpp ./vc6-stlport/liblink_test_vc6-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -o ./vc6-stlport/liblink_test_vc6-stlport_mddd.exe main.cpp /link /LIBPATH:./vc6-stlport
+ vc6-stlport\liblink_test_vc6-stlport_mddd.exe
+
diff --git a/test/link/vc6.mak b/test/link/vc6.mak
new file mode 100644
index 00000000..396b891d
--- /dev/null
+++ b/test/link/vc6.mak
@@ -0,0 +1,256 @@
+#
+# auto generated makefile for VC6 compiler
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc6_ss_dir ./vc6/liblink_test_vc6_ss.lib ./vc6/liblink_test_vc6_ss.exe liblink_test_vc6_ms_dir ./vc6/liblink_test_vc6_ms.lib ./vc6/liblink_test_vc6_ms.exe liblink_test_vc6_ssd_dir ./vc6/liblink_test_vc6_ssd.lib ./vc6/liblink_test_vc6_ssd.exe liblink_test_vc6_msd_dir ./vc6/liblink_test_vc6_msd.lib ./vc6/liblink_test_vc6_msd.exe link_test_vc6_mdd_dir ./vc6/link_test_vc6_mdd.lib ./vc6/link_test_vc6_mdd.exe link_test_vc6_md_dir ./vc6/link_test_vc6_md.lib ./vc6/link_test_vc6_md.exe liblink_test_vc6_md_dir ./vc6/liblink_test_vc6_md.lib ./vc6/liblink_test_vc6_md.exe liblink_test_vc6_mdd_dir ./vc6/liblink_test_vc6_mdd.lib ./vc6/liblink_test_vc6_mdd.exe
+
+clean : liblink_test_vc6_ss_clean liblink_test_vc6_ms_clean liblink_test_vc6_ssd_clean liblink_test_vc6_msd_clean link_test_vc6_mdd_clean link_test_vc6_md_clean liblink_test_vc6_md_clean liblink_test_vc6_mdd_clean
+
+install : all
+ copy vc6\liblink_test_vc6_ss.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_ms.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_ssd.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_ssd.pdb "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_msd.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_msd.pdb "$(MSVCDIR)\lib"
+ copy vc6\link_test_vc6_mdd.lib "$(MSVCDIR)\lib"
+ copy vc6\link_test_vc6_mdd.dll "$(MSVCDIR)\bin"
+ copy vc6\link_test_vc6_mdd.pdb "$(MSVCDIR)\lib"
+ copy vc6\link_test_vc6_md.lib "$(MSVCDIR)\lib"
+ copy vc6\link_test_vc6_md.dll "$(MSVCDIR)\bin"
+ copy vc6\liblink_test_vc6_md.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_mdd.lib "$(MSVCDIR)\lib"
+ copy vc6\liblink_test_vc6_mdd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc6\$(NULL)" mkdir vc6
+
+
+########################################################
+#
+# section for liblink_test_vc6_ss.lib
+#
+########################################################
+vc6/liblink_test_vc6_ss/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_ss/ -Fdvc6/liblink_test_vc6_ss.pdb link_test.cpp
+
+liblink_test_vc6_ss_dir :
+ @if not exist "vc6\liblink_test_vc6_ss\$(NULL)" mkdir vc6\liblink_test_vc6_ss
+
+liblink_test_vc6_ss_clean :
+ del vc6\liblink_test_vc6_ss\*.obj
+ del vc6\liblink_test_vc6_ss\*.idb
+ del vc6\liblink_test_vc6_ss\*.exp
+ del vc6\liblink_test_vc6_ss\*.pch
+
+./vc6/liblink_test_vc6_ss.lib : vc6/liblink_test_vc6_ss/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_ss.lib $(XSFLAGS) vc6/liblink_test_vc6_ss/link_test.obj
+
+./vc6/liblink_test_vc6_ss.exe : main.cpp ./vc6/liblink_test_vc6_ss.lib
+ cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc6/liblink_test_vc6_ss.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_ss.exe
+
+########################################################
+#
+# section for liblink_test_vc6_ms.lib
+#
+########################################################
+vc6/liblink_test_vc6_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_ms/ -Fdvc6/liblink_test_vc6_ms.pdb link_test.cpp
+
+liblink_test_vc6_ms_dir :
+ @if not exist "vc6\liblink_test_vc6_ms\$(NULL)" mkdir vc6\liblink_test_vc6_ms
+
+liblink_test_vc6_ms_clean :
+ del vc6\liblink_test_vc6_ms\*.obj
+ del vc6\liblink_test_vc6_ms\*.idb
+ del vc6\liblink_test_vc6_ms\*.exp
+ del vc6\liblink_test_vc6_ms\*.pch
+
+./vc6/liblink_test_vc6_ms.lib : vc6/liblink_test_vc6_ms/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_ms.lib $(XSFLAGS) vc6/liblink_test_vc6_ms/link_test.obj
+
+./vc6/liblink_test_vc6_ms.exe : main.cpp ./vc6/liblink_test_vc6_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc6/liblink_test_vc6_ms.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc6_ssd.lib
+#
+########################################################
+vc6/liblink_test_vc6_ssd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_ssd/ -Fdvc6/liblink_test_vc6_ssd.pdb link_test.cpp
+
+liblink_test_vc6_ssd_dir :
+ @if not exist "vc6\liblink_test_vc6_ssd\$(NULL)" mkdir vc6\liblink_test_vc6_ssd
+
+liblink_test_vc6_ssd_clean :
+ del vc6\liblink_test_vc6_ssd\*.obj
+ del vc6\liblink_test_vc6_ssd\*.idb
+ del vc6\liblink_test_vc6_ssd\*.exp
+ del vc6\liblink_test_vc6_ssd\*.pch
+
+./vc6/liblink_test_vc6_ssd.lib : vc6/liblink_test_vc6_ssd/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_ssd.lib $(XSFLAGS) vc6/liblink_test_vc6_ssd/link_test.obj
+
+./vc6/liblink_test_vc6_ssd.exe : main.cpp ./vc6/liblink_test_vc6_ssd.lib
+ cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -o ./vc6/liblink_test_vc6_ssd.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_ssd.exe
+
+########################################################
+#
+# section for liblink_test_vc6_msd.lib
+#
+########################################################
+vc6/liblink_test_vc6_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_msd/ -Fdvc6/liblink_test_vc6_msd.pdb link_test.cpp
+
+liblink_test_vc6_msd_dir :
+ @if not exist "vc6\liblink_test_vc6_msd\$(NULL)" mkdir vc6\liblink_test_vc6_msd
+
+liblink_test_vc6_msd_clean :
+ del vc6\liblink_test_vc6_msd\*.obj
+ del vc6\liblink_test_vc6_msd\*.idb
+ del vc6\liblink_test_vc6_msd\*.exp
+ del vc6\liblink_test_vc6_msd\*.pch
+
+./vc6/liblink_test_vc6_msd.lib : vc6/liblink_test_vc6_msd/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_msd.lib $(XSFLAGS) vc6/liblink_test_vc6_msd/link_test.obj
+
+./vc6/liblink_test_vc6_msd.exe : main.cpp ./vc6/liblink_test_vc6_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -o ./vc6/liblink_test_vc6_msd.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_msd.exe
+
+########################################################
+#
+# section for link_test_vc6_mdd.lib
+#
+########################################################
+vc6/link_test_vc6_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/link_test_vc6_mdd/ -Fdvc6/link_test_vc6_mdd.pdb link_test.cpp
+
+link_test_vc6_mdd_dir :
+ @if not exist "vc6\link_test_vc6_mdd\$(NULL)" mkdir vc6\link_test_vc6_mdd
+
+link_test_vc6_mdd_clean :
+ del vc6\link_test_vc6_mdd\*.obj
+ del vc6\link_test_vc6_mdd\*.idb
+ del vc6\link_test_vc6_mdd\*.exp
+ del vc6\link_test_vc6_mdd\*.pch
+
+./vc6/link_test_vc6_mdd.lib : vc6/link_test_vc6_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6/link_test_vc6_mdd.pdb" /debug /machine:I386 /out:"vc6/link_test_vc6_mdd.dll" /implib:"vc6/link_test_vc6_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6/link_test_vc6_mdd/link_test.obj
+
+./vc6/link_test_vc6_mdd.exe : main.cpp ./vc6/link_test_vc6_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -o ./vc6/link_test_vc6_mdd.exe main.cpp /link /LIBPATH:./vc6
+ vc6\link_test_vc6_mdd.exe
+
+########################################################
+#
+# section for link_test_vc6_md.lib
+#
+########################################################
+vc6/link_test_vc6_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc6/link_test_vc6_md/ -Fdvc6/link_test_vc6_md.pdb link_test.cpp
+
+link_test_vc6_md_dir :
+ @if not exist "vc6\link_test_vc6_md\$(NULL)" mkdir vc6\link_test_vc6_md
+
+link_test_vc6_md_clean :
+ del vc6\link_test_vc6_md\*.obj
+ del vc6\link_test_vc6_md\*.idb
+ del vc6\link_test_vc6_md\*.exp
+ del vc6\link_test_vc6_md\*.pch
+
+./vc6/link_test_vc6_md.lib : vc6/link_test_vc6_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6/link_test_vc6_md.pdb" /debug /machine:I386 /out:"vc6/link_test_vc6_md.dll" /implib:"vc6/link_test_vc6_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6/link_test_vc6_md/link_test.obj
+
+./vc6/link_test_vc6_md.exe : main.cpp ./vc6/link_test_vc6_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc6/link_test_vc6_md.exe main.cpp /link /LIBPATH:./vc6
+ vc6\link_test_vc6_md.exe
+
+########################################################
+#
+# section for liblink_test_vc6_md.lib
+#
+########################################################
+vc6/liblink_test_vc6_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_md/ -Fdvc6/liblink_test_vc6_md.pdb link_test.cpp
+
+liblink_test_vc6_md_dir :
+ @if not exist "vc6\liblink_test_vc6_md\$(NULL)" mkdir vc6\liblink_test_vc6_md
+
+liblink_test_vc6_md_clean :
+ del vc6\liblink_test_vc6_md\*.obj
+ del vc6\liblink_test_vc6_md\*.idb
+ del vc6\liblink_test_vc6_md\*.exp
+ del vc6\liblink_test_vc6_md\*.pch
+
+./vc6/liblink_test_vc6_md.lib : vc6/liblink_test_vc6_md/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_md.lib $(XSFLAGS) vc6/liblink_test_vc6_md/link_test.obj
+
+./vc6/liblink_test_vc6_md.exe : main.cpp ./vc6/liblink_test_vc6_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc6/liblink_test_vc6_md.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_md.exe
+
+########################################################
+#
+# section for liblink_test_vc6_mdd.lib
+#
+########################################################
+vc6/liblink_test_vc6_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test_vc6_mdd/ -Fdvc6/liblink_test_vc6_mdd.pdb link_test.cpp
+
+liblink_test_vc6_mdd_dir :
+ @if not exist "vc6\liblink_test_vc6_mdd\$(NULL)" mkdir vc6\liblink_test_vc6_mdd
+
+liblink_test_vc6_mdd_clean :
+ del vc6\liblink_test_vc6_mdd\*.obj
+ del vc6\liblink_test_vc6_mdd\*.idb
+ del vc6\liblink_test_vc6_mdd\*.exp
+ del vc6\liblink_test_vc6_mdd\*.pch
+
+./vc6/liblink_test_vc6_mdd.lib : vc6/liblink_test_vc6_mdd/link_test.obj
+ link -lib /nologo /out:vc6/liblink_test_vc6_mdd.lib $(XSFLAGS) vc6/liblink_test_vc6_mdd/link_test.obj
+
+./vc6/liblink_test_vc6_mdd.exe : main.cpp ./vc6/liblink_test_vc6_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -o ./vc6/liblink_test_vc6_mdd.exe main.cpp /link /LIBPATH:./vc6
+ vc6\liblink_test_vc6_mdd.exe
+
diff --git a/test/link/vc7-stlport.mak b/test/link/vc7-stlport.mak
new file mode 100644
index 00000000..e361c07c
--- /dev/null
+++ b/test/link/vc7-stlport.mak
@@ -0,0 +1,288 @@
+#
+# auto generated makefile for VC6+STLPort
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+!IF "$(STLPORT_PATH)" == ""
+!ERROR Variable STLPORT_PATH not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc7-stlport_ms_dir ./vc7-stlport/liblink_test_vc7-stlport_ms.lib ./vc7-stlport/liblink_test_vc7-stlport_ms.exe liblink_test_vc7-stlport_msd_dir ./vc7-stlport/liblink_test_vc7-stlport_msd.lib ./vc7-stlport/liblink_test_vc7-stlport_msd.exe link_test_vc7-stlport_mdd_dir ./vc7-stlport/link_test_vc7-stlport_mdd.lib ./vc7-stlport/link_test_vc7-stlport_mdd.exe link_test_vc7-stlport_md_dir ./vc7-stlport/link_test_vc7-stlport_md.lib ./vc7-stlport/link_test_vc7-stlport_md.exe liblink_test_vc7-stlport_md_dir ./vc7-stlport/liblink_test_vc7-stlport_md.lib ./vc7-stlport/liblink_test_vc7-stlport_md.exe liblink_test_vc7-stlport_mdd_dir ./vc7-stlport/liblink_test_vc7-stlport_mdd.lib ./vc7-stlport/liblink_test_vc7-stlport_mdd.exe link_test_vc7-stlport_mddd_dir ./vc7-stlport/link_test_vc7-stlport_mddd.lib ./vc7-stlport/link_test_vc7-stlport_mddd.exe liblink_test_vc7-stlport_msdd_dir ./vc7-stlport/liblink_test_vc7-stlport_msdd.lib ./vc7-stlport/liblink_test_vc7-stlport_msdd.exe liblink_test_vc7-stlport_mddd_dir ./vc7-stlport/liblink_test_vc7-stlport_mddd.lib ./vc7-stlport/liblink_test_vc7-stlport_mddd.exe
+
+clean : liblink_test_vc7-stlport_ms_clean liblink_test_vc7-stlport_msd_clean link_test_vc7-stlport_mdd_clean link_test_vc7-stlport_md_clean liblink_test_vc7-stlport_md_clean liblink_test_vc7-stlport_mdd_clean link_test_vc7-stlport_mddd_clean liblink_test_vc7-stlport_msdd_clean liblink_test_vc7-stlport_mddd_clean
+
+install : stlport_check all
+ copy vc7-stlport\liblink_test_vc7-stlport_ms.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_msd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\link_test_vc7-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\link_test_vc7-stlport_mdd.dll "$(MSVCDIR)\bin"
+ copy vc7-stlport\link_test_vc7-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\link_test_vc7-stlport_md.dll "$(MSVCDIR)\bin"
+ copy vc7-stlport\liblink_test_vc7-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\link_test_vc7-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\link_test_vc7-stlport_mddd.dll "$(MSVCDIR)\bin"
+ copy vc7-stlport\link_test_vc7-stlport_mddd.pdb "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_msdd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_msdd.pdb "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc7-stlport\liblink_test_vc7-stlport_mddd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc7-stlport\$(NULL)" mkdir vc7-stlport
+
+stlport_check : $(STLPORT_PATH)\stlport\string
+ echo
+
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_ms.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_ms/ -Fdvc7-stlport/liblink_test_vc7-stlport_ms.pdb link_test.cpp
+
+liblink_test_vc7-stlport_ms_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_ms\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_ms
+
+liblink_test_vc7-stlport_ms_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_ms\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_ms\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_ms\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_ms\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_ms.lib : vc7-stlport/liblink_test_vc7-stlport_ms/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_ms.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_ms/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_ms.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_ms.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_msd.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_msd/ -Fdvc7-stlport/liblink_test_vc7-stlport_msd.pdb link_test.cpp
+
+liblink_test_vc7-stlport_msd_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_msd\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_msd
+
+liblink_test_vc7-stlport_msd_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_msd\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_msd\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_msd\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_msd\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_msd.lib : vc7-stlport/liblink_test_vc7-stlport_msd/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_msd.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_msd/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_msd.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_msd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_msd.exe
+
+########################################################
+#
+# section for link_test_vc7-stlport_mdd.lib
+#
+########################################################
+vc7-stlport/link_test_vc7-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test_vc7-stlport_mdd/ -Fdvc7-stlport/link_test_vc7-stlport_mdd.pdb link_test.cpp
+
+link_test_vc7-stlport_mdd_dir :
+ @if not exist "vc7-stlport\link_test_vc7-stlport_mdd\$(NULL)" mkdir vc7-stlport\link_test_vc7-stlport_mdd
+
+link_test_vc7-stlport_mdd_clean :
+ del vc7-stlport\link_test_vc7-stlport_mdd\*.obj
+ del vc7-stlport\link_test_vc7-stlport_mdd\*.idb
+ del vc7-stlport\link_test_vc7-stlport_mdd\*.exp
+ del vc7-stlport\link_test_vc7-stlport_mdd\*.pch
+
+./vc7-stlport/link_test_vc7-stlport_mdd.lib : vc7-stlport/link_test_vc7-stlport_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test_vc7-stlport_mdd.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test_vc7-stlport_mdd.dll" /implib:"vc7-stlport/link_test_vc7-stlport_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test_vc7-stlport_mdd/link_test.obj
+
+./vc7-stlport/link_test_vc7-stlport_mdd.exe : main.cpp ./vc7-stlport/link_test_vc7-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/link_test_vc7-stlport_mdd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\link_test_vc7-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc7-stlport_md.lib
+#
+########################################################
+vc7-stlport/link_test_vc7-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test_vc7-stlport_md/ -Fdvc7-stlport/link_test_vc7-stlport_md.pdb link_test.cpp
+
+link_test_vc7-stlport_md_dir :
+ @if not exist "vc7-stlport\link_test_vc7-stlport_md\$(NULL)" mkdir vc7-stlport\link_test_vc7-stlport_md
+
+link_test_vc7-stlport_md_clean :
+ del vc7-stlport\link_test_vc7-stlport_md\*.obj
+ del vc7-stlport\link_test_vc7-stlport_md\*.idb
+ del vc7-stlport\link_test_vc7-stlport_md\*.exp
+ del vc7-stlport\link_test_vc7-stlport_md\*.pch
+
+./vc7-stlport/link_test_vc7-stlport_md.lib : vc7-stlport/link_test_vc7-stlport_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test_vc7-stlport_md.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test_vc7-stlport_md.dll" /implib:"vc7-stlport/link_test_vc7-stlport_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test_vc7-stlport_md/link_test.obj
+
+./vc7-stlport/link_test_vc7-stlport_md.exe : main.cpp ./vc7-stlport/link_test_vc7-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc7-stlport/link_test_vc7-stlport_md.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\link_test_vc7-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_md.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_md/ -Fdvc7-stlport/liblink_test_vc7-stlport_md.pdb link_test.cpp
+
+liblink_test_vc7-stlport_md_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_md\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_md
+
+liblink_test_vc7-stlport_md_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_md\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_md\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_md\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_md\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_md.lib : vc7-stlport/liblink_test_vc7-stlport_md/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_md.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_md/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_md.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_md.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_mdd.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_mdd/ -Fdvc7-stlport/liblink_test_vc7-stlport_mdd.pdb link_test.cpp
+
+liblink_test_vc7-stlport_mdd_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_mdd\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_mdd
+
+liblink_test_vc7-stlport_mdd_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_mdd\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_mdd\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_mdd\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_mdd\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_mdd.lib : vc7-stlport/liblink_test_vc7-stlport_mdd/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_mdd.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_mdd/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_mdd.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_mdd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc7-stlport_mddd.lib
+#
+########################################################
+vc7-stlport/link_test_vc7-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test_vc7-stlport_mddd/ -Fdvc7-stlport/link_test_vc7-stlport_mddd.pdb link_test.cpp
+
+link_test_vc7-stlport_mddd_dir :
+ @if not exist "vc7-stlport\link_test_vc7-stlport_mddd\$(NULL)" mkdir vc7-stlport\link_test_vc7-stlport_mddd
+
+link_test_vc7-stlport_mddd_clean :
+ del vc7-stlport\link_test_vc7-stlport_mddd\*.obj
+ del vc7-stlport\link_test_vc7-stlport_mddd\*.idb
+ del vc7-stlport\link_test_vc7-stlport_mddd\*.exp
+ del vc7-stlport\link_test_vc7-stlport_mddd\*.pch
+
+./vc7-stlport/link_test_vc7-stlport_mddd.lib : vc7-stlport/link_test_vc7-stlport_mddd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test_vc7-stlport_mddd.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test_vc7-stlport_mddd.dll" /implib:"vc7-stlport/link_test_vc7-stlport_mddd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test_vc7-stlport_mddd/link_test.obj
+
+./vc7-stlport/link_test_vc7-stlport_mddd.exe : main.cpp ./vc7-stlport/link_test_vc7-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/link_test_vc7-stlport_mddd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\link_test_vc7-stlport_mddd.exe
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_msdd.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_msdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_msdd/ -Fdvc7-stlport/liblink_test_vc7-stlport_msdd.pdb link_test.cpp
+
+liblink_test_vc7-stlport_msdd_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_msdd\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_msdd
+
+liblink_test_vc7-stlport_msdd_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_msdd\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_msdd\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_msdd\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_msdd\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_msdd.lib : vc7-stlport/liblink_test_vc7-stlport_msdd/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_msdd.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_msdd/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_msdd.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_msdd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_msdd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_msdd.exe
+
+########################################################
+#
+# section for liblink_test_vc7-stlport_mddd.lib
+#
+########################################################
+vc7-stlport/liblink_test_vc7-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test_vc7-stlport_mddd/ -Fdvc7-stlport/liblink_test_vc7-stlport_mddd.pdb link_test.cpp
+
+liblink_test_vc7-stlport_mddd_dir :
+ @if not exist "vc7-stlport\liblink_test_vc7-stlport_mddd\$(NULL)" mkdir vc7-stlport\liblink_test_vc7-stlport_mddd
+
+liblink_test_vc7-stlport_mddd_clean :
+ del vc7-stlport\liblink_test_vc7-stlport_mddd\*.obj
+ del vc7-stlport\liblink_test_vc7-stlport_mddd\*.idb
+ del vc7-stlport\liblink_test_vc7-stlport_mddd\*.exp
+ del vc7-stlport\liblink_test_vc7-stlport_mddd\*.pch
+
+./vc7-stlport/liblink_test_vc7-stlport_mddd.lib : vc7-stlport/liblink_test_vc7-stlport_mddd/link_test.obj
+ link -lib /nologo /out:vc7-stlport/liblink_test_vc7-stlport_mddd.lib $(XSFLAGS) vc7-stlport/liblink_test_vc7-stlport_mddd/link_test.obj
+
+./vc7-stlport/liblink_test_vc7-stlport_mddd.exe : main.cpp ./vc7-stlport/liblink_test_vc7-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test_vc7-stlport_mddd.exe main.cpp /link /LIBPATH:./vc7-stlport
+ vc7-stlport\liblink_test_vc7-stlport_mddd.exe
+
diff --git a/test/link/vc7.mak b/test/link/vc7.mak
new file mode 100644
index 00000000..3f3b9552
--- /dev/null
+++ b/test/link/vc7.mak
@@ -0,0 +1,256 @@
+#
+# auto generated makefile for VC6 compiler
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc7_ss_dir ./vc7/liblink_test_vc7_ss.lib ./vc7/liblink_test_vc7_ss.exe liblink_test_vc7_ms_dir ./vc7/liblink_test_vc7_ms.lib ./vc7/liblink_test_vc7_ms.exe liblink_test_vc7_ssd_dir ./vc7/liblink_test_vc7_ssd.lib ./vc7/liblink_test_vc7_ssd.exe liblink_test_vc7_msd_dir ./vc7/liblink_test_vc7_msd.lib ./vc7/liblink_test_vc7_msd.exe link_test_vc7_mdd_dir ./vc7/link_test_vc7_mdd.lib ./vc7/link_test_vc7_mdd.exe link_test_vc7_md_dir ./vc7/link_test_vc7_md.lib ./vc7/link_test_vc7_md.exe liblink_test_vc7_md_dir ./vc7/liblink_test_vc7_md.lib ./vc7/liblink_test_vc7_md.exe liblink_test_vc7_mdd_dir ./vc7/liblink_test_vc7_mdd.lib ./vc7/liblink_test_vc7_mdd.exe
+
+clean : liblink_test_vc7_ss_clean liblink_test_vc7_ms_clean liblink_test_vc7_ssd_clean liblink_test_vc7_msd_clean link_test_vc7_mdd_clean link_test_vc7_md_clean liblink_test_vc7_md_clean liblink_test_vc7_mdd_clean
+
+install : all
+ copy vc7\liblink_test_vc7_ss.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_ms.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_ssd.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_ssd.pdb "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_msd.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_msd.pdb "$(MSVCDIR)\lib"
+ copy vc7\link_test_vc7_mdd.lib "$(MSVCDIR)\lib"
+ copy vc7\link_test_vc7_mdd.dll "$(MSVCDIR)\bin"
+ copy vc7\link_test_vc7_mdd.pdb "$(MSVCDIR)\lib"
+ copy vc7\link_test_vc7_md.lib "$(MSVCDIR)\lib"
+ copy vc7\link_test_vc7_md.dll "$(MSVCDIR)\bin"
+ copy vc7\liblink_test_vc7_md.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_mdd.lib "$(MSVCDIR)\lib"
+ copy vc7\liblink_test_vc7_mdd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc7\$(NULL)" mkdir vc7
+
+
+########################################################
+#
+# section for liblink_test_vc7_ss.lib
+#
+########################################################
+vc7/liblink_test_vc7_ss/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_ss/ -Fdvc7/liblink_test_vc7_ss.pdb link_test.cpp
+
+liblink_test_vc7_ss_dir :
+ @if not exist "vc7\liblink_test_vc7_ss\$(NULL)" mkdir vc7\liblink_test_vc7_ss
+
+liblink_test_vc7_ss_clean :
+ del vc7\liblink_test_vc7_ss\*.obj
+ del vc7\liblink_test_vc7_ss\*.idb
+ del vc7\liblink_test_vc7_ss\*.exp
+ del vc7\liblink_test_vc7_ss\*.pch
+
+./vc7/liblink_test_vc7_ss.lib : vc7/liblink_test_vc7_ss/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_ss.lib $(XSFLAGS) vc7/liblink_test_vc7_ss/link_test.obj
+
+./vc7/liblink_test_vc7_ss.exe : main.cpp ./vc7/liblink_test_vc7_ss.lib
+ cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc7/liblink_test_vc7_ss.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_ss.exe
+
+########################################################
+#
+# section for liblink_test_vc7_ms.lib
+#
+########################################################
+vc7/liblink_test_vc7_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_ms/ -Fdvc7/liblink_test_vc7_ms.pdb link_test.cpp
+
+liblink_test_vc7_ms_dir :
+ @if not exist "vc7\liblink_test_vc7_ms\$(NULL)" mkdir vc7\liblink_test_vc7_ms
+
+liblink_test_vc7_ms_clean :
+ del vc7\liblink_test_vc7_ms\*.obj
+ del vc7\liblink_test_vc7_ms\*.idb
+ del vc7\liblink_test_vc7_ms\*.exp
+ del vc7\liblink_test_vc7_ms\*.pch
+
+./vc7/liblink_test_vc7_ms.lib : vc7/liblink_test_vc7_ms/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_ms.lib $(XSFLAGS) vc7/liblink_test_vc7_ms/link_test.obj
+
+./vc7/liblink_test_vc7_ms.exe : main.cpp ./vc7/liblink_test_vc7_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc7/liblink_test_vc7_ms.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc7_ssd.lib
+#
+########################################################
+vc7/liblink_test_vc7_ssd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_ssd/ -Fdvc7/liblink_test_vc7_ssd.pdb link_test.cpp
+
+liblink_test_vc7_ssd_dir :
+ @if not exist "vc7\liblink_test_vc7_ssd\$(NULL)" mkdir vc7\liblink_test_vc7_ssd
+
+liblink_test_vc7_ssd_clean :
+ del vc7\liblink_test_vc7_ssd\*.obj
+ del vc7\liblink_test_vc7_ssd\*.idb
+ del vc7\liblink_test_vc7_ssd\*.exp
+ del vc7\liblink_test_vc7_ssd\*.pch
+
+./vc7/liblink_test_vc7_ssd.lib : vc7/liblink_test_vc7_ssd/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_ssd.lib $(XSFLAGS) vc7/liblink_test_vc7_ssd/link_test.obj
+
+./vc7/liblink_test_vc7_ssd.exe : main.cpp ./vc7/liblink_test_vc7_ssd.lib
+ cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -o ./vc7/liblink_test_vc7_ssd.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_ssd.exe
+
+########################################################
+#
+# section for liblink_test_vc7_msd.lib
+#
+########################################################
+vc7/liblink_test_vc7_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_msd/ -Fdvc7/liblink_test_vc7_msd.pdb link_test.cpp
+
+liblink_test_vc7_msd_dir :
+ @if not exist "vc7\liblink_test_vc7_msd\$(NULL)" mkdir vc7\liblink_test_vc7_msd
+
+liblink_test_vc7_msd_clean :
+ del vc7\liblink_test_vc7_msd\*.obj
+ del vc7\liblink_test_vc7_msd\*.idb
+ del vc7\liblink_test_vc7_msd\*.exp
+ del vc7\liblink_test_vc7_msd\*.pch
+
+./vc7/liblink_test_vc7_msd.lib : vc7/liblink_test_vc7_msd/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_msd.lib $(XSFLAGS) vc7/liblink_test_vc7_msd/link_test.obj
+
+./vc7/liblink_test_vc7_msd.exe : main.cpp ./vc7/liblink_test_vc7_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -o ./vc7/liblink_test_vc7_msd.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_msd.exe
+
+########################################################
+#
+# section for link_test_vc7_mdd.lib
+#
+########################################################
+vc7/link_test_vc7_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/link_test_vc7_mdd/ -Fdvc7/link_test_vc7_mdd.pdb link_test.cpp
+
+link_test_vc7_mdd_dir :
+ @if not exist "vc7\link_test_vc7_mdd\$(NULL)" mkdir vc7\link_test_vc7_mdd
+
+link_test_vc7_mdd_clean :
+ del vc7\link_test_vc7_mdd\*.obj
+ del vc7\link_test_vc7_mdd\*.idb
+ del vc7\link_test_vc7_mdd\*.exp
+ del vc7\link_test_vc7_mdd\*.pch
+
+./vc7/link_test_vc7_mdd.lib : vc7/link_test_vc7_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7/link_test_vc7_mdd.pdb" /debug /machine:I386 /out:"vc7/link_test_vc7_mdd.dll" /implib:"vc7/link_test_vc7_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7/link_test_vc7_mdd/link_test.obj
+
+./vc7/link_test_vc7_mdd.exe : main.cpp ./vc7/link_test_vc7_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -o ./vc7/link_test_vc7_mdd.exe main.cpp /link /LIBPATH:./vc7
+ vc7\link_test_vc7_mdd.exe
+
+########################################################
+#
+# section for link_test_vc7_md.lib
+#
+########################################################
+vc7/link_test_vc7_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc7/link_test_vc7_md/ -Fdvc7/link_test_vc7_md.pdb link_test.cpp
+
+link_test_vc7_md_dir :
+ @if not exist "vc7\link_test_vc7_md\$(NULL)" mkdir vc7\link_test_vc7_md
+
+link_test_vc7_md_clean :
+ del vc7\link_test_vc7_md\*.obj
+ del vc7\link_test_vc7_md\*.idb
+ del vc7\link_test_vc7_md\*.exp
+ del vc7\link_test_vc7_md\*.pch
+
+./vc7/link_test_vc7_md.lib : vc7/link_test_vc7_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7/link_test_vc7_md.pdb" /debug /machine:I386 /out:"vc7/link_test_vc7_md.dll" /implib:"vc7/link_test_vc7_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7/link_test_vc7_md/link_test.obj
+
+./vc7/link_test_vc7_md.exe : main.cpp ./vc7/link_test_vc7_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc7/link_test_vc7_md.exe main.cpp /link /LIBPATH:./vc7
+ vc7\link_test_vc7_md.exe
+
+########################################################
+#
+# section for liblink_test_vc7_md.lib
+#
+########################################################
+vc7/liblink_test_vc7_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_md/ -Fdvc7/liblink_test_vc7_md.pdb link_test.cpp
+
+liblink_test_vc7_md_dir :
+ @if not exist "vc7\liblink_test_vc7_md\$(NULL)" mkdir vc7\liblink_test_vc7_md
+
+liblink_test_vc7_md_clean :
+ del vc7\liblink_test_vc7_md\*.obj
+ del vc7\liblink_test_vc7_md\*.idb
+ del vc7\liblink_test_vc7_md\*.exp
+ del vc7\liblink_test_vc7_md\*.pch
+
+./vc7/liblink_test_vc7_md.lib : vc7/liblink_test_vc7_md/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_md.lib $(XSFLAGS) vc7/liblink_test_vc7_md/link_test.obj
+
+./vc7/liblink_test_vc7_md.exe : main.cpp ./vc7/liblink_test_vc7_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc7/liblink_test_vc7_md.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_md.exe
+
+########################################################
+#
+# section for liblink_test_vc7_mdd.lib
+#
+########################################################
+vc7/liblink_test_vc7_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test_vc7_mdd/ -Fdvc7/liblink_test_vc7_mdd.pdb link_test.cpp
+
+liblink_test_vc7_mdd_dir :
+ @if not exist "vc7\liblink_test_vc7_mdd\$(NULL)" mkdir vc7\liblink_test_vc7_mdd
+
+liblink_test_vc7_mdd_clean :
+ del vc7\liblink_test_vc7_mdd\*.obj
+ del vc7\liblink_test_vc7_mdd\*.idb
+ del vc7\liblink_test_vc7_mdd\*.exp
+ del vc7\liblink_test_vc7_mdd\*.pch
+
+./vc7/liblink_test_vc7_mdd.lib : vc7/liblink_test_vc7_mdd/link_test.obj
+ link -lib /nologo /out:vc7/liblink_test_vc7_mdd.lib $(XSFLAGS) vc7/liblink_test_vc7_mdd/link_test.obj
+
+./vc7/liblink_test_vc7_mdd.exe : main.cpp ./vc7/liblink_test_vc7_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -o ./vc7/liblink_test_vc7_mdd.exe main.cpp /link /LIBPATH:./vc7
+ vc7\liblink_test_vc7_mdd.exe
+
diff --git a/test/link/vc71-stlport.mak b/test/link/vc71-stlport.mak
new file mode 100644
index 00000000..a280bf74
--- /dev/null
+++ b/test/link/vc71-stlport.mak
@@ -0,0 +1,288 @@
+#
+# auto generated makefile for VC6+STLPort
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+!IF "$(STLPORT_PATH)" == ""
+!ERROR Variable STLPORT_PATH not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc71-stlport_ms_dir ./vc71-stlport/liblink_test_vc71-stlport_ms.lib ./vc71-stlport/liblink_test_vc71-stlport_ms.exe liblink_test_vc71-stlport_msd_dir ./vc71-stlport/liblink_test_vc71-stlport_msd.lib ./vc71-stlport/liblink_test_vc71-stlport_msd.exe link_test_vc71-stlport_mdd_dir ./vc71-stlport/link_test_vc71-stlport_mdd.lib ./vc71-stlport/link_test_vc71-stlport_mdd.exe link_test_vc71-stlport_md_dir ./vc71-stlport/link_test_vc71-stlport_md.lib ./vc71-stlport/link_test_vc71-stlport_md.exe liblink_test_vc71-stlport_md_dir ./vc71-stlport/liblink_test_vc71-stlport_md.lib ./vc71-stlport/liblink_test_vc71-stlport_md.exe liblink_test_vc71-stlport_mdd_dir ./vc71-stlport/liblink_test_vc71-stlport_mdd.lib ./vc71-stlport/liblink_test_vc71-stlport_mdd.exe link_test_vc71-stlport_mddd_dir ./vc71-stlport/link_test_vc71-stlport_mddd.lib ./vc71-stlport/link_test_vc71-stlport_mddd.exe liblink_test_vc71-stlport_msdd_dir ./vc71-stlport/liblink_test_vc71-stlport_msdd.lib ./vc71-stlport/liblink_test_vc71-stlport_msdd.exe liblink_test_vc71-stlport_mddd_dir ./vc71-stlport/liblink_test_vc71-stlport_mddd.lib ./vc71-stlport/liblink_test_vc71-stlport_mddd.exe
+
+clean : liblink_test_vc71-stlport_ms_clean liblink_test_vc71-stlport_msd_clean link_test_vc71-stlport_mdd_clean link_test_vc71-stlport_md_clean liblink_test_vc71-stlport_md_clean liblink_test_vc71-stlport_mdd_clean link_test_vc71-stlport_mddd_clean liblink_test_vc71-stlport_msdd_clean liblink_test_vc71-stlport_mddd_clean
+
+install : stlport_check all
+ copy vc71-stlport\liblink_test_vc71-stlport_ms.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_msd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\link_test_vc71-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\link_test_vc71-stlport_mdd.dll "$(MSVCDIR)\bin"
+ copy vc71-stlport\link_test_vc71-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\link_test_vc71-stlport_md.dll "$(MSVCDIR)\bin"
+ copy vc71-stlport\liblink_test_vc71-stlport_md.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_mdd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\link_test_vc71-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\link_test_vc71-stlport_mddd.dll "$(MSVCDIR)\bin"
+ copy vc71-stlport\link_test_vc71-stlport_mddd.pdb "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_msdd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_msdd.pdb "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_mddd.lib "$(MSVCDIR)\lib"
+ copy vc71-stlport\liblink_test_vc71-stlport_mddd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc71-stlport\$(NULL)" mkdir vc71-stlport
+
+stlport_check : $(STLPORT_PATH)\stlport\string
+ echo
+
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_ms.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_ms/ -Fdvc71-stlport/liblink_test_vc71-stlport_ms.pdb link_test.cpp
+
+liblink_test_vc71-stlport_ms_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_ms\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_ms
+
+liblink_test_vc71-stlport_ms_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_ms\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_ms\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_ms\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_ms\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_ms.lib : vc71-stlport/liblink_test_vc71-stlport_ms/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_ms.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_ms/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_ms.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_ms.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_msd.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_msd/ -Fdvc71-stlport/liblink_test_vc71-stlport_msd.pdb link_test.cpp
+
+liblink_test_vc71-stlport_msd_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_msd\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_msd
+
+liblink_test_vc71-stlport_msd_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_msd\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_msd\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_msd\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_msd\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_msd.lib : vc71-stlport/liblink_test_vc71-stlport_msd/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_msd.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_msd/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_msd.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_msd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_msd.exe
+
+########################################################
+#
+# section for link_test_vc71-stlport_mdd.lib
+#
+########################################################
+vc71-stlport/link_test_vc71-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test_vc71-stlport_mdd/ -Fdvc71-stlport/link_test_vc71-stlport_mdd.pdb link_test.cpp
+
+link_test_vc71-stlport_mdd_dir :
+ @if not exist "vc71-stlport\link_test_vc71-stlport_mdd\$(NULL)" mkdir vc71-stlport\link_test_vc71-stlport_mdd
+
+link_test_vc71-stlport_mdd_clean :
+ del vc71-stlport\link_test_vc71-stlport_mdd\*.obj
+ del vc71-stlport\link_test_vc71-stlport_mdd\*.idb
+ del vc71-stlport\link_test_vc71-stlport_mdd\*.exp
+ del vc71-stlport\link_test_vc71-stlport_mdd\*.pch
+
+./vc71-stlport/link_test_vc71-stlport_mdd.lib : vc71-stlport/link_test_vc71-stlport_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test_vc71-stlport_mdd.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test_vc71-stlport_mdd.dll" /implib:"vc71-stlport/link_test_vc71-stlport_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test_vc71-stlport_mdd/link_test.obj
+
+./vc71-stlport/link_test_vc71-stlport_mdd.exe : main.cpp ./vc71-stlport/link_test_vc71-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/link_test_vc71-stlport_mdd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\link_test_vc71-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc71-stlport_md.lib
+#
+########################################################
+vc71-stlport/link_test_vc71-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test_vc71-stlport_md/ -Fdvc71-stlport/link_test_vc71-stlport_md.pdb link_test.cpp
+
+link_test_vc71-stlport_md_dir :
+ @if not exist "vc71-stlport\link_test_vc71-stlport_md\$(NULL)" mkdir vc71-stlport\link_test_vc71-stlport_md
+
+link_test_vc71-stlport_md_clean :
+ del vc71-stlport\link_test_vc71-stlport_md\*.obj
+ del vc71-stlport\link_test_vc71-stlport_md\*.idb
+ del vc71-stlport\link_test_vc71-stlport_md\*.exp
+ del vc71-stlport\link_test_vc71-stlport_md\*.pch
+
+./vc71-stlport/link_test_vc71-stlport_md.lib : vc71-stlport/link_test_vc71-stlport_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test_vc71-stlport_md.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test_vc71-stlport_md.dll" /implib:"vc71-stlport/link_test_vc71-stlport_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test_vc71-stlport_md/link_test.obj
+
+./vc71-stlport/link_test_vc71-stlport_md.exe : main.cpp ./vc71-stlport/link_test_vc71-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc71-stlport/link_test_vc71-stlport_md.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\link_test_vc71-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_md.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_md/ -Fdvc71-stlport/liblink_test_vc71-stlport_md.pdb link_test.cpp
+
+liblink_test_vc71-stlport_md_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_md\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_md
+
+liblink_test_vc71-stlport_md_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_md\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_md\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_md\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_md\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_md.lib : vc71-stlport/liblink_test_vc71-stlport_md/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_md.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_md/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_md.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_md.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_md.exe
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_mdd.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_mdd/ -Fdvc71-stlport/liblink_test_vc71-stlport_mdd.pdb link_test.cpp
+
+liblink_test_vc71-stlport_mdd_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_mdd\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_mdd
+
+liblink_test_vc71-stlport_mdd_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_mdd\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_mdd\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_mdd\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_mdd\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_mdd.lib : vc71-stlport/liblink_test_vc71-stlport_mdd/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_mdd.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_mdd/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_mdd.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_mdd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_mdd.exe
+
+########################################################
+#
+# section for link_test_vc71-stlport_mddd.lib
+#
+########################################################
+vc71-stlport/link_test_vc71-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test_vc71-stlport_mddd/ -Fdvc71-stlport/link_test_vc71-stlport_mddd.pdb link_test.cpp
+
+link_test_vc71-stlport_mddd_dir :
+ @if not exist "vc71-stlport\link_test_vc71-stlport_mddd\$(NULL)" mkdir vc71-stlport\link_test_vc71-stlport_mddd
+
+link_test_vc71-stlport_mddd_clean :
+ del vc71-stlport\link_test_vc71-stlport_mddd\*.obj
+ del vc71-stlport\link_test_vc71-stlport_mddd\*.idb
+ del vc71-stlport\link_test_vc71-stlport_mddd\*.exp
+ del vc71-stlport\link_test_vc71-stlport_mddd\*.pch
+
+./vc71-stlport/link_test_vc71-stlport_mddd.lib : vc71-stlport/link_test_vc71-stlport_mddd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test_vc71-stlport_mddd.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test_vc71-stlport_mddd.dll" /implib:"vc71-stlport/link_test_vc71-stlport_mddd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test_vc71-stlport_mddd/link_test.obj
+
+./vc71-stlport/link_test_vc71-stlport_mddd.exe : main.cpp ./vc71-stlport/link_test_vc71-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/link_test_vc71-stlport_mddd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\link_test_vc71-stlport_mddd.exe
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_msdd.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_msdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_msdd/ -Fdvc71-stlport/liblink_test_vc71-stlport_msdd.pdb link_test.cpp
+
+liblink_test_vc71-stlport_msdd_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_msdd\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_msdd
+
+liblink_test_vc71-stlport_msdd_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_msdd\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_msdd\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_msdd\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_msdd\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_msdd.lib : vc71-stlport/liblink_test_vc71-stlport_msdd/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_msdd.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_msdd/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_msdd.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_msdd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_msdd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_msdd.exe
+
+########################################################
+#
+# section for liblink_test_vc71-stlport_mddd.lib
+#
+########################################################
+vc71-stlport/liblink_test_vc71-stlport_mddd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test_vc71-stlport_mddd/ -Fdvc71-stlport/liblink_test_vc71-stlport_mddd.pdb link_test.cpp
+
+liblink_test_vc71-stlport_mddd_dir :
+ @if not exist "vc71-stlport\liblink_test_vc71-stlport_mddd\$(NULL)" mkdir vc71-stlport\liblink_test_vc71-stlport_mddd
+
+liblink_test_vc71-stlport_mddd_clean :
+ del vc71-stlport\liblink_test_vc71-stlport_mddd\*.obj
+ del vc71-stlport\liblink_test_vc71-stlport_mddd\*.idb
+ del vc71-stlport\liblink_test_vc71-stlport_mddd\*.exp
+ del vc71-stlport\liblink_test_vc71-stlport_mddd\*.pch
+
+./vc71-stlport/liblink_test_vc71-stlport_mddd.lib : vc71-stlport/liblink_test_vc71-stlport_mddd/link_test.obj
+ link -lib /nologo /out:vc71-stlport/liblink_test_vc71-stlport_mddd.lib $(XSFLAGS) vc71-stlport/liblink_test_vc71-stlport_mddd/link_test.obj
+
+./vc71-stlport/liblink_test_vc71-stlport_mddd.exe : main.cpp ./vc71-stlport/liblink_test_vc71-stlport_mddd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test_vc71-stlport_mddd.exe main.cpp /link /LIBPATH:./vc71-stlport
+ vc71-stlport\liblink_test_vc71-stlport_mddd.exe
+
diff --git a/test/link/vc71.mak b/test/link/vc71.mak
new file mode 100644
index 00000000..fe5ff689
--- /dev/null
+++ b/test/link/vc71.mak
@@ -0,0 +1,256 @@
+#
+# auto generated makefile for VC6 compiler
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+
+ALL_HEADER=
+
+all : main_dir liblink_test_vc71_ss_dir ./vc71/liblink_test_vc71_ss.lib ./vc71/liblink_test_vc71_ss.exe liblink_test_vc71_ms_dir ./vc71/liblink_test_vc71_ms.lib ./vc71/liblink_test_vc71_ms.exe liblink_test_vc71_ssd_dir ./vc71/liblink_test_vc71_ssd.lib ./vc71/liblink_test_vc71_ssd.exe liblink_test_vc71_msd_dir ./vc71/liblink_test_vc71_msd.lib ./vc71/liblink_test_vc71_msd.exe link_test_vc71_mdd_dir ./vc71/link_test_vc71_mdd.lib ./vc71/link_test_vc71_mdd.exe link_test_vc71_md_dir ./vc71/link_test_vc71_md.lib ./vc71/link_test_vc71_md.exe liblink_test_vc71_md_dir ./vc71/liblink_test_vc71_md.lib ./vc71/liblink_test_vc71_md.exe liblink_test_vc71_mdd_dir ./vc71/liblink_test_vc71_mdd.lib ./vc71/liblink_test_vc71_mdd.exe
+
+clean : liblink_test_vc71_ss_clean liblink_test_vc71_ms_clean liblink_test_vc71_ssd_clean liblink_test_vc71_msd_clean link_test_vc71_mdd_clean link_test_vc71_md_clean liblink_test_vc71_md_clean liblink_test_vc71_mdd_clean
+
+install : all
+ copy vc71\liblink_test_vc71_ss.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_ms.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_ssd.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_ssd.pdb "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_msd.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_msd.pdb "$(MSVCDIR)\lib"
+ copy vc71\link_test_vc71_mdd.lib "$(MSVCDIR)\lib"
+ copy vc71\link_test_vc71_mdd.dll "$(MSVCDIR)\bin"
+ copy vc71\link_test_vc71_mdd.pdb "$(MSVCDIR)\lib"
+ copy vc71\link_test_vc71_md.lib "$(MSVCDIR)\lib"
+ copy vc71\link_test_vc71_md.dll "$(MSVCDIR)\bin"
+ copy vc71\liblink_test_vc71_md.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_mdd.lib "$(MSVCDIR)\lib"
+ copy vc71\liblink_test_vc71_mdd.pdb "$(MSVCDIR)\lib"
+
+main_dir :
+ @if not exist "vc71\$(NULL)" mkdir vc71
+
+
+########################################################
+#
+# section for liblink_test_vc71_ss.lib
+#
+########################################################
+vc71/liblink_test_vc71_ss/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_ss/ -Fdvc71/liblink_test_vc71_ss.pdb link_test.cpp
+
+liblink_test_vc71_ss_dir :
+ @if not exist "vc71\liblink_test_vc71_ss\$(NULL)" mkdir vc71\liblink_test_vc71_ss
+
+liblink_test_vc71_ss_clean :
+ del vc71\liblink_test_vc71_ss\*.obj
+ del vc71\liblink_test_vc71_ss\*.idb
+ del vc71\liblink_test_vc71_ss\*.exp
+ del vc71\liblink_test_vc71_ss\*.pch
+
+./vc71/liblink_test_vc71_ss.lib : vc71/liblink_test_vc71_ss/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_ss.lib $(XSFLAGS) vc71/liblink_test_vc71_ss/link_test.obj
+
+./vc71/liblink_test_vc71_ss.exe : main.cpp ./vc71/liblink_test_vc71_ss.lib
+ cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc71/liblink_test_vc71_ss.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_ss.exe
+
+########################################################
+#
+# section for liblink_test_vc71_ms.lib
+#
+########################################################
+vc71/liblink_test_vc71_ms/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_ms/ -Fdvc71/liblink_test_vc71_ms.pdb link_test.cpp
+
+liblink_test_vc71_ms_dir :
+ @if not exist "vc71\liblink_test_vc71_ms\$(NULL)" mkdir vc71\liblink_test_vc71_ms
+
+liblink_test_vc71_ms_clean :
+ del vc71\liblink_test_vc71_ms\*.obj
+ del vc71\liblink_test_vc71_ms\*.idb
+ del vc71\liblink_test_vc71_ms\*.exp
+ del vc71\liblink_test_vc71_ms\*.pch
+
+./vc71/liblink_test_vc71_ms.lib : vc71/liblink_test_vc71_ms/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_ms.lib $(XSFLAGS) vc71/liblink_test_vc71_ms/link_test.obj
+
+./vc71/liblink_test_vc71_ms.exe : main.cpp ./vc71/liblink_test_vc71_ms.lib
+ cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -o ./vc71/liblink_test_vc71_ms.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_ms.exe
+
+########################################################
+#
+# section for liblink_test_vc71_ssd.lib
+#
+########################################################
+vc71/liblink_test_vc71_ssd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_ssd/ -Fdvc71/liblink_test_vc71_ssd.pdb link_test.cpp
+
+liblink_test_vc71_ssd_dir :
+ @if not exist "vc71\liblink_test_vc71_ssd\$(NULL)" mkdir vc71\liblink_test_vc71_ssd
+
+liblink_test_vc71_ssd_clean :
+ del vc71\liblink_test_vc71_ssd\*.obj
+ del vc71\liblink_test_vc71_ssd\*.idb
+ del vc71\liblink_test_vc71_ssd\*.exp
+ del vc71\liblink_test_vc71_ssd\*.pch
+
+./vc71/liblink_test_vc71_ssd.lib : vc71/liblink_test_vc71_ssd/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_ssd.lib $(XSFLAGS) vc71/liblink_test_vc71_ssd/link_test.obj
+
+./vc71/liblink_test_vc71_ssd.exe : main.cpp ./vc71/liblink_test_vc71_ssd.lib
+ cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -o ./vc71/liblink_test_vc71_ssd.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_ssd.exe
+
+########################################################
+#
+# section for liblink_test_vc71_msd.lib
+#
+########################################################
+vc71/liblink_test_vc71_msd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_msd/ -Fdvc71/liblink_test_vc71_msd.pdb link_test.cpp
+
+liblink_test_vc71_msd_dir :
+ @if not exist "vc71\liblink_test_vc71_msd\$(NULL)" mkdir vc71\liblink_test_vc71_msd
+
+liblink_test_vc71_msd_clean :
+ del vc71\liblink_test_vc71_msd\*.obj
+ del vc71\liblink_test_vc71_msd\*.idb
+ del vc71\liblink_test_vc71_msd\*.exp
+ del vc71\liblink_test_vc71_msd\*.pch
+
+./vc71/liblink_test_vc71_msd.lib : vc71/liblink_test_vc71_msd/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_msd.lib $(XSFLAGS) vc71/liblink_test_vc71_msd/link_test.obj
+
+./vc71/liblink_test_vc71_msd.exe : main.cpp ./vc71/liblink_test_vc71_msd.lib
+ cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -o ./vc71/liblink_test_vc71_msd.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_msd.exe
+
+########################################################
+#
+# section for link_test_vc71_mdd.lib
+#
+########################################################
+vc71/link_test_vc71_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/link_test_vc71_mdd/ -Fdvc71/link_test_vc71_mdd.pdb link_test.cpp
+
+link_test_vc71_mdd_dir :
+ @if not exist "vc71\link_test_vc71_mdd\$(NULL)" mkdir vc71\link_test_vc71_mdd
+
+link_test_vc71_mdd_clean :
+ del vc71\link_test_vc71_mdd\*.obj
+ del vc71\link_test_vc71_mdd\*.idb
+ del vc71\link_test_vc71_mdd\*.exp
+ del vc71\link_test_vc71_mdd\*.pch
+
+./vc71/link_test_vc71_mdd.lib : vc71/link_test_vc71_mdd/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71/link_test_vc71_mdd.pdb" /debug /machine:I386 /out:"vc71/link_test_vc71_mdd.dll" /implib:"vc71/link_test_vc71_mdd.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71/link_test_vc71_mdd/link_test.obj
+
+./vc71/link_test_vc71_mdd.exe : main.cpp ./vc71/link_test_vc71_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -o ./vc71/link_test_vc71_mdd.exe main.cpp /link /LIBPATH:./vc71
+ vc71\link_test_vc71_mdd.exe
+
+########################################################
+#
+# section for link_test_vc71_md.lib
+#
+########################################################
+vc71/link_test_vc71_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc71/link_test_vc71_md/ -Fdvc71/link_test_vc71_md.pdb link_test.cpp
+
+link_test_vc71_md_dir :
+ @if not exist "vc71\link_test_vc71_md\$(NULL)" mkdir vc71\link_test_vc71_md
+
+link_test_vc71_md_clean :
+ del vc71\link_test_vc71_md\*.obj
+ del vc71\link_test_vc71_md\*.idb
+ del vc71\link_test_vc71_md\*.exp
+ del vc71\link_test_vc71_md\*.pch
+
+./vc71/link_test_vc71_md.lib : vc71/link_test_vc71_md/link_test.obj
+ link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71/link_test_vc71_md.pdb" /debug /machine:I386 /out:"vc71/link_test_vc71_md.dll" /implib:"vc71/link_test_vc71_md.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71/link_test_vc71_md/link_test.obj
+
+./vc71/link_test_vc71_md.exe : main.cpp ./vc71/link_test_vc71_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc71/link_test_vc71_md.exe main.cpp /link /LIBPATH:./vc71
+ vc71\link_test_vc71_md.exe
+
+########################################################
+#
+# section for liblink_test_vc71_md.lib
+#
+########################################################
+vc71/liblink_test_vc71_md/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_md/ -Fdvc71/liblink_test_vc71_md.pdb link_test.cpp
+
+liblink_test_vc71_md_dir :
+ @if not exist "vc71\liblink_test_vc71_md\$(NULL)" mkdir vc71\liblink_test_vc71_md
+
+liblink_test_vc71_md_clean :
+ del vc71\liblink_test_vc71_md\*.obj
+ del vc71\liblink_test_vc71_md\*.idb
+ del vc71\liblink_test_vc71_md\*.exp
+ del vc71\liblink_test_vc71_md\*.pch
+
+./vc71/liblink_test_vc71_md.lib : vc71/liblink_test_vc71_md/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_md.lib $(XSFLAGS) vc71/liblink_test_vc71_md/link_test.obj
+
+./vc71/liblink_test_vc71_md.exe : main.cpp ./vc71/liblink_test_vc71_md.lib
+ cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -o ./vc71/liblink_test_vc71_md.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_md.exe
+
+########################################################
+#
+# section for liblink_test_vc71_mdd.lib
+#
+########################################################
+vc71/liblink_test_vc71_mdd/link_test.obj: link_test.cpp $(ALL_HEADER)
+ cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test_vc71_mdd/ -Fdvc71/liblink_test_vc71_mdd.pdb link_test.cpp
+
+liblink_test_vc71_mdd_dir :
+ @if not exist "vc71\liblink_test_vc71_mdd\$(NULL)" mkdir vc71\liblink_test_vc71_mdd
+
+liblink_test_vc71_mdd_clean :
+ del vc71\liblink_test_vc71_mdd\*.obj
+ del vc71\liblink_test_vc71_mdd\*.idb
+ del vc71\liblink_test_vc71_mdd\*.exp
+ del vc71\liblink_test_vc71_mdd\*.pch
+
+./vc71/liblink_test_vc71_mdd.lib : vc71/liblink_test_vc71_mdd/link_test.obj
+ link -lib /nologo /out:vc71/liblink_test_vc71_mdd.lib $(XSFLAGS) vc71/liblink_test_vc71_mdd/link_test.obj
+
+./vc71/liblink_test_vc71_mdd.exe : main.cpp ./vc71/liblink_test_vc71_mdd.lib
+ cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -o ./vc71/liblink_test_vc71_mdd.exe main.cpp /link /LIBPATH:./vc71
+ vc71\liblink_test_vc71_mdd.exe
+
diff --git a/test/link/vc_gen.sh b/test/link/vc_gen.sh
new file mode 100644
index 00000000..bf769679
--- /dev/null
+++ b/test/link/vc_gen.sh
@@ -0,0 +1,412 @@
+#! /bin/bash
+
+libname=""
+src=""
+header=""
+all_dep=""
+
+# current makefile:
+out=""
+# temporary file:
+tout=""
+# install target temp file:
+iout=""
+# debug flag:
+debug="no"
+# compile options:
+opts=""
+# main output sub-directory:
+subdir=""
+# extra debug /RTc options:
+debug_extra=""
+
+function vc6_gen_lib()
+{
+ all_dep="$all_dep $libname""_dir ./$subdir/$libname.lib ./$subdir/$libname.exe"
+ echo " copy $subdir\\$libname.lib "'"$'"(MSVCDIR)\\lib"'"' >> $iout
+ if test $debug == "yes"; then
+ echo " copy $subdir\\$libname.pdb "'"$'"(MSVCDIR)\\lib"'"' >> $iout
+ fi
+#
+# set up section comments:
+ cat >> $tout << EOF
+########################################################
+#
+# section for $libname.lib
+#
+########################################################
+EOF
+#
+# process source files:
+ all_obj=""
+ for file in $src
+ do
+ obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
+ obj="$subdir/$libname/$obj"
+ all_obj="$all_obj $obj"
+ echo "$obj: $file \$(ALL_HEADER)" >> $tout
+ echo " cl /c \$(INCLUDES) $opts \$(CXXFLAGS) -Y- -Fo./$subdir/$libname/ -Fd$subdir/$libname.pdb $file" >> $tout
+ echo "" >> $tout
+ done
+#
+# now for the directories for this library:
+ echo "$libname"_dir : >> $tout
+ echo " @if not exist \"$subdir\\$libname\\\$(NULL)\" mkdir $subdir\\$libname" >> $tout
+ echo "" >> $tout
+#
+# now for the clean options for this library:
+ all_clean="$all_clean $libname""_clean"
+ echo "$libname"_clean : >> $tout
+ echo " del $subdir\\$libname\\"'*.obj' >> $tout
+ echo " del $subdir\\$libname\\"'*.idb' >> $tout
+ echo " del $subdir\\$libname\\"'*.exp' >> $tout
+ echo " del $subdir\\$libname\\"'*.pch' >> $tout
+ echo "" >> $tout
+#
+# now for the main target for this library:
+ echo ./$subdir/$libname.lib : $all_obj >> $tout
+ echo " link -lib /nologo /out:$subdir/$libname.lib \$(XSFLAGS) $all_obj" >> $tout
+ echo "" >> $tout
+# now the test program:
+ echo ./$subdir/$libname.exe : main.cpp ./$subdir/$libname.lib >> $tout
+ echo " cl \$(INCLUDES) $opts \$(CXXFLAGS) -o ./$subdir/$libname.exe main.cpp /link /LIBPATH:./$subdir" >> $tout
+ echo " $subdir"'\'"$libname.exe" >> $tout
+ echo "" >> $tout
+}
+
+function vc6_gen_dll()
+{
+ all_dep="$all_dep $libname""_dir ./$subdir/$libname.lib ./$subdir/$libname.exe"
+ echo " copy $subdir\\$libname.lib "'"$'"(MSVCDIR)\\lib"'"' >> $iout
+ echo " copy $subdir\\$libname.dll "'"$'"(MSVCDIR)\\bin"'"' >> $iout
+ if test $debug == "yes"; then
+ echo " copy $subdir\\$libname.pdb "'"$'"(MSVCDIR)\\lib"'"' >> $iout
+ fi
+#
+# set up section comments:
+ cat >> $tout << EOF
+########################################################
+#
+# section for $libname.lib
+#
+########################################################
+EOF
+#
+# process source files:
+ all_obj=""
+ for file in $src
+ do
+ obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
+ obj="$subdir/$libname/$obj"
+ all_obj="$all_obj $obj"
+ echo "$obj: $file \$(ALL_HEADER)" >> $tout
+ echo " cl /c \$(INCLUDES) $opts \$(CXXFLAGS) -Y- -Fo./$subdir/$libname/ -Fd$subdir/$libname.pdb $file" >> $tout
+ echo "" >> $tout
+ done
+#
+# now for the directories for this library:
+ echo "$libname"_dir : >> $tout
+ echo " @if not exist \"$subdir\\$libname\\\$(NULL)\" mkdir $subdir\\$libname" >> $tout
+ echo "" >> $tout
+#
+# now for the clean options for this library:
+ all_clean="$all_clean $libname""_clean"
+ echo "$libname"_clean : >> $tout
+ echo " del $subdir\\$libname\\"'*.obj' >> $tout
+ echo " del $subdir\\$libname\\"'*.idb' >> $tout
+ echo " del $subdir\\$libname\\"'*.exp' >> $tout
+ echo " del $subdir\\$libname\\"'*.pch' >> $tout
+ echo "" >> $tout
+#
+# now for the main target for this library:
+ echo ./$subdir/$libname.lib : $all_obj >> $tout
+ echo " link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:\"$subdir/$libname.pdb\" /debug /machine:I386 /out:\"$subdir/$libname.dll\" /implib:\"$subdir/$libname.lib\" /LIBPATH:\$(STLPORT_PATH)\\lib \$(XLFLAGS) $all_obj" >> $tout
+ echo "" >> $tout
+# now the test program:
+ echo ./$subdir/$libname.exe : main.cpp ./$subdir/$libname.lib >> $tout
+ echo " cl \$(INCLUDES) $opts \$(CXXFLAGS) -o ./$subdir/$libname.exe main.cpp /link /LIBPATH:./$subdir" >> $tout
+ echo " $subdir"'\'"$libname.exe" >> $tout
+ echo "" >> $tout
+}
+
+is_stlport="no"
+
+function vc6_gen()
+{
+ debug="no"
+ tout="temp"
+ iout="temp_install"
+ all_dep="main_dir"
+ all_clean=""
+ echo > $out
+ echo > $tout
+ rm -f $iout
+
+ prefix="$subdir-"
+
+ libname="liblink_test_${subdir}_ss"
+ opts='/nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD'
+ vc6_gen_lib
+
+ libname="liblink_test_${subdir}_ms"
+ opts='/nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD '
+ vc6_gen_lib
+
+ debug="yes"
+ libname="liblink_test_${subdir}_ssd"
+ opts='/nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD '"$debug_extra"' '
+ vc6_gen_lib
+
+ libname="liblink_test_${subdir}_msd"
+ opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD '"$debug_extra"' '
+ vc6_gen_lib
+
+ libname="link_test_${subdir}_mdd"
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD '"$debug_extra"' '
+ vc6_gen_dll
+
+ debug="no"
+ opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD '
+ libname="link_test_${subdir}_md"
+ vc6_gen_dll
+
+ debug="no"
+ opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD '
+ libname="liblink_test_${subdir}_md"
+ vc6_gen_lib
+
+ debug="yes"
+ libname="liblink_test_${subdir}_mdd"
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD '"$debug_extra"' '
+ vc6_gen_lib
+
+ cat > $out << EOF
+#
+# auto generated makefile for VC6 compiler
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "\$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "\$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+EOF
+ echo "" >> $out
+ echo "ALL_HEADER=$header" >> $out
+ echo "" >> $out
+ echo "all : $all_dep" >> $out
+ echo >> $out
+ echo "clean : $all_clean" >> $out
+ echo >> $out
+ echo "install : all" >> $out
+ cat $iout >> $out
+ echo >> $out
+ echo main_dir : >> $out
+ echo " @if not exist \"$subdir\\\$(NULL)\" mkdir $subdir" >> $out
+ echo "" >> $out
+
+ cat $tout >> $out
+}
+
+function vc6_stlp_gen()
+{
+ debug="no"
+ tout="temp"
+ iout="temp_install"
+ all_dep="main_dir"
+ all_clean=""
+ echo > $out
+ echo > $tout
+ rm -f $iout
+
+ prefix="$subdir-"
+
+ libname="liblink_test_${subdir}_ms"
+ opts='/nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB '
+ vc6_gen_lib
+
+ debug="true"
+ libname="liblink_test_${subdir}_msd"
+ opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB '"$debug_extra"' '
+ vc6_gen_lib
+
+ libname="link_test_${subdir}_mdd"
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' '
+ vc6_gen_dll
+
+ debug="no"
+ opts='/nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL '
+ libname="link_test_${subdir}_md"
+ vc6_gen_dll
+
+ debug="no"
+ opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL '
+ libname="liblink_test_${subdir}_md"
+ vc6_gen_lib
+
+ debug="true"
+ libname="liblink_test_${subdir}_mdd"
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' '
+ vc6_gen_lib
+
+# debug STLPort mode:
+ debug="yes"
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' '
+ libname="link_test_${subdir}_mddd"
+ vc6_gen_dll
+ libname="liblink_test_${subdir}_msdd"
+ opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB '"$debug_extra"' '
+ vc6_gen_lib
+ opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' '
+ libname="liblink_test_${subdir}_mddd"
+ vc6_gen_lib
+
+ cat > $out << EOF
+#
+# auto generated makefile for VC6+STLPort
+#
+# usage:
+# make
+# brings libraries up to date
+# make install
+# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended)
+#
+
+#
+# Add additional compiler options here:
+#
+CXXFLAGS=
+#
+# Add additional include directories here:
+#
+INCLUDES=
+#
+# add additional linker flags here:
+#
+XLFLAGS=
+#
+# add additional static-library creation flags here:
+#
+XSFLAGS=
+
+!IF "\$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "\$(MSVCDIR)" == ""
+!ERROR Variable MSVCDIR not set.
+!ENDIF
+
+!IF "\$(STLPORT_PATH)" == ""
+!ERROR Variable STLPORT_PATH not set.
+!ENDIF
+
+EOF
+ echo "" >> $out
+ echo "ALL_HEADER=$header" >> $out
+ echo "" >> $out
+ echo "all : $all_dep" >> $out
+ echo >> $out
+ echo "clean : $all_clean" >> $out
+ echo >> $out
+ echo "install : stlport_check all" >> $out
+ cat $iout >> $out
+ echo >> $out
+ echo main_dir : >> $out
+ echo " @if not exist \"$subdir\\\$(NULL)\" mkdir $subdir" >> $out
+ echo "" >> $out
+ echo 'stlport_check : $(STLPORT_PATH)\stlport\string' >> $out
+ echo " echo" >> $out
+ echo "" >> $out
+
+ cat $tout >> $out
+}
+
+
+. common.sh
+
+#
+# generate vc6 makefile:
+debug_extra="/GX"
+out="vc6.mak"
+subdir="vc6"
+vc6_gen
+#
+# generate vc6-stlport makefile:
+is_stlport="yes"
+out="vc6-stlport.mak"
+no_single="yes"
+subdir="vc6-stlport"
+vc6_stlp_gen
+#
+# generate vc7 makefile:
+debug_extra="/GX /RTC1"
+is_stlport="no"
+out="vc7.mak"
+no_single="no"
+subdir="vc7"
+vc6_gen
+#
+# generate vc7-stlport makefile:
+is_stlport="yes"
+out="vc7-stlport.mak"
+no_single="yes"
+subdir="vc7-stlport"
+vc6_stlp_gen
+#
+# generate vc71 makefile:
+is_stlport="no"
+out="vc71.mak"
+no_single="no"
+subdir="vc71"
+vc6_gen
+#
+# generate vc71-stlport makefile:
+is_stlport="yes"
+out="vc71-stlport.mak"
+no_single="yes"
+subdir="vc71-stlport"
+vc6_stlp_gen
+
+
+#
+# remove tmep files;
+rm -f $tout $iout
+
+
+
+
+
+
+
+
diff --git a/tools/generate b/tools/generate
index 2c2e8d77..8ac4a467 100644
--- a/tools/generate
+++ b/tools/generate
@@ -32,6 +32,7 @@ include \$(BOOST_ROOT)/libs/config/test/options.jam ;
run config_info.cpp config_options ;
run config_test.cpp ../../test/build/boost_test_exec_monitor config_options ;
run limits_test.cpp config_test_options ;
+run abi/abi_test.cpp abi/main.cpp config_options ;
EOF