Remove outdated RC4 files
[openssl.git] / Configure
index 1c6b4248174844c983a9d2e34ab84bedf36b2f8a..b9e0f50564acb8447312cd0ad5d752060d5bcedb 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -112,7 +112,15 @@ 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 -Wtype-limits -Werror -DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DDEBUG_UNUSED";
 
-my $clang_disabled_warnings = "-Wno-language-extension-token -Wno-extended-offsetof -Wno-padded -Wno-shorten-64-to-32 -Wno-format-nonliteral -Wno-missing-noreturn -Wno-unused-parameter -Wno-sign-conversion -Wno-unreachable-code -Wno-conversion -Wno-documentation -Wno-missing-variable-declarations -Wno-cast-align -Wno-incompatible-pointer-types-discards-qualifiers -Wno-missing-variable-declarations -Wno-missing-field-initializers -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-conditional-uninitialized -Wno-switch-enum -Wno-gnu-statement-expression";
+# These are used in addition to $gcc_devteam_warn when the compiler is clang.
+# TODO(openssl-team): fix problems and investigate if (at least) the
+# following warnings can also be enabled: -Wconditional-uninitialized,
+# -Wswitch-enum, -Wunused-macros, -Wmissing-field-initializers,
+# -Wmissing-variable-declarations,
+# -Wincompatible-pointer-types-discards-qualifiers, -Wcast-align,
+# -Wunreachable-code -Wunused-parameter -Wlanguage-extension-token
+# -Wextended-offsetof
+my $clang_devteam_warn = "-Wno-unused-parameter -Wno-missing-field-initializers -Wno-language-extension-token -Wno-extended-offsetof";
 
 my $strict_warnings = 0;
 
@@ -369,6 +377,7 @@ my %table=(
        template        => 1,
        cpuid_obj       => "sparcv9cap.o sparccpuid.o",
        bn_obj          => "bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o vis3-mont.o sparct4-mont.o sparcv9-gf2m.o",
+        ec_obj          => "ecp_nistz256.o ecp_nistz256-sparcv9.o",
        des_obj         => "des_enc-sparc.o fcrypt_b.o dest4-sparcv9.o",
        aes_obj         => "aes_core.o aes_cbc.o aes-sparcv9.o aest4-sparcv9.o",
        md5_obj         => "md5-sparcv9.o",
@@ -425,6 +434,8 @@ my %table=(
     aarch64_asm => {
        template        => 1,
        cpuid_obj       => "armcap.o arm64cpuid.o mem_clr.o",
+       ec_obj          => "ecp_nistz256.o ecp_nistz256-armv8.o",
+       bn_obj          => "bn_asm.o armv8-mont.o",
        aes_obj         => "aes_core.o aes_cbc.o aesv8-armx.o vpaes-armv8.o",
        sha1_obj        => "sha1-armv8.o sha256-armv8.o sha512-armv8.o",
        modes_obj       => "ghashv8-armx.o",
@@ -1723,12 +1734,21 @@ if ($shlib_version_number =~ /(^[0-9]*)\.([0-9\.]*)/)
 
 if ($strict_warnings)
        {
+       my $ecc = $cc;
+       $ecc = "clang" if `$cc --version 2>&1` =~ /clang/;
        my $wopt;
-       die "ERROR --strict-warnings requires gcc or clang" unless ($cc =~ /gcc$/ or $cc =~ /clang$/);
+       die "ERROR --strict-warnings requires gcc or clang" unless ($ecc =~ /gcc$/ or $ecc =~ /clang$/);
        foreach $wopt (split /\s+/, $gcc_devteam_warn)
                {
                $cflags .= " $wopt" unless ($cflags =~ /$wopt/)
                }
+       if ($ecc eq "clang")
+               {
+               foreach $wopt (split /\s+/, $clang_devteam_warn)
+                       {
+                       $cflags .= " $wopt" unless ($cflags =~ /$wopt/)
+                       }
+               }
        }
 
 open(IN,"<Makefile.org") || die "unable to read Makefile.org:$!\n";