From 68b3a4bc160ba854b9eeb913e94ebf550b1de129 Mon Sep 17 00:00:00 2001 From: Richard-Rogalski Date: Sat, 1 Oct 2022 22:48:16 -0500 Subject: dev-lang/fpc: add support for sparc, + keywording Closes: https://github.com/gentoo/gentoo/pull/27569 Signed-off-by: Richard Rogalski Signed-off-by: Amy Liffey --- dev-lang/fpc/Manifest | 1 + dev-lang/fpc/files/fpc-3.2.2-sparc-find-libs.patch | 16 ++++++++++++++++ dev-lang/fpc/fpc-3.2.2.ebuild | 17 +++++++++++++++-- 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 dev-lang/fpc/files/fpc-3.2.2-sparc-find-libs.patch diff --git a/dev-lang/fpc/Manifest b/dev-lang/fpc/Manifest index 99b024355fed..94f8c15f47f4 100644 --- a/dev-lang/fpc/Manifest +++ b/dev-lang/fpc/Manifest @@ -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 diff --git a/dev-lang/fpc/files/fpc-3.2.2-sparc-find-libs.patch b/dev-lang/fpc/files/fpc-3.2.2-sparc-find-libs.patch new file mode 100644 index 000000000000..c7f7d6d6829b --- /dev/null +++ b/dev-lang/fpc/files/fpc-3.2.2-sparc-find-libs.patch @@ -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); diff --git a/dev-lang/fpc/fpc-3.2.2.ebuild b/dev-lang/fpc/fpc-3.2.2.ebuild index ce1852bf58e9..b34a23be9ade 100644 --- a/dev-lang/fpc/fpc-3.2.2.ebuild +++ b/dev-lang/fpc/fpc-3.2.2.ebuild @@ -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" -- cgit v1.2.3-65-gdbad