summaryrefslogtreecommitdiffstats
path: root/fortran/src
diff options
context:
space:
mode:
authorJames Laird <jlaird@hdfgroup.org>2005-05-12 20:00:56 (GMT)
committerJames Laird <jlaird@hdfgroup.org>2005-05-12 20:00:56 (GMT)
commit8bf9952205d8d8a7ac1a215a5ed2474b46538847 (patch)
treef4b26660ef772a4e3aa66778022d550074488de2 /fortran/src
parentfec2c355da13444f9db68d82ccad9507b825348f (diff)
downloadhdf5-8bf9952205d8d8a7ac1a215a5ed2474b46538847.zip
hdf5-8bf9952205d8d8a7ac1a215a5ed2474b46538847.tar.gz
hdf5-8bf9952205d8d8a7ac1a215a5ed2474b46538847.tar.bz2
[svn-r10743] Purpose:
Code cleanup Description: fortran/src/H5f90i.h used to define different fortran types for every compiler. Now it only defines three things, and they are the same for every platform but one. Solution: Eliminate duplicate definitions; now there are only two cases ("UNICOS" and "everything else"). This should also let the HDF5 Fortran compile anywhere, even on unknown platforms. Platforms tested: mir, pommier, modi4, copper, Cray X1 (in progress)
Diffstat (limited to 'fortran/src')
-rw-r--r--fortran/src/H5f90i.h103
1 files changed, 7 insertions, 96 deletions
diff --git a/fortran/src/H5f90i.h b/fortran/src/H5f90i.h
index d99353b..81065f0 100644
--- a/fortran/src/H5f90i.h
+++ b/fortran/src/H5f90i.h
@@ -22,6 +22,11 @@
*/
#include "H5f90i_gen.h"
+/* Define _fcd and real_f. These are the same on every system
+ * but UNICOS.
+ */
+#define _fcdtocp(desc) (desc)
+
#if (defined (UNICOS) || defined (_UNICOS)) && !defined(__crayx1)
#include <fortran.h>
@@ -29,105 +34,11 @@
/*typedef char* _fcd;*/
typedef double real_f;
-#endif /* UNICOS */
-
-#if defined(IBM6000) || defined(_AIX)
-
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-#endif /*IBM6000*/
-
-/* MAC APPLE definitions with IBM XL compiler*/
-#if defined(__APPLE__)
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-#endif /*APPLE*/
-
-/* LINUX definitions */
-#if (defined(linux) || defined(__gnu_linux__) || defined(__linux__))
-
-/* Common definitions */
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-/* IA32 specific definitions */
-#if (defined(i386) || defined(__i386) || defined(__i386__))
-
-/* AMD64 specific definitions */
-#elif defined __x86_64__
-
-/* IA64 specific definitions */
-#elif defined __ia64
-
-#endif /* IA64 */
-#endif /* LINUX*/
-
-#if defined(IRIX) || defined(IRIS4) || defined(sgi) || defined(__sgi__) || defined(__sgi)
-
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-#endif /* IRIX */
-
-#if defined(__crayx1)
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-#endif /* Cray X1 */
-
-#if (defined(SUN) || defined(sun) || defined(__sun__) || defined(__SUNPRO_C)) & !defined(__i386)
+#else
typedef char *_fcd;
typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-#endif /*SUN*/
-
-#if defined DEC_ALPHA || (defined __alpha && defined __unix__ && !defined __linux__)
-
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-#endif /* DEC_ALPHA */
-
-#if defined __alpha__ && defined __linux__
-
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-#endif /* DEC_ALPHA_LINUX */
-
-#if defined(HP9000) || (!defined(__convexc__) && (defined(hpux) || defined(__hpux)))
-
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-
-#endif /* HP9000 */
-
-#if defined _WINDOWS || defined WIN32
-
-typedef char *_fcd;
-typedef float real_f;
-
-#define _fcdtocp(desc) (desc)
-
-#endif /*WINDOWS */
-
-/* FreeBSD definitions */
-#if (defined(__FreeBSD) || defined(__FreeBSD__))
-
-/* Common definitions */
-typedef char *_fcd;
-typedef float real_f;
-#define _fcdtocp(desc) (desc)
-#endif /* FreeBSD */
+#endif
#endif /* _H5f90i_H */