[openssl-commits] [openssl] master update

Andy Polyakov appro at openssl.org
Wed Jun 13 08:48:46 UTC 2018


The branch master has been updated
       via  d3273ef6c549d1bf74d18c9056218c1d8b98a2b9 (commit)
       via  10aafed3ec8719442d0d3516a6a12a45d2a70a2f (commit)
       via  60aa6c1a590de47acdd290a60e25b87005a35b8f (commit)
      from  dbb85890a85af25db35dbd710ac07b3c704a27f0 (commit)


- Log -----------------------------------------------------------------
commit d3273ef6c549d1bf74d18c9056218c1d8b98a2b9
Author: Andy Polyakov <appro at openssl.org>
Date:   Mon Jun 11 12:50:25 2018 +0200

    Configurations/10-main.conf: replace -bexpall with explicit list on AIX.
    
    [omit even -b:SRE, as it's implied by -G flag.]
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/6453)

commit 10aafed3ec8719442d0d3516a6a12a45d2a70a2f
Author: Andy Polyakov <appro at openssl.org>
Date:   Mon Jun 11 12:43:50 2018 +0200

    Configurations/10-main.conf: AIX configs unification.
    
    Add aix-common template that covers even aix-shared from shared-info.pl,
    add -bsymbolic to shared_ldflags.
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/6453)

commit 60aa6c1a590de47acdd290a60e25b87005a35b8f
Author: Andy Polyakov <appro at openssl.org>
Date:   Mon Jun 11 12:22:29 2018 +0200

    Configure: add shared() to facilitate shared-specific flags.
    
    This allows to specify flags specific to shared build, e.g.
    'bin_lflags => shared("-Wl,-bsvr4")'.
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/6453)

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

Summary of changes:
 Configurations/10-main.conf   | 59 ++++++++++++++++++-------------------------
 Configurations/shared-info.pl |  4 ---
 Configure                     |  5 +++-
 build.info                    |  8 ++++++
 util/mkdef.pl                 | 16 ++++++++----
 5 files changed, 47 insertions(+), 45 deletions(-)

diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
index b3fc488..63862e7 100644
--- a/Configurations/10-main.conf
+++ b/Configurations/10-main.conf
@@ -1117,85 +1117,74 @@ my %targets = (
     # variable, then you should know that in OpenSSL case it's considered
     # only in ./config. Once configured, build procedure remains "deaf" to
     # current value of $OBJECT_MODE.
+    "aix-common" => {
+        inherit_from     => [ "BASE_unix" ],
+        template         => 1,
+        sys_id           => "AIX",
+        lib_cppflags     => "-DB_ENDIAN",
+        thread_scheme    => "pthreads",
+        dso_scheme       => "dlfcn",
+        shared_target    => "self",
+        shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
+        bin_lflags       => shared("-Wl,-bsvr4"),
+        module_ldflags   => "-Wl,-G,-bsymbolic,-bexpall,-bnolibpath",
+        shared_ldflag    => "-Wl,-G,-bsymbolic,-bnolibpath",
+        shared_defflag   => "-Wl,-bE:",
+    },
     "aix-gcc" => {
-        inherit_from     => [ "BASE_unix", asm("ppc32_asm") ],
+        inherit_from     => [ "aix-common", asm("ppc32_asm") ],
         CC               => "gcc",
         CFLAGS           => picker(debug   => "-O0 -g",
                                    release => "-O"),
         cflags           => add(threads("-pthread")),
-        lib_cppflags     => "-DB_ENDIAN",
-        ex_libs          => add(threads("-pthread")),
-        sys_id           => "AIX",
+        ex_libs          => threads("-pthread"),
         bn_ops           => "BN_LLONG RC4_CHAR",
-        thread_scheme    => "pthreads",
         perlasm_scheme   => "aix32",
-        dso_scheme       => "dlfcn",
-        shared_target    => "aix-shared",
-        shared_ldflag    => "-shared -static-libgcc -Wl,-G",
-        shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
+        shared_ldflag    => add("-shared -static-libgcc"),
         AR               => add("-X32"),
         RANLIB           => add("-X32"),
     },
     "aix64-gcc" => {
-        inherit_from     => [ "BASE_unix", asm("ppc64_asm") ],
+        inherit_from     => [ "aix-common", asm("ppc64_asm") ],
         CC               => "gcc",
         CFLAGS           => picker(debug   => "-O0 -g",
                                    release => "-O"),
         cflags           => combine("-maix64", threads("-pthread")),
-        lib_cppflags     => "-DB_ENDIAN",
-        ex_libs          => add(threads("-pthread")),
-        sys_id           => "AIX",
+        ex_libs          => threads("-pthread"),
         bn_ops           => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
-        thread_scheme    => "pthreads",
         perlasm_scheme   => "aix64",
-        dso_scheme       => "dlfcn",
-        shared_target    => "aix-shared",
-        shared_ldflag    => "-shared -static-libgcc -Wl,-G",
-        shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
+        shared_ldflag    => add("-shared -static-libgcc"),
         AR               => add("-X64"),
         RANLIB           => add("-X64"),
     },
     "aix-cc" => {
-        inherit_from     => [ "BASE_unix", asm("ppc32_asm") ],
+        inherit_from     => [ "aix-common", asm("ppc32_asm") ],
         CC               => "cc",
         CFLAGS           => picker(debug   => "-O0 -g",
                                    release => "-O"),
         cflags           => combine("-q32 -qmaxmem=16384 -qro -qroconst",
                                     threads("-qthreaded")),
         cppflags         => threads("-D_THREAD_SAFE"),
-        lib_cppflags     => "-DB_ENDIAN",
-        sys_id           => "AIX",
-        bn_ops           => "BN_LLONG RC4_CHAR",
-        thread_scheme    => "pthreads",
         ex_libs          => threads("-lpthreads"),
+        bn_ops           => "BN_LLONG RC4_CHAR",
         perlasm_scheme   => "aix32",
-        dso_scheme       => "dlfcn",
-        shared_target    => "aix-shared",
         shared_cflag     => "-qpic",
-        shared_ldflag    => "-G",
-        shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
         AR               => add("-X32"),
         RANLIB           => add("-X32"),
     },
     "aix64-cc" => {
-        inherit_from     => [ "BASE_unix", asm("ppc64_asm") ],
+        inherit_from     => [ "aix-common", asm("ppc64_asm") ],
         CC               => "cc",
         CFLAGS           => picker(debug   => "-O0 -g",
                                    release => "-O"),
         cflags           => combine("-q64 -qmaxmem=16384 -qro -qroconst",
                                     threads("-qthreaded")),
         cppflags         => threads("-D_THREAD_SAFE"),
-        lib_cppflags     => "-DB_ENDIAN",
-        sys_id           => "AIX",
-        bn_ops           => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
-        thread_scheme    => "pthreads",
         ex_libs          => threads("-lpthreads"),
+        bn_ops           => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
         perlasm_scheme   => "aix64",
         dso_scheme       => "dlfcn",
-        shared_target    => "aix-shared",
         shared_cflag     => "-qpic",
-        shared_ldflag    => "-G",
-        shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
         AR               => add("-X64"),
         RANLIB           => add("-X64"),
     },
diff --git a/Configurations/shared-info.pl b/Configurations/shared-info.pl
index eb919b1..1a49100 100644
--- a/Configurations/shared-info.pl
+++ b/Configurations/shared-info.pl
@@ -91,8 +91,4 @@ my %shared_info;
         shared_ldflag     => '-Wl,-B,symbolic,+vnocompatwarnings,-z,+s,+cdp,../:,+cdp,./:',
         shared_sonameflag => '-Wl,+h,',
     },
