diff options
-rwxr-xr-x | config/autoconf | 49 |
1 files changed, 17 insertions, 32 deletions
diff --git a/config/autoconf b/config/autoconf index a1d193052..c9f035c01 100755 --- a/config/autoconf +++ b/config/autoconf @@ -19,17 +19,17 @@ case "$1,$2,$3" in 4,8,8) echo "Wow! A 64 bit architecture!" echo "#define SIXTYFOUR" >> m.h;; 8,*,*) echo "Wow! A 64 bit architecture!" - echo "Unfortunately, Caml Light does not handle the case" + echo "Unfortunately, Caml Special Light does not handle the case" echo "sizeof(int) = 8." - echo "Caml Light won't run on this architecture." + echo "Caml Special Light won't run on this architecture." exit 2;; *,4,8) echo "Wow! A 64 bit architecture!" - echo "Unfortunately, Caml Light cannot work in the case" + echo "Unfortunately, Caml Special Light cannot work in the case" echo "sizeof(long) != sizeof(long *)." - echo "Caml Light won't run on this architecture." + echo "Caml Special Light won't run on this architecture." exit 2;; ?,?,?) echo "This architecture seems to be neither 32 bits nor 64 bits." - echo "Caml Light won't run on this architecture." + echo "Caml Special Light won't run on this architecture." exit 2;; *) echo "Unable to compile the test program." echo "Make sure the C compiler is properly installed." @@ -45,7 +45,7 @@ case $? in 1) echo "This is a little-endian architecture." echo "#undef BIG_ENDIAN" >> m.h;; 2) echo "This architecture seems to be neither big endian nor little endian." - echo "Caml Light won't run on this architecture." + echo "Caml Special Light won't run on this architecture." exit 2;; *) echo "Something went wrong during endianness determination." echo "You'll have to figure out endianness yourself" @@ -61,29 +61,12 @@ case $? in echo "#define ALIGN_DOUBLE" >> m.h;; *) echo "Something went wrong during alignment determination for doubles." echo "I'm going to assume this architecture has alignment constraints over doubles." - echo "That's a safe bet: Caml Light will work even if it turns out that" - echo "this architecture actually has no alignment constraints." + echo "That's a safe bet: Caml Special Light will work even if" + echo "this architecture has actually no alignment constraints." echo "#define ALIGN_DOUBLE" >> m.h;; esac -# Are chars signed? - -sh ./runtest schar.c -case $? in - 0) echo "The char type is signed. Good!";; - 1) echo "The char type is not signed. Let's see if 'signed char' works." - sh ./runtest schar2.c - case $? in - 0) echo "Yes, it works. Good!" - echo "#define SIGNED_CHAR_WORKS" >> s.h;; - *) echo "No, it does not work." - echo "You'll have to figure out a compiler option that" - echo "causes the 'char' type to be signed, and" - echo "add it to CCCOMPOPTS in Makefile.config.";; - esac;; -esac - -# To find a good byte copy function +# Find a good byte move function if sh ./runtest -Dcopy=memmove -Dreverse bytecopy.c; then echo "Function \"memmove\" is provided and handles overlapping moves correctly." @@ -93,10 +76,6 @@ if sh ./runtest -Dcopy=bcopy bytecopy.c; then echo "Function \"bcopy\" is provided and handles overlapping moves correctly." echo "#define HAS_BCOPY" >> s.h fi -if sh ./runtest -Dcopy=memcpy -Dreverse bytecopy.c; then - echo "Function \"memcpy\" is provided and handles overlapping moves correctly." - echo "#define HAS_MEMCPY" >> s.h -fi # Check for _longjmp and _setjmp @@ -228,8 +207,14 @@ if test -f /usr/include/termios.h && echo "#define HAS_TERMIOS" >> s.h fi -# The following four lines must be commented out on DEC OSF1 3.0 -if sh ./runtest async_io.c; then +# Async I/O under OSF1 3.x are so buggy that the test program hangs... +testasyncio=true +if test -f /usr/bin/uname; then + case "`uname -s -r`" in + "OSF1 V3."*) testasyncio=false;; + esac +fi +if $testasyncio && sh ./runtest async_io.c; then echo "Asynchronous I/O are supported." echo "#define HAS_ASYNC_IO" >> s.h fi |