[openssl-commits] [openssl] master update

Richard Levitte levitte at openssl.org
Tue Jan 9 19:48:09 UTC 2018


The branch master has been updated
       via  225f980d22dfe66aa3945c21609042c32284e61c (commit)
      from  8e403a79b0e679c8df41a9686006c5fe052d79bd (commit)


- Log -----------------------------------------------------------------
commit 225f980d22dfe66aa3945c21609042c32284e61c
Author: Richard Levitte <levitte at openssl.org>
Date:   Tue Jan 9 19:51:19 2018 +0100

    Configure: try to make sure every config target name is unique
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/5047)

-----------------------------------------------------------------------

Summary of changes:
 Configurations/README |  6 +++++-
 Configure             | 11 +++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/Configurations/README b/Configurations/README
index 9f31dfc..9d5dc5c 100644
--- a/Configurations/README
+++ b/Configurations/README
@@ -18,10 +18,14 @@ configuration in diverse ways:
 Configurations of OpenSSL target platforms
 ==========================================
 
-Target configurations are a collection of facts that we know about
+Configuration targets are a collection of facts that we know about
 different platforms and their capabilities.  We organise them in a
 hash table, where each entry represent a specific target.
 
+Note that configuration target names must be unique across all config
+files.  The Configure script does check that a config file doesn't
+have config targets that shadow config targets from other files.
+
 In each table entry, the following keys are significant:
 
         inherit_from    => Other targets to inherit values from.
diff --git a/Configure b/Configure
index b172595..67e59a2 100755
--- a/Configure
+++ b/Configure
@@ -2381,6 +2381,17 @@ sub read_config {
 
 	%targets = read_eval_file($fname);
     }
+    my %preexisting = ();
+    foreach (sort keys %targets) {
+        $preexisting{$_} = 1 if $table{$_};
+    }
+    die <<"EOF",
+The following config targets from $fname
+shadow pre-existing config targets with the same name:
+EOF
+        map { "  $_\n" } sort keys %preexisting
+        if %preexisting;
+
 
     # For each target, check that it's configured with a hash table.
     foreach (keys %targets) {


More information about the openssl-commits mailing list