/[escript]/trunk/esysUtils/src/system_dep.h
ViewVC logotype

Annotation of /trunk/esysUtils/src/system_dep.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2519 - (hide annotations)
Mon Jul 6 00:43:08 2009 UTC (11 years, 2 months ago) by jfenwick
File MIME type: text/plain
File size: 2039 byte(s)
Correcting some doxygen errors
1 ksteube 1312
2     /*******************************************************
3 ksteube 1811 *
4     * Copyright (c) 2003-2008 by University of Queensland
5     * Earth Systems Science Computational Center (ESSCC)
6     * http://www.uq.edu.au/esscc
7     *
8     * Primary Business: Queensland, Australia
9     * Licensed under the Open Software License version 3.0
10     * http://www.opensource.org/licenses/osl-3.0.php
11     *
12     *******************************************************/
13 ksteube 1312
14 ksteube 1811
15 woo409 743 /**
16 jfenwick 2519 \file esysUtils/src/system_dep.h
17 woo409 743 \ingroup Other
18     */
19 artak 2079 /*
20     * @(#) system_dep.h
21     */
22 woo409 743
23     #ifndef esysutils_system_dep_h
24     #define esysutils_system_dep_h
25    
26 phornby 2017 #if defined(_WIN32) && defined(__INTEL_COMPILER)
27 artak 2079 /* The Intel compiler on windows has an "improved" math library compared to the usual Visual C++ one
28     * In particular it has a acosh and other similar functions which aren't implemented in Visual C++ math.h
29     * Note you will get a compile time error if any other header (including system ones) include math.h before mathimf.h
30     * has been included. As a result system_dep.h must be included FIRST at all times (this prevents math.h from being included).
31     */
32 woo409 743 #include <mathimf.h>
33     #else
34     #include <math.h>
35     #endif
36    
37 phornby 2029 #define ESYSUTILS_DLL_API
38    
39 woo409 779 #ifdef _WIN32
40 phornby 2031 # ifndef ESYSUTILS_STATIC_LIB
41 phornby 2030 # undef ESYSUTILS_DLL_API
42 phornby 2029 # ifdef ESYSUTILS_EXPORTS
43     # define ESYSUTILS_DLL_API __declspec(dllexport)
44     # else
45     # define ESYSUTILS_DLL_API __declspec(dllimport)
46     # endif
47     # endif
48 woo409 779
49 artak 2079 /* This is because of the different declarations of std::exception mentods
50     * on windows.
51     * Also, putting a "throw" in any declaration on windows causes a warning!!!!!!
52     * If you wish to generate a throw() on other systems, please use
53     * THROW(NO_ARG). This is because windows generates warnings if you say
54     * THROW(), so the NO_ARG trick must be used to avoid the mass of warnings.
55     */
56 phornby 2020
57 phornby 1628 # define THROW(ARG)
58 woo409 743 #else
59 phornby 1628 # define THROW(ARG) throw(ARG)
60 woo409 743 #endif
61    
62 phornby 2017 #define NO_ARG
63 woo409 743
64 phornby 2097 /* you'll need this one day. */
65     #ifndef __const
66     # if (defined __STDC__ && __STDC__) || defined __cplusplus
67     # define __const const
68     # else
69     # define __const
70     # endif
71 woo409 743 #endif
72 phornby 2097
73     #endif

  ViewVC Help
Powered by ViewVC 1.1.26