ReactOS  0.4.14-dev-552-g2fad488
_auto_link.h
Go to the documentation of this file.
1 /* We do not use auto link feature when:
2  * - user asked not to use it (_STLP_DONT_USE_AUTO_LINK)
3  * - STLport is used only as a STL library (_STLP_NO_IOSTREAMS || _STLP_USE_NO_IOSTREAMS)
4  * - we are building a C translation unit, STLport is a C++ Standard library implementation
5  */
6 #if !defined (__BUILDING_STLPORT) && !defined (_STLP_DONT_USE_AUTO_LINK) && \
7  !defined (_STLP_NO_IOSTREAMS) && !defined (_STLP_USE_NO_IOSTREAMS) && \
8  defined (__cplusplus)
9 
10 # define _STLP_STRINGIZE(X) _STLP_STRINGIZE_AUX(X)
11 # define _STLP_STRINGIZE_AUX(X) #X
12 
13 # if defined (_STLP_DEBUG)
14 # define _STLP_LIB_OPTIM_MODE "stld"
15 # elif defined (_DEBUG)
16 # define _STLP_LIB_OPTIM_MODE "d"
17 # else
18 # define _STLP_LIB_OPTIM_MODE ""
19 # endif
20 
21 # if defined (_STLP_LIB_NAME_MOTIF)
22 # define _STLP_LIB_MOTIF "_"_STLP_LIB_NAME_MOTIF
23 # else
24 # define _STLP_LIB_MOTIF ""
25 # endif
26 
27 # if defined (_STLP_USE_DYNAMIC_LIB)
28 # if defined (_STLP_USING_CROSS_NATIVE_RUNTIME_LIB)
29 # define _STLP_LIB_TYPE "_x"
30 # else
31 # define _STLP_LIB_TYPE ""
32 # endif
33 # else
34 # if defined (_STLP_USING_CROSS_NATIVE_RUNTIME_LIB)
35 # define _STLP_LIB_TYPE "_statix"
36 # else
37 # define _STLP_LIB_TYPE "_static"
38 # endif
39 # endif
40 
41 # if defined (_STLP_USE_DYNAMIC_LIB)
42 # define _STLP_VERSION_STR "."_STLP_STRINGIZE(_STLPORT_MAJOR)"."_STLP_STRINGIZE(_STLPORT_MINOR)
43 # else
44 # define _STLP_VERSION_STR ""
45 # endif
46 
47 # define _STLP_STLPORT_LIB "stlport"_STLP_LIB_OPTIM_MODE""_STLP_LIB_TYPE""_STLP_LIB_MOTIF""_STLP_VERSION_STR".lib"
48 
49 # if defined (_STLP_VERBOSE)
50 # pragma message ("STLport: Auto linking to "_STLP_STLPORT_LIB)
51 # endif
52 # pragma comment (lib, _STLP_STLPORT_LIB)
53 
54 # undef _STLP_STLPORT_LIB
55 # undef _STLP_LIB_OPTIM_MODE
56 # undef _STLP_LIB_TYPE
57 # undef _STLP_STRINGIZE_AUX
58 # undef _STLP_STRINGIZE
59 
60 #endif /* _STLP_DONT_USE_AUTO_LINK */
61