File mingw32-plasma-framework.spec of Package mingw32-plasma-framework
#
# spec file for package mingw32-plasma-framework
#
# Copyright (c) 2019 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 lname libKF5Plasma5
%define _tar_path 5.103
# Full KF5 version (e.g. 5.33.0)
%{!?_mingw32_kf5_version: %global _mingw32_kf5_version %{version}}
# Last major and minor KF5 version (e.g. 5.33)
%{!?_mingw32_kf5_bugfix_version: %define _mingw32_kf5_bugfix_version %(echo %{_mingw32_kf5_version} | awk -F. '{print $1"."$2}')}
%bcond_without lang
%define _name plasma-framework
Name: mingw32-%{_name}
Version: 5.103.0
Release: 0
Summary: Plasma library and runtime components based upon KF5 and Qt5
License: GPL-2.0-or-later AND LGPL-2.0-or-later
Group: System/GUI/KDE
URL: https://www.kde.org
Source: https://download.kde.org/stable/frameworks/%{_tar_path}/%{_name}-%{version}.tar.xz
%if %{with lang}
Source1: https://download.kde.org/stable/frameworks/%{_tar_path}/%{_name}-%{version}.tar.xz.sig
Source2: frameworks.keyring
%endif
# PATCH-FIX-UPSTREAM
Patch1: plasma-framework-5.103.0-fix-mingw-build.patch
BuildRequires: mingw32-extra-cmake-modules >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32-kf5-filesystem
# BuildRequires: libxcb-devel
BuildRequires: p7zip-full
BuildRequires: xz
BuildRequires: mingw32(cmake:KF5Activities) >= 5.19.0
BuildRequires: mingw32(cmake:KF5Archive) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Config) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5ConfigWidgets) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5CoreAddons) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5DBusAddons) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Declarative) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5DocTools) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5GlobalAccel) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5GuiAddons) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5I18n) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5IconThemes) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5KIO) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Kirigami2) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Notifications) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Package) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Parts) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5Service) >= %{_mingw32_kf5_bugfix_version}
%if 0
BuildRequires: mingw32(cmake:KF5Wayland) >= %{_mingw32_kf5_bugfix_version}
%endif
BuildRequires: mingw32(cmake:KF5WindowSystem) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:KF5XmlGui) >= %{_mingw32_kf5_bugfix_version}
BuildRequires: mingw32(cmake:Qt5Concurrent) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Gui) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Qml) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Quick) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5QuickControls2) >= 5.7.0
BuildRequires: mingw32(cmake:Qt5Sql) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Svg) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Test) >= 5.11.0
BuildRequires: mingw32(cmake:Qt5Widgets) >= 5.11.0
# BuildRequires: cmake(Qt5X11Extras) >= 5.11.0
# BuildRequires: pkgconfig(egl)
# BuildRequires: pkgconfig(x11)
Recommends: %{name}-components = %{version}
Recommends: %{name}-lang = %{version}
Provides: %{name}-private = %{version}
Obsoletes: %{name}-private < %{version}
%if 0
%ifarch %{arm} aarch64
BuildRequires: mingw32(pkg:glesv2)
%else
BuildRequires: mingw32(pkg:gl)
%endif
%endif
%_mingw32_package_header_debug
BuildArch: noarch
%description
Plasma library and runtime components based upon KF5 and Qt5
%package -n mingw32-%{lname}
Summary: Plasma framework - core libraries
Group: System/GUI/KDE
Conflicts: %{name} < 5.49
Conflicts: %{name}-private < 5.49
%description -n mingw32-%{lname}
This package contains the core libraries needed by the Plasma framework.
%package components
Summary: Plasma QML components
Group: Development/Libraries/KDE
Requires: %{name} = %{version}
Requires: %{name}-private = %{version}
Requires: mingw32-libqt5-qtquickcontrols
Requires: mingw32-libqt5-qtquickcontrols2
%requires_ge mingw32-kdeclarative-components
# TODO: not detected by qmlpluginexports
Provides: mingw32(qt5qmlimport:org.kde.plasma.plasmoid.2)
%description components
Plasma QML and runtime components based upon KF5 and Qt5
%package devel
Summary: Plasma library and runtime components
Group: Development/Libraries/KDE
Requires: mingw32-%{lname} = %{version}
Requires: %{name} = %{version}
Requires: %{name}-components = %{version}
Requires: %{name}-private = %{version}
Requires: mingw32-extra-cmake-modules >= 1.7.0
Requires: mingw32-kf5-filesystem
Requires: mingw32(cmake:KF5Package) >= %{_mingw32_kf5_bugfix_version}
Requires: mingw32(cmake:KF5Service) >= %{_mingw32_kf5_bugfix_version}
Requires: mingw32(cmake:KF5WindowSystem) >= %{_mingw32_kf5_bugfix_version}
Requires: mingw32(cmake:Qt5Gui) >= 5.11.0
Requires: mingw32(cmake:Qt5Qml) >= 5.11.0
Requires: mingw32(cmake:Qt5Quick) >= 5.11.0
Conflicts: mingw32-kapptemplate <= 15.12.3
%description devel
Plasma library and runtime components based upon KF5 and Qt5
%lang_package
%_mingw32_debug_package
%prep
%autosetup -p1 -n %{_name}-%{version}
%build
%_mingw32_cmake_kf5 -d build -- -D7z_EXECUTABLE=/usr/bin/7za -D7z_FOUND=1 -DWITHOUT_X11=1
%_mingw32_cmake_build
%install
%_mingw32_kf5_makeinstall -C build
%if %{with lang}
%_mingw32_find_lang %{_name} --with-man --all-name
%endif
%pre
# Was part of plasma-framework previously, so remove it
if [ $1 -eq 2 ] ; then
update-alternatives --remove input.svgz \
%{_mingw32_datadir}/plasma/desktoptheme/default/icons/input.svgz-kdeorg
fi
%if %{with lang}
%files lang -f %{_name}.lang
# LC_SCRIPTS is not recognized by find-lang.sh
%lang(lt) %{_mingw32_datadir}/locale/lt/LC_SCRIPTS
%endif
%files -n mingw32-%{lname}
%license LICENSES/*
%{_mingw32_kf5_bindir}/libKF5Plasma.dll
%{_mingw32_kf5_bindir}/libKF5PlasmaQuick.dll
%{_mingw32_kf5_debugdir}/plasma-framework.categories
%{_mingw32_kf5_debugdir}/*.renamecategories
%files
%license LICENSES/*
%{_mingw32_kf5_bindir}/*.exe
%{_mingw32_kf5_plugindir}/
%exclude %{_mingw32_kf5_plugindir}/*/*/*.debug
%{_mingw32_kf5_plasmadir}/
%{_mingw32_kf5_servicetypesdir}/
%{_mingw32_kf5_mandir}/man1/plasmapkg*.*
%files components
%license LICENSES/*
%{_mingw32_kf5_qmldir}/
%exclude %{_mingw32_kf5_qmldir}/org/kde/plasma/*/*.debug
%files devel
%license LICENSES/*
%{_mingw32_kf5_includedir}
%{_mingw32_kf5_libdir}/cmake/*/
%{_mingw32_kf5_libdir}/libKF5Plasma.dll.a
%{_mingw32_kf5_libdir}/libKF5PlasmaQuick.dll.a
%{_mingw32_kf5_sharedir}/kdevappwizard
%changelog