00001 00002 /******************************************************* 00003 * 00004 * Copyright (c) 2003-2009 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 // The Intel compiler on windows has an "improved" math library compared to the usual Visual C++ one 00028 // In particular it has a acosh and other similar functions which aren't implemented in Visual C++ math.h 00029 // Note you will get a compile time error if any other header (including system ones) includes math.h whilst mathimf.h 00030 // has been included. As a result system_dep.h must be included FIRST at all times (this prevents math.h from being included). 00031 # include <mathimf.h> 00032 #else 00033 # include <math.h> 00034 #endif 00035 00036 #define FINLEY_DLL_API 00037 00038 #ifdef _WIN32 00039 00040 # ifndef FINLEY_STATIC_LIB 00041 # undef FINLEY_DLL_API 00042 # ifdef FINLEY_EXPORTS 00043 # define FINLEY_DLL_API __declspec(dllexport) 00044 # else 00045 # define FINLEY_DLL_API __declspec(dllimport) 00046 # endif 00047 # endif 00048 #endif 00049 00050 00051 #endif