Reverse integrate Malcolm's chanes into local
[p5sagit/p5-mst-13.2.git] / config_h.SH
old mode 100755 (executable)
new mode 100644 (file)
index 938cf51..cfae03a
@@ -39,8 +39,25 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 /* MEM_ALIGNBYTES:
  *     This symbol contains the number of bytes required to align a
  *     double. Usual values are 2, 4 and 8.
+ *     On NeXT starting with 3.2, you can build "Fat" Multiple Architecture
+ *     Binaries (MAB) for targets with varying alignment.  This only matters
+ *     for perl, where the config.h can be generated and installed on one
+ *     system, and used by a different architecture to build an extension.
+ *     The default is eight, for safety.
  */
+#ifndef NeXT
 #define MEM_ALIGNBYTES $alignbytes     /**/
+#else  /* NeXT */
+#ifdef __m68k__
+#define MEM_ALIGNBYTES 2
+#else
+#ifdef __i386__
+#define MEM_ALIGNBYTES 4
+#else /* __hppa__, __sparc__ and default for unknown architectures */
+#define MEM_ALIGNBYTES 8
+#endif /* __i386__ */
+#endif /* __m68k__ */
+#endif /* NeXT */
 
 /* ARCHNAME:
  *     This symbol holds a string representing the architecture name.
@@ -1443,7 +1460,7 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 /* BYTEORDER:
  *     This symbol holds the hexadecimal constant defined in byteorder,
  *     i.e. 0x1234 or 0x4321, etc...
- *     On NeXT 4 (and greater), you can build "Fat" Multiple Architecture
+ *     On NeXT 3.2 (and greater), you can build "Fat" Multiple Architecture
  *     Binaries (MAB) on either big endian or little endian machines.
  *     The endian-ness is available at compile-time.  This only matters
  *     for perl, where the config.h can be generated and installed on