IRIX 6.5 (cc 7.4) needs -c99 to compile without whining.
authorJarkko Hietaniemi <jhi@iki.fi>
Tue, 16 Sep 2014 20:58:44 +0000 (16:58 -0400)
committerJarkko Hietaniemi <jhi@iki.fi>
Mon, 29 Sep 2014 06:22:59 +0000 (08:22 +0200)
Without -c99 including C99 header files like <stdint.h> is an error.

For gcc (used "freeware" 3.3), there just doesn't seem to be a way,
so claim there's no <stdint.h>.

hints/irix_6.sh

index e36d643..2b9851f 100644 (file)
@@ -102,7 +102,12 @@ $cat > UU/cc.cbu <<'EOCCBU'
 # has prompted the user for the C compiler to use.
 
 case "$cc" in
-*gcc*) ;;
+*gcc*)
+  # With cc we can use -c99, but with gcc we just can't use C99 headers.
+  # (There is a hidden define __c99 that cc uses, but trying to use that
+  # with gcc leads into magnificent explosions.)
+  i_stdint='undef'
+  ;;
 *) ccversion=`cc -version 2>&1` ;;
 esac
 
@@ -237,6 +242,7 @@ case "$cc" in
 
        # Warnings to turn off because the source code hasn't
        # been cleaned up enough yet to satisfy the IRIX cc.
+       # 1047: macro redefinitions (in IRIX' own system headers!)
        # 1184: "=" is used where where "==" may have been intended.
        # 1552: The variable "foobar" is set but never used.
        woff=1184,1552
@@ -284,6 +290,9 @@ case "$cc" in
                '-O') optimize='-O3 -OPT:Olimit=0:space=ON' ;;
                *) ;;
             esac
+           # Perl source has just grown too chummy with c99
+           # (headerwise, not code-wise: we use <stdint.h> and such)
+           ccflags="$ccflags -c99"
             ;;
        *6.2*)                        # Ragnarok 6.2
             ccflags="$ccflags -D_BSD_TYPES -D_BSD_TIME -woff $woff"