This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perlio.c: false Coverity finding (it cannot see that two pointers are the same):...
[perl5.git] / cflags.SH
index 453fff6..6c26025 100755 (executable)
--- a/cflags.SH
+++ b/cflags.SH
@@ -127,39 +127,48 @@ for file do
 warn=''
 case "$gccversion" in
 '') ;;
+Intel*) ;;
 *)  case "$ccflags" in
     *-Wall*) ;;
     *) warn="$warn -Wall" ;;
     esac
     case "$gccansipedantic" in
     define)
-        case "$osname" in
-       # Add -ansi -pedantic only for known platforms.
-        aix|dec_osf|freebsd|hpux|irix|linux)
-           ansipedantic="-ansi -pedantic" ;;
-        solaris)
+       case "$gccversion" in
+       [12]*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
+       *)  case "$osname" in
+           # Add -ansi -pedantic only for known platforms.
+           aix|dec_osf|freebsd|hpux|irix|linux)
+               ansipedantic="-ansi -pedantic" ;;
+           solaris)
 # Can't add -ansi for Solaris.
 # Off_t/off_t is a struct in Solaris with largefiles, and with -ansi
 # that struct cannot be compared with a flat integer, such as a STRLEN.
 # The -ansi will also cause a lot of noise in Solaris because of:
 # /usr/include/sys/resource.h:148: warning: `struct rlimit64' declared inside parameter list
-           ansipedantic="-pedantic" ;;
-       esac
-       for i in $ansipedantic
-       do
-           case "$ccflags" in
-           *$i*) ;;
-           *) warn="$warn $i" ;;
+               ansipedantic="-pedantic" ;;
+           esac
+           for i in $ansipedantic
+           do
+               case "$ccflags" in
+               *$i*) ;;
+               *) warn="$warn $i" ;;
+               esac
+           done
+           case "$warn$ccflags" in
+           *-pedantic*) warn="$warn -DPERL_GCC_PEDANTIC" ;;
            esac
-       done
-        case "$warn$ccflags" in
-        *-pedantic*) warn="$warn -DPERL_GCC_PEDANTIC" ;;
-        esac
-        ;;
+           ;;
+       esac
+       ;;
     esac
     ;;
 esac
 
+if test -f .patch; then
+  ccflags="-DPERL_PATCHNUM=`cat .patch` $ccflags"
+fi
+
     : Can we perhaps use $ansi2knr here
     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'