mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 23:39:40 +02:00
added template rpm specs for snapshot rpm building, adapted from examples from Joost
git-svn-id: trunk@7558 -
This commit is contained in:
parent
87292a147f
commit
a3472dac78
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -1927,6 +1927,8 @@ tools/install/file_filter.sh -text svneol=native#application/x-sh
|
|||||||
tools/install/get_lazarus_version.sh -text svneol=native#application/x-sh
|
tools/install/get_lazarus_version.sh -text svneol=native#application/x-sh
|
||||||
tools/install/macosx/fpc_installer_info.zip -text svneol=unset#application/zip
|
tools/install/macosx/fpc_installer_info.zip -text svneol=unset#application/zip
|
||||||
tools/install/replace_in_files.pl -text svneol=native#application/x-perl
|
tools/install/replace_in_files.pl -text svneol=native#application/x-perl
|
||||||
|
tools/install/rpm/fpc.spec.template svneol=native#text/plain
|
||||||
|
tools/install/rpm/lazarus.spec.template svneol=native#text/plain
|
||||||
tools/install/setup.sh -text svneol=native#application/x-sh
|
tools/install/setup.sh -text svneol=native#application/x-sh
|
||||||
tools/install/smart_strip.sh -text svneol=native#application/x-sh
|
tools/install/smart_strip.sh -text svneol=native#application/x-sh
|
||||||
tools/install/win32/build-fpc.bat svneol=native#text/x-msdos-program
|
tools/install/win32/build-fpc.bat svneol=native#text/x-msdos-program
|
||||||
|
188
tools/install/rpm/fpc.spec.template
Normal file
188
tools/install/rpm/fpc.spec.template
Normal file
@ -0,0 +1,188 @@
|
|||||||
|
Name: fpc
|
||||||
|
Version: 2.0.0
|
||||||
|
Release: 1
|
||||||
|
Summary: Free Pascal Compiler
|
||||||
|
|
||||||
|
Group: Development/Languages
|
||||||
|
License: GPL and modified LGPL
|
||||||
|
URL: http://www.freepascal.org/
|
||||||
|
Source0: ftp://ftp.freepascal.org/pub/fpc/dist/source-%{version}/%{name}-%{version}-%{release}.source.tar.gz
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
|
#Requires: gpm, gpm-devel, glibc, ncurses, binutils
|
||||||
|
Requires: glibc, binutils
|
||||||
|
#BuildRequires: tetex, tetex-latex, tetex-fonts, binutils, gpm-devel, glibc-devel
|
||||||
|
BuildRequires: binutils, glibc-devel
|
||||||
|
|
||||||
|
%description
|
||||||
|
|
||||||
|
Freepascal is a free 32/64bit Pascal Compiler. It comes with a run-time
|
||||||
|
library fully compatible with Turbo Pascal 7.0 and nearly Delphi compatible.
|
||||||
|
Some extensions are added to the language, like function overloading. Shared
|
||||||
|
libraries can be linked. This package contains commandline compiler and
|
||||||
|
utils. Provided units are the runtime library (RTL), free component library
|
||||||
|
(FCL) and bindings for among others gtk1, gtk2, ncurses, zlib, mysql, postgres
|
||||||
|
and ibase.
|
||||||
|
|
||||||
|
#%package doc
|
||||||
|
#Summary: Free Pascal Compiler - documentation and examples
|
||||||
|
#Group: Development/Languages
|
||||||
|
#
|
||||||
|
#%description doc
|
||||||
|
#
|
||||||
|
#The fpc-doc package contains the documentation (in pdf format) and examples
|
||||||
|
#of Freepascal.
|
||||||
|
|
||||||
|
%package src
|
||||||
|
Summary: Free Pascal Compiler - sources
|
||||||
|
Group: Development/Languages
|
||||||
|
|
||||||
|
%description src
|
||||||
|
|
||||||
|
The fpc-doc package contains the sources of Freepascal, for documentation or
|
||||||
|
automatical-code generation purposes.
|
||||||
|
|
||||||
|
|
||||||
|
%ifarch ppc
|
||||||
|
%define ppcname ppcppc
|
||||||
|
%else
|
||||||
|
%ifarch x86_64
|
||||||
|
%define ppcname ppcx64
|
||||||
|
%else
|
||||||
|
%define ppcname ppc386
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
#%setup -q -a0 -n %{name}
|
||||||
|
%setup -q -n %{name}
|
||||||
|
|
||||||
|
%build
|
||||||
|
# The source-files:
|
||||||
|
mkdir -p fpcsrc
|
||||||
|
cp -a rtl fpcsrc
|
||||||
|
cp -a fcl fpcsrc
|
||||||
|
cp -a packages fpcsrc
|
||||||
|
rm -rf packages/extra/amunits
|
||||||
|
rm -rf packages/extra/winunits
|
||||||
|
|
||||||
|
STARTPP=`which %{ppcname}`
|
||||||
|
NEWPP=`pwd`/compiler/%{ppcname}
|
||||||
|
NEWFPDOC=`pwd`/utils/fpdoc/fpdoc
|
||||||
|
DATA2INC=`pwd`/utils/data2inc
|
||||||
|
make compiler_cycle FPC=${STARTPP}
|
||||||
|
make rtl_clean rtl_smart FPC=${NEWPP}
|
||||||
|
make packages_base_smart FPC=${NEWPP}
|
||||||
|
make fcl_smart FPC=${NEWPP}
|
||||||
|
#make fv_smart FPC=${NEWPP}
|
||||||
|
make packages_extra_smart FPC=${NEWPP}
|
||||||
|
#make ide_all FPC=${NEWPP}
|
||||||
|
make utils_all FPC=${NEWPP} DATA2INC=${DATA2INC}
|
||||||
|
|
||||||
|
# disable the debuginfo package
|
||||||
|
%define debug_package %{nil}
|
||||||
|
%define __spec_install_post /usr/lib/rpm/brp-compress
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
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}/%{name}/%{version} \
|
||||||
|
CODPATH=%{buildroot}%{_libdir}/%{name}/lexyacc \
|
||||||
|
INSTALL_DOCDIR=%{buildroot}%{_defaultdocdir}/%{name}-%{version} \
|
||||||
|
INSTALL_BINDIR=%{buildroot}%{_bindir}
|
||||||
|
INSTALL_EXAMPLEDIR=%{buildroot}%{_defaultdocdir}/%{name}-%{version}/examples"
|
||||||
|
make compiler_install ${INSTALLOPTS}
|
||||||
|
make rtl_install ${INSTALLOPTS}
|
||||||
|
make packages_install ${INSTALLOPTS}
|
||||||
|
make fcl_install ${INSTALLOPTS}
|
||||||
|
#make fv_install ${INSTALLOPTS}
|
||||||
|
#make ide_install ${INSTALLOPTS}
|
||||||
|
make utils_install ${INSTALLOPTS}
|
||||||
|
|
||||||
|
#make doc_install ${INSTALLOPTS}
|
||||||
|
#make -C docs pdfinstall ${INSTALLOPTS}
|
||||||
|
#make man_install ${INSTALLOPTS} INSTALL_MANDIR=%{buildroot}%{_mandir}
|
||||||
|
|
||||||
|
# create link
|
||||||
|
ln -sf ../%{_lib}/%{name}/%{version}/%{ppcname} %{buildroot}%{_bindir}/%{ppcname}
|
||||||
|
|
||||||
|
# Include the COPYING-information in the documentation
|
||||||
|
#cd fpcsrc
|
||||||
|
#cp -a compiler/COPYING %{buildroot}%{_defaultdocdir}/%{name}-%{version}/COPYING
|
||||||
|
#cp -a rtl/COPYING %{buildroot}%{_defaultdocdir}/%{name}-%{version}/COPYING.rtl
|
||||||
|
#cp -a fcl/COPYING %{buildroot}%{_defaultdocdir}/%{name}-%{version}/COPYING.fcl
|
||||||
|
#cp -a rtl/COPYING.FPC %{buildroot}%{_defaultdocdir}/%{name}-%{version}/COPYING.FPC
|
||||||
|
#cd -
|
||||||
|
|
||||||
|
# The source-files:
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/fpcsrc
|
||||||
|
cp -a fpcsrc/* %{buildroot}%{_datadir}/fpcsrc/
|
||||||
|
|
||||||
|
# Workaround:
|
||||||
|
# newer rpm versions do not allow garbage
|
||||||
|
# delete lexyacc
|
||||||
|
rm -rf %{buildroot}%{_libdir}/%{name}/lexyacc
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%post
|
||||||
|
# Create a version independent config
|
||||||
|
%{_libdir}/%{name}/%{version}/samplecfg %{_libdir}/%{name}/%{version} > /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_bindir}/*
|
||||||
|
%{_libdir}/%{name}
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/NEWS
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/README
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/readme.ide
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/faq*
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/COPYING*
|
||||||
|
#%{_mandir}/*/*
|
||||||
|
|
||||||
|
#%files doc
|
||||||
|
#%defattr(-,root,root,-)
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/*.pdf
|
||||||
|
#%doc %{_defaultdocdir}/%{name}-%{version}/examples
|
||||||
|
|
||||||
|
%files src
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_datadir}/fpcsrc
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Jul 28 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-1
|
||||||
|
- Added some requirements
|
||||||
|
- Added COPYING-info to %%doc
|
||||||
|
|
||||||
|
* Tue Jun 28 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.6
|
||||||
|
- Only rtl, fcl and packages are added to src-subpackage
|
||||||
|
- Silenced post-script
|
||||||
|
- disabled the debuginfo-package
|
||||||
|
|
||||||
|
* Sat Jun 5 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.5
|
||||||
|
- Added doc-subpackage
|
||||||
|
- Added src-subpackage
|
||||||
|
|
||||||
|
* Fri Jun 3 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.4
|
||||||
|
- New fix for lib64 on x86_64
|
||||||
|
- small patches from Jens Petersen <petersen@redhat.com>
|
||||||
|
|
||||||
|
* Thu May 26 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.3
|
||||||
|
- replaced 'lib' and 'lib64' by %%{_lib}
|
||||||
|
|
||||||
|
* Tue May 24 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.2
|
||||||
|
- Fixed for lib64 on x86_64
|
||||||
|
- Changed summary, description and license
|
||||||
|
- Removed examples from installation
|
||||||
|
- Make clean removed from clean-section
|
||||||
|
- Clean-up
|
||||||
|
- replaced $RPM_BUILD_ROOT by %%{buildroot}
|
||||||
|
|
||||||
|
* Mon May 23 2005 Joost van der Sluis <joost@cnoc.nl> 2.0.0-0.1
|
||||||
|
- Initial build.
|
65
tools/install/rpm/lazarus.spec.template
Normal file
65
tools/install/rpm/lazarus.spec.template
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
Name: lazarus
|
||||||
|
Version: LAZVERSION
|
||||||
|
Release: LAZRELEASE
|
||||||
|
Summary: Lazarus Component Library and IDE
|
||||||
|
|
||||||
|
Group: Development/Languages
|
||||||
|
License: GPL and modified LGPL
|
||||||
|
URL: http://www.lazarus.freepascal.org/
|
||||||
|
Source0: http://prdownloads.sourceforge.net/%{name}/%{name}-%{version}-%{release}.source.tar.gz
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
|
#BuildRequires:
|
||||||
|
Requires: fpc-src = FPCVERSION, fpc = FPCVERSION, gdk-pixbuf-devel, gtk+, gtk+-devel, gdb, glibc-devel, gdk-pixbuf
|
||||||
|
|
||||||
|
Requires(post): desktop-file-utils
|
||||||
|
Requires(postun): desktop-file-utils
|
||||||
|
|
||||||
|
%description
|
||||||
|
Lazarus is a free and opensource RAD tool for freepascal using the lazarus
|
||||||
|
component library - LCL, which is also included in this package.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -c
|
||||||
|
|
||||||
|
%build
|
||||||
|
cd lazarus
|
||||||
|
make OPT="-n @$FPCCfg"
|
||||||
|
# -Fl/opt/gnome/lib
|
||||||
|
strip lazarus
|
||||||
|
strip startlazarus
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
mkdir -p %{buildroot}%{_libdir}/%{name}
|
||||||
|
mkdir -p %{buildroot}%{_bindir}
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
||||||
|
# mkdir -p %{buildroot}%{_datadir}/gnome/apps/Development
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/applications
|
||||||
|
cp -a lazarus/* %{buildroot}%{_libdir}/%{name}/
|
||||||
|
install -m 644 lazarus/images/ide_icon48x48.png %{buildroot}%{_datadir}/pixmaps/lazarus.png
|
||||||
|
# install -m 644 lazarus/gnome.ide.desktop %{buildroot}%{_datadir}/gnome/apps/Development/lazarus.desktop
|
||||||
|
install -m 644 lazarus/install/gnome.ide.desktop %{buildroot}%{_datadir}/applications/lazarus.desktop
|
||||||
|
ln -sf ../%{_lib}/%{name}/%{name} %{buildroot}%{_bindir}/%{name}
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
|
#%post
|
||||||
|
#update-desktop-database &> /dev/null ||:
|
||||||
|
|
||||||
|
%postun
|
||||||
|
update-desktop-database &> /dev/null ||:
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_libdir}/%{name}
|
||||||
|
%{_bindir}/%{name}
|
||||||
|
%{_datadir}/pixmaps/lazarus.png
|
||||||
|
# %{_datadir}/gnome/apps/Development/lazarus.desktop
|
||||||
|
%{_datadir}/applications/lazarus.desktop
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Wed Jul 20 2005 Joost van der Sluis <joost@cnoc.nl> 0.9.8-0.1
|
||||||
|
- Initial build.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user