fpc/fpc.spec

134 lines
4.0 KiB
RPMSpec

Name: fpc
Version: 3.2.2
Release: 1mamba
Summary: A Turbo Pascal 7.0 and Delphi compatible 32bit Pascal Compiler
Group: Applications/Development
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://www.freepascal.org/
Source: http://downloads.sourceforge.net/project/freepascal/Source/%{version}/fpcbuild-%{version}.zip
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
## AUTOBUILDREQ-END
BuildRequires: dos2unix
Requires(post): %{__install_info}
Requires(preun): %{__install_info}
%description
Free Pascal is a 32, 64 and 16 bit professional Pascal compiler. It can target multiple processor architectures: Intel x86, AMD64/x86-64, PowerPC, PowerPC64, SPARC, and ARM. Supported operating systems include Linux, FreeBSD, Haiku, Mac OS X/iOS/Darwin, DOS, Win32, Win64, WinCE, OS/2, MorphOS, Nintendo GBA, Nintendo DS, and Nintendo Wii. Additionally, support for the JVM, MIPS (big and little endian variants), i8086, Motorola 68k and AArch64 architectures is available in the development versions.
%debug_package
%prep
%setup -q -n %{name}build-%{version}
if [ ! -e %{_bindir}/fpc ]; then
# bootstrap
%ifarch %{ix86}
BINARY_ARCH=i386
%else
BINARY_ARCH=%{_target_cpu}
%endif
BINARY_SRC="ftp://gd.tuwien.ac.at/languages/pascal/fpc/dist/2.6.4/$BINARY_ARCH-linux/fpc-2.6.4.$BINARY_ARCH-linux.tar"
curl $BINARY_SRC -o fpc.tar
tar xf fpc.tar
mv fpc-2.6.4.$BINARY_ARCH-linux bootstrap
cd bootstrap
echo `pwd`/../bootstrap | ./install.sh
fi
dos2unix ./fpcsrc/compiler/utils/samplecfg
dos2unix ./install/beos/samplecfg
%build
if [ ! -e %{_bindir}/fpc ]; then
%make build NOGDB=1 FPCPROG=`pwd`/bootstrap/bin/fpc
else
%make build NOGDB=1
fi
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
if [ ! -e %{_bindir}/fpc ]; then
%makeinstall \
INSTALL_PREFIX=%{buildroot}%{_prefix} \
INSTALL_LIBDIR=%{buildroot}%{_libdir} \
INSTALL_MANDIR=%{buildroot}%{_mandir} \
NOGDB=1 FPCPROG=`pwd`/bootstrap/bin/fpc
else
%makeinstall \
INSTALL_PREFIX=%{buildroot}%{_prefix} \
INSTALL_LIBDIR=%{buildroot}%{_libdir} \
INSTALL_MANDIR=%{buildroot}%{_mandir} \
NOGDB=1
fi
%ifarch x86_64
ln -s %{_prefix}/lib/fpc/%{version}/ppcx64 %{buildroot}%{_bindir}/ppcx64
%endif
%ifarch %{ix86}
ln -s %{_prefix}/lib/fpc/%{version}/ppc386 %{buildroot}%{_bindir}/ppc386
%endif
%ifarch arm
ln -s %{_prefix}/lib/fpc/%{version}/ppcarm %{buildroot}%{_bindir}/ppcarm
%endif
install -d %{buildroot}%{_sysconfdir}
%{buildroot}%{_prefix}/lib/fpc/%{version}/samplecfg \
%{buildroot}%{_prefix}/lib/fpc/%{version} \
%{buildroot}%{_sysconfdir}
# use -fPIC by default
cat >> %{buildroot}%{_sysconfdir}/fpc.cfg << _EOF
#ifdef cpux86_64
# for x86_64 use -fPIC by default
-Cg
#endif
_EOF
%find_lang %{name} || touch %{name}.lang
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
#-f %{name}.lang
%defattr(-,root,root)
%config %{_sysconfdir}/fpc.cfg
%config %{_sysconfdir}/fppkg.cfg
%dir %{_sysconfdir}/fppkg
%config %{_sysconfdir}/fppkg/default
%{_bindir}/*
%{_libdir}/libpas2jslib.so
%dir %{_libdir}/fpc
%{_libdir}/fpc/*
%ifarch x86_64
%dir %{_prefix}/lib/fpc
%{_prefix}/lib/fpc/*
%endif
%{_mandir}/man1/*.1*
%{_mandir}/man5/*.5*
%dir %{_docdir}/fpc-*
%{_docdir}/fpc-*/*
%doc fpcsrc/rtl/COPYING.FPC
%changelog
* Thu May 27 2021 Automatic Build System <autodist@mambasoft.it> 3.2.2-1mamba
- automatic version update by autodist
* Sun Jul 05 2020 Automatic Build System <autodist@mambasoft.it> 3.2.0-1mamba
- automatic version update by autodist
* Sun Dec 24 2017 Automatic Build System <autodist@mambasoft.it> 3.0.4-1mamba
- automatic version update by autodist
* Tue Mar 07 2017 Automatic Build System <autodist@mambasoft.it> 3.0.2-1mamba
- automatic version update by autodist
* Thu Dec 10 2015 Automatic Build System <autodist@mambasoft.it> 3.0.0-1mamba
- automatic version update by autodist
* Sun Oct 25 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 2.6.4-1mamba
- package created using the webbuild interface