diff options
author | Richard Levitte <levitte@openssl.org> | 2019-03-21 07:51:43 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2019-11-10 04:58:08 +0100 |
commit | 7b97581b90822a8c3027686234fb56ea5346db15 (patch) | |
tree | fe75487717bafa579cf1aa4d7229a8629933e5c1 /Configurations/shared-info.pl | |
parent | bss_dgram.c: fix unaligned access (diff) | |
download | openssl-7b97581b90822a8c3027686234fb56ea5346db15.tar.xz openssl-7b97581b90822a8c3027686234fb56ea5346db15.zip |
Configuration: make Solaris builds with gcc recognise GNU ld
The solaris config targets assumed that GNU cc used Sun ld at all
times. However, there are setups where GNU ld is used instead, so we
adapt the Solaris gcc config targets to use the mechanism introduced
with Configurations/shared_info.pl to try to detect what ld flavor is
being used and set the diverse ld flags accordingly.
Fixes #8547
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/8548)
Diffstat (limited to '')
-rw-r--r-- | Configurations/shared-info.pl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Configurations/shared-info.pl b/Configurations/shared-info.pl index f9420785f2..a673c7cada 100644 --- a/Configurations/shared-info.pl +++ b/Configurations/shared-info.pl @@ -84,4 +84,16 @@ my %shared_info; shared_sonameflag => '-h ', }; }, + 'solaris-gcc-shared' => sub { + return $shared_info{'linux-shared'} if detect_gnu_ld(); + return { + # Note: we should also have -shared here, but because some + # config targets define it with an added -static-libgcc + # following it, we don't want to change the order. This + # forces all solaris gcc config targets to define shared_ldflag + shared_ldflag => '-Wl,-Bsymbolic', + shared_defflag => "-Wl,-M,", + shared_sonameflag => "-Wl,-h,", + }; + }, ); |