diff options
author | Viktor Szakats <vszakats@users.noreply.github.com> | 2021-08-27 12:22:15 +0000 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2023-11-15 11:11:00 +0100 |
commit | 50a536afe234f1ad8f77ccc961d74e5bdc0fbc21 (patch) | |
tree | 0df09f82260977d8d910bbef88827e7764099149 | |
parent | 2aba9548c4a0a3f8359ab5476df3ad58f1cbcf06 (diff) |
Configure: do not check for an absolute prefix in cross-builds
The check is always made according to the host platform's rules, which may
not be true for true when the target platform is different, e.g. when
cross-building for Windows on a Linux machine. So skip this check when
used together with the `--cross-compile-prefix=` option.
Fixes https://github.com/openssl/openssl/issues/9520
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22723)
(cherry picked from commit 4ea752997df83c2a694fdb157aab07908303fc90)
-rwxr-xr-x | Configure | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -980,8 +980,6 @@ while (@argvcopy) if (/^--prefix=(.*)$/) { $config{prefix}=$1; - die "Directory given with --prefix MUST be absolute\n" - unless file_name_is_absolute($config{prefix}); } elsif (/^--api=(.*)$/) { @@ -1440,6 +1438,11 @@ foreach (keys %useradd) { # At this point, we can forget everything about %user and %useradd, # because it's now all been merged into the corresponding $config entry +if ($config{prefix} && !$config{CROSS_COMPILE}) { + die "Directory given with --prefix MUST be absolute\n" + unless file_name_is_absolute($config{prefix}); +} + if (grep { $_ =~ /(?:^|\s)-static(?:\s|$)/ } @{$config{LDFLAGS}}) { disable('static', 'pic', 'threads'); } |