[openssl-commits] [openssl] master update

Richard Levitte levitte at openssl.org
Tue Mar 17 16:04:05 UTC 2015


The branch master has been updated
       via  9e43c6b5c28731d13afcb4658dc2fa4dd188cc0b (commit)
      from  11abf92259e899f4f7da4a3e80781e84b0fb1a64 (commit)


- Log -----------------------------------------------------------------
commit 9e43c6b5c28731d13afcb4658dc2fa4dd188cc0b
Author: Richard Levitte <levitte at openssl.org>
Date:   Tue Mar 17 16:30:54 2015 +0100

    Correct the request of debug builds
    
    ./config would translate -d into having the target get a 'debug-'
    prefix, and then run './Configure LIST' to find out if such a
    debugging target exists or not.
    
    With the recent changes, the separate 'debug-foo' targets are
    disappearing, and we're giving the normal targets debugging
    capabilities instead.  Unfortunately, './config' wasn't changed to
    match this new behavior.
    
    This change introduces the arguments '--debug' and '--release' - the
    latter just for orthogonality - to ./Configure, and ./config now
    treats -d by adding '--debug' to the options for ./Configure.
    
    Reviewed-by: Matt Caswell <matt at openssl.org>

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

Summary of changes:
 Configure | 25 +++++++++++++++++++------
 config    |  2 +-
 2 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/Configure b/Configure
index 705f4c6..4a34b4e 100755
--- a/Configure
+++ b/Configure
@@ -946,6 +946,7 @@ my $options;
 my $symlink;
 my $make_depend=0;
 my %withargs=();
+my $build_prefix = "release_";
 
 my @argvcopy=@ARGV;
 my $argvstring="";
@@ -1020,10 +1021,18 @@ PROCESS_ARGS:
 			{
 			exit(&test_sanity());
 			}
-		elsif (/^--strict-warnings/)
+		elsif (/^--strict-warnings$/)
 			{
 			$strict_warnings = 1;
 			}
+		elsif (/^--debug$/)
+			{
+			$build_prefix = "debug_";
+			}
+		elsif (/^--release$/)
+			{
+			$build_prefix = "release_";
+			}
 		elsif (/^reconfigure/ || /^reconf/)
 			{
 			if (open(IN,"<$Makefile"))
@@ -1234,10 +1243,10 @@ if ($target =~ m/^CygWin32(-.*)$/) {
 
 print "Configuring for $target\n";
 
+# Support for legacy targets having a name starting with 'debug-'
 my ($d, $t) = $target =~ m/^(debug-)?(.*)$/;
-my $debug_prefix = "release_";
 if ($d) {
-    $debug_prefix = "debug_";
+    $build_prefix = "debug_";
 
     # If we do not find debug-foo in the table, the target is set to foo,
     # but only if the foo target has a noon-empty debug_cflags or debug_lflags
@@ -1248,7 +1257,11 @@ if ($d) {
     }
 }
 
-&usage if (!defined($table{$target}) || $table{$target}->{template});
+&usage if (!defined($table{$target})
+	   || $table{$target}->{template}
+	   || ($build_prefix eq "debug_"
+	       && !($table{$target}->{debug_cflags}
+		    || $table{$target}->{debug_lflags})));
 
 if ($fips)
 	{
@@ -1359,10 +1372,10 @@ my $cc = $ENV{CC} || $table{$t}->{cc};
 # Do it in such a way that no spurious space is appended (hence the grep).
 my $cflags = join(" ",
 		  grep { $_ } ($table{$t}->{cflags},
-			       $table{$t}->{$debug_prefix."cflags"}));
+			       $table{$t}->{$build_prefix."cflags"}));
 my $lflags = join(" ",
 		  grep { $_ } ($table{$t}->{lflags},
-			       $table{$t}->{$debug_prefix."lflags"}));
+			       $table{$t}->{$build_prefix."lflags"}));
 
 my $unistd = $table{$t}->{unistd};
 my $thread_cflag = $table{$t}->{thread_cflag};
diff --git a/config b/config
index 8644211..44c48c1 100755
--- a/config
+++ b/config
@@ -29,7 +29,7 @@ EXE=""
 for i
 do
 case "$i" in 
--d*) PREFIX="debug-";;
+-d*) options=$options" --debug";;
 -t*) TEST="true";;
 -h*) TEST="true"; cat <<EOF
 Usage: config [options]


More information about the openssl-commits mailing list