2cac9a7
--- HDF4.2r1/hdf/src/hdfi.h.orig	2005-01-24 20:36:44.000000000 -0700
2cac9a7
+++ HDF4.2r1/hdf/src/hdfi.h	2006-02-02 21:54:59.347516688 -0700
2cac9a7
@@ -72,6 +72,7 @@
2cac9a7
 #define     DFMT_CRAYMPP        0x1171
2cac9a7
 #define     DFMT_IA64           0x4441
2cac9a7
 #define     DFMT_LINUX64        0x4441
2cac9a7
+#define     DFMT_LINUXPPC       0x1111
2cac9a7
 
2cac9a7
 /* I/O library constants */
2cac9a7
 #define UNIXUNBUFIO 1
2cac9a7
@@ -1326,6 +1327,57 @@
2cac9a7
 
2cac9a7
 #endif /*Linux 64 */
2cac9a7
 
2cac9a7
+/* Linux PPC */
2cac9a7
+#if defined __PPC__
2cac9a7
+
2cac9a7
+#ifdef GOT_MACHINE
2cac9a7
+If you get an error on this line more than one machine type has been defined.
2cac9a7
+Please check your Makefile.
2cac9a7
+#endif
2cac9a7
+#define GOT_MACHINE
2cac9a7
+
2cac9a7
+#include <sys/file.h>               /* for unbuffered i/o stuff */
2cac9a7
+#include <sys/stat.h>
2cac9a7
+#define DF_MT             DFMT_LINUXPPC
2cac9a7
+typedef void              VOID;
2cac9a7
+typedef void              *VOIDP;
2cac9a7
+typedef char              *_fcd;
2cac9a7
+typedef char              char8;
2cac9a7
+typedef unsigned char     uchar8;
2cac9a7
+typedef char              int8;
2cac9a7
+typedef unsigned char     uint8;
2cac9a7
+typedef short int         int16;
2cac9a7
+typedef unsigned short int uint16;
2cac9a7
+typedef int               int32;
2cac9a7
+typedef unsigned int      uint32;
2cac9a7
+typedef int               intn;
2cac9a7
+typedef unsigned int      uintn;
2cac9a7
+typedef int               intf;     /* size of INTEGERs in Fortran compiler */
2cac9a7
+typedef float             float32;
2cac9a7
+typedef double            float64;
2cac9a7
+typedef long              hdf_pint_t;   /* an integer the same size as a pointer */
2cac9a7
+#define FNAME_POST_UNDERSCORE
2cac9a7
+#define _fcdtocp(desc) (desc)
2cac9a7
+#ifdef  HAVE_FMPOOL
2cac9a7
+#define FILELIB PAGEBUFIO  /* enable page buffering */
2cac9a7
+#else
2cac9a7
+#define FILELIB UNIXBUFIO
2cac9a7
+#endif
2cac9a7
+
2cac9a7
+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
2cac9a7
+
2cac9a7
+/* Determine the memory manager we are going to use. Valid values are: */
2cac9a7
+/*  MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS.  See the JPEG docs for details on */
2cac9a7
+/*  what each does */
2cac9a7
+#define JMEMSYS         MEM_ANSI
2cac9a7
+
2cac9a7
+#ifdef __GNUC__
2cac9a7
+#define HAVE_STDC
2cac9a7
+#define INCLUDES_ARE_ANSI
2cac9a7
+#endif
2cac9a7
+
2cac9a7
+#endif /*Linux PPC */
2cac9a7
+
2cac9a7
 /*#ifndef GOT_MACHINE
2cac9a7
 No machine type has been defined.  Your Makefile needs to have someing like
2cac9a7
 -DSUN or -DUNICOS in order for the HDF internal structures to be defined