|
|
|
@ -1,9 +1,5 @@
|
|
|
|
|
%ifarch aarch64
|
|
|
|
|
# Bootstrap the compiler for a new architecture. Set this to 0 after we've bootstrapped.
|
|
|
|
|
%global bootstrap 0
|
|
|
|
|
%else
|
|
|
|
|
%global bootstrap 0
|
|
|
|
|
%endif
|
|
|
|
|
# Bootstrap the compiler for EPEL9.
|
|
|
|
|
%global bootstrap 1
|
|
|
|
|
|
|
|
|
|
# As of 2022-08-17, on EPEL9, tex(imakeidx.sty) is not available.
|
|
|
|
|
%define with_pdfdoc 0
|
|
|
|
@ -18,22 +14,32 @@ URL: http://www.freepascal.org/
|
|
|
|
|
Source0: ftp://ftp.freepascal.org/pub/fpc/dist/%{version}/source/fpcbuild-%{version}.tar.gz
|
|
|
|
|
|
|
|
|
|
# This is only needed when we're bootstrapping.
|
|
|
|
|
# But it's not in an 'if defined' block, since the file has to be included in the srpm
|
|
|
|
|
# Thus you should enable this line when we're bootstrapping for any target
|
|
|
|
|
#
|
|
|
|
|
# Last used for aaarch64 and ppc64le bootstrap.
|
|
|
|
|
# For the aarch64 bootstrap, a compiler has been used that has been cross-compiled on a x86_64 system using:
|
|
|
|
|
# make all CPU_TARGET=aarch64 OS_TARGET=linux BINUTILSPREFIX=aarch64-linux-gnu-
|
|
|
|
|
# For the ppc64 boostrap, a compiler has been used that has been cross-compiled on a x86_64 system using:
|
|
|
|
|
# make all CPU_TARGET=powerpc64 OS_TARGET=linux BINUTILSPREFIX=powerpc64le-linux-gnu- CROSSOPT="-Cb- -Caelfv2"
|
|
|
|
|
# Last used for bootstrapping the compiler for EPEL9.
|
|
|
|
|
# To perform this bootstrap, the following Fedora Rawhide RPMs were downloaded:
|
|
|
|
|
# - fpc-3.2.2-7.fc37.aarch64.rpm
|
|
|
|
|
# - fpc-3.2.2-7.fc37.ppc64le.rpm
|
|
|
|
|
# - fpc-3.2.2-7.fc37.x86_64.rpm
|
|
|
|
|
# Next, the compilers were extracted from the RPMs and zipped.
|
|
|
|
|
#
|
|
|
|
|
# in the main directory of fpc-r44016. The compilers were then copied using:
|
|
|
|
|
# cp compiler/ppca64 ~/fpc-3.2.0-bin/ppca64-3.2.0-bootstrap
|
|
|
|
|
# cp compiler/ppcppc64 ~/fpc-3.2.0-bin/ppcppc64-3.2.0-bootstrap
|
|
|
|
|
# The zip file was then created using:
|
|
|
|
|
# zip -9 fpc-3.2.0-bin.zip -r fpc-3.2.0-bin/
|
|
|
|
|
#
|
|
|
|
|
# Source100: https://suve.fedorapeople.org/fpc-3.2.0-bin--patch0.zip
|
|
|
|
|
# You can recreate this process by using the following commands:
|
|
|
|
|
# $ wget https://kojipkgs.fedoraproject.org/packages/fpc/3.2.2/7.fc37/aarch64/fpc-3.2.2-7.fc37.aarch64.rpm
|
|
|
|
|
# $ wget https://kojipkgs.fedoraproject.org/packages/fpc/3.2.2/7.fc37/ppc64le/fpc-3.2.2-7.fc37.ppc64le.rpm
|
|
|
|
|
# $ wget https://kojipkgs.fedoraproject.org/packages/fpc/3.2.2/7.fc37/x86_64/fpc-3.2.2-7.fc37.x86_64.rpm
|
|
|
|
|
# $ mkdir fpc-3.2.2-bin/ rpm-contents/
|
|
|
|
|
# $ for ARCH in aarch64 ppc64le x86_64; do
|
|
|
|
|
# $ pushd rpm-contents
|
|
|
|
|
# $ rpm2cpio "../fpc-3.2.2-7.fc37.${ARCH}.rpm" | cpio -idmv
|
|
|
|
|
# $ popd
|
|
|
|
|
# $ cp rpm-contents/usr/bin/ppc* fpc-3.2.2-bin/
|
|
|
|
|
# $ done
|
|
|
|
|
# $ for FILE in fpc-3.2.2-bin/*; do
|
|
|
|
|
# $ mv "${FILE}" "${FILE}-3.2.2-bootstrap";
|
|
|
|
|
# $ done
|
|
|
|
|
# $ zip -9 fpc-3.2.2-bin.zip -r fpc-3.2.2-bin/
|
|
|
|
|
%if 0%{?bootstrap}
|
|
|
|
|
Source100: https://suve.fedorapeople.org/epel9/fpc-3.2.2-bin.zip
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Configuration templates:
|
|
|
|
|
Source10: fpc.cft
|
|
|
|
@ -291,6 +297,7 @@ rm -rf %{buildroot}/usr/lib/%{name}/lexyacc
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
* Wed Aug 17 2022 Artur Frenszek-Iwicki <fedora@svgames.pl> - 3.2.2-8
|
|
|
|
|
- Bootstrap the compiler for EPEL9
|
|
|
|
|
- Disable building .pdf documentation (missing dependencies on EPEL9)
|
|
|
|
|
|
|
|
|
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.2-7
|
|
|
|
|