Add new option --strict-warnings to Configure script. This is used to add
authorDr. Stephen Henson <steve@openssl.org>
Wed, 9 Sep 2009 16:32:19 +0000 (16:32 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Wed, 9 Sep 2009 16:32:19 +0000 (16:32 +0000)
in devteam warnings into other configurations.

CHANGES
Configure

diff --git a/CHANGES b/CHANGES
index d43e499aedd19e47eea2d7ea096d59c63fecc480..17fd386345e9ae56b7fa9bab2bab8e30f76d61ae 100644 (file)
--- a/CHANGES
+++ b/CHANGES
 
  Changes between 0.9.8k and 0.9.8l  [xx XXX xxxx]
 
+  *) Add --strict-warnings option to Configure script to include devteam
+     warnings in other configurations.
+     [Steve Henson]
+
   *) Add support for --libdir option and LIBDIR variable in makefiles. This
      makes it possible to install openssl libraries in locations which 
      have names other than "lib", for example "/usr/lib64" which some
index 2dd5b74efae59ebb1eb3e31889d15105648459ee..1dec089c6c338c1e16fc93baa5370a3f002d6c00 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -104,6 +104,8 @@ my $usage="Usage: Configure [no-<cipher> ...] [enable-<cipher> ...] [experimenta
 
 my $gcc_devteam_warn = "-Wall -pedantic -DPEDANTIC -Wno-long-long -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Werror -DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DOPENSSL_NO_DEPRECATED";
 
+my $strict_warnings = 0;
+
 my $x86_gcc_des="DES_PTR DES_RISC1 DES_UNROLL";
 
 # MD2_CHAR slags pentium pros
@@ -774,6 +776,10 @@ PROCESS_ARGS:
                        {
                        exit(&test_sanity());
                        }
+               elsif (/^--strict-warnings/)
+                       {
+                       $strict_warnings = 1;
+                       }
                elsif (/^reconfigure/ || /^reconf/)
                        {
                        if (open(IN,"<$Makefile"))
@@ -1435,6 +1441,16 @@ if ($shlib_version_number =~ /(^[0-9]*)\.([0-9\.]*)/)
        $shlib_minor=$2;
        }
 
+if ($strict_warnings)
+       {
+       my $wopt;
+       die "ERROR --strict-warnings requires gcc" unless ($cc =~ /gcc$/);
+       foreach $wopt (split /\s+/, $gcc_devteam_warn)
+               {
+               $cflags .= " $wopt" unless ($cflags =~ /$wopt/)
+               }
+       }
+
 open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
 unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if -e "$Makefile.new";
 open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n";