diff --git a/0001-fix-stupid-ax_python_devel.patch b/0001-fix-stupid-ax_python_devel.patch deleted file mode 100644 index 40cf7df727776b16b841e9376bb296b32d6ce6cf..0000000000000000000000000000000000000000 --- a/0001-fix-stupid-ax_python_devel.patch +++ /dev/null @@ -1,27 +0,0 @@ -From b0eabea4b1232ee7f45d13b8add928d463f37444 Mon Sep 17 00:00:00 2001 -From: Igor Gnatenko -Date: Wed, 29 Mar 2017 07:13:35 +0200 -Subject: [PATCH] fix stupid ax_python_devel - -References: https://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=commit;h=883a2abd5af5c96be894d5ef7ee6e9a2b8e64307 -Signed-off-by: Igor Gnatenko ---- - m4/ax_python_devel.m4 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4 -index b990d5b3..318b089c 100644 ---- a/m4/ax_python_devel.m4 -+++ b/m4/ax_python_devel.m4 -@@ -137,7 +137,7 @@ variable to configure. See ``configure --help'' for reference. - # - AC_MSG_CHECKING([for the distutils Python package]) - ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` -- if test -z "$ac_distutils_result"; then -+ if test $? -eq 0; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) --- -2.12.1 - diff --git a/backport-tests-Fix-segv-in-t-json.c.patch b/backport-tests-Fix-segv-in-t-json.c.patch deleted file mode 100644 index 7157b221996f5545fc7823a0695610b03b2491e0..0000000000000000000000000000000000000000 --- a/backport-tests-Fix-segv-in-t-json.c.patch +++ /dev/null @@ -1,27 +0,0 @@ -From ac4bf86bb65a1e228550cce9314ad17239343c5d Mon Sep 17 00:00:00 2001 -From: Werner Koch -Date: Tue, 21 May 2024 14:36:07 +0200 -Subject: [PATCH] tests: Fix segv in t-json.c - -* tests/json/t-json.c (test_contains): Avoid calling recusivly with no -child. ---- - tests/json/t-json.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/json/t-json.c b/tests/json/t-json.c -index 0d127a49..4fe74ed7 100644 ---- a/tests/json/t-json.c -+++ b/tests/json/t-json.c -@@ -260,7 +260,7 @@ test_contains (cjson_t needle, cjson_t hay) - fprintf (stderr, "Depth mismatch. Expected child for %s\n", - nonnull (needle->string)); - } -- if (test_contains (needle->child, hay->child)) -+ else if (test_contains (needle->child, hay->child)) - { - int found = 0; - cjson_t hit; --- -2.33.0 - diff --git a/gpgme-1.21.0.tar.bz2 b/gpgme-1.21.0.tar.bz2 deleted file mode 100644 index d95a294f527ff77845602a7c626249a0fb45a081..0000000000000000000000000000000000000000 Binary files a/gpgme-1.21.0.tar.bz2 and /dev/null differ diff --git a/gpgme-1.24.2.tar.bz2 b/gpgme-1.24.2.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..39d44a9323f7e41d96f9f7b73c560169bf1e6af7 Binary files /dev/null and b/gpgme-1.24.2.tar.bz2 differ diff --git a/gpgme.spec b/gpgme.spec index d74a4ee3bfc5fe7292e63c47b299210c99581ea0..c219ef090d561bb178a5f602bf799937d4c79b16 100644 --- a/gpgme.spec +++ b/gpgme.spec @@ -1,8 +1,8 @@ Name: gpgme -Version: 1.21.0 -Release: 2 +Version: 1.24.2 +Release: 1 Summary: GnuPG Made Easy -License: GPLv2+ and LGPLv2+ +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 @@ -11,18 +11,23 @@ Source0: https://gnupg.org/ftp/gcrypt/gpgme/gpgme-%{version}.tar.bz2 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 -# Let's fix stupid AX_PYTHON_DEVEL -Patch2: 0001-fix-stupid-ax_python_devel.patch Patch3: backport-0002-setup_py_extra_opts.patch -Patch4: backport-tests-Fix-segv-in-t-json.c.patch -BuildRequires: autoconf automake gcc gcc-c++ gawk gnupg2 >= 2.2.24 -BuildRequires: libgpg-error-devel >= 1.36 libassuan-devel >= 2.4.2 -BuildRequires: swig chrpath cmake qt5-qtbase-devel python3-devel +BuildRequires: make gcc gcc-c++ +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} - %description GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for @@ -30,25 +35,34 @@ encryption, decryption, signing, signature verification and key management. This package provides C/C++/Qt/Python API support for GPGME. -%package -n cpp-%{name} +%package -n %{name}pp Summary: C++ API wrapper for GPGME Requires: %{name} = %{version}-%{release} Obsoletes: gpgme-pp < 1.8.0-7 -Obsoletes: %{name}pp < %{version}-%{release} +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 cpp-%{name} +%description -n %{name}pp %{summary}. -%package -n qt-%{name} -Summary: Qt API wrapper for GPGME -Requires: cpp-%{name} = %{version}-%{release} +%package -n q%{name}-qt5 +Summary: Qt5 API bindings/wrapper for GPGME +Requires: %{name}pp = %{version}-%{release} Obsoletes: q%{name} < %{version}-%{release} +Obsoletes: qt-%{name} < %{version}-%{release} Provides: q%{name} = %{version}-%{release} -%description -n qt-%{name} +%description -n q%{name}-qt5 +%{summary}. + +%package -n q%{name}-qt6 +Summary: Qt6 API bindings/wrapper for GPGME +Requires: %{name}pp = %{version}-%{release} + +%description -n q%{name}-qt6 %{summary}. %package -n python3-%{name} @@ -64,27 +78,50 @@ Provides: python3-gpg = %{version}-%{release} %package devel Summary: Development headers and libraries for %{name} -Requires: %{name} = %{version}-%{release} libgpg-error-devel >= 1.36 info +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} q%{name}-devel < %{version}-%{release} -Provides: %{name}pp-devel = %{version}-%{release} q%{name}-devel = %{version}-%{release} +Obsoletes: %{name}pp-devel < %{version}-%{release} +Provides: %{name}pp-devel = %{version}-%{release} %description devel %{summary}. -%package help -Summary: GPGME help info -BuildArch: noarch +%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 help +%description -n q%{name}-qt6-devel %{summary}. +%package_help + %prep %autosetup -n %{name}-%{version} -p1 %build -%configure --disable-static --disable-silent-rules --enable-languages=cpp,qt,python +%configure --disable-static --disable-silent-rules --enable-languages=cpp,qt5,qt6,python %make_build %install @@ -92,63 +129,69 @@ BuildArch: noarch # This forces setuptools to use .egg-info format export SETUP_PY_EXTRA_OPTS="--single-version-externally-managed --root=/" %make_install - -chrpath -d $(find %{buildroot} -name gpgme-json) +%delete_la # Delete unpackaged files rm -fv %{buildroot}%{_infodir}/dir -rm -fv %{buildroot}%{_libdir}/lib*.la - -chrpath -d %{buildroot}%{_bindir}/%{name}-tool -chrpath -d %{buildroot}%{_libdir}/lib%{name}pp.so* -chrpath -d %{buildroot}%{_libdir}/libq%{name}.so* %check -make check - -%ldconfig_scriptlets - -%post help -/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir 2>/dev/null || : - -%preun help -if [ $1 -eq 0 ] ; then - /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir 2>/dev/null || : -fi +%make_build -j1 check %files -%defattr(-,root,root) %license COPYING* %doc AUTHORS ChangeLog NEWS README THANKS TODO VERSION %{_bindir}/%{name}-json %{_libdir}/lib%{name}.so.11* -%files -n cpp-%{name} +%files -n %{name}pp %doc lang/cpp/README %{_libdir}/lib%{name}pp.so.* -%files -n qt-%{name} +%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/ %files devel -%defattr(-,root,root) -%{_bindir}/{%{name}-config,%{name}-tool} -%{_includedir}/{%{name}.h,%{name}++/,q%{name}/,QGpgME/} -%{_libdir}/{lib%{name}.so,lib%{name}pp.so,cmake/Gpgmepp/,libq%{name}.so,cmake/QGpgme/} +%{_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}/pkgconfig/%{name}*.pc +%{_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 -%defattr(-,root,root) %{_infodir}/%{name}.info* - +%{_mandir}/man?/* %changelog +* Wed Feb 12 2025 Funda Wang - 1.24.2-1 +- update to 1.24.2 +- enable qt6 binding +- split out qt5 devel package + * Fri Oct 18 2024 yixiangzhike - 1.21.0-2 - Type:bugfix - CVE:NA diff --git a/gpgme.yaml b/gpgme.yaml index e8e0407b6f4eeb586eb9870d5ae2c18cf5707c9c..3a3edd0faa5465b58c77f4fd47072b673894f139 100644 --- a/gpgme.yaml +++ b/gpgme.yaml @@ -1,4 +1,4 @@ version_control: git -src_repo: https://dev.gnupg.org/sourcegpgme.git +src_repo: https://git.gnupg.org/gpgme.git tag_prefix: ^gpgme- -seperator: . +separator: .