celtool/celtoolextern.h
00001 /* 00002 Copyright (C) 2004 by Jorrit Tyberghein 00003 Written by John Harger <jharger AT users.sourceforge.net> 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License as published by the Free Software Foundation; either 00008 version 2 of the License, or (at your option) any later version. 00009 00010 This library is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 Library General Public License for more details. 00014 00015 You should have received a copy of the GNU Library General Public 00016 License along with this library; if not, write to the Free 00017 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00018 */ 00019 00020 #ifndef __CELTOOL_CELTOOLEXTERN_H__ 00021 #define __CELTOOL_CELTOOLEXTERN_H__ 00022 00023 #include "cssysdef.h" 00024 /* Currently, the only thing provided by celconfig.h is CEL_BUILD_SHARED_LIBS. 00025 On MSVC, this is set in the project options. 00026 Also, this file is the only user of celconfig.h. So go with the cheap 00027 solution and conditionally include celconfig.h if not on MSVC. 00028 If either more files start to use celconfig.h or more settings are stored 00029 in it, a better solution, such as the one used by CS to wrap csconfig.h, 00030 should be sought. 00031 */ 00032 #if !defined(CS_COMPILER_MSVC) 00033 #include "celconfig.h" 00034 #endif 00035 00036 #if defined(CS_PLATFORM_WIN32) 00037 #if defined(CEL_BUILD_SHARED_LIBS) 00038 #define CEL_EXPORT_SYM CS_EXPORT_SYM_DLL 00039 #define CEL_IMPORT_SYM CS_IMPORT_SYM_DLL 00040 #else 00041 #define CEL_EXPORT_SYM 00042 #define CEL_IMPORT_SYM 00043 #endif // CEL_BUILD_SHARED_LIBS 00044 #else 00045 #if defined(CEL_BUILD_SHARED_LIBS) 00046 #define CEL_EXPORT_SYM CS_VISIBILITY_DEFAULT 00047 #else 00048 #define CEL_EXPORT_SYM 00049 #endif 00050 #define CEL_IMPORT_SYM 00051 #endif 00052 00053 #ifdef CEL_CELTOOL_LIB 00054 #define CEL_CELTOOL_EXPORT CEL_EXPORT_SYM 00055 #else 00056 #define CEL_CELTOOL_EXPORT CEL_IMPORT_SYM 00057 #endif 00058 00059 #endif // __CELTOOL_CELTOOLEXTERN_H__
Generated for CEL: Crystal Entity Layer 1.4.1 by doxygen 1.7.1