- Update to 3.6

* This is a bugfix release for which no seperate release notes were
    published. The previous release notes still apply:
    https://wiki.freepascal.org/Lazarus_3.0_release_notes

OBS-URL: https://build.opensuse.org/package/show/devel:languages:pascal/lazarus?expand=0&rev=98
This commit is contained in:
Pragmatic Linux 2024-10-03 21:20:30 +00:00 committed by Git OBS Bridge
commit 06d6d7cd46
11 changed files with 1050 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

15
_constraints Normal file
View File

@ -0,0 +1,15 @@
<?xml version="1.0"?>
<constraints>
<overwrite>
<conditions>
<arch>ppc</arch>
<arch>ppc64</arch>
<arch>ppc64le</arch>
</conditions>
<hardware>
<disk>
<size unit="G">4</size>
</disk>
</hardware>
</overwrite>
</constraints>

3
lazarus-3.4-0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b27c0feabf90ef49034acffb71947d3ee77d4ccf597d348473f5c5a2485e80ff
size 87535234

3
lazarus-3.6-0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e65b90367f63bf17cb7bf35f5be69c9ef704ca494e91d8c67d072e3373fab085
size 87683159

View File

@ -0,0 +1,33 @@
Index: lazarus/Makefile.fpc
===================================================================
--- lazarus.orig/Makefile.fpc
+++ lazarus/Makefile.fpc
@@ -20,7 +20,7 @@ files=$(wildcard *$(OEXT)) $(wildcard *$
[install]
fpcpackage=n
-basedir=share/lazarus
+basedir=$(_LIB)/lazarus
[dist]
destdir=$(BASEDIR)/dist
@@ -29,7 +29,7 @@ destdir=$(BASEDIR)/dist
RCPP?=$(strip $(firstword cpp$(SRCEXEEXT)))
#
ifndef LAZARUS_INSTALL_DIR
-LAZARUS_INSTALL_DIR=$(INSTALL_PREFIX)/share/lazarus
+LAZARUS_INSTALL_DIR=$(INSTALL_PREFIX)/$(_LIB)/lazarus
INSTALL_MAN_DIR=$(INSTALL_PREFIX)/share/man
ifneq ($(findstring $(OS_TARGET),win32 win64),)
LAZARUS_INSTALL_DIR=C:\lazarus
@@ -249,8 +249,8 @@ installbase:
ifneq ($(findstring $(OS_TARGET),win32 win64),)
else
- $(MKDIR) $(INSTALL_PREFIX)/share
- $(MKDIR) $(INSTALL_PREFIX)/share/lazarus
+ $(MKDIR) $(INSTALL_PREFIX)/$(_LIB)
+ $(MKDIR) $(INSTALL_PREFIX)/$(_LIB)/lazarus
$(MKDIR) $(INSTALL_PREFIX)/share/applications
$(MKDIR) $(INSTALL_PREFIX)/share/pixmaps
$(MKDIR) $(INSTALL_PREFIX)/share/mime/packages

1
lazarus-rpmlintrc Normal file
View File

@ -0,0 +1 @@
addFilter(".*devel-file-in-non-devel-package.*")

26
lazarus.appdata.xml Normal file
View File

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2014 Edgar Muniz Berlinck <edgar.vv@gmail.com> -->
<!-- Submitted upstream http://mantis.freepascal.org/view.php?id=31364 -->
<application>
<id type="desktop">lazarus.desktop</id>
<metadata_license>CC0-1.0</metadata_license>
<summary>
Create cross-plataform applications using Free Pascal
</summary>
<description>
<p>
Lazarus is a free cross-platform IDE for Free Pascal. The environment is similar to Delphi 7
and some of the components found in the LCL - Lazarus Component Library.
</p>
<p>
Lazarus is compatible with some Delphi code, so if you have a standard delphi application
using standard components (or other with Lazarus compatible version) you can compile it
with no problems.
</p>
</description>
<url type="homepage">http://www.lazarus.freepascal.org/</url>
<screenshots>
<screenshot type="default">http://wiki.lazarus.freepascal.org/images/b/b2/Fedora19.png</screenshot>
<screenshot>http://wiki.lazarus.freepascal.org/images/0/0e/Error_Build.jpg</screenshot>
</screenshots>
</application>

458
lazarus.changes Normal file
View File

@ -0,0 +1,458 @@
-------------------------------------------------------------------
Thu Oct 3 19:28:25 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 3.6
* This is a bugfix release for which no seperate release notes were
published. The previous release notes still apply:
https://wiki.freepascal.org/Lazarus_3.0_release_notes
-------------------------------------------------------------------
Fri May 31 10:04:48 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 3.4
* This is a bugfix release for which no seperate release notes were
published. The previous release notes still apply:
https://wiki.freepascal.org/Lazarus_3.0_release_notes
- Removed lazarus-libqt6_fix.patch because this is fixed in Lazarus 3.4.
-------------------------------------------------------------------
Tue May 14 20:19:34 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Add lazarus-libqt6_fix.patch to fix libqt6pas per upstream issue #40901
-------------------------------------------------------------------
Sun Mar 3 20:46:41 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 3.2
* This is a bugfix release for which no seperate release notes were
published. The previous release notes still apply and contain
Lazarus 3.2 notes:
https://wiki.freepascal.org/Lazarus_3.0_release_notes
- Improved the build commands in the spec-file.
-------------------------------------------------------------------
Tue Jan 16 19:02:38 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Corrected fdupes usage and removed an unneeded hidden file.
-------------------------------------------------------------------
Tue Jan 16 07:32:45 UTC 2024 - Paolo Stivanin <info@paolostivanin.com>
- Add Qt6 widgetset.
-------------------------------------------------------------------
Mon Jan 15 18:58:22 UTC 2024 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 3.0
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_3.0_release_notes
- Removed 0002-fix-GTK3-build-error.patch because this is fixed in Lazarus 3.0.
- Spec-file improvements to fix several RPM lint errors and warnings.
-------------------------------------------------------------------
Tue Aug 29 12:39:22 UTC 2023 - Paolo Stivanin <info@paolostivanin.com>
- Split package into multiple packages:
LCL packages:
+ lazarus-lcl
+ lazarus-lcl-nogui
+ lazarus-lcl-qt5
+ lazarus-lcl-gtk2
+ lazarus-lcl-gtk3
Doc package:
+ lazarus-doc
IDE package:
+ lazarus-ide
Tools package:
+ lazarus-tools
QT5 bindings:
+ libQt5Pas
Meta package:
+ lazarus (this will install: ide, lcl, lcl-gtk2, lcl-nogui, tools)
- Add 0002-fix-GTK3-build-error.patch: this fixes building the GTK3 LCL.
-------------------------------------------------------------------
Tue Mar 14 12:13:45 UTC 2023 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 2.2.6
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.2_fixes_branch#Fixes_for_2.2.6_.28merged.29
-------------------------------------------------------------------
Wed Sep 28 11:43:12 UTC 2022 - PragmaticLinux <info@pragmaticlinux.com>
- Update to 2.2.4
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.2_fixes_branch#Fixes_for_2.2.4_.28merged.29
- Enabled the removal of duplicates again using fdupes, now that
upstream resolved the issue - boo#1197651
-------------------------------------------------------------------
Fri May 20 06:27:18 UTC 2022 - ecsos <ecsos@opensuse.org>
- Update to 2.2.2
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.2_fixes_branch#Fixes_for_2.2.2_.28merged.29
- Rebase lazarus-Makefile_patch.diff, because some things in
upstream now.
- Drop fix-object-inspector-visible.patch because now in upstream.
-------------------------------------------------------------------
Sat Apr 30 20:57:54 UTC 2022 - PragmaticLinux <info@pragmaticlinux.com>
- Add patch to fix Object Inspector visibility:
* fix-object-inspector-visible.patch - boo#1197651
-------------------------------------------------------------------
Sat Apr 23 10:57:00 UTC 2022 - PragmaticLinux <info@pragmaticlinux.com>
- Skip removing duplicates with fdupes. It removes important files,
causing "unit not found errors" during application development
(bug 1197651).
- Corrected library directory in lazarus-Makefile_patch.diff.
- Added creation of qt5 directory in lazarus-Makefile_patch.diff,
needed when rebuilding the IDE using the QT5 widgetset.
- Added gcc, make and binutils package requirements, needed when
the user rebuilds the IDE.
- Removed git ignore files to prevent version control files from
being installed.
- Fixed a few spurious executable permission RPM lint errors.
- Cleaned up spec-file by removing support for obsolete distribution
versions.
-------------------------------------------------------------------
Wed Jan 5 11:56:21 UTC 2022 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.2.0
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.2.0_release_notes
- Drop lazarus-PascalScript_PPC.patch (merged upstream)
-------------------------------------------------------------------
Sun Oct 10 06:22:11 UTC 2021 - Luigi Baldoni <aloisio@gmx.com>
- Add lazarus-PascalScript_PPC.patch (fixes PPC build)
- Add _constraints file
-------------------------------------------------------------------
Wed Feb 24 11:57:37 UTC 2021 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.12.
* For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.12_.28merged.29
- Refreshed lazarus-Makefile_patch.diff
-------------------------------------------------------------------
Fri Sep 4 13:20:40 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Lazarus released a new 2.0.10 tarball (2.0.10-2) which just
includes the lazarus-2.0.10-fpc304.patch patch on top of the
previous one. Use this new tarball and update the Source
URL accordingly
- Drop upstreamed patch:
* lazarus-2.0.10-fpc304.patch
- Run specfile cleaner
-------------------------------------------------------------------
Wed Jul 8 17:15:55 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.10
This is a bugfix release. For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.10_.28merged.29
- Add lazarus-2.0.10-fpc304.patch (fix build with fpc 3.0.4)
-------------------------------------------------------------------
Wed Apr 15 20:15:11 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.8
This is a bugfix release. For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.8_.28merged.29
-------------------------------------------------------------------
Wed Oct 30 19:28:01 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.6
This is a bugfix release. For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.6_.28merged.29
-------------------------------------------------------------------
Tue Aug 6 10:27:57 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.4
This is a bugfix release. For a complete list of changes see:
https://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.4_.28merged.29
-------------------------------------------------------------------
Tue Apr 16 08:49:08 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.2
This is a bugfix release. For a complete list of changes see:
http://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.2_.28Merged.29
-------------------------------------------------------------------
Tue Feb 5 11:37:30 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.0
* For a complete list of changes, see:
http://wiki.freepascal.org/Lazarus_2.0.0_release_notes
- Refreshed lazarus.desktop.patch and lazarus-rpmlintrc
-------------------------------------------------------------------
Tue May 22 20:44:41 UTC 2018 - aloisio@gmx.com
- Update to version 1.8.4
This is a bugfix release. For a complete list of changes see:
http://wiki.freepascal.org/Lazarus_1.8_fixes_branch#Fixes_for_1.8.4_.28merged.29
-------------------------------------------------------------------
Wed Feb 28 16:01:00 UTC 2018 - aloisio@gmx.com
- Update to version 1.8.2
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.8.0_release_notes
-------------------------------------------------------------------
Thu Jan 4 18:25:37 UTC 2018 - termim@gmail.com
- fix description fo libQt5Pas packages
-------------------------------------------------------------------
Tue Dec 26 15:18:15 UTC 2017 - jengelh@inai.de
- Remove bashsisms from %prep. Replace useless use of cat.
Fix unusual BuildRequires for sles>=11.
Trim filler wording from description.
-------------------------------------------------------------------
Sun Dec 17 17:44:17 UTC 2017 - aloisio@gmx.com
- Actually install the LCL Qt5 interface
-------------------------------------------------------------------
Sun Dec 17 16:52:39 UTC 2017 - ecsos@opensuse.org
- add/download right/original source
- add missing %defattr(-,root,root,-) for new libQt5Pas and
libQt5Pas-devel files section
- rebase lazarus.desktop.patch
-------------------------------------------------------------------
Wed Dec 6 20:02:01 UTC 2017 - aloisio@gmx.com
- Update to version 1.8.0, for a complete changelog see:
http://wiki.freepascal.org/Lazarus_1.8.0_release_notes
- Refreshed lazarus.desktop.patch
- Enabled Qt5 and built libQt5Pas for supported targets
-------------------------------------------------------------------
Fri May 5 22:07:06 UTC 2017 - jengelh@inai.de
- Avoid bashisms in %prep. Escape call involving "!" with single
quotes to really be sure that there is no history expansion.
-------------------------------------------------------------------
Tue May 2 04:56:49 UTC 2017 - bwiedemann@suse.com
- Make build more reproducible
-------------------------------------------------------------------
Tue Feb 7 18:31:12 UTC 2017 - mailaender@opensuse.org
- Add an appdata.xml file for https://en.opensuse.org/openSUSE:AppStore
- Don't package lazarus/components/aggpas/gpc (problematic license)
-------------------------------------------------------------------
Fri Nov 18 09:21:49 UTC 2016 - aloisio@gmx.com
- Update to 1.6.2
This is a bugfix release. For a complete list of changes see:
http://wiki.lazarus.freepascal.org/Lazarus_1.6_fixes_branch#Fixes_for_1.6.2_.28merged.29
-------------------------------------------------------------------
Mon Jun 27 20:56:45 UTC 2016 - termim@gmail.com
- Update to 1.6.0
http://wiki.freepascal.org/Lazarus_1.6.0_release_notes
http://wiki.lazarus.freepascal.org/User_Changes_3.0.0
-------------------------------------------------------------------
Sun Oct 18 16:39:19 UTC 2015 - ecsos@opensuse.org
- update to 1.4.4
This is a bug fix release. For complete list of changes see
http://wiki.freepascal.org/Lazarus_1.4_fixes_branch#Fixes_for_1.4.4_.28Merged.29
-------------------------------------------------------------------
Thu Jul 23 18:57:13 UTC 2015 - ecsos@opensuse.org
- update to 1.4.2
This is a bug fix release. For complete list of changes see
http://wiki.freepascal.org/Lazarus_1.4_fixes_branch#Fixes_for_1.4.2_.28Merged.29
-------------------------------------------------------------------
Wed Apr 22 21:46:34 UTC 2015 - ecsos@opensuse.org
- update to 1.4.0
This is a major release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.4.0_release_notes
-------------------------------------------------------------------
Sat Oct 18 14:45:07 UTC 2014 - ecsos@opensuse.org
- update to 1.2.6
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.2_fixes_branch#Fixes_for_1.2.6_.28Merged.29
-------------------------------------------------------------------
Wed Jul 9 22:28:59 UTC 2014 - ecsos@opensuse.org
- update to 1.2.4
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.2_fixes_branch#Fixes_for_1.2.4_.28Merged.29
-------------------------------------------------------------------
Thu Jan 9 13:56:05 UTC 2014 - ecsos@opensuse.org
- update to 1.0.14
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch#Fixes_for_1.0.14_.28Merged.29
-------------------------------------------------------------------
Wed Oct 16 19:50:56 UTC 2013 - ecsos@opensuse.org
- Update to 1.0.12
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch#Fixes_for_1.0.12_.28Merged.29
-------------------------------------------------------------------
Wed Aug 7 20:16:43 UTC 2013 - asterios.dramis@gmail.com
- Update to 1.0.10:
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch#Fixes_for_1.0.10_.28Merged.29
- Use the package's internal desktop file instead of a custom one. Added a
patch (lazarus.desktop.patch) to fix it.
- Removed ImageMagick build requirement (not needed).
- Use desktop-file-utils instead of update-desktop-files for openSUSE > 12.1.
Added desktop-file-utils build requirement for this.
- Install icons in the hicolor icon directory. Added
icon_theme_cache_post/icon_theme_cache_postun entries for openSUSE >= 11.4 to
update the icon cache. Added hicolor-icon-theme build requirement for this.
- Added desktop_database_post/desktop_database_postun entries for
openSUSE >= 11.4 since the package defines a MIME handler. Added
desktop-file-utils post/postun runtime requirement for this.
- Use mime_database_post/mime_database_postun entries for openSUSE >= 11.4
instead of /usr/bin/update-mime-database.
-------------------------------------------------------------------
Tue Jan 1 18:29:20 UTC 2013 - mailaender@opensuse.org
- Update to 1.0.4
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch#Fixes_for_1.0.4_.28Merged.29
- formal RPMlint fixes
-------------------------------------------------------------------
Mon Dec 10 23:48:48 UTC 2012 - Greg.Freemyer@gmail.com
- add Requires fpc-src
If you try to run lazarus without fpc-src you get an error that certain functionality is lost.
"The sources of the Free Pascal packages are required for browsing and code completion."
-------------------------------------------------------------------
Mon Oct 29 13:19:04 UTC 2012 - svalx@svalx.net
- Fix building for SLE_11.
-------------------------------------------------------------------
Tue Oct 16 19:03:10 UTC 2012 - asterios.dramis@gmail.com
- Update to 1.0.2
This is a bug fix release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch#Fixes_for_1.0.2_.28Merged.29
- Removed libdb-4_5-devel build requirement (not needed).
- Don't strip binaries (let rpm extract the debug info from the package).
- Don't use -gs (use explicitly "stabs" debuginfo) for compiling lhelp but -g
(use the default debuginfo type "dwarf") as in the rest of package's
Makefiles. Fixes the "Stabs debuginfo not supported" error when extracting
debug info from the package.
-------------------------------------------------------------------
Thu Oct 4 21:18:37 UTC 2012 - asterios.dramis@gmail.com
- Fix lazarus dir in /etc/lazarus/environmentoptions.xml (use
/usr/lib64/lazarus for x86_64).
- Removed gtk2 build requirement (not needed).
- Use Requires(post/postun) for shared-mime-info instead of PreReq for the
post/postun update-mime-database execution.
- Removed Fedora related stuff (incomplete).
- Spec file updates based also on spec-cleaner run.
- Updated lazarus.desktop file to be xdg compatible.
-------------------------------------------------------------------
Sun Sep 23 06:59:31 UTC 2012 - termim@gmail.com
- Update to 1.0.0
This is a major release. For complete list of changes see
http://wiki.lazarus.freepascal.org/Lazarus_1.0_release_notes
-------------------------------------------------------------------
Fri Apr 1 22:54:14 UTC 2011 - termim@gmail.com
- Update to 0.9.30
-------------------------------------------------------------------
Tue Nov 03 2009 Toni Graffy <toni@links2linux.de> - 0.9.28.2-1.pm.1
- fixed configfile environmentoptions.xml
-------------------------------------------------------------------
Sun Nov 01 2009 Toni Graffy <toni@links2linux.de> - 0.9.28.2-0.pm.1
- update to 0.9.28.2
- This release fixes compiling a test application without saving (missing
project1.lrs). The Lazarus directory is now set correctly by the deb package.
Some other small fixes are also included.
-------------------------------------------------------------------
Tue Oct 27 2009 Toni Graffy <toni@links2linux.de> - 0.9.28-0.pm.1
- update to 0.9.28
- In this major release, the IDE has many source editor improvements like display
of "double width" fonts (such as Eastern, Japanese, Chinese, and Arabic), better
code folding, highlighting, syncro editing, and persistent blocks. The debugger
has assembler windows, easier exception handling, and breakpoint properties. The
LCL now uses GTK2 as the default widgetset on Linux and BSD and includes the
TMonitor class for multi-monitor support. Refactoring of LCL reduced the minimum
size of executables by about 15%. The support of TFrame support has improved, so
you can visually nest designers in the IDE.
-------------------------------------------------------------------
Mon May 04 2009 Toni Graffy <toni@links2linux.de> - 0.9.26.2-0.pm.3
- rebuild against fpc-2.2.4
-------------------------------------------------------------------
Mon Mar 23 2009 Toni Graffy <toni@links2linux.de> - 0.9.26.2-0.pm.2
- update to 0.9.26.2 (release-tarball)
-------------------------------------------------------------------
Sat Feb 28 2009 Toni Graffy <toni@links2linux.de> - 0.9.26.2-0.pm.1
- update to 0.9.26.2
svn co https://lazarus.svn.sourceforge.net/svnroot/lazarus/tags/lazarus_0_9_26_2 lazarus
-------------------------------------------------------------------
Sat Nov 01 2008 Toni Graffy <toni@links2linux.de> - 0.9.26-0.pm.2
- rebuild against fpc-2.2.2-0.pm.2
-------------------------------------------------------------------
Thu Oct 30 2008 Toni Graffy <toni@links2linux.de> - 0.9.26-0.pm.1
- initial build for packman (fpc-2.2.2 is working with this version)
- based on fedora spec-file from Lubomir Rintel <lkundrak@v3.sk>

18
lazarus.desktop.patch Normal file
View File

@ -0,0 +1,18 @@
Index: lazarus/install/lazarus.desktop
===================================================================
--- lazarus.orig/install/lazarus.desktop
+++ lazarus/install/lazarus.desktop
@@ -1,11 +1,12 @@
[Desktop Entry]
Name=Lazarus
+GenericName=Integrated Development Environment
Comment=Lazarus IDE
Exec=startlazarus %f
Terminal=false
Type=Application
Icon=lazarus
-Categories=IDE;Development;GTK;GUIDesigner;
+Categories=Development;IDE;
StartupWMClass=Lazarus
MimeType=text/x-pascal;text/lazarus-project-source;text/lazarus-project-information;text/lazarus-form;text/lazarus-resource;text/lazarus-package;text/lazarus-package-link;text/lazarus-code-inlay;
Keywords=editor;Pascal;IDE;FreePascal;fpc;Design;Designer;

469
lazarus.spec Normal file
View File

@ -0,0 +1,469 @@
#
# spec file for package lazarus
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define qt5_sover 1
%define qt6_sover 6
Name: lazarus
Version: 3.6
Release: 0
# Please note that the LGPL is modified and this is not multi-licensed, but each component has a separate license chosen.
Summary: FreePascal RAD IDE and Component Library
License: GPL-2.0-only AND LGPL-2.0-only AND MPL-1.1
Group: Development/Languages/Other
URL: http://www.lazarus.freepascal.org/
Source0: https://downloads.sourceforge.net/%{name}/%{name}-%{version}-0.tar.gz
# PATCH-FEATURE-UPSTREAM http://mantis.freepascal.org/view.php?id=31364
Source1: https://raw.githubusercontent.com/hughsie/fedora-appstream/developerapps/appdata-extra/desktop/lazarus.appdata.xml
Source90: %{name}-rpmlintrc
# PATCH-FIX-OPENSUSE lazarus-Makefile_patch.diff -- Change installation path from /usr/share/lazarus to /usr/lib(64)/lazarus
Patch0: %{name}-Makefile_patch.diff
# PATCH-FIX-OPENSUSE lazarus.desktop.patch -- Fix desktop file
Patch1: lazarus.desktop.patch
BuildRequires: dos2unix
BuildRequires: fdupes
BuildRequires: fpc >= 3.0.0
BuildRequires: fpc-src >= 3.0.0
Requires: binutils
Requires: fpc
Requires: fpc-src
Requires: gcc
Requires: gdb
Requires: make
Requires(post): desktop-file-utils
Requires(post): shared-mime-info
Requires(postun): desktop-file-utils
Requires(postun): shared-mime-info
BuildRequires: desktop-file-utils
BuildRequires: hicolor-icon-theme
BuildRequires: libqt5-qtbase-common-devel >= 5.6.0
BuildRequires: qt6-base-common-devel >= 6.2.0
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(Qt5X11Extras)
BuildRequires: pkgconfig(Qt6Network)
BuildRequires: pkgconfig(Qt6PrintSupport)
BuildRequires: pkgconfig(Qt6Widgets)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gtk+-2.0)
Requires: %{name}-ide = %{version}
Requires: %{name}-lcl = %{version}
Requires: %{name}-lcl-gtk2 = %{version}
Requires: %{name}-lcl-nogui = %{version}
Requires: %{name}-tools = %{version}
Requires: pkgconfig(glib-2.0)
Requires: pkgconfig(gtk+-2.0)
%description
Lazarus is an IDE to create (graphical and console) applications with
Free Pascal, the (L)GPLed Pascal and Object Pascal compiler that runs on
Windows, Linux, Mac OS X, FreeBSD and more.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi-like environment.
The IDE is a RAD tool that includes a form designer.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
In short, Lazarus is a free RAD tool for Free Pascal using its
Lazarus Component Library (LCL).
%package ide
Summary: Lazarus RAD IDE for Free Pascal
License: GPL-2.0-or-later AND LGPL-2.0-only WITH Classpath-exception-2.0
Requires: %{name}-lcl = %{version}
Requires: %{name}-tools = %{version}
Recommends: %{name}-doc = %{version}
Requires: fpc-src
Requires: gdb
Requires: hicolor-icon-theme
Requires: make
%description ide
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package provides the Lazarus RAD IDE.
%package tools
Summary: Lazarus IDE helper programs
License: GPL-2.0-or-later
Requires: binutils
Requires: fpc
Requires: glibc-devel
%description tools
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package provides helper programs used for building Lazarus projects.
%package doc
Summary: Lazarus IDE documentation
License: GPL-2.0-or-later
%description doc
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains documentation and example programs for the Lazarus IDE.
%package lcl
Summary: Lazarus Component Library
Recommends: %{name}-lcl-gtk2 = %{version}
Recommends: %{name}-lcl-nogui = %{version}
%description lcl
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains the common parts of the Lazarus Component Library.
%package lcl-nogui
Summary: Lazarus Component Library - non-graphical components
Requires: %{name}-lcl = %{version}
%description lcl-nogui
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains LCL components for developing non-graphical applications
and command-line tools.
%package lcl-gtk2
Summary: Lazarus Component Library - GTK2 widgetset support
Requires: %{name}-lcl = %{version}
Requires: gtk2-devel
%description lcl-gtk2
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains LCL components for developing applications
using the GTK2 widgetset.
%package lcl-gtk3
Summary: Lazarus Component Library - GTK3 widgetset support
Requires: %{name}-lcl = %{version}-%{release}
Requires: gtk3-devel >= 3.24.24
%description lcl-gtk3
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains LCL components for developing applications
using the GTK3 widgetset.
%package lcl-qt5
Summary: Lazarus Component Library - Qt5 widgetset support
Requires: %{name}-lcl = %{version}
Requires: libQt5Pas-devel = %{version}
%description lcl-qt5
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains LCL components for developing applications
using the Qt5 widgetset.
%package -n libQt5Pas%{qt5_sover}
Summary: Free Pascal interface to Qt5
License: LGPL-3.0-only
Group: System/Libraries
%description -n libQt5Pas%{qt5_sover}
Qt5 bindings for Pascal from Lazarus.
%package -n libQt5Pas-devel
Summary: Free Pascal interface to Qt5
License: LGPL-3.0-only
Group: Development/Libraries/Other
Requires: libQt5Pas%{qt5_sover} = %{version}
%description -n libQt5Pas-devel
The qt5pas-devel package contains libraries and header files for
developing applications that use qt5pas.
%package lcl-qt6
Summary: Lazarus Component Library - Qt6 widgetset support
Requires: %{name}-lcl = %{version}
Requires: libQt6Pas-devel = %{version}
%description lcl-qt6
Lazarus is a cross-platform IDE and component library for Free Pascal.
This package contains LCL components for developing applications
using the Qt6 widgetset.
%package -n libQt6Pas%{qt6_sover}
Summary: Free Pascal interface to Qt6
License: LGPL-3.0-only
Group: System/Libraries
%description -n libQt6Pas%{qt6_sover}
Qt5 bindings for Pascal from Lazarus.
%package -n libQt6Pas-devel
Summary: Free Pascal interface to Qt6
License: LGPL-3.0-only
Group: Development/Libraries/Other
Requires: libQt6Pas%{qt6_sover} = %{version}
%description -n libQt6Pas-devel
The qt6pas-devel package contains libraries and header files for
developing applications that use qt5pas.
# Instruct fpmake to build in parallel
%global fpmakeopt %{?_smp_build_ncpus:FPMAKEOPT='-T %{_smp_build_ncpus}'}
# Preferred compilation options - enable GDB debuginfo in DWARF format, plus some optimisations
%global fpcopt -g -gl -gw -O3
%prep
%autosetup -p1 -n %{name}
# remove unneeded files
rm -rf tools/install/cross_unix/debian_crosswin32/
rm -f tools/install/cross_unix/*deb.*
rm -rf tools/install/debian_*
rm -rf tools/install/freebsd_*
rm -rf tools/install/macosx/
rm -rf tools/install/slacktgz/
rm -rf tools/install/win/
rm -f tools/install/*slacktgz.*
# fix shebang
find . \( -name "*.sh" -o -name "*.pl" \) -exec sed -i '1s|#!%{_bindir}/env |#!%{_bindir}/|' {} +
# set executable bit to fix rpmlint error "non-executable-script"
chmod +x components/datetimectrls/docs/clean-files.sh
chmod +x components/datetimectrls/docs/make-archive.sh
chmod +x components/datetimectrls/docs/make-docs.sh
chmod +x components/lazcontrols/docs/make-docs.sh
chmod +x components/rtticontrols/fpdoc/clean-files.sh
chmod +x components/rtticontrols/fpdoc/make-docs.sh
# remove git ignore files to prevent them from being installed to fix rpmlint error "version-control-internal-file"
find . \( -name ".gitignore" \) -delete
%build
# Remove the files for building other packages
rm -rf debian
pushd tools
find install -depth -type d ! \( -path "install/linux/*" -o -path "install/linux" -o -path "install" \) -exec rm -rf '{}' \;
popd
# Re-create the Makefiles
export FPCDIR=%{_datadir}/fpcsrc/
fpcmake -Tall
pushd components
fpcmake -Tall
popd
# Compile some basic targets required by everything else
make registration %{fpmakeopt} OPT='%{fpcopt}'
# Compile lazbuild - required to build other targets
make lazbuild %{fpmakeopt} OPT='%{fpcopt}'
# Compile LCL base (Lazarus Component Library) for the "nogui" widgetset
make lcl %{fpmakeopt} OPT='%{fpcopt}' LCL_PLATFORM=nogui
# Compile extra tools
make tools %{fpmakeopt} OPT='%{fpcopt}'
# Compile the LCL base + extra components for GUI widgetsets
for WIDGETSET in gtk2 gtk3 qt5 qt6; do
make lcl basecomponents bigidecomponents %{fpmakeopt} OPT='%{fpcopt}' LCL_PLATFORM="${WIDGETSET}"
done
# Compile the IDE itself. Default to using the gkt2 widget set.
make bigide %{fpmakeopt} OPT='%{fpcopt}' LCL_PLATFORM=gtk2
# Build libQt5Pas
pushd lcl/interfaces/qt5/cbindings
%qmake5
%make_build
popd
# Build libQt6Pas
pushd lcl/interfaces/qt6/cbindings
%qmake6
%make_build
popd
%install
make install INSTALL_PREFIX=%{buildroot}%{_prefix} _LIB=%{_lib}
# Remove man page for an executable that is not actually installed.
rm %{buildroot}%{_mandir}/man1/svn2revisioninc.1* || true
desktop-file-install --dir %{buildroot}%{_datadir}/applications install/%{name}.desktop
install -d %{buildroot}%{_sysconfdir}/lazarus
sed 's#__LAZARUSDIR__#%{_libdir}/%{name}#;s#__FPCSRCDIR__#%{_datadir}/fpcsrc#' \
tools/install/linux/environmentoptions.xml \
> %{buildroot}%{_sysconfdir}/lazarus/environmentoptions.xml
chmod 755 %{buildroot}%{_libdir}/%{name}/components/lazreport/tools/localize.sh
install -Dpm 0644 %{SOURCE1} %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml
pushd lcl/interfaces/qt5/cbindings
%make_install INSTALL_ROOT=%{buildroot}
popd
pushd lcl/interfaces/qt6/cbindings
%make_install INSTALL_ROOT=%{buildroot}
popd
# Since we provide Qt5Pas as a standalone package, remove the .so files bundled in Lazarus dir
# and replace them with symlinks to the standalone .so.
for FILEPATH in %{buildroot}%{_libdir}/%{name}/lcl/interfaces/qt5/cbindings/libQt5Pas.so* ; do
FILENAME="$(basename "${FILEPATH}")"
ln -sf "%{_libdir}/${FILENAME}" "${FILEPATH}"
done
# Remove hidden files to fix rpmlint warning "hidden-file-or-dir"
rm -f %{buildroot}%{_libdir}/%{name}/lcl/interfaces/qt5/cbindings/.qmake.stash
rm -f %{buildroot}%{_libdir}/%{name}/lcl/interfaces/qt6/cbindings/.qmake.stash
# Remove duplicate files
%fdupes %{buildroot}%{_libdir}/%{name}
%post -n libQt5Pas%{qt5_sover} -p /sbin/ldconfig
%postun -n libQt5Pas%{qt5_sover} -p /sbin/ldconfig
%post -n libQt6Pas%{qt6_sover} -p /sbin/ldconfig
%postun -n libQt6Pas%{qt6_sover} -p /sbin/ldconfig
%files
# No files, but we want to build the "lazarus" metapackage
%files doc
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/docs
%{_libdir}/%{name}/examples
%license COPYING.GPL.txt
%files tools
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/lazbuild
%{_libdir}/%{name}/packager/
%{_libdir}/%{name}/tools/
%{_bindir}/lazbuild
%{_bindir}/lazres
%{_bindir}/lrstolfm
%{_bindir}/updatepofiles
%dir %{_sysconfdir}/lazarus
%config(noreplace) %{_sysconfdir}/lazarus/environmentoptions.xml
%license COPYING.GPL.txt
%{_mandir}/man1/lazbuild.1*
%{_mandir}/man1/lazres.1*
%{_mandir}/man1/lrstolfm.1*
%{_mandir}/man1/updatepofiles.1*
%files ide
%{_libdir}/%{name}
# Exclude -docs files
%exclude %{_libdir}/%{name}/docs
%exclude %{_libdir}/%{name}/examples
# Exclude -lcl files
%exclude %{_libdir}/%{name}/components
%exclude %{_libdir}/%{name}/lcl
# Exclude -tools files
%exclude %{_libdir}/%{name}/lazbuild
%exclude %{_libdir}/%{name}/packager
%exclude %{_libdir}/%{name}/tools
%{_bindir}/lazarus-ide
%{_bindir}/startlazarus
%{_datadir}/pixmaps/lazarus.png
%{_datadir}/applications/*%{name}.desktop
%{_datadir}/mime/packages/lazarus.xml
%{_datadir}/icons/hicolor/48x48/mimetypes/*
%dir %{_datadir}/appdata/
%{_datadir}/appdata/%{name}.appdata.xml
%doc README.md
%license COPYING.txt
%license COPYING.LGPL.txt
%license COPYING.modifiedLGPL.txt
%{_mandir}/man1/lazarus-ide.1*
%{_mandir}/man1/startlazarus.1*
# Helper macro to reduce repetitions (lcl, basecomponents)
%define lcl_base_files(n:) %{expand:
%{*} %{_libdir}/%{name}/components/*/lib/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/*/units/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/lcl/interfaces/%{-n*}/
%{*} %{_libdir}/%{name}/lcl/units/*/%{-n*}/
}
# Some files are not present for nogui (bigidecomponents)
%define lcl_extra_files(n:) %{expand:
%{*} %{_libdir}/%{name}/components/*/design/lib/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/*/design/units/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/*/include/%{-n*}/
%{*} %{_libdir}/%{name}/components/*/include/intf/%{-n*}/
%{*} %{_libdir}/%{name}/components/*/lib/*-linux-%{-n*}/
%{*} %{_libdir}/%{name}/components/*/units/%{-n*}/
%{*} %{_libdir}/%{name}/components/chmhelp/packages/help/lib/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/chmhelp/packages/idehelp/lib/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/fpcunit/ide/lib/*-linux/%{-n*}/
%{*} %{_libdir}/%{name}/components/jcf2/IdePlugin/lazarus/lib/*-linux/%{-n*}/
}
%files lcl
%license COPYING.txt
%license COPYING.LGPL.txt
%license COPYING.modifiedLGPL.txt
%license %{_libdir}/%{name}/lcl/interfaces/customdrawn/android/ApacheLicense2.0.txt
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/components/
%{_libdir}/%{name}/lcl/
%lcl_base_files -n nogui %exclude
%lcl_base_files -n gtk2 %exclude
%lcl_extra_files -n gtk2 %exclude
%lcl_base_files -n gtk3 %exclude
%lcl_extra_files -n gtk3 %exclude
%lcl_base_files -n qt5 %exclude
%lcl_extra_files -n qt5 %exclude
%lcl_base_files -n qt6 %exclude
%lcl_extra_files -n qt6 %exclude
%files lcl-nogui
%lcl_base_files -n nogui
%files lcl-gtk2
%lcl_base_files -n gtk2
%lcl_extra_files -n gtk2
%files lcl-gtk3
%lcl_base_files -n gtk3
%lcl_extra_files -n gtk3
%files lcl-qt5
%lcl_base_files -n qt5
%lcl_extra_files -n qt5
%files lcl-qt6
%lcl_base_files -n qt6
%lcl_extra_files -n qt6
%files -n libQt5Pas%{qt5_sover}
%license lcl/interfaces/qt5/cbindings/COPYING.TXT
%doc lcl/interfaces/qt5/cbindings/README.TXT
%{_libdir}/libQt5Pas.so.%{qt5_sover}*
%files -n libQt5Pas-devel
%{_libdir}/libQt5Pas.so
%files -n libQt6Pas%{qt6_sover}
%license lcl/interfaces/qt6/cbindings/COPYING.TXT
%doc lcl/interfaces/qt6/cbindings/README.TXT
%{_libdir}/libQt6Pas.so.%{qt6_sover}*
%files -n libQt6Pas-devel
%{_libdir}/libQt6Pas.so
%changelog