Upstream-status: Taken from upstream: . From 795699363be8f717e36802c3ac503011b74ad752 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Thu, 7 Nov 2024 14:08:05 +0100 Subject: [PATCH] Add support for the 64bit Hurd. Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Taken from . --- Configurations/10-main.conf | 45 ++++++++++++++++++++++++++++++++----- util/perl/OpenSSL/config.pm | 3 ++- 2 files changed, 41 insertions(+), 7 deletions(-) diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf index b578a3c2a8..740460ebd3 100644 --- a/Configurations/10-main.conf +++ b/Configurations/10-main.conf @@ -1685,20 +1685,53 @@ my %targets = ( }, ##### GNU Hurd - "hurd-x86" => { + "hurd-generic32" => { inherit_from => [ "BASE_unix" ], CC => "gcc", - CFLAGS => "-O3 -fomit-frame-pointer -Wall", + CXX => "g++", + CFLAGS => picker(default => "-Wall", + debug => "-O0 -g", + release => "-O3"), + CXXFLAGS => picker(default => "-Wall", + debug => "-O0 -g", + release => "-O3"), cflags => threads("-pthread"), - lib_cppflags => "-DL_ENDIAN", + cxxflags => combine("-std=c++11", threads("-pthread")), ex_libs => add("-ldl", threads("-pthread")), - bn_ops => "BN_LLONG", - asm_arch => 'x86', - perlasm_scheme => 'elf', + bn_ops => "BN_LLONG RC4_CHAR", thread_scheme => "pthreads", dso_scheme => "dlfcn", shared_target => "linux-shared", shared_cflag => "-fPIC", + shared_ldflag => sub { $disabled{pinshared} ? () : "-Wl,-znodelete" }, + }, + + "hurd-generic64" => { + inherit_from => [ "hurd-generic32" ], + bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", + }, + + #### X86 / X86_64 targets + "hurd-x86" => { + inherit_from => [ "hurd-generic32" ], + CFLAGS => add(picker(release => "-fomit-frame-pointer")), + cflags => add("-m32"), + cxxflags => add("-m32"), + lib_cppflags => add("-DL_ENDIAN"), + bn_ops => "BN_LLONG", + asm_arch => 'x86', + perlasm_scheme => 'elf', + }, + + "hurd-x86_64" => { + inherit_from => [ "hurd-generic64" ], + cflags => add("-m64"), + cxxflags => add("-m64"), + lib_cppflags => add("-DL_ENDIAN"), + bn_ops => "SIXTY_FOUR_BIT_LONG", + asm_arch => 'x86_64', + perlasm_scheme => 'elf', + multilib => "64", }, ##### VxWorks for various targets diff --git a/util/perl/OpenSSL/config.pm b/util/perl/OpenSSL/config.pm index 2f1edcafb6..707db71537 100755 --- a/util/perl/OpenSSL/config.pm +++ b/util/perl/OpenSSL/config.pm @@ -92,7 +92,8 @@ my $guess_patterns = [ [ 'IRIX64:.*', 'mips4-sgi-irix64' ], [ 'Linux:[2-9]\..*', '${MACHINE}-whatever-linux2' ], [ 'Linux:1\..*', '${MACHINE}-whatever-linux1' ], - [ 'GNU.*', 'hurd-x86' ], + [ 'GNU:.*86-AT386', 'hurd-x86' ], + [ 'GNU:.*86_64-AT386', 'hurd-x86_64' ], [ 'LynxOS:.*', '${MACHINE}-lynx-lynxos' ], # BSD/OS always says 386 [ 'BSD\/OS:4\..*', 'i486-whatever-bsdi4' ], -- Janneke Nieuwenhuizen | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | AvatarĀ® https://AvatarAcademy.com