SyncML ToolKits,学习syncml的参考工具包.非常好用.

源代码在线查看: define.h

软件大小: 638 K
上传用户: mislrb
关键词: ToolKits SyncML syncml 工具包
下载地址: 免注册下载 普通下载 VIP

相关代码

				/*************************************************************************/				/* module:          Compiler Flag Definition File                        */				/* file:            define.h                                             */				/* target system:   win                                                  */				/* target OS:       win                                                  */   				/*************************************************************************/								/*				 * Copyright Notice				 * Copyright (c) Ericsson, IBM, Lotus, Matsushita Communication 				 * Industrial Co., Ltd., Motorola, Nokia, Openwave Systems, Inc., 				 * Palm, Inc., Psion, Starfish Software, Symbian, Ltd. (2001).				 * All Rights Reserved.				 * Implementation of all or part of any Specification may require 				 * licenses under third party intellectual property rights, 				 * including without limitation, patent rights (such a third party 				 * may or may not be a Supporter). The Sponsors of the Specification 				 * are not responsible and shall not be held responsible in any 				 * manner for identifying or failing to identify any or all such 				 * third party intellectual property rights.				 * 				 * THIS DOCUMENT AND THE INFORMATION CONTAINED HEREIN ARE PROVIDED 				 * ON AN "AS IS" BASIS WITHOUT WARRANTY OF ANY KIND AND ERICSSON, IBM, 				 * LOTUS, MATSUSHITA COMMUNICATION INDUSTRIAL CO. LTD, MOTOROLA, 				 * NOKIA, PALM INC., PSION, STARFISH SOFTWARE AND ALL OTHER SYNCML 				 * SPONSORS DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 				 * BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 				 * HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 				 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT 				 * SHALL ERICSSON, IBM, LOTUS, MATSUSHITA COMMUNICATION INDUSTRIAL CO., 				 * LTD, MOTOROLA, NOKIA, PALM INC., PSION, STARFISH SOFTWARE OR ANY 				 * OTHER SYNCML SPONSOR BE LIABLE TO ANY PARTY FOR ANY LOSS OF 				 * PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF 				 * BUSINESS, OR FOR DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, 				 * PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY KIND IN CONNECTION WITH 				 * THIS DOCUMENT OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED 				 * OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.				 * 				 * The above notice and this paragraph must be included on all copies 				 * of this document that are made.				 * 				 */								/**				 * File for Windows Specific Compiler Flags				 */								#ifndef _DEFINE_H				  #define _DEFINE_H				#define __ANSI_C__												/* thread safety (added by luz@synthesis.ch, 2001-10-29) */				/* Note: moved define of this to target_options.h of every target */				//#undef __MAKE_THREADSAFE								/* enable Alloc helpers */				#define __USE_ALLOCFUNCS__								/* do we need WBXML (binary XML) processing ? */				#define __SML_WBXML__				/* do we need XML processing ? */				#define __SML_XML__				/* are we using a 'light' toolkit ? */				//#define __SML_LITE__				/* do we use Sub DTD extensions ? */				#define __USE_EXTENSIONS__				/* do we need Metainformation DTD parsing ? */				#define __USE_METINF__				/* do we use Device Info DTD ? */				#define __USE_DEVINF__								/* which of the following optional commands should be included ? */								#define ADD_SEND				#define ATOMIC_SEND				#define ATOMIC_RECEIVE				#define COPY_SEND				#define COPY_RECEIVE				#define EXEC_SEND				#define EXEC_RECEIVE				#define GET_SEND				#define MAP_RECEIVE				#define MAPITEM_RECEIVE				#define RESULT_RECEIVE				#define SEARCH_SEND				#define SEARCH_RECEIVE				#define SEQUENCE_SEND				#define SEQUENCE_RECEIVE												/* TK: to improve interoperability and handling we 				 * switched to using .def files instead of compiler				 * specific per function definitions. As long as we only				 * use C this is the easiest and cleanes way				 */								#define SML_API 				#define SML_API_DEF				#define XPT_API 				#define XPT_API_DEF								/* TK: Old, now obsolete code follows here */				#ifdef USE_OLD_DEFINES				/* 				When building the DLL code with GNU, you should define BUILDING_DLL so that				the variables/functions are exported correctly. When using the DLL,				do NOT define BUILDING_DLL, and then the variables/functions will be 				imported correctly.								You need to be using egcs-1.1.1 or newer.								Building the DLL:				 - define BUILDING_DLL, which defines SML_API __attribute__((dllexport))				Building the client code:				 - DO NOT define BUILDING_DLL, which defines SML_API to be one __attribute__((dllimport))				*/												#if __GNUC__ || __MSVC__ || __MSVCPP__ || _WIN32_WCE 					/* define this, if you want to link the toolkit static */					#if __LINK_TOOLKIT_STATIC__ || __linux__						#define SML_API 						#define SML_API_DEF						#define XPT_API 						#define XPT_API_DEF					#else						#if BUILDING_DLL							#define SML_API 	__declspec (dllexport)							#define SML_API_DEF 	__declspec (dllexport)							#define XPT_API 	__declspec (dllexport)							#define XPT_API_DEF 	__declspec (dllexport)						#else /* Not BUILDING_DLL */							#define SML_API 	__declspec (dllimport)							#define SML_API_DEF 	__declspec (dllimport)							#define XPT_API 	__declspec (dllimport)							#define XPT_API_DEF 	__declspec (dllimport)						#endif /* Not BUILDING_DLL */					#endif				#else					#if __IBMC__ || __IBMCPP__						#define SML_API_DEF 	__stdcall						#define SML_API 	__stdcall _Export						#define XPT_API_DEF 	__stdcall						#define XPT_API 	__stdcall _Export					#else				        #if WIN32				    		#define SML_API     __declspec (dllexport)				    		#define SML_API_DEF __declspec (dllexport)				    		#define XPT_API     #error 					    	#define XPT_API_DEF #error				        #else						    #define SML_API_DEF __stdcall						#define SML_API    	__stdcall						    #define XPT_API_DEF __stdcall						#define XPT_API    	__stdcall					#endif				#endif				#endif				#endif // USE_OLD_DEFINES								#endif							

相关资源