ESScript  Revision_
finley/src/CPPAdapter/system_dep.h
Go to the documentation of this file.
1 
2 /*****************************************************************************
3 *
4 * Copyright (c) 2003-2013 by University of Queensland
5 * http://www.uq.edu.au
6 *
7 * Primary Business: Queensland, Australia
8 * Licensed under the Open Software License version 3.0
9 * http://www.opensource.org/licenses/osl-3.0.php
10 *
11 * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 * Development since 2012 by School of Earth Sciences
13 *
14 *****************************************************************************/
15 
16 
21 /*
22  @(#) system_dep.h
23 */
24 
25 #ifndef finley_system_dep_h
26 #define finley_system_dep_h
27 
28 #if defined(_WIN32) && defined(__INTEL_COMPILER)
29 /*
30  * The Intel compiler on windows has an "improved" math library compared to
31  * the usual Visual C++ one. In particular it has acosh and other similar
32  * functions which aren't implemented in Visual C++ math.h.
33  * Note you will get a compile time error if any other header (including
34  * system ones) includes math.h whilst mathimf.h has been included.
35  * As a result system_dep.h must be included FIRST at all times (this
36  * prevents math.h from being included).
37  */
38 # include <mathimf.h>
39 #else
40 # include <math.h>
41 #endif
42 
43 #define FINLEY_DLL_API
44 
45 #ifdef _WIN32
46 
47 # ifndef FINLEY_STATIC_LIB
48 # undef FINLEY_DLL_API
49 # ifdef FINLEY_EXPORTS
50 # define FINLEY_DLL_API __declspec(dllexport)
51 # else
52 # define FINLEY_DLL_API __declspec(dllimport)
53 # endif
54 # endif
55 #endif
56 
57 #endif
58