ESYS13  Revision_
system_dep.h
Go to the documentation of this file.
00001 
00002 /*******************************************************
00003 *
00004 * Copyright (c) 2003-2012 by University of Queensland
00005 * Earth Systems Science Computational Center (ESSCC)
00006 * http://www.uq.edu.au/esscc
00007 *
00008 * Primary Business: Queensland, Australia
00009 * Licensed under the Open Software License version 3.0
00010 * http://www.opensource.org/licenses/osl-3.0.php
00011 *
00012 *******************************************************/
00013 
00014 
00019 /*
00020    @(#) system_dep.h
00021 */
00022 
00023 #ifndef finley_system_dep_h
00024 #define finley_system_dep_h
00025 
00026 #if defined(_WIN32) && defined(__INTEL_COMPILER)
00027 /*
00028  * The Intel compiler on windows has an "improved" math library compared to
00029  * the usual Visual C++ one. In particular it has acosh and other similar
00030  * functions which aren't implemented in Visual C++ math.h.
00031  * Note you will get a compile time error if any other header (including
00032  * system ones) includes math.h whilst mathimf.h has been included.
00033  * As a result system_dep.h must be included FIRST at all times (this
00034  * prevents math.h from being included).
00035  */
00036 #   include <mathimf.h>
00037 #else
00038 #   include <math.h>
00039 #endif
00040 
00041 #define FINLEY_DLL_API
00042 
00043 #ifdef _WIN32
00044 
00045 #   ifndef FINLEY_STATIC_LIB
00046 #      undef FINLEY_DLL_API
00047 #      ifdef FINLEY_EXPORTS
00048 #         define FINLEY_DLL_API __declspec(dllexport)
00049 #      else
00050 #         define FINLEY_DLL_API __declspec(dllimport)
00051 #      endif
00052 #   endif
00053 #endif
00054 
00055 #endif
00056