]> git.saurik.com Git - wxWidgets.git/blame - include/msvc/wx/setup.h
link unicows.lib implicitely when using MSVC and wxUSE_UNICODE_MSLU==1 (thi is used...
[wxWidgets.git] / include / msvc / wx / setup.h
CommitLineData
e5099bdf
VZ
1/////////////////////////////////////////////////////////////////////////////
2// Name: msvc/wx/msw/setup.h
3// Purpose: wrapper around the real wx/setup.h for Visual C++
4// Author: Vadim Zeitlin
5// Modified by:
6// Created: 2004-12-12
7// RCS-ID: $Id$
8// Copyright: (c) 2004 Vadim Zeitlin <vadim@wxwindows.org>
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12// VC++ IDE predefines _DEBUG and _UNICODE for the new projects itself, but
13// the other symbols (WXUSINGDLL, __WXUNIVERSAL__, ...) should be defined
3103e8a9 14// explicitly!
e5099bdf
VZ
15
16#ifdef _MSC_VER
17 #ifdef _UNICODE
18 #ifdef WXUSINGDLL
19 #ifdef _DEBUG
9fa2da4a 20 #include "../../../lib/vc_dll/mswud/wx/setup.h"
e5099bdf 21 #else
9fa2da4a 22 #include "../../../lib/vc_dll/mswu/wx/setup.h"
e5099bdf
VZ
23 #endif
24 #else
25 #ifdef _DEBUG
9fa2da4a 26 #include "../../../lib/vc_lib/mswud/wx/setup.h"
e5099bdf 27 #else
9fa2da4a 28 #include "../../../lib/vc_lib/mswu/wx/setup.h"
e5099bdf
VZ
29 #endif
30 #endif
31
9eeab5fa
VZ
32 // if we're using MSLU, ensure that the first library we use is
33 // unicows.lib
34 #if wxUSE_UNICODE_MSLU
35 // for this, first tell linker not to use the standard libraries
36 #pragma comment(linker, "/nod:kernel32.lib /nod:advapi32.lib /nod:user32.lib /nod:gdi32.lib /nod:shell32.lib /nod:comdlg32.lib /nod:version.lib /nod:mpr.lib /nod:rasapi32.lib /nod:winmm.lib /nod:winspool.lib /nod:vfw32.lib /nod:secur32.lib /nod:oleacc.lib /nod:oledlg.lib /nod:sensapi.lib")
37
38 // then tell it to link with unicows.lib
39 #pragma comment(lib, "unicows.lib")
40
41 // and only then readd all standard libraries back
42 #pragma comment(lib, "kernel32.lib")
43 #pragma comment(lib, "user32.lib")
44 #pragma comment(lib, "gdi32.lib")
45 #pragma comment(lib, "winspool.lib")
46 #pragma comment(lib, "comdlg32.lib")
47 #pragma comment(lib, "advapi32.lib")
48 #pragma comment(lib, "shell32.lib")
49 #pragma comment(lib, "oleacc.lib")
50 #endif // wxUSE_UNICODE_MSLU
51
e5099bdf 52 #ifdef _DEBUG
908f0871
VZ
53 #if wxUSE_XML
54 #pragma comment(lib,"wxexpatd")
55 #endif
56 #if wxUSE_LIBJPEG
57 #pragma comment(lib,"wxjpegd")
58 #endif
59 #if wxUSE_LIBPNG
60 #pragma comment(lib,"wxpngd")
61 #endif
62 #if wxUSE_REGEX
63 #pragma comment(lib,"wxregexud")
64 #endif
65 #if wxUSE_LIBTIFF
66 #pragma comment(lib,"wxtiffd")
67 #endif
68 #if wxUSE_ZLIB
69 #pragma comment(lib,"wxzlibd")
70 #endif
3b422a88
VZ
71 #pragma comment(lib,"wxbase26ud")
72 #pragma comment(lib,"wxbase26ud_net")
73 #pragma comment(lib,"wxbase26ud_xml")
74 #pragma comment(lib,"wxmsw26ud_adv")
75 #pragma comment(lib,"wxmsw26ud_core")
76 #pragma comment(lib,"wxmsw26ud_html")
77 #pragma comment(lib,"wxmsw26ud_qa")
78 #pragma comment(lib,"wxmsw26ud_xrc")
e5099bdf 79 #else // release
908f0871
VZ
80 #if wxUSE_XML
81 #pragma comment(lib,"wxexpat")
82 #endif
83 #if wxUSE_LIBJPEG
84 #pragma comment(lib,"wxjpeg")
85 #endif
86 #if wxUSE_LIBPNG
87 #pragma comment(lib,"wxpng")
88 #endif
89 #if wxUSE_REGEX
90 #pragma comment(lib,"wxregexu")
91 #endif
92 #if wxUSE_LIBTIFF
93 #pragma comment(lib,"wxtiff")
94 #endif
95 #if wxUSE_ZLIB
96 #pragma comment(lib,"wxzlib")
97 #endif
3b422a88
VZ
98 #pragma comment(lib,"wxbase26u")
99 #pragma comment(lib,"wxbase26u_net")
100 #pragma comment(lib,"wxbase26u_xml")
101 #pragma comment(lib,"wxmsw26u_adv")
102 #pragma comment(lib,"wxmsw26u_core")
103 #pragma comment(lib,"wxmsw26u_html")
104 #pragma comment(lib,"wxmsw26u_qa")
105 #pragma comment(lib,"wxmsw26u_xrc")
e5099bdf
VZ
106 #endif // debug/release
107 #else // !_UNICODE
108 #ifdef WXUSINGDLL
109 #ifdef _DEBUG
9fa2da4a 110 #include "../../../lib/vc_dll/mswd/wx/setup.h"
e5099bdf 111 #else
9fa2da4a 112 #include "../../../lib/vc_dll/msw/wx/setup.h"
e5099bdf
VZ
113 #endif
114 #else // static lib
115 #ifdef _DEBUG
9fa2da4a 116 #include "../../../lib/vc_lib/mswd/wx/setup.h"
e5099bdf 117 #else
9fa2da4a 118 #include "../../../lib/vc_lib/msw/wx/setup.h"
e5099bdf
VZ
119 #endif
120 #endif // shared/static
121
122 #ifdef _DEBUG
908f0871
VZ
123 #if wxUSE_XML
124 #pragma comment(lib,"wxexpatd")
125 #endif
126 #if wxUSE_LIBJPEG
127 #pragma comment(lib,"wxjpegd")
128 #endif
129 #if wxUSE_LIBPNG
130 #pragma comment(lib,"wxpngd")
131 #endif
132 #if wxUSE_REGEX
5529f88e 133 #pragma comment(lib,"wxregexd")
908f0871
VZ
134 #endif
135 #if wxUSE_LIBTIFF
136 #pragma comment(lib,"wxtiffd")
137 #endif
138 #if wxUSE_ZLIB
139 #pragma comment(lib,"wxzlibd")
140 #endif
3b422a88
VZ
141 #pragma comment(lib,"wxbase26d")
142 #pragma comment(lib,"wxbase26d_net")
143 #pragma comment(lib,"wxbase26d_xml")
144 #pragma comment(lib,"wxmsw26d_adv")
145 #pragma comment(lib,"wxmsw26d_core")
146 #pragma comment(lib,"wxmsw26d_html")
147 #pragma comment(lib,"wxmsw26d_qa")
148 #pragma comment(lib,"wxmsw26d_xrc")
e5099bdf 149 #else // release
908f0871
VZ
150 #if wxUSE_XML
151 #pragma comment(lib,"wxexpat")
152 #endif
153 #if wxUSE_LIBJPEG
154 #pragma comment(lib,"wxjpeg")
155 #endif
156 #if wxUSE_LIBPNG
157 #pragma comment(lib,"wxpng")
158 #endif
159 #if wxUSE_REGEX
5529f88e 160 #pragma comment(lib,"wxregex")
908f0871
VZ
161 #endif
162 #if wxUSE_LIBTIFF
163 #pragma comment(lib,"wxtiff")
164 #endif
165 #if wxUSE_ZLIB
166 #pragma comment(lib,"wxzlib")
167 #endif
3b422a88
VZ
168 #pragma comment(lib,"wxbase26")
169 #pragma comment(lib,"wxbase26_net")
170 #pragma comment(lib,"wxbase26_xml")
171 #pragma comment(lib,"wxmsw26_adv")
172 #pragma comment(lib,"wxmsw26_core")
173 #pragma comment(lib,"wxmsw26_html")
174 #pragma comment(lib,"wxmsw26_qa")
175 #pragma comment(lib,"wxmsw26_xrc")
e5099bdf
VZ
176 #endif // debug/release
177 #endif // _UNICODE/!_UNICODE
178#else
179 #error "This file should only be included when using Microsoft Visual C++"
180#endif
181