diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..7e1ef7361c0c425300666c33c07b395359100e58 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.bz2 filter=lfs diff=lfs merge=lfs -text diff --git a/.lfsconfig b/.lfsconfig new file mode 100644 index 0000000000000000000000000000000000000000..9ac0b8afcab2fb3c8e28a601a7866ba96ac3b955 --- /dev/null +++ b/.lfsconfig @@ -0,0 +1,2 @@ +[lfs] + url = https://artlfs.openeuler.openatom.cn/src-openEuler/gpgme diff --git a/gpgme-1.24.3.tar.bz2 b/gpgme-1.24.3.tar.bz2 index dfff19c1cfcaf371448db0de2a3ed1d8f8409f5d..d28d206b060b44f40e9431ee3ed023aac2215fd8 100644 Binary files a/gpgme-1.24.3.tar.bz2 and b/gpgme-1.24.3.tar.bz2 differ diff --git a/gpgme-2.0.0.tar.bz2 b/gpgme-2.0.0.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..ffdbc2f0dff5f2a1976df49f5c1f2a6cf2b518e8 --- /dev/null +++ b/gpgme-2.0.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddf161d3c41ff6a3fcbaf4be6c6e305ca4ef1cc3f1ecdfce0c8c2a167c0cc36d +size 1383911 diff --git a/gpgme.spec b/gpgme.spec index 36ebab282a10e586569c887d1d29f3e942acddc3..224fe57788ca3da177d9e88af6de673e45719e99 100644 --- a/gpgme.spec +++ b/gpgme.spec @@ -1,29 +1,30 @@ +%bcond_without build_compat + +%if %{with build_compat} +%define compat_version 1.24.3 +%endif + Name: gpgme -Version: 1.24.3 -Release: 2 +Version: 2.0.0 +Release: 1 Summary: GnuPG Made Easy License: LGPL-2.1-or-later AND MIT URL: https://gnupg.org/related_software/gpgme/ Source0: https://gnupg.org/ftp/gcrypt/gpgme/gpgme-%{version}.tar.bz2 +%if %{with build_compat} +Source10: https://gnupg.org/ftp/gcrypt/gpgme/gpgme-%{compat_version}.tar.bz2 +%endif -# upstream patches # Don't add extra libs/cflags in gpgme-config/cmake equivalent Patch0: 0001-don-t-add-extra-libraries-for-linking.patch # add -D_FILE_OFFSET_BITS... to gpgme-config, upstreamable Patch1: gpgme-1.3.2-largefile.patch Patch3: backport-0002-setup_py_extra_opts.patch -BuildRequires: make gcc gcc-c++ +BuildRequires: make gcc BuildRequires: gnupg2 >= 2.2.24 BuildRequires: libassuan-devel >= 2.4.2 BuildRequires: libgpg-error-devel >= 1.47 -BuildRequires: python3-devel -BuildRequires: swig -BuildRequires: cmake-rpm-macros -BuildRequires: pkgconfig(Qt5Core) >= 5.0.0 -BuildRequires: pkgconfig(Qt5Test) >= 5.0.0 -BuildRequires: pkgconfig(Qt6Core) >= 6.4.0 -BuildRequires: pkgconfig(Qt6Test) >= 6.4.0 Requires: gnupg2 >= 2.2.24 Provides: %{name}%{?_isa} = %{version}-%{release} @@ -33,104 +34,49 @@ GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification and key management. -This package provides C/C++/Qt/Python API support for GPGME. - -%package -n %{name}pp -Summary: C++ API wrapper for GPGME -Requires: %{name} >= %{version} -Obsoletes: gpgme-pp < 1.8.0-7 -Obsoletes: cpp-gpgme < %{version}-%{release} -Provides: gpgme-pp = %{version}-%{release} -Provides: gpgme-pp%{?_isa} = %{version}-%{release} -Provides: cpp-gpgme = %{version}-%{release} -Provides: %{name}pp%{?_isa} = %{version}-%{release} - -%description -n %{name}pp -%{summary}. - -%package -n q%{name}-qt5 -Summary: Qt5 API bindings/wrapper for GPGME -Requires: %{name}pp >= %{version} -Obsoletes: q%{name} < %{version}-%{release} -Obsoletes: qt-%{name} < %{version}-%{release} -Provides: q%{name} = %{version}-%{release} - -%description -n q%{name}-qt5 -%{summary}. - -%package -n q%{name}-qt6 -Summary: Qt6 API bindings/wrapper for GPGME -Requires: %{name}pp >= %{version} - -%description -n q%{name}-qt6 -%{summary}. - -%package -n python3-%{name} -Summary: %{name} bindings for Python3 -%{?python_provide:%python_provide python3-gpg} -Requires: %{name} >= %{version} -Obsoletes: platform-python-gpg < %{version}-%{release} -Obsoletes: python3-gpg < %{version}-%{release} -Provides: python3-gpg = %{version}-%{release} - -%description -n python3-%{name} -%{summary}. %package devel Summary: Development headers and libraries for %{name} Requires: %{name} = %{version}-%{release} -Requires: %{name}pp = %{version}-%{release} -Requires: libgpg-error-devel >= 1.36 -Obsoletes: gpgme-pp-devel < 1.8.0-7 -Provides: gpgme-pp-devel = %{version}-%{release} -Obsoletes: %{name}pp-devel < %{version}-%{release} -Provides: %{name}pp-devel = %{version}-%{release} +Requires: libgpg-error-devel >= 1.47 %description devel %{summary}. -%package -n q%{name}-common-devel -Summary: Common development header files for %{name}-qt5 and %{name}-qt6 -Requires: %{name}pp-devel = %{version}-%{release} - -%description -n q%{name}-common-devel -%{summary}. - -%package -n q%{name}-qt5-devel -Summary: Development libraries and header files for %{name}-qt5 -Requires: q%{name}-qt5 = %{version}-%{release} -Requires: gpgmepp-devel = %{version}-%{release} -Obsoletes: q%{name}-devel < %{version}-%{release} -Provides: q%{name}-devel = %{version}-%{release} -Conflicts: gpgme-devel < 1.24.0 - -%description -n q%{name}-qt5-devel -%{summary}. - -%package -n q%{name}-qt6-devel -Summary: Development libraries and header files for %{name}-qt6 -Requires: q%{name}-qt6 = %{version}-%{release} -Requires: gpgmepp-devel = %{version}-%{release} - -%description -n q%{name}-qt6-devel -%{summary}. - %package_help %prep -%autosetup -n %{name}-%{version} -p1 +%setup -qn %{name}-%{version} +%patch -P1 -p1 + +%if %{with build_compat} +%{__rpmuncompress} -x %{S:10} +pushd gpgme-%{compat_version} +%autopatch -p1 +popd +%endif %build -%configure --disable-static --disable-silent-rules --enable-languages=cpp,qt5,qt6,python +%configure --disable-static --disable-silent-rules --enable-languages="" +%make_build + +%if %{with build_compat} +pushd gpgme-%{compat_version} +%configure --disable-static --disable-silent-rules --enable-languages="" %make_build +popd +%endif %install -# The SETUP_PY_EXTRA_OPTS used in the patch backport-0002-setup_py_extra_opts.patch -# This forces setuptools to use .egg-info format -export SETUP_PY_EXTRA_OPTS="--single-version-externally-managed --root=/" %make_install %delete_la +%if %{with build_compat} +pushd gpgme-%{compat_version} +install -m0755 src/.libs/libgpgme.so.* %{buildroot}%{_libdir}/ +popd +%endif + # Delete unpackaged files rm -fv %{buildroot}%{_infodir}/dir @@ -141,52 +87,28 @@ rm -fv %{buildroot}%{_infodir}/dir %license COPYING* %doc AUTHORS ChangeLog NEWS README THANKS TODO VERSION %{_bindir}/%{name}-json +%{_libdir}/lib%{name}.so.45* +%if %{with build_compat} %{_libdir}/lib%{name}.so.11* - -%files -n %{name}pp -%doc lang/cpp/README -%{_libdir}/lib%{name}pp.so.* - -%files -n q%{name}-qt5 -%doc lang/qt/README -%{_libdir}/libq%{name}.so.* - -%files -n q%{name}-qt6 -%{_libdir}/libq%{name}qt6.so.* - -%files -n python3-%{name} -%doc lang/python/README -%{python3_sitearch}/gpg-*.egg-info -%{python3_sitearch}/gpg/ +%endif %files devel %{_bindir}/%{name}-config %{_bindir}/%{name}-tool %{_includedir}/%{name}.h -%{_includedir}/%{name}++ %{_libdir}/lib%{name}.so -%{_libdir}/lib%{name}pp.so %{_libdir}/pkgconfig/%{name}.pc %{_libdir}/pkgconfig/%{name}-glib.pc -%{_libdir}/pkgconfig/%{name}pp.pc %{_datadir}/aclocal/%{name}.m4 -%{_libdir}/cmake/Gpgmepp - -%files -n q%{name}-qt5-devel -%{_includedir}/q%{name}-qt5/ -%{_libdir}/libq%{name}.so -%{_libdir}/cmake/QGpgme/ - -%files -n q%{name}-qt6-devel -%{_includedir}/q%{name}-qt6/ -%{_libdir}/libq%{name}qt6.so -%{_libdir}/cmake/QGpgmeQt6/ %files help %{_infodir}/%{name}.info* %{_mandir}/man?/* %changelog +* Sun Jun 29 2025 Funda Wang - 2.0.0-1 +- update to 2.0.0 + * Sun Jun 22 2025 Funda Wang - 1.24.3-2 - loosen version requirement for upgrading towards 2.0