Hardware defines spec.
[wxWidgets.git] / include / wx / msw / wince / libraries.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/wince/libraries.h
3 // Purpose: VC++ pragmas for linking against SDK libs
4 // Author: Vaclav Slavik
5 // Modified by:
6 // Created: 2004-04-11
7 // RCS-ID: $Id$
8 // Copyright: (c) 2004 Vaclav Slavik
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_LIBRARIES_H_
13 #define _WX_LIBRARIES_H_
14
15 // NB: According to Microsoft, it is up to the OEM to decide whether
16 // some of libraries will be included in the system or not. For example,
17 // MS' STANDARDSDK does not include cyshell.lib and aygshell.lib, while
18 // Pocket PC 2003 SDK does. We depend on some symbols that are in these
19 // libraries in some SDKs and in different libs in others. Fortunately we
20 // can detect what SDK is used in C++ code, so we take advantage of
21 // VC++'s #pragma to link against the libraries conditionally, instead of
22 // including libraries in project files.
23
24 #if defined(__VISUALC__) && defined(__WXWINCE__)
25
26 #if _WIN32_WCE >= 400
27 #pragma comment(lib,"commdlg.lib")
28 #endif
29
30 #if defined(__WINCE_STANDARDSDK__)
31 // DoDragDrop:
32 #pragma comment(lib,"olece400.lib")
33 #elif defined(__POCKETPC__)
34 // PocketPC build:
35 // DoDragDrop:
36 #pragma comment(lib,"ceshell.lib")
37
38 #pragma comment(lib,"aygshell.lib")
39 #elif defined(__HANDHELDPC__)
40 // Handheld PC builds. Maybe WindowsCE.NET 4.X needs another symbol.
41 #pragma comment(lib,"ceshell.lib")
42 #elif defined(__SMARTPHONE__)
43 // Smartphone build:
44 #pragma comment(lib,"ceshell.lib")
45 #pragma comment(lib,"aygshell.lib")
46 #else
47 #error "Unknown SDK, please fill-in missing pieces"
48 #endif
49
50 #endif // __VISUALC__ && __WXWINCE__
51
52 #endif // _WX_LIBRARIES_H_