Christophe Marin 2024-12-25 10:27:02 +00:00 committed by Git OBS Bridge
commit 3327e7afe2
7 changed files with 464 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

View File

@ -0,0 +1,30 @@
From 792cf51f2e1f8850c425760e6aac87f68b4d6ad8 Mon Sep 17 00:00:00 2001
From: "Friedrich W. H. Kossebau" <kossebau@kde.org>
Date: Sun, 12 Jul 2020 15:01:04 +0200
Subject: [PATCH] Find also Python3 with find_package(PythonInterp)
At least with openSUSE TW searching with a version given seems to restrict
the versions accepted to the major version.
So if only python3 is available, searching for 2.6 yields no results.
Given 2.6 is stone-age old, we can assume any found version is good enough
these days
---
cmake/modules/KDbCreateSharedDataClasses.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cmake/modules/KDbCreateSharedDataClasses.cmake b/cmake/modules/KDbCreateSharedDataClasses.cmake
index dc5101d9..b764cb36 100644
--- a/cmake/modules/KDbCreateSharedDataClasses.cmake
+++ b/cmake/modules/KDbCreateSharedDataClasses.cmake
@@ -23,7 +23,7 @@ macro(KDB_CREATE_SHARED_DATA_CLASSES)
list(GET _args 1 PREFIX)
list(REMOVE_AT _args 0 1)
# message(STATUS "OUTPUT_VAR: ${OUTPUT_VAR} ${_args}")
- find_package(PythonInterp 2.6)
+ find_package(PythonInterp)
set_package_properties(PythonInterp PROPERTIES DESCRIPTION "Python language interpreter"
URL "https://www.python.org" TYPE REQUIRED
PURPOSE "Required by the Shared Data Classes (SDC) tool")
--
2.43.0

View File

