This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
regcomp.c -reorder RExC_state_t to close x86-64 alignment holes
[perl5.git] / README.micro
index 412b952..93859a0 100644 (file)
@@ -4,7 +4,10 @@ on the other hand this means that interfaces between Perl and your
 operating system are left very -- minimal.
 
 All this is experimental.  If you don't know what to do with microperl
-you probably shouldn't.  Do not report bugs in microperl; fix the bugs.
+you probably shouldn't.  Please don't report bugs in microperl; fix the
+bugs.  (Bugs reports about microperl without fixes/patches are equivalent
+to wishlist requests - they won't be discarded, but they likely won't get
+worked on either, unless they chance to coincide with someone's personal itch)
 
 We assume ANSI C89 plus the following:
 - <stddef.h>, <stdlib.h>
@@ -20,16 +23,27 @@ If you are still reading this and you are itching to try out microperl:
 
        make -f Makefile.micro
 
+The defaults assume a little endian LP32 platform - ie long and pointers are
+32 bits, so sizeof(long) and sizeof(void *) are 4
+If your platform is little endian LP64 - ie long and pointers are 64 bits,
+sizeof(long) and sizeof(void *) are 8, then you first need to run
+
+       make -f Makefile.micro regen_uconfig64
+
+to generate a suitable uconfig.h
+
 If you make changes to uconfig.sh, run
 
        make -f Makefile.micro regen_uconfig
 
-to regenerate uconfig.h.  If your compilation platform is not 32-bit
-little-endian (like x86), you might want to try
+to regenerate uconfig.h.  (or regen_uconfig64 if you're editing uconfig64.sh)
+
+
+If neither of the above default configs work on your platform, you might want
+to try
 
        make -f Makefile.micro patch_uconfig
 
 *before* the "make -f Makefile.micro".  This tries to minimally patch
 the uconfig.sh using your *current* Perl so that your microperl has
 the correct basic types and sizes and byteorder.
-