summaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2021-02-22 07:37:06 +0100
committerRichard Levitte <levitte@openssl.org>2021-02-23 09:35:04 +0100
commitf627561cf5cc4963698bf975df8694543bcf826c (patch)
treef5fabf660783d96e3c6b49bc83e77e4c46a7080b /util
parentutil/perl/OpenSSL/config.pm: Fix determine_compiler_settings() (diff)
downloadopenssl-f627561cf5cc4963698bf975df8694543bcf826c.tar.xz
openssl-f627561cf5cc4963698bf975df8694543bcf826c.zip
util/perl/OpenSSL/config.pm: Add VMS specific C compiler settings
That includes proper compiler version detection. Partially fixes #14247 Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14270)
Diffstat (limited to 'util')
-rwxr-xr-xutil/perl/OpenSSL/config.pm13
1 files changed, 13 insertions, 0 deletions
diff --git a/util/perl/OpenSSL/config.pm b/util/perl/OpenSSL/config.pm
index 841ef4b6aa..d09d017c87 100755
--- a/util/perl/OpenSSL/config.pm
+++ b/util/perl/OpenSSL/config.pm
@@ -337,6 +337,19 @@ sub determine_compiler_settings {
# Vendor specific overrides, only if we didn't determine the compiler here
if ( ! $cc ) {
+ if ( $SYSTEM eq 'OpenVMS' ) {
+ my $v = `CC/VERSION NLA0:`;
+ if ($? == 0) {
+ my ($vendor, $version) =
+ ( $v =~ m/^([A-Z]+) C V([0-9\.-]+) on / );
+ my ($major, $minor, $patch) =
+ ( $version =~ m/^([0-9]+)\.([0-9]+)-0*?(0|[1-9][0-9]*)$/ );
+ $CC = 'CC';
+ $CCVENDOR = $vendor;
+ $CCVER = ( $major * 100 + $minor ) * 100 + $patch;
+ }
+ }
+
if ( ${SYSTEM} eq 'AIX' ) {
# favor vendor cc over gcc
if (IPC::Cmd::can_run('cc')) {