@ -0,0 +1,120 @@
From 5d3053ea78b349b81b7a562974ad78f93d169791 Mon Sep 17 00:00:00 2001
From: Jaroslaw Staniek <staniek@kde.org>
Date: Tue, 16 Jun 2020 21:59:12 +0200
Subject: [PATCH] Fix build with GCC 10 (make KReportGroupTracker use C++ file)
BUG:422886
CCMAIL:adam@piggz.co.uk
FIXED-IN:3.2.1
---
src/CMakeLists.txt | 5 +---
.../scripting/KReportGroupTracker.cpp | 26 +++++++++++++++++++
src/renderer/scripting/KReportGroupTracker.h | 25 +++++++++++++++---
3 files changed, 48 insertions(+), 8 deletions(-)
create mode 100644 src/renderer/scripting/KReportGroupTracker.cpp
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1cf0b389..65bcf6e5 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -106,6 +106,7 @@ set(kreport_TARGET_INCLUDE_DIRS
if(KREPORT_SCRIPTING)
list(APPEND kreport_LIB_SRCS
+ renderer/scripting/KReportGroupTracker.cpp
renderer/scripting/KReportScriptHandler.cpp
renderer/scripting/KReportScriptConstants.cpp
renderer/scripting/KReportScriptDebug.cpp
@@ -133,10 +134,6 @@ if(KREPORT_SCRIPTING)
items/text/KReportScriptText.cpp
)
- qt_wrap_cpp(KReport kreport_LIB_SRCS
- renderer/scripting/KReportGroupTracker.h
- )
-
list(APPEND kreport_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}/renderer/scripting
)
diff --git a/src/renderer/scripting/KReportGroupTracker.cpp b/src/renderer/scripting/KReportGroupTracker.cpp
new file mode 100644
index 00000000..9274d4a5
--- /dev/null
+++ b/src/renderer/scripting/KReportGroupTracker.cpp
@@ -0,0 +1,26 @@
+/* This file is part of the KDE project
+ * Copyright (C) 2015 by Adam Pigg (adam@piggz.co.uk)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "KReportGroupTracker.h"
+
+KReportGroupTracker::KReportGroupTracker()
+{
+}
+
+KReportGroupTracker::~KReportGroupTracker()
+{
+}
diff --git a/src/renderer/scripting/KReportGroupTracker.h b/src/renderer/scripting/KReportGroupTracker.h
index e434e05a..4c0852ea 100644
--- a/src/renderer/scripting/KReportGroupTracker.h
+++ b/src/renderer/scripting/KReportGroupTracker.h
@@ -1,3 +1,20 @@
+/* This file is part of the KDE project
+ * Copyright (C) 2015 by Adam Pigg (adam@piggz.co.uk)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
#ifndef KREPORTGROUPTRACKER_H
#define KREPORTGROUPTRACKER_H
@@ -7,16 +24,16 @@
/*!
* @brief Keeps track of groups as the data for the group changes
*/
-class KREPORT_EXPORT KReportGroupTracker : public QObject {
+class KREPORT_EXPORT KReportGroupTracker : public QObject
+{
Q_OBJECT
protected:
- KReportGroupTracker() {}
- ~KReportGroupTracker() override{}
+ KReportGroupTracker();
+ ~KReportGroupTracker() override;
public:
Q_SLOT virtual void setGroupData(const QMap<QString, QVariant> &groupData) = 0;
};
#endif // KREPORTGROUPTRACKER_H
-
--
2.27.0

3
kreport-3.2.0.tar.xz Normal file
View File

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

183
kreport.changes Normal file
View File

@ -0,0 +1,183 @@
-------------------------------------------------------------------
Wed Dec 25 10:26:58 UTC 2024 - Christophe Marin <christophe@krop.fr>
- Stop using the optional marble dependency
-------------------------------------------------------------------
Wed Feb 7 16:18:08 UTC 2024 - Christophe Marin <christophe@krop.fr>
- Build using python3 rather than python2
- Spec cleanup
- Add upstream change:
* 0001-Find-also-Python3-with-find_package-PythonInterp.patch
-------------------------------------------------------------------
Mon Jun 28 14:47:16 UTC 2021 - Wolfgang Bauer <wbauer@tmo.at>
- Add Requires: cmake(Qt5Qml) to the devel package to fix kexi's
build on ppc
-------------------------------------------------------------------
Mon Jun 28 07:13:37 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Remove the optional QtWebKit build dependency.
-------------------------------------------------------------------
Tue Apr 20 13:52:12 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Spec cleanup
-------------------------------------------------------------------
Thu Aug 27 12:50:01 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
- Spec cleanup
-------------------------------------------------------------------
Wed Jun 17 07:59:16 UTC 2020 - Wolfgang Bauer <wbauer@tmo.at>
- Add Fix-kexi-build-with-GCC-10.patch to fix the build of kexi in
Tumbleweed (kde#422886)
-------------------------------------------------------------------
Sat Aug 24 08:54:28 UTC 2019 - Christophe Giboudeaux <christophe@krop.fr>
- Remove the pkg-config file from the -devel package. KReport3.pc contains
incorrect entries.
-------------------------------------------------------------------
Thu Apr 11 12:08:13 UTC 2019 - wbauer@tmo.at
- Update to 3.2.0:
* Improvements
+ Use QPageSize::name() for names of page sizes
* Buildsystem
+ Fix data install dir for Windows, make icons installed
relative to that, make icons coinstallable
+ Make sure we don't try to build maps on Windows, even if
Marble is around (it has Unix requirements)
- Run spec-cleaner
-------------------------------------------------------------------
Tue Mar 20 11:02:22 UTC 2018 - wbauer@tmo.at
- Update to 3.1.0:
* General
+ Bump soname for the libraries to separate from incompatible
3.0.x versions
+ Add Python 3 support for the buildsystem
* New features
+ Add support for custom page width/height
+ Add more page sizes
* API changes
+ see https://community.kde.org/Kexi/Releases/3.1.0_Changes for
details
* Bug fixes
+ Fix rendering asynchronously rendered elements such as maps and
web boxes
+ Stability fixes from Coverity tests
+ Fix build warnings and clear up init() code for items
+ Fix crash in SortedField when copy-constructing
+ Fix usage of QPageLayout by calling the non default constructor
+ Port QRegExp to QRegularExpression
+ Remove unnescessary strings for translation
+ Linestyle width > weight
+ Fix initialization of report elements created by user, e.g.
barcodes had invalid default settings
+ Fix field type not updating report dirty state
+ Improve detection of scripting in reports
+ Set the default interpreter to Javascript if it is empty
+ Fix interpreter if empty
+ Add missing features from 2.9
+ Always save the interpreter as javascript if empty
+ Fix broken logic related to looping over report elements
+ Fix recursion crash when item is smaller than scene
+ Change X-KReport-Priority field in .desktop files to
X-KReport-PluginInfo-Priority
+ Fix horizontal alignment for barcode scripting and use
alignment enum
+ Make KReport build and kreportexample run also when
KREPORT_SCRIPTING is OFF
+ Fix crash when showing first-page section
+ Fix crash when pasting line element
+ Improve initialization of properties in Report Designer
+ Use suffix option from the new KProperty instead of units;
implement units locally in KReport
* Docs and examples
+ Enable creation of API docs QCH file during the build
+ Add and improve user scripting API docs from 2.9
+ Add brief docs for exported classes
- Add separate lang subpackage that contains the new translations
-------------------------------------------------------------------
Wed Feb 28 12:23:15 UTC 2018 - wbauer@tmo.at
- Add python-base build requirement to fix build in Leap 15
-------------------------------------------------------------------
Sat Aug 12 13:10:24 UTC 2017 - wbauer@tmo.at
- Update to 3.0.2:
* General
- New: Port the Group dialog widget from Qt 4.
- Fix loading of pen style data (kde#378561)
- Improvements of handling pen width. Set step value of 1.0.
- Improve accuracy of line weight property.
- Fix initialization of report elements created by user, e.g.
barcodes had invalid default settings
- Fix possible crashes while switching from design view to
preview
- Improve detection of scripting. Always save the script,
regardless of whether or not the object script is empty, this
way and default to the original script, unless the object
script has been changed so the original interpreter should be
saved properly.
- Set the default interpreter to JavaScript if empty
* Buildsystem
- Make sure KProperty* libs are not newer than 3.0.x
* Tests
- Fix HeadersTest for paths containing spaces
-------------------------------------------------------------------
Tue Apr 4 17:57:45 UTC 2017 - wbauer@tmo.at
- Update to 3.0.1:
* General
- Add 24x24 icons, useful on classic Windows
- Try to locate rcc files in PATH subdirs too, useful for
running apps from the build dir, without installing
- Fix async rendering of map item (Review #3028)
- Add all PROJECT_STABLE* and KREPORT_TESTING_EXPORT constants
- Synchronize plugin versions with KReport version: 3.0
- Check for plugin versions and duplicates in the plugin
manager
- Fix uninitialized variables in KReportItemMaps()
- Fix uninitialized variables in KReportItemText(), OROCheck(),
KReportPluginMetaData::Private()
- Add checks for nullptrs in KReportItemWeb, KReportItemMaps,
KReportItemChart
- Add missing initializations in KReportSectionData
- Add missing initializations in KReportItemBarcode
- Add BoundedTextItem init, make the type qreal [0..1] for
consistency with Qt
- Keep apps in the same bin dir so resources that are kept
relative to this dir can be found without installing
* Buildsystem
- macro kreport_add_icons_rcc_file: generate rcc icons in the
builddir/bin/data/icons/ dir so it can be used within the
builddir
- Use ecm_install_po_files_as_qm macro for Qt Translation
catalogs
- Fix finding KReport config - use
ecm_configure_package_config_file macro
- Drop unused KF5I18n BuildRequires
-------------------------------------------------------------------
Wed Jan 11 09:47:46 UTC 2017 - jengelh@inai.de
- RPM group fix
-------------------------------------------------------------------
Sun Jan 8 11:13:53 UTC 2017 - tittiatcoke@gmail.com
- Initial package based on version 3.0.0

104
kreport.spec Normal file
View File

@ -0,0 +1,104 @@
#
# spec file for package kreport
#
# 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 sover 4
Name: kreport
Version: 3.2.0
Release: 0
Summary: Framework for creation and generation of reports
License: LGPL-2.0-only
URL: https://community.kde.org/KReport
Source0: https://download.kde.org/stable/%{name}/src/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM
Patch0: Fix-kexi-build-with-GCC-10.patch
# PATCH-FIX-UPSTREAM -- find python3
Patch1: 0001-Find-also-Python3-with-find_package-PythonInterp.patch
BuildRequires: extra-cmake-modules
BuildRequires: python3-base
BuildRequires: cmake(KF5Config)
BuildRequires: cmake(KF5CoreAddons)
BuildRequires: cmake(KF5GuiAddons)
BuildRequires: cmake(KF5WidgetsAddons)
BuildRequires: cmake(KPropertyCore)
BuildRequires: cmake(Qt5Core)
BuildRequires: cmake(Qt5LinguistTools)
BuildRequires: cmake(Qt5PrintSupport)
BuildRequires: cmake(Qt5Qml)
BuildRequires: cmake(Qt5Widgets)
BuildRequires: cmake(Qt5Xml)
%description
A framework for creation and generation of reports in multiple formats
%package -n libKReport3-%{sover}
Summary: The library for the Report Creation and generation Framework
Requires: kreport >= %{version}
%description -n libKReport3-%{sover}
The main library for the Report creation and generation framework
%package devel
Summary: Development package for KReport
Requires: libKReport3-%{sover} = %{version}
Requires: cmake(KPropertyCore)
Requires: cmake(Qt5Qml)
%description devel
Development package for the Report Creation and Generation framework
%lang_package
%prep
%autosetup -p1
sed -i 's#/usr/bin/env python$#/usr/bin/python3#' tools/sdc.py
%build
%cmake_kf5 -d build
%cmake_build
%install
%kf5_makeinstall -C build
%find_lang %{name} %{name}.lang --all-name --with-qt
# The pkgconfig files contain incorrect stuff
rm %{buildroot}%{_libdir}/pkgconfig/KReport3.pc
%ldconfig_scriptlets -n libKReport3-%{sover}
%files -n libKReport3-%{sover}
%license COPYING.LIB
%{_libdir}/libKReport3.so.*
%files
%{_kf5_plugindir}/kreport3/
%{_kf5_servicetypesdir}/kreport_elementplugin.desktop
%{_kf5_sharedir}/kreport3/
%files devel
%license COPYING*
%{_includedir}/KReport3/
%{_kf5_cmakedir}/KReport3/
%{_kf5_libdir}/libKReport3.so
%{_kf5_mkspecsdir}/qt_KReport3.pri
%files lang -f %{name}.lang
%changelog