Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:lintns:Lazarus
fpc
fpc.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fpc.spec of Package fpc
# norootforbuild Name: fpc Summary: Free Pascal Compiler Version: 2.4.0 Release: 1 URL: http://www.freepascal.org/ Source0: fpcbuild-2.4.0.tar.bz2 Source100: fpc-rpmlintrc Patch0: fpc-%{version}-samplecfg_32and64bit.patch Patch1: fpc-%{version}-build-id.patch Patch2: fpc-%{version}-stackexecute.patch License: GPLv2+ and LGPLv2+ with exceptions Group: Development/Languages/Other Requires: binutils glibc gpm ncurses BuildRequires: binutils fpc glibc-devel gpm %if %{defined mandriva_version} BuildRequires: tetex tetex-latex %else BuildRequires: fdupes texlive texlive-latex %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Freepascal is a free 32/64bit Pascal Compiler. It comes with a run-time library and is fully compatible with Turbo Pascal 7.0 and nearly Delphi compatible. Some extensions are added to the language, like function overloading and generics. Shared libraries can be linked. This package contains commandline compiler and utils. Provided units are the runtime library (RTL), free component library (FCL) and the base and extra packages. %package doc Summary: Freepascal Compiler - documentation and examples Group: Documentation/Other %description doc The fpc-doc package contains the documentation (in pdf format) and examples of Freepascal. %package src Summary: Freepascal Compiler - sources Group: Development/Languages/Other %description src The fpc-src package contains the sources of Freepascal, for documentation or automatical-code generation purposes. %define smart _smart %ifarch ppc %define ppcname ppcppc %define fpcdebugopt -gl %else %ifarch x86_64 %define ppcname ppcx64 %else %ifarch ppc64 %define ppcname ppcppc64 %else %define ppcname ppc386 %define fpcdebugopt -gl %endif %endif %endif %prep %setup -q -n fpcbuild-%{version} %patch0 %patch1 %patch2 %build # the source-files: %__install -dm 755 fpc_src find fpcsrc -name '*.o' | xargs rm cp -a fpcsrc/rtl \ fpc_src cp -a fpcsrc/packages \ fpc_src rm -rf fpc_src/packages/extra/amunits rm -rf fpc_src/packages/extra/winunits STARTPP=%{ppcname} %define fpcopt -k"--build-id -z noexecstack" pushd fpcsrc NEWPP=`pwd`/compiler/%{ppcname} NEWFPDOC=`pwd`/utils/fpdoc/fpdoc DATA2INC=`pwd`/utils/data2inc make compiler_cycle \ FPC=${STARTPP} OPT='%{fpcopt} %{fpcdebugopt}' make rtl_clean rtl%{smart} \ FPC=${NEWPP} OPT='%{fpcopt}' make packages%{smart} \ FPC=${NEWPP} OPT='%{fpcopt}' make ide_all \ FPC=${NEWPP} OPT='%{fpcopt} %{fpcdebugopt}' make utils_all \ FPC=${NEWPP} DATA2INC=${DATA2INC} OPT='%{fpcopt} %{fpcdebugopt}' popd make -C fpcdocs pdf \ FPC=${NEWPP} FPDOC=${NEWFPDOC} %install pushd fpcsrc FPCMAKE=`pwd`/utils/fpcm/fpcmake NEWPP=`pwd`/compiler/%{ppcname} INSTALLOPTS="FPC=${NEWPP} FPCMAKE=${FPCMAKE} \ INSTALL_PREFIX=%{buildroot}%{_prefix} \ INSTALL_LIBDIR=%{buildroot}%{_libdir} \ INSTALL_BASEDIR=%{buildroot}%{_libdir}/fpc/%{version} \ CODPATH=%{buildroot}%{_libdir}/fpc/lexyacc \ INSTALL_DOCDIR=%{buildroot}%{_defaultdocdir}/fpc-%{version} \ INSTALL_BINDIR=%{buildroot}%{_bindir} INSTALL_EXAMPLEDIR=%{buildroot}%{_defaultdocdir}/fpc-%{version}/examples" make compiler_distinstall ${INSTALLOPTS} make rtl_distinstall ${INSTALLOPTS} make packages_distinstall ${INSTALLOPTS} make ide_distinstall ${INSTALLOPTS} make utils_distinstall ${INSTALLOPTS} popd pushd install make -C doc ${INSTALLOPTS} make -C man ${INSTALLOPTS} \ INSTALL_MANDIR=%{buildroot}%{_mandir} popd make -C fpcdocs pdfinstall ${INSTALLOPTS} # create link ln -sf ../%{_lib}/fpc/%{version}/%{ppcname} \ %{buildroot}%{_bindir}/%{ppcname} # create a version independent config %{buildroot}/%{_libdir}/fpc/%{version}/samplecfg \ %{_exec_prefix}/. %{buildroot}%{_sysconfdir} # include the COPYING-information for the compiler/rtl/fcl in the documentation cp -a fpcsrc/compiler/COPYING.txt \ %{buildroot}%{_defaultdocdir}/fpc-%{version}/COPYING cp -a fpcsrc/rtl/COPYING.txt \ %{buildroot}%{_defaultdocdir}/fpc-%{version}/COPYING.rtl cp -a fpcsrc/rtl/COPYING.FPC \ %{buildroot}%{_defaultdocdir}/fpc-%{version}/COPYING.FPC # the source-files: %__install -dm 755 %{buildroot}%{_datadir}/fpcsrc cp -a fpc_src/* \ %{buildroot}%{_datadir}/fpcsrc/ # delete lexyacc rm -rf %{buildroot}%{_libdir}/fpc/lexyacc chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/ibase/scripts/mkdb chmod 644 %{buildroot}%{_datadir}/fpcsrc/packages/iconvenc/src/iconvenc.pas chmod 644 %{buildroot}%{_datadir}/fpcsrc/packages/iconvenc/examples/iconvtest.pp chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/libc/scripts/h2p chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/mysql/scripts/rmdb chmod 644 %{buildroot}%{_datadir}/fpcsrc/packages/objcrtl/fpmake.pp chmod 644 %{buildroot}%{_datadir}/fpcsrc/packages/objcrtl/Makefile.fpc chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/postgres/scripts/mkdb chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/postgres/scripts/rmdb chmod 755 %{buildroot}%{_datadir}/fpcsrc/packages/xforms/scripts/doc2p chmod 755 %{buildroot}%{_datadir}/fpcsrc/rtl/freebsd/*/identpatch.sh chmod 755 %{buildroot}%{_datadir}/fpcsrc/rtl/netware/convertimp %if %{undefined mandriva_version} fdupes -s %{buildroot}%{_datadir}/fpcsrc fdupes -s %{buildroot}%{_libdir}/fpc %endif %clean [ -d "%{buildroot}" -a "%{buildroot}" != "" ] && rm -rf "%{buildroot}" %files %defattr(-,root,root,-) %dir %{_defaultdocdir}/fpc-%{version} %doc %{_defaultdocdir}/fpc-%{version}/NEWS %doc %{_defaultdocdir}/fpc-%{version}/README %doc %{_defaultdocdir}/fpc-%{version}/readme.ide %doc %{_defaultdocdir}/fpc-%{version}/faq* %doc %{_defaultdocdir}/fpc-%{version}/COPYING* %doc %{_mandir}/*/* %config(noreplace) %{_sysconfdir}/fpc.cfg %{_bindir}/* %dir %{_libdir}/fpc %{_libdir}/fpc/* %files doc %defattr(-,root,root,-) %dir %{_defaultdocdir}/fpc-%{version} %doc %{_defaultdocdir}/fpc-%{version}/*.pdf %doc %{_defaultdocdir}/fpc-%{version}/examples %files src %defattr(-,root,root,-) %dir %{_datadir}/fpcsrc %{_datadir}/fpcsrc/*
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor