File mingw32-karchive.spec of Package mingw32-karchive

#
# spec file for package mingw32-karchive
#
# 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   libKF5Archive5
%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}')}
# Only needed for the package signature condition
%bcond_without lang
%define _name   karchive
Name:           mingw32-%{_name}
Version:        5.103.0
Release:        0
Summary:        Qt 5 addon providing access to numerous types of archives
License:        LGPL-2.1-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
# for native build
BuildRequires:  cmake(Qt5Core)
BuildRequires:  cmake(Qt5LinguistTools)
BuildRequires:  cmake(Qt5Network)
BuildRequires:  mingw32-cross-extra-cmake-modules >= 1.8.0
BuildRequires:  pkgconfig(bzip2)
BuildRequires:  pkgconfig(liblzma)
BuildRequires:  pkgconfig(zlib)
BuildRequires:  pkgconfig(libzstd)

BuildRequires:  mingw32-cross-cmake
BuildRequires:  mingw32-cross-gcc-c++
BuildRequires:  mingw32-extra-cmake-modules >= %{_mingw32_kf5_bugfix_version}
BuildRequires:  mingw32-kf5-filesystem
BuildRequires:  mingw32(cmake:Qt5Core) >= 5.11.0
BuildRequires:  mingw32(cmake:Qt5LinguistTools) >= 5.11.0
BuildRequires:  mingw32(lib:bz2)
BuildRequires:  mingw32(pkg:liblzma)
BuildRequires:  mingw32(pkg:zlib)
Recommends:     %{name}-lang = %{version}
%_mingw32_package_header_debug

%description
KArchive provides classes for easy reading, creation and manipulation of
"archive" formats like ZIP and TAR.

If also provides transparent compression and decompression of data, like the
GZip format, via a subclass of QIODevice.

%package -n mingw32-%{lname}
Summary:        Qt 5 addon providing access to numerous types of archives
Group:          System/GUI/KDE
%requires_ge    mingw32-libQt5Core5
BuildArch:      noarch

%description -n mingw32-%{lname}
KArchive provides classes for easy reading, creation and manipulation of
"archive" formats like ZIP and TAR.

If also provides transparent compression and decompression of data, like the
GZip format, via a subclass of QIODevice.

%package -n mingw32-cross-%{lname}
Summary:        Qt 5 addon providing access to numerous types of archives
Group:          System/GUI/KDE
%requires_ge    libQt5Core5

%description -n mingw32-cross-%{lname}
KArchive provides classes for easy reading, creation and manipulation of
"archive" formats like ZIP and TAR.

If also provides transparent compression and decompression of data, like the
GZip format, via a subclass of QIODevice.

%package -n mingw32-cross-karchive-devel
Summary:        Native utilities for KDocTools
Group:          Development/Libraries/KDE
Requires:       mingw32-cross-%{lname}

%description -n mingw32-cross-karchive-devel
Native utilities for KDoctools to generate documentation in various format from DocBook files.

%package devel
Summary:        Qt 5 addon providing access to numerous types of archives: Build Environment
Group:          Development/Libraries/KDE
BuildRequires:  mingw32-cross-gcc-c++
Requires:       mingw32-%{lname} = %{version}
Requires:       mingw32-extra-cmake-modules
Requires:       mingw32(cmake:Qt5Core) >= 5.11.0
BuildArch:      noarch

%description devel
KArchive provides classes for easy reading, creation and manipulation of
"archive" formats like ZIP and TAR.

If also provides transparent compression and decompression of data, like the
GZip format, via a subclass of QIODevice. Development files

%if %{with lang}
%lang_package
%endif

%_mingw32_debug_package

%prep
%setup -q -n %{_name}-%{version}

%build
  cmake -B native-build -DCMAKE_INSTALL_PREFIX=/usr/%{_mingw32_target}
  cmake --build native-build

  %_mingw32_cmake_kf5 -d build
  %_mingw32_cmake_build

%install
  cmake --build native-build/ -t install  DESTDIR=%{buildroot}

  %_mingw32_kf5_makeinstall -C build

%if %{with lang}
%_mingw32_find_lang %{_name}5 --all-name --with-qt --without-mo
%endif

%if %{with lang}
%files lang -f %{_name}5.lang
%exclude %{_prefix}/%{_mingw32_target}/share/locale
%endif

%ldconfig_scriptlets -n mingw32-cross-%{lname}

%files -n mingw32-%{lname}
%license LICENSES/*
%doc README*
%{_mingw32_kf5_debugdir}/karchive.categories
%{_mingw32_kf5_debugdir}/*.renamecategories
%{_mingw32_kf5_bindir}/libKF5Archive*.dll

%files -n mingw32-cross-%{lname}
%license LICENSES/*
%doc README*
#%%{_mingw32_kf5_debugdir}/karchive.categories
#%%{_mingw32_kf5_debugdir}/*.renamecategories
%{_prefix}/%{_mingw32_target}/%{_lib}/libKF5Archive.so.*

%files -n mingw32-cross-karchive-devel
%{_prefix}/%{_mingw32_target}
%exclude %{_prefix}/%{_mingw32_target}/%{_lib}/libKF5Archive.so.*
%exclude %{_mingw32_prefix}

%files devel
%{_mingw32_kf5_libdir}/libKF5Archive.dll.a
%{_mingw32_kf5_libdir}/cmake/KF5Archive/
%{_mingw32_kf5_includedir}/
%{_mingw32_kf5_mkspecsdir}/qt_KArchive.pri

%changelog
openSUSE Build Service is sponsored by