-    'aix-shared' => {
-        bin_lflags            => '-Wl,-bsvr4',
-        shared_ldflag         => '-Wl,-bexpall,-bnolibpath,-bM:SRE',
-    },
 );
diff --git a/Configure b/Configure
index 62c354a..bcf2c04 100755
--- a/Configure
+++ b/Configure
@@ -2777,7 +2777,10 @@ sub threads {
     return sub { add($disabled{threads} ? () : @flags)->(); }
 }
 
-
+sub shared {
+    my @flags = @_;
+    return sub { add($disabled{shared} ? () : @flags)->(); }
+}
 
 our $add_called = 0;
 # Helper function to implement adding values to already existing configuration
diff --git a/build.info b/build.info
index 13ca90d..3dda4e8 100644
--- a/build.info
+++ b/build.info
@@ -33,6 +33,14 @@ IF[{- defined $target{shared_defflag} -}]
 
     SHARED_SOURCE[libcrypto]=libcrypto.def
     SHARED_SOURCE[libssl]=libssl.def
+  ELSIF[{- $config{target} =~ /^aix/ -}]
+    GENERATE[libcrypto.map]=util/mkdef.pl crypto aix
+    DEPEND[libcrypto.map]=util/libcrypto.num
+    GENERATE[libssl.map]=util/mkdef.pl ssl aix
+    DEPEND[libssl.map]=util/libssl.num
+
+    SHARED_SOURCE[libcrypto]=libcrypto.map
+    SHARED_SOURCE[libssl]=libssl.map
   ELSE
     GENERATE[libcrypto.map]=util/mkdef.pl crypto linux
     DEPEND[libcrypto.map]=util/libcrypto.num
diff --git a/util/mkdef.pl b/util/mkdef.pl
index b7cf9b2..327728e 100755
--- a/util/mkdef.pl
+++ b/util/mkdef.pl
@@ -126,6 +126,7 @@ my $W32=0;
 my $NT=0;
 my $UNIX=0;
 my $linux=0;
+my $aix=0;
 # Set this to make typesafe STACK definitions appear in DEF
 my $safe_stack_def = 0;
 
@@ -171,12 +172,15 @@ foreach (@ARGV, split(/ /, $config{options}))
 	if($_ eq "NT") {
 		$W32 = 1;
 		$NT = 1;
-	}
-	if ($_ eq "linux") {
+	} elsif ($_ eq "linux") {
 		$linux=1;
 		$UNIX=1;
+	} elsif ($_ eq "aix") {
+		$aix=1;
+		$UNIX=1;
+	} elsif ($_ eq "VMS") {
+		$VMS=1;
 	}
-	$VMS=1 if $_ eq "VMS";
 	if ($_ eq "zlib" || $_ eq "enable-zlib" || $_ eq "zlib-dynamic"
 			 || $_ eq "enable-zlib-dynamic") {
 		$zlib = 1;
@@ -204,11 +208,11 @@ if (!$libname) {
 }
 
 # If no platform is given, assume WIN32
-if ($W32 + $VMS + $linux == 0) {
+if ($W32 + $VMS + $linux + $aix == 0) {
 	$W32 = 1;
 }
 die "Please, only one platform at a time"
-    if ($W32 + $VMS + $linux > 1);
+    if ($W32 + $VMS + $linux + $aix > 1);
 
 if (!$do_ssl && !$do_crypto)
 	{
@@ -1237,6 +1241,8 @@ EOF
 							$prevsymversion = $symversion;
 						}
 						print OUT "        $s2;\n";
+					} elsif ($aix) {
+						print OUT "$s2\n";
                                         } elsif ($VMS) {
                                             while(++$prevnum < $n) {
                                                 my $symline=" ,SPARE -\n  ,SPARE -\n";


More information about the openssl-commits mailing list