deps: fix for non GNU assembler in AIX
AIX has own assembler not GNU as that does not support --noexecstack. PR-URL: https://github.com/nodejs/node/pull/25381 Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Shigeki Ohtsu <ohtsu@ohtsu.org>
This commit is contained in:
parent
576d0c6206
commit
0534de6911
20
deps/openssl/config/generate_gypi.pl
vendored
20
deps/openssl/config/generate_gypi.pl
vendored
@ -25,13 +25,6 @@ my $arch = $ARGV[1];
|
|||||||
my $nasm_banner = `nasm -v`;
|
my $nasm_banner = `nasm -v`;
|
||||||
die "Error: nasm is not installed." if (!$nasm_banner);
|
die "Error: nasm is not installed." if (!$nasm_banner);
|
||||||
|
|
||||||
my $nasm_version_min = 2.13.3;
|
|
||||||
my ($nasm_version) = ($nasm_banner =~/^NASM version ([0-9]\.[0-9][0-9])+/);
|
|
||||||
if ($nasm_version < $nasm_version_min) {
|
|
||||||
die "Error: nasm version $nasm_version is too old." .
|
|
||||||
"$nasm_version_min or higher is required.";
|
|
||||||
}
|
|
||||||
|
|
||||||
# gas version check
|
# gas version check
|
||||||
my $gas_version_min = 2.30;
|
my $gas_version_min = 2.30;
|
||||||
my $gas_banner = `gcc -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1`;
|
my $gas_banner = `gcc -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1`;
|
||||||
@ -118,6 +111,17 @@ foreach my $src (@generated_srcs) {
|
|||||||
$target{'lib_cppflags'} =~ s/-D//g;
|
$target{'lib_cppflags'} =~ s/-D//g;
|
||||||
my @lib_cppflags = split(/ /, $target{'lib_cppflags'});
|
my @lib_cppflags = split(/ /, $target{'lib_cppflags'});
|
||||||
|
|
||||||
|
my @cflags = ();
|
||||||
|
push(@cflags, @{$config{'cflags'}});
|
||||||
|
push(@cflags, @{$config{'CFLAGS'}});
|
||||||
|
push(@cflags, $target{'cflags'});
|
||||||
|
push(@cflags, $target{'CFLAGS'});
|
||||||
|
|
||||||
|
# AIX has own assembler not GNU as that does not support --noexecstack
|
||||||
|
if ($arch =~ /aix/) {
|
||||||
|
@cflags = grep $_ ne '-Wa,--noexecstack', @cflags;
|
||||||
|
}
|
||||||
|
|
||||||
# Create openssl.gypi
|
# Create openssl.gypi
|
||||||
my $template =
|
my $template =
|
||||||
Text::Template->new(TYPE => 'FILE',
|
Text::Template->new(TYPE => 'FILE',
|
||||||
@ -132,6 +136,7 @@ my $gypi = $template->fill_in(
|
|||||||
generated_srcs => \@generated_srcs,
|
generated_srcs => \@generated_srcs,
|
||||||
config => \%config,
|
config => \%config,
|
||||||
target => \%target,
|
target => \%target,
|
||||||
|
cflags => \@cflags,
|
||||||
asm => \$asm,
|
asm => \$asm,
|
||||||
arch => \$arch,
|
arch => \$arch,
|
||||||
lib_cppflags => \@lib_cppflags,
|
lib_cppflags => \@lib_cppflags,
|
||||||
@ -155,6 +160,7 @@ my $clgypi = $cltemplate->fill_in(
|
|||||||
libapps_srcs => \@libapps_srcs,
|
libapps_srcs => \@libapps_srcs,
|
||||||
config => \%config,
|
config => \%config,
|
||||||
target => \%target,
|
target => \%target,
|
||||||
|
cflags => \@cflags,
|
||||||
asm => \$asm,
|
asm => \$asm,
|
||||||
arch => \$arch,
|
arch => \$arch,
|
||||||
lib_cppflags => \@lib_cppflags,
|
lib_cppflags => \@lib_cppflags,
|
||||||
|
10
deps/openssl/config/openssl-cl.gypi.tmpl
vendored
10
deps/openssl/config/openssl-cl.gypi.tmpl
vendored
@ -14,15 +14,9 @@
|
|||||||
$OUT .= " '$define',\n";
|
$OUT .= " '$define',\n";
|
||||||
} -%% ],
|
} -%% ],
|
||||||
'openssl_cflags_%%-$arch-%%': [
|
'openssl_cflags_%%-$arch-%%': [
|
||||||
%%- foreach $cflag (@{$config{cflags}}) {
|
%%- foreach $cflag (@cflags) {
|
||||||
$OUT .= " '$cflag',\n";
|
$OUT .= " '$cflag',\n";
|
||||||
}
|
} -%% ],
|
||||||
foreach $cflag (@{$config{CFLAGS}}) {
|
|
||||||
$OUT .= " '$cflag',\n";
|
|
||||||
} -%%
|
|
||||||
'%%-$target{cflags}-%%',
|
|
||||||
'%%-$target{CFLAGS}-%%',
|
|
||||||
],
|
|
||||||
'openssl_ex_libs_%%-$arch-%%': [
|
'openssl_ex_libs_%%-$arch-%%': [
|
||||||
'%%-$target{ex_libs}-%%',
|
'%%-$target{ex_libs}-%%',
|
||||||
],
|
],
|
||||||
|
10
deps/openssl/config/openssl.gypi.tmpl
vendored
10
deps/openssl/config/openssl.gypi.tmpl
vendored
@ -25,15 +25,9 @@ foreach $src (@libcrypto_srcs) {
|
|||||||
$OUT .= " '$define',\n";
|
$OUT .= " '$define',\n";
|
||||||
} -%% ],
|
} -%% ],
|
||||||
'openssl_cflags_%%-$arch-%%': [
|
'openssl_cflags_%%-$arch-%%': [
|
||||||
%%- foreach $cflag (@{$config{cflags}}) {
|
%%- foreach $cflag (@cflags) {
|
||||||
$OUT .= " '$cflag',\n";
|
$OUT .= " '$cflag',\n";
|
||||||
}
|
} -%% ],
|
||||||
foreach $cflag (@{$config{CFLAGS}}) {
|
|
||||||
$OUT .= " '$cflag',\n";
|
|
||||||
} -%%
|
|
||||||
'%%-$target{cflags}-%%',
|
|
||||||
'%%-$target{CFLAGS}-%%',
|
|
||||||
],
|
|
||||||
'openssl_ex_libs_%%-$arch-%%': [
|
'openssl_ex_libs_%%-$arch-%%': [
|
||||||
'%%-$target{ex_libs}-%%',
|
'%%-$target{ex_libs}-%%',
|
||||||
],
|
],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user