dev-lang/fpc: add support for sparc, + keywording

Closes: https://github.com/gentoo/gentoo/pull/27569
Signed-off-by: Richard Rogalski <rrogalski@tutanota.com>
Signed-off-by: Amy Liffey <amynka@gentoo.org>
This commit is contained in:
Richard-Rogalski
2022-10-01 22:48:16 -05:00
committed by Amy Liffey
parent aeddae2f3b
commit 68b3a4bc16
3 changed files with 32 additions and 2 deletions

View File

@@ -2,5 +2,6 @@ DIST fpc-3.2.2-doc-html.tar.gz 5810672 BLAKE2B 5d2c0ce35024f58d35e59034d4c071ec5
DIST fpc-3.2.2.aarch64-linux.tar 137943040 BLAKE2B 1f2b3ff35d33419bd60a65bee8e20264a7970e515e0d8239dc51bd415b9a4fc580b7d3bd7fcd2a6964f78669e9dda13d1349281116004d582236a4f314dc6935 SHA512 8a52c53cd167af39222296db7c91aadf0b5d845272833a961c5db0c7d2d4cb5e61f41f71e0989c193dc2923770440b19d7d3d71de65291d0a3e0a15edc793316
DIST fpc-3.2.2.i386-linux.tar 85043200 BLAKE2B 9e2fae2d272c79cc7fcf4d062589bd888c342ccfb01e3f14e412bc58ff6b04928c6a7a0a4b3392b30f0864f16029d063632bd72bd9cac55e0a40a00fb726ef93 SHA512 b4f1a94d1a05901f4ffc2e07519e9b03666850211e571cbce33f0ba16d8a1d88de256c8e111579f46d56f157630dfc722a8ae9ce2b200fc784c588ea4e6bd5df
DIST fpc-3.2.2.source.tar.gz 52240052 BLAKE2B e30cf1b10c4cafd0ae2a25673678213669c29dec0549f4d7b357011e84a0a2c8ecf343cb6443798e6c36c02ae97a0c7cae7ca24829510c552968d4a58426576f SHA512 6d320b4e0805d63c40d3037f9d2078068c2c9fcdeb6ac073a6fcc19249bd6325dc542fcc7fc6dbb7e69507dcd84cf9e720e7d73925afe955e2a24e8c7d92606a
DIST fpc-3.2.2.sparc64-linux.tar 141895680 BLAKE2B 0cfa9584cf330bbafa3d6b2c03c1fe88563b17cbb9e1d4fd75b94083bbf08fcba3086daa7988056d9a4f832d315f8919d3e5d07dad1f080afb09b6836a237d74 SHA512 ceda87e9a06a433967c080d11ae3d949fbd629994083fdf5cdfc3d1db239cc1ba54d2bc0879c85b81f27296803f6b955598a0595f7d4f27bbcb4251d23bca4d1
DIST fpc-3.2.2.x86_64-linux.tar 86978560 BLAKE2B 29cac8c0da4ba65cee6a0e0cd3c111202c8943ca61a02c5dfeaeb174c353db6fc07e291794ef7433f9fdf88ed694260e734bc715567c6a12292b0c8524d17f4e SHA512 534df830a951824525044479ded23ef1e61b104c0dd65c837ad0d8d9ced9eb7349925a3f759756aa95ae17e567d8b1cd5c7e2092d3c665eaac578845b48aa467
DIST fpcbuild-3.2.2.tar.gz 84195619 BLAKE2B 88848308c93f949b59197649cc344498082b6520e43eb1d4413bf68eb251fcab75c863794a188a2298d9e8aba47346253a596ac630b30049ac8bd6f6934aa5a2 SHA512 75889bb54adc70a6e2cbd291476b9b12d61c8f943a05b7d16d2024de3215c935465ff43b1400c412e128e260c7f49a9c66e35c21f86cb866e671b5b60a282d82

View File

@@ -0,0 +1,16 @@
# Fix finding a user's library dirs on sparc64.
# Patch adapted from https://gitlab.com/freepascal.org/fpc/source/-/commit/aca84a812800fce7ef0377b43501a8efae755a13
diff --git a/compiler/systems/t_linux.pas b/compiler/systems/t_linux.pas
index 2dad1d321cc246ae69996a7df29270762a2f1fec..9768d756acbabe9edeac3c9378c0be0b6d5d4d9d 100644
--- a/compiler/systems/t_linux.pas
+++ b/compiler/systems/t_linux.pas
@@ -182,5 +199,8 @@ procedure SetupLibrarySearchPath;
{$ifdef sparc64}
LibrarySearchPath.AddLibraryPath(sysrootpath,'=/usr/lib/sparc64-linux-gnu',true);
+ LibrarySearchPath.AddLibraryPath(sysrootpath,'=/lib/sparc64-linux-gnu',true);
+ LibrarySearchPath.AddLibraryPath(sysrootpath,'=/usr/lib64',true);
+ LibrarySearchPath.AddLibraryPath(sysrootpath,'=/lib64',true);
{$endif sparc64}
{$ifdef riscv32}
LibrarySearchPath.AddLibraryPath(sysrootpath,'=/usr/lib/riscv32-linux-gnu',true);

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,16 +11,21 @@ SRC_URI="mirror://sourceforge/freepascal/fpcbuild-${PV}.tar.gz
mirror://sourceforge/freepascal/fpc-${PV}.source.tar.gz
amd64? ( mirror://sourceforge/freepascal/${P}.x86_64-linux.tar )
arm64? ( mirror://sourceforge/freepascal/${P}.aarch64-linux.tar )
sparc? ( mirror://sourceforge/freepascal/${P}.sparc64-linux.tar )
x86? ( mirror://sourceforge/freepascal/${P}.i386-linux.tar )
doc? ( mirror://sourceforge/freepascal/Documentation/${PV}/doc-html.tar.gz -> ${P}-doc-html.tar.gz )"
S="${WORKDIR}/fpcbuild-${PV}/fpcsrc"
LICENSE="GPL-2 LGPL-2.1-with-linking-exception"
SLOT="0"
KEYWORDS="-* amd64 ~arm64 x86"
KEYWORDS="-* amd64 ~arm64 ~sparc x86"
IUSE="doc source"
RESTRICT="strip" #269221
PATCHES=(
"${FILESDIR}/${P}-sparc-find-libs.patch"
)
# fpc is special: it can't use CFLAGS and LDFLAGS directly
# since those are geared for running through gcc's frontend
QA_FLAGS_IGNORED="
@@ -48,6 +53,10 @@ src_unpack() {
FPC_ARCH="aarch64"
PV_BIN="${PV}"
;;
sparc)
FPC_ARCH="sparc64"
PV_BIN="${PV}"
;;
x86)
FPC_ARCH="i386"
PV_BIN="${PV}"
@@ -84,6 +93,10 @@ set_pp() {
FPC_ARCH="a64"
FPC_PARCH="aarch64"
;;
sparc)
FPC_ARCH="sparc64"
FPC_PARCH="sparc64"
;;
x86)
FPC_ARCH="386"
FPC_PARCH="i386"