summaryrefslogtreecommitdiff
path: root/cflags.SH
diff options
context:
space:
mode:
authorH.Merijn Brand <h.m.brand@xs4all.nl>2002-09-30 09:51:40 +0000
committerH.Merijn Brand <h.m.brand@xs4all.nl>2002-09-30 09:51:40 +0000
commita042607511961b7f7852d92748b40c4e94e5cc75 (patch)
tree967078cb29b1549b261215081b1e58b95b47d7df /cflags.SH
parent2d736872f25b3e41d616d46e8286fe3f13ef058d (diff)
downloadperl-a042607511961b7f7852d92748b40c4e94e5cc75.tar.gz
-Dgccansipedantic only for gcc 3+
Mon, 30 Sep 2002, Jarkko Hietaniemi <jhi@iki.fi> p4raw-id: //depot/perl@17945
Diffstat (limited to 'cflags.SH')
-rwxr-xr-xcflags.SH38
1 files changed, 21 insertions, 17 deletions
diff --git a/cflags.SH b/cflags.SH
index 453fff67c7..634aba5de4 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -133,29 +133,33 @@ case "$gccversion" in
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