mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-17 16:10:24 +08:00
[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)
This commit is contained in:
parent
fec2c355da
commit
8bf9952205
@ -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)
|
||||
|
||||
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
|
||||
#else
|
||||
|
||||
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 */
|
||||
|
Loading…
Reference in New Issue
Block a user