source: XMLIO_V2/external/src/POCO/Foundation.save/Poco/Foundation.h @ 80

Last change on this file since 80 was 80, checked in by ymipsl, 14 years ago

ajout lib externe

  • Property svn:eol-style set to native
File size: 4.3 KB
Line 
1//
2// Foundation.h
3//
4// $Id: //poco/1.3/Foundation/include/Poco/Foundation.h#5 $
5//
6// Library: Foundation
7// Package: Core
8// Module:  Foundation
9//
10// Basic definitions for the POCO Foundation library.
11// This file must be the first file included by every other Foundation
12// header file.
13//
14// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
15// and Contributors.
16//
17// Permission is hereby granted, free of charge, to any person or organization
18// obtaining a copy of the software and accompanying documentation covered by
19// this license (the "Software") to use, reproduce, display, distribute,
20// execute, and transmit the Software, and to prepare derivative works of the
21// Software, and to permit third-parties to whom the Software is furnished to
22// do so, all subject to the following:
23//
24// The copyright notices in the Software and this entire statement, including
25// the above license grant, this restriction and the following disclaimer,
26// must be included in all copies of the Software, in whole or in part, and
27// all derivative works of the Software, unless such copies or derivative
28// works are solely in the form of machine-executable object code generated by
29// a source language processor.
30//
31// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
32// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
33// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
34// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
35// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
36// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
37// DEALINGS IN THE SOFTWARE.
38//
39
40
41#ifndef Foundation_Foundation_INCLUDED
42#define Foundation_Foundation_INCLUDED
43
44
45//
46// Version Information
47//
48// Version format is 0xAABBCCDD, where
49//    - AA is the major version number,
50//    - BB is the minor version number,
51//    - CC is the revision number, and
52//    - DD is the patch level number.
53//
54#define POCO_VERSION 0x01030602
55
56
57//
58// Include library configuration
59//
60#include "Poco/Config.h"
61
62
63//
64// Ensure that POCO_DLL is default unless POCO_STATIC is defined
65//
66#if defined(_WIN32) && defined(_DLL)
67        #if !defined(POCO_DLL) && !defined(POCO_STATIC)
68                #define POCO_DLL
69        #endif
70#endif
71
72
73//
74// The following block is the standard way of creating macros which make exporting
75// from a DLL simpler. All files within this DLL are compiled with the Foundation_EXPORTS
76// symbol defined on the command line. this symbol should not be defined on any project
77// that uses this DLL. This way any other project whose source files include this file see
78// Foundation_API functions as being imported from a DLL, wheras this DLL sees symbols
79// defined with this macro as being exported.
80//
81#if defined(_WIN32) && defined(POCO_DLL)
82        #if defined(Foundation_EXPORTS)
83                #define Foundation_API __declspec(dllexport)
84        #else
85                #define Foundation_API __declspec(dllimport)   
86        #endif
87#endif
88
89
90#if !defined(Foundation_API)
91        #define Foundation_API
92#endif
93
94
95//
96// Automatically link Foundation library.
97//
98#if defined(_MSC_VER)
99        #if !defined(POCO_NO_AUTOMATIC_LIBS) && !defined(Foundation_EXPORTS)
100                #if defined(POCO_DLL)
101                        #if defined(_DEBUG)
102                                #pragma comment(lib, "PocoFoundationd.lib")
103                        #else
104                                #pragma comment(lib, "PocoFoundation.lib")
105                        #endif
106                #else
107                        #if defined(_DEBUG)
108                                #pragma comment(lib, "PocoFoundationmtd.lib")
109                        #else
110                                #pragma comment(lib, "PocoFoundationmt.lib")
111                        #endif
112                #endif
113        #endif
114#endif
115
116
117//
118// Include platform-specific definitions
119//
120#include "Poco/Platform.h"
121#if defined(_WIN32)
122        #include "Poco/Platform_WIN32.h"
123#elif defined(__VMS)
124        #include "Poco/Platform_VMS.h"
125#elif defined(POCO_OS_FAMILY_UNIX)
126        #include "Poco/Platform_POSIX.h"
127#endif
128
129
130//
131// POCO_JOIN
132//
133// The following piece of macro magic joins the two
134// arguments together, even when one of the arguments is
135// itself a macro (see 16.3.1 in C++ standard).  The key
136// is that macro expansion of macro arguments does not
137// occur in POCO_DO_JOIN2 but does in POCO_DO_JOIN.
138//
139#define POCO_JOIN(X, Y) POCO_DO_JOIN(X, Y)
140#define POCO_DO_JOIN(X, Y) POCO_DO_JOIN2(X, Y)
141#define POCO_DO_JOIN2(X, Y) X##Y
142
143
144//
145// Pull in basic definitions
146//
147#include "Poco/Bugcheck.h"
148#include "Poco/Types.h"
149#include <string>
150
151
152#endif // Foundation_Foundation_INCLUDED
Note: See TracBrowser for help on using the repository browser.