Config.h
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file terralib/ws/core/Config.h
22 
23  \brief Configuration flags for the Terrralib WS Core module.
24 
25  \author Emerson Moraes
26  */
27 
28 #ifndef __TERRALIB_WS_CORE_CONFIG_H
29 #define __TERRALIB_WS_CORE_CONFIG_H
30 
31 /** @name DLL/LIB Module
32  * Flags for building TerraLib as a DLL or as a Static Library
33  */
34 //@{
35 
36 /*!
37  \def TEWSCOREEXPORT
38 
39  \brief You can use this macro in order to export/import classes and functions from this module.
40 
41  \note If you want to compile TerraLib as DLL in Windows, remember to insert TEWSCOREDLL into the project's list of defines.
42 
43  \note If you want to compile TerraLib as an Static Library under Windows, remember to insert the TEWSCORESTATIC flag into the project list of defines.
44 */
45 
46 #ifdef WIN32
47 
48  #ifdef _MSC_VER
49  #pragma warning( disable : 4251 )
50  #pragma warning( disable : 4275 )
51  #pragma warning( disable : 4290 )
52  #endif
53 
54  #ifdef TEWSCORESTATIC
55  #define TEWSCOREEXPORT // Don't need to export/import... it is a static library
56  #elif TEWSCOREDLL
57  #define TEWSCOREEXPORT __declspec(dllexport) // export DLL information
58  #else
59  #define TEWSCOREEXPORT __declspec(dllimport) // import DLL information
60  #endif
61 #else
62  #define TEWSCOREEXPORT
63 #endif
64 
65 //@}
66 
67 #endif //__TERRALIB_WS_CORE_CONFIG_H