[openssl] master update
Richard Levitte
levitte at openssl.org
Fri Sep 25 10:06:35 UTC 2020
The branch master has been updated
via 7a032be7f293bd80e3fe18c5568cf382b0b79543 (commit)
from 8a288609b12488b5e2dbca28ea54c3dd2c0de15b (commit)
- Log -----------------------------------------------------------------
commit 7a032be7f293bd80e3fe18c5568cf382b0b79543
Author: Richard Levitte <levitte at openssl.org>
Date: Wed Sep 23 16:52:13 2020 +0200
Build: Make NonStop shared libraries only export selected symbols
We can now re-enable test/recipes/01-test_symbol_presence.t for NonStop.
Reviewed-by: Shane Lontis <shane.lontis at oracle.com>
(Merged from https://github.com/openssl/openssl/pull/12962)
-----------------------------------------------------------------------
Summary of changes:
Configurations/50-nonstop.conf | 22 ++++++++++++++--------
test/recipes/01-test_symbol_presence.t | 2 --
util/mkdef.pl | 9 +++++++++
3 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/Configurations/50-nonstop.conf b/Configurations/50-nonstop.conf
index 64385a809a..21cd64833d 100644
--- a/Configurations/50-nonstop.conf
+++ b/Configurations/50-nonstop.conf
@@ -16,7 +16,7 @@
'_TANDEM_SOURCE',
'B_ENDIAN'),
perl => '/usr/bin/perl',
- shared_target => 'self',
+ shared_target => 'nonstop-shared',
shared_extension => ".so",
ex_libs => add('-lrld'),
enable => ['egd'],
@@ -50,7 +50,8 @@
defines => ['NO_GETPID'],
cflags => '-Wtarget=tns/r -Wsystype=guardian',
lflags => '-Wld="-set systype guardian"',
- shared_ldflag => '-Wshared -Wld="-export_all -soname $(@:lib%.so=%)"',
+ shared_ldflag => '-Wshared -Wld="-soname $(@:lib%.so=%)"',
+ shared_defflag => '-Wld_obey=',
shared_argfileflag => '-Wld_obey=',
},
@@ -60,7 +61,8 @@
defines => ['NO_GETPID', '_TANDEM_ARCH=2'],
cflags => '-Wtarget=tns/e -Wsystype=guardian',
lflags => '-Weld="-set systype guardian"',
- shared_ldflag => '-Wshared -Weld="-export_all -soname $(@:lib%.so=%)"',
+ shared_ldflag => '-Wshared -Weld="-soname $(@:lib%.so=%)"',
+ shared_defflag => '-Weld_obey=',
shared_argfileflag => '-Weld_obey=',
},
@@ -70,7 +72,8 @@
defines => ['NO_GETPID', '_TANDEM_ARCH=3'],
cflags => '-Wtarget=tns/x -Wsystype=guardian',
lflags => '-Wxld="-set systype guardian"',
- shared_ldflag => '-Wshared -Wxld="-export_all -soname $(@:lib%.so=%)"',
+ shared_ldflag => '-Wshared -Wxld="-soname $(@:lib%.so=%)"',
+ shared_defflag => '-Wxld_obey=',
shared_argfileflag => '-Wxld_obey=',
},
@@ -79,7 +82,8 @@
template => 1,
cflags => '-Wtarget=tns/r -Wsystype=oss',
lflags => '-Wld="-set systype oss"',
- shared_ldflag => '-Wshared -Wld="-export_all"',
+ shared_ldflag => '-Wshared',
+ shared_defflag => '-Wld_obey=',
shared_argfileflag => '-Wld_obey=',
},
# Itanium + oss:
@@ -88,7 +92,8 @@
defines => ['_TANDEM_ARCH=2'],
cflags => '-Wtarget=tns/e -Wsystype=oss',
lflags => '-Weld="-set systype oss"',
- shared_ldflag => '-Wshared -Weld="-export_all"',
+ shared_ldflag => '-Wshared',
+ shared_defflag => '-Weld_obey=',
shared_argfileflag => '-Weld_obey=',
},
# x86_64 + oss:
@@ -97,7 +102,8 @@
defines => ['_TANDEM_ARCH=3'],
cflags => '-Wtarget=tns/x -Wsystype=oss',
lflags => '-Wxld="-set systype oss"',
- shared_ldflag => '-Wshared -Wxld="-export_all"',
+ shared_ldflag => '-Wshared',
+ shared_defflag => '-Wxld_obey=',
shared_argfileflag => '-Wxld_obey=',
},
@@ -171,7 +177,7 @@
},
######################################################################
- # Now for the entried themselves, let's combine things!
+ # Now for the entries themselves, let's combine things!
'nonstop-nsx' => {
inherit_from => [ 'nonstop-common',
'nonstop-archenv-x86_64-oss',
diff --git a/test/recipes/01-test_symbol_presence.t b/test/recipes/01-test_symbol_presence.t
index f22133d9d2..d339770b0f 100644
--- a/test/recipes/01-test_symbol_presence.t
+++ b/test/recipes/01-test_symbol_presence.t
@@ -17,8 +17,6 @@ setup("test_symbol_presence");
plan skip_all => "Only useful when building shared libraries"
if disabled("shared");
-plan skip_all => "Test is disabled on NonStop" if config('target') =~ m|^nonstop|;
-
my @libnames = ("crypto", "ssl");
my $testcount = scalar @libnames;
diff --git a/util/mkdef.pl b/util/mkdef.pl
index 5e02c7dafb..a4772e9c8f 100755
--- a/util/mkdef.pl
+++ b/util/mkdef.pl
@@ -128,6 +128,9 @@ my %OS_data = (
NT => 'WIN32', # alias
nt => 'WIN32', # alias
mingw => 'WINDOWS', # alias
+ nonstop => { writer => \&writer_nonstop,
+ sort => OpenSSL::Ordinals::by_name(),
+ platforms => { TANDEM => 1 } },
);
do {
@@ -280,6 +283,12 @@ sub writer_aix {
}
}
+sub writer_nonstop {
+ for (@_) {
+ print "-export ",$_->name(),"\n";
+ }
+}
+
sub writer_windows {
print <<"_____";
;
More information about the openssl-commits
mailing list