1 /*************************************************************************/ 2 /* module: SyncML Communication Protocol include file (Windows) */ 3 /* file: src/xpt/win/xptdef.h */ 4 /* target system: win */ 5 /* target OS: win */ 6 /* Purpose: Define platform-specific values for public header */ 7 /* files. */ 8 /*************************************************************************/ 9 10 /* 11 * Copyright Notice 12 * Copyright (c) Ericsson, IBM, Lotus, Matsushita Communication 13 * Industrial Co., Ltd., Motorola, Nokia, Openwave Systems, Inc., 14 * Palm, Inc., Psion, Starfish Software, Symbian, Ltd. (2001). 15 * All Rights Reserved. 16 * Implementation of all or part of any Specification may require 17 * licenses under third party intellectual property rights, 18 * including without limitation, patent rights (such a third party 19 * may or may not be a Supporter). The Sponsors of the Specification 20 * are not responsible and shall not be held responsible in any 21 * manner for identifying or failing to identify any or all such 22 * third party intellectual property rights. 23 * 24 * THIS DOCUMENT AND THE INFORMATION CONTAINED HEREIN ARE PROVIDED 25 * ON AN "AS IS" BASIS WITHOUT WARRANTY OF ANY KIND AND ERICSSON, IBM, 26 * LOTUS, MATSUSHITA COMMUNICATION INDUSTRIAL CO. LTD, MOTOROLA, 27 * NOKIA, PALM INC., PSION, STARFISH SOFTWARE AND ALL OTHER SYNCML 28 * SPONSORS DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 29 * BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 30 * HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 31 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT 32 * SHALL ERICSSON, IBM, LOTUS, MATSUSHITA COMMUNICATION INDUSTRIAL CO., 33 * LTD, MOTOROLA, NOKIA, PALM INC., PSION, STARFISH SOFTWARE OR ANY 34 * OTHER SYNCML SPONSOR BE LIABLE TO ANY PARTY FOR ANY LOSS OF 35 * PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF 36 * BUSINESS, OR FOR DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, 37 * PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY KIND IN CONNECTION WITH 38 * THIS DOCUMENT OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED 39 * OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE. 40 * 41 * The above notice and this paragraph must be included on all copies 42 * of this document that are made. 43 * 44 */ 45 46 #ifndef XPTDEF_H 47 #define XPTDEF_H 48 49 #include <stdlib.h> /* For NULL and size_t */ 50 51 #define XPT_SECTION 52 #define XPT_DATA_SECTION 53 54 55 56 /* TK: to improve interoperability and handling we 57 * switched to using .def files instead of compiler 58 * specific per function definitions. As long as we only 59 * use C this is the easiest and cleanes way 60 */ 61 #define XPT_API 62 #define XPT_API_DEF 63 #define XPTAPI 64 #define XPTEXP1 //__declspec(dllexport) 65 #define XPTEXP2 66 #define XPTDECLEXP1 //__declspec(dllexport) 67 68 /* TK: Old, now obsolete code follows here */ 69 #ifdef FOOBAZZBUMMBAGGEL 70 71 #if defined(__IBMC__) || defined(__IBMCPP__) 72 #define XPTAPI __stdcall 73 #define XPTEXP1 74 #define XPTEXP2 _Export 75 #define XPTDECLEXP1 76 #else 77 #define XPTAPI __stdcall 78 #define XPTEXP1 __declspec(dllexport) 79 #define XPTEXP2 80 81 // #ifdef BUILDING_XPT 82 #ifdef BUILDING_DLL 83 #define XPTDECLEXP1 XPTEXP1 84 #else 85 #define XPTDECLEXP1 __declspec(dllimport) 86 #endif 87 #endif 88 #endif // FOBAZZBUMMBAGGEL 89 90 #define stricmp _stricmp 91 #define memicmp _memicmp 92 93 #endif 94