00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00054 #ifndef XTESTS_INCL_XTESTS_H_IMPLICIT_LINK
00055 #define XTESTS_INCL_XTESTS_H_IMPLICIT_LINK
00056
00057
00058
00059
00060
00061 #ifndef XTESTS_DOCUMENTATION_SKIP_SECTION
00062 # define XTESTS_VER_XTESTS_H_IMPLICIT_LINK_MAJOR 1
00063 # define XTESTS_VER_XTESTS_H_IMPLICIT_LINK_MINOR 8
00064 # define XTESTS_VER_XTESTS_H_IMPLICIT_LINK_REVISION 1
00065 # define XTESTS_VER_XTESTS_H_IMPLICIT_LINK_EDIT 28
00066 #endif
00067
00068
00069
00070
00071
00072 #ifndef XTESTS_INCL_XTESTS_H_XTESTS
00073 # include <xtests/xtests.h>
00074 #endif
00075
00076 #include <platformstl/platformstl.h>
00077
00078
00079
00080
00081
00082 #if defined(_WIN32) || \
00083 defined(_WIN64)
00084
00085 # if defined(__BORLANDC__) || \
00086 \
00087 defined(__INTEL_COMPILER) || \
00088 defined(__MWERKS__) || \
00089 defined(_MSC_VER)
00090 # if !defined(__COMO__)
00091 # define XTESTS_IMPLICIT_LINK_SUPPORT
00092 # endif
00093 # endif
00094
00095 # if defined(XTESTS_IMPLICIT_LINK_SUPPORT) && \
00096 defined(XTESTS_NO_IMPLICIT_LINK)
00097 # undef XTESTS_IMPLICIT_LINK_SUPPORT
00098 # endif
00099
00100 # if defined(XTESTS_IMPLICIT_LINK_SUPPORT)
00101
00102
00103
00104 # define XTESTS_IMPL_LINK_PREFIX
00105
00106
00107
00108 # define XTESTS_IMPL_LINK_LIBRARY_BASENAME "xtests"
00109
00110
00111
00112 # define XTESTS_IMPL_LINK_MAJOR_VERSION "." STLSOFT_STRINGIZE(_XTESTS_VER_MAJOR)
00113
00114
00115
00116 # define XTESTS_IMPL_LINK_MODULE_NAME ".core"
00117
00118
00119
00120 # if defined(__BORLANDC__)
00121 # if __BORLANDC__ == 0x0550
00122 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc55"
00123 # elif (__BORLANDC__ == 0x0551)
00124 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc551"
00125 # elif (__BORLANDC__ == 0x0560)
00126 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc56"
00127 # elif (__BORLANDC__ == 0x0564)
00128 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc564"
00129 # elif (__BORLANDC__ == 0x0582)
00130 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc582"
00131 # elif (0x0590 == (__BORLANDC__ & 0xfff0))
00132 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc59x"
00133 # elif (0x0610 == (__BORLANDC__ & 0xfff0))
00134 # define XTESTS_IMPL_LINK_COMPILER_NAME "bc61x"
00135 # else
00136 # error Unrecognised value of __BORLANDC__
00137 # endif
00138
00139
00140
00141
00142
00143
00144 # elif defined(__INTEL_COMPILER)
00145 # if __INTEL_COMPILER == 600
00146 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl6"
00147 # elif __INTEL_COMPILER == 700
00148 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl7"
00149 # elif __INTEL_COMPILER == 800
00150 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl8"
00151 # elif __INTEL_COMPILER == 900
00152 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl9"
00153 # elif __INTEL_COMPILER == 1000
00154 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl10"
00155 # elif __INTEL_COMPILER == 1100
00156 # define XTESTS_IMPL_LINK_COMPILER_NAME "icl11"
00157 # else
00158 # error Intel C/C++ version not supported
00159 # endif
00160
00161 # elif defined(__MWERKS__)
00162 # if ((__MWERKS__ & 0xFF00) == 0x2400)
00163 # define XTESTS_IMPL_LINK_COMPILER_NAME "cw7"
00164 # elif ((__MWERKS__ & 0xFF00) == 0x3000)
00165 # define XTESTS_IMPL_LINK_COMPILER_NAME "cw8"
00166 # elif ((__MWERKS__ & 0xFF00) == 0x3200)
00167 # define XTESTS_IMPL_LINK_COMPILER_NAME "cw9"
00168 # else
00169 # error Unrecognised value of __MWERKS__
00170 # endif
00171
00172 # elif defined(_MSC_VER)
00173 # if _MSC_VER == 1000
00174 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc4"
00175 # elif _MSC_VER == 1020
00176 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc42"
00177 # elif _MSC_VER == 1100
00178 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc5"
00179 # elif _MSC_VER == 1200
00180 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc6"
00181 # elif _MSC_VER == 1300
00182 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc7"
00183 # elif _MSC_VER == 1310
00184 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc71"
00185 # elif _MSC_VER == 1400
00186 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc8"
00187 # elif _MSC_VER == 1500
00188 # define XTESTS_IMPL_LINK_COMPILER_NAME "vc9"
00189 # else
00190 # error Visual C++ version not supported
00191 # endif
00192
00193 # else
00194 # error Unrecognised compiler
00195 # endif
00196
00197
00198
00199
00200 # if defined(_STLSOFT_FORCE_ANY_COMPILER) && \
00201 defined(PLATFORMSTL_OS_IS_UNIX) && \
00202 defined(_WIN32)
00203 # define XTESTS_IMPL_LINK_OS_TAG ".unix"
00204 # endif
00205
00206 # if !defined(XTESTS_IMPL_LINK_OS_TAG)
00207 # define XTESTS_IMPL_LINK_OS_TAG ""
00208 # endif
00209
00210
00211
00212
00213 # if defined(PLATFORMSTL_ARCH_IS_X86)
00214 # define XTESTS_IMPL_LINK_ARCH_TAG ""
00215 # elif defined(PLATFORMSTL_ARCH_IS_X64)
00216 # define XTESTS_IMPL_LINK_ARCH_TAG ".x64"
00217 # elif defined(PLATFORMSTL_ARCH_IS_IA64)
00218 # define XTESTS_IMPL_LINK_ARCH_TAG ".ia64"
00219 # endif
00220
00221 # if !defined(XTESTS_IMPL_LINK_ARCH_TAG)
00222 # define XTESTS_IMPL_LINK_ARCH_TAG ""
00223 # endif
00224
00225
00226
00227
00228 # if defined(XTESTS_USE_WIDE_STRINGS)
00229 # define XTESTS_IMPL_LINK_ENCODING_TAG ".widestring"
00230 # else
00231 # define XTESTS_IMPL_LINK_ENCODING_TAG ""
00232 # endif
00233
00234
00235
00236
00237 # if defined(__MT__) || \
00238 defined(_REENTRANT) || \
00239 defined(_MT)
00240 # if defined(_DLL) || \
00241 defined(__DLL)
00242 # define XTESTS_IMPL_LINK_THREADING_TAG ".dll"
00243 # else
00244 # define XTESTS_IMPL_LINK_THREADING_TAG ".mt"
00245 # endif
00246 # else
00247 # define XTESTS_IMPL_LINK_THREADING_TAG ""
00248 # endif
00249
00250
00251
00252
00253 # if defined(XTESTS_CF_NOX)
00254 # define XTESTS_IMPL_LINK_NOX_TAG ".nox"
00255 # else
00256 # define XTESTS_IMPL_LINK_NOX_TAG ""
00257 # endif
00258
00259
00260
00261
00262 # if !defined(NDEBUG) && \
00263 defined(_DEBUG)
00264 # define XTESTS_IMPL_LINK_DEBUG_TAG ".debug"
00265 # else
00266 # define XTESTS_IMPL_LINK_DEBUG_TAG ""
00267 # endif
00268
00269
00270
00271
00272 # define XTESTS_IMPL_LINK_SUFFIX ".lib"
00273
00274
00275
00276
00277
00278
00279
00280 # define XTESTS_IMPL_LINK_LIBRARY_NAME XTESTS_IMPL_LINK_PREFIX \
00281 XTESTS_IMPL_LINK_LIBRARY_BASENAME \
00282 XTESTS_IMPL_LINK_MAJOR_VERSION \
00283 XTESTS_IMPL_LINK_MODULE_NAME \
00284 "." XTESTS_IMPL_LINK_COMPILER_NAME \
00285 XTESTS_IMPL_LINK_OS_TAG \
00286 XTESTS_IMPL_LINK_ARCH_TAG \
00287 XTESTS_IMPL_LINK_ENCODING_TAG \
00288 XTESTS_IMPL_LINK_THREADING_TAG \
00289 XTESTS_IMPL_LINK_NOX_TAG \
00290 XTESTS_IMPL_LINK_DEBUG_TAG \
00291 XTESTS_IMPL_LINK_SUFFIX
00292
00293
00294 # pragma message("lib: " XTESTS_IMPL_LINK_LIBRARY_NAME)
00295
00296 # pragma comment(lib, XTESTS_IMPL_LINK_LIBRARY_NAME)
00297
00298 # endif
00299
00300 #endif
00301
00302
00303
00304 #endif
00305
00306