summaryrefslogtreecommitdiff
path: root/cflags.SH
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-07-31 14:14:35 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-07-31 14:14:35 +0000
commit6a21b602731a3b9c2b1a55a63a48f5f4ab6dc73d (patch)
treec86d440c5a97cdb26f47366ca0fd16eb1e5ed910 /cflags.SH
parent4a0a38297bcc402039494003c8035487bc9aa058 (diff)
downloadperl-6a21b602731a3b9c2b1a55a63a48f5f4ab6dc73d.tar.gz
Add -Wall in cflags, not in Configure.
(This way -Wall affects only the core and the core XS, not user modules' XS. Concern from Paul Marquess, implementation idea from Andy Dougherty.) p4raw-id: //depot/perl@11516
Diffstat (limited to 'cflags.SH')
-rwxr-xr-xcflags.SH20
1 files changed, 18 insertions, 2 deletions
diff --git a/cflags.SH b/cflags.SH
index c397d40071..1bd5c947f4 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -138,9 +138,25 @@ for file do
optimize="$optdebug"
fi
+# Add -Wall for the core and core modules iff gcc and not already -Wall
+warn=''
+case "$gccversion" in
+'') ;;
+*) case "$ccflags" in
+ *-Wall*) ;;
+# Can't add -ansi here because it will fail e.g. in 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
+ *) warn='-Wall' ;;
+ esac
+ ;;
+esac
+
: Can we perhaps use $ansi2knr here
- echo "$cc -c -DPERL_CORE $ccflags $optimize $perltype"
- eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $perltype"'
+ echo "$cc -c -DPERL_CORE $ccflags $optimize $warn $perltype"
+ eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn $perltype"'
. $TOP/config.sh