diff --git a/0001-fix-stupid-ax_python_devel.patch b/0001-fix-stupid-ax_python_devel.patch index 46ad827..c4f87c5 100644 --- a/0001-fix-stupid-ax_python_devel.patch +++ b/0001-fix-stupid-ax_python_devel.patch @@ -8,93 +8,105 @@ 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]) +diff -up gpgme-1.22.0/configure.stupid gpgme-1.22.0/configure +--- gpgme-1.22.0/configure.stupid 2023-08-21 09:46:33.000000000 +0200 ++++ gpgme-1.22.0/configure 2023-10-10 12:31:08.317796779 +0200 +@@ -23374,7 +23374,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } 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]) + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else - AC_MSG_RESULT([no]) -diff --git a/configure b/configure -index 6200f91..6a3d6f1 100755 ---- a/configure -+++ b/configure -@@ -19880,7 +19868,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -24146,7 +24146,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -20510,7 +20498,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -24918,7 +24918,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -21140,7 +21128,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -25690,7 +25690,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -21770,7 +21758,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -26462,7 +26462,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -22400,7 +22388,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -27234,7 +27234,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -23030,7 +23018,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -28006,7 +28006,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -23660,7 +23648,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -28778,7 +28778,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else -@@ -24290,7 +24278,7 @@ variable to configure. See \`\`configure --help'' for reference. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 - $as_echo_n "checking for the distutils Python package... " >&6; } +@@ -29550,7 +29550,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` - if test -z "$ac_distutils_result"; then + if test $? -eq 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 - $as_echo "yes" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } + else +@@ -30322,7 +30322,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } + ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` +- if test -z "$ac_distutils_result"; then ++ if test $? -eq 0; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } + else +@@ -31094,7 +31094,7 @@ variable to configure. See \`\`configure + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the distutils Python package" >&5 + printf %s "checking for the distutils Python package... " >&6; } + ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` +- if test -z "$ac_distutils_result"; then ++ if test $? -eq 0; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + printf "%s\n" "yes" >&6; } else diff --git a/gpgme-1.22.0-ftbfs-aee18a2a.patch b/gpgme-1.22.0-ftbfs-aee18a2a.patch new file mode 100644 index 0000000..5f4a7dd --- /dev/null +++ b/gpgme-1.22.0-ftbfs-aee18a2a.patch @@ -0,0 +1,40 @@ +From aee18a2ab2498bc6092bef518c532796bbe5b502 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 22 Aug 2023 00:12:05 +0200 +Subject: [PATCH] qt,tests: Fix build in source directory, part 2 + +* lang/qt/tests/Makefile.am (AM_CPPFLAGS): Include Qt binding sources +before C++ binding sources and C sources. +-- + +This fixes the problem that the debug.h in the C sources was found +before the one in the Qt bindings. + +Commit d23528cadf4284f508bc4ba05e1b5c14b46bd354 fixed it for Qt5, we +need Qt6 as well. + +GnuPG-bug-id: 6673 +--- + lang/qt/tests/Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am +index aedd3264..615daf6d 100644 +--- a/lang/qt/tests/Makefile.am ++++ b/lang/qt/tests/Makefile.am +@@ -62,10 +62,10 @@ LDADD = ../../cpp/src/libgpgmepp.la ../src/libqgpgmeqt6.la \ + ../../../src/libgpgme.la @GPGME_QT6_LIBS@ @GPG_ERROR_LIBS@ \ + @GPGME_QT6TEST_LIBS@ @LDADD_FOR_TESTS_KLUDGE@ -lstdc++ + +-AM_CPPFLAGS = -I$(top_srcdir)/lang/cpp/src -I$(top_builddir)/src \ ++AM_CPPFLAGS = -I$(top_srcdir)/lang/qt/src -I$(top_srcdir)/lang/cpp/src \ ++ -I$(top_builddir)/src \ + @GPG_ERROR_CFLAGS@ @GPGME_QT6_CFLAGS@ @GPG_ERROR_CFLAGS@ \ + @LIBASSUAN_CFLAGS@ @GPGME_QT6TEST_CFLAGS@ -DBUILDING_QGPGME \ +- -I$(top_srcdir)/lang/qt/src \ + -DTOP_SRCDIR="$(top_srcdir)" + endif + +-- +2.30.2 + diff --git a/gpgme-1.22.0-ftbfs-d23528ca.patch b/gpgme-1.22.0-ftbfs-d23528ca.patch new file mode 100644 index 0000000..c93477d --- /dev/null +++ b/gpgme-1.22.0-ftbfs-d23528ca.patch @@ -0,0 +1,37 @@ +From d23528cadf4284f508bc4ba05e1b5c14b46bd354 Mon Sep 17 00:00:00 2001 +From: =?utf8?q?Ingo=20Kl=C3=B6cker?= +Date: Mon, 21 Aug 2023 21:08:01 +0200 +Subject: [PATCH] qt,tests: Fix build in source directory + +* lang/qt/tests/Makefile.am (AM_CPPFLAGS): Include Qt binding sources +before C++ binding sources and C sources. +-- + +This fixes the problem that the debug.h in the C sources was found +before the one in the Qt bindings. + +GnuPG-bug-id: 6673 +--- + lang/qt/tests/Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am +index 32ad6466..aedd3264 100644 +--- a/lang/qt/tests/Makefile.am ++++ b/lang/qt/tests/Makefile.am +@@ -51,10 +51,10 @@ LDADD = ../../cpp/src/libgpgmepp.la ../src/libqgpgme.la \ + ../../../src/libgpgme.la @GPGME_QT5_LIBS@ @GPG_ERROR_LIBS@ \ + @GPGME_QT5TEST_LIBS@ @LDADD_FOR_TESTS_KLUDGE@ -lstdc++ + +-AM_CPPFLAGS = -I$(top_srcdir)/lang/cpp/src -I$(top_builddir)/src \ ++AM_CPPFLAGS = -I$(top_srcdir)/lang/qt/src -I$(top_srcdir)/lang/cpp/src \ ++ -I$(top_builddir)/src \ + @GPG_ERROR_CFLAGS@ @GPGME_QT5_CFLAGS@ @GPG_ERROR_CFLAGS@ \ + @LIBASSUAN_CFLAGS@ @GPGME_QT5TEST_CFLAGS@ -DBUILDING_QGPGME \ +- -I$(top_srcdir)/lang/qt/src \ + -DTOP_SRCDIR="$(top_srcdir)" + endif + if WANT_QT6 +-- +2.30.2 + diff --git a/gpgme.spec b/gpgme.spec index 10917ac..04667a2 100644 --- a/gpgme.spec +++ b/gpgme.spec @@ -6,9 +6,12 @@ %global gnupg2_min_ver 2.2.24 %global libgpg_error_min_ver 1.36 +# we are doing out of source build +%global _configure ../configure + Name: gpgme Summary: GnuPG Made Easy - high level crypto API -Version: 1.20.0 +Version: 1.22.0 Release: %autorelease # MIT: src/cJSON.{c,h} (used by gpgme-json) @@ -31,6 +34,10 @@ Patch1004: 0002-setup_py_extra_opts.patch # Skip lang/qt/tests/t-remarks on gnupg 2.4+ Patch3001: 1001-qt-skip-test-remarks-for-gnupg2-2.4.patch +# fix FTBFS caused by include path order, for <= 1.22.0 +Patch3002: gpgme-1.22.0-ftbfs-aee18a2a.patch +Patch3003: gpgme-1.22.0-ftbfs-d23528ca.patch + BuildRequires: make BuildRequires: cmake BuildRequires: gcc @@ -172,12 +179,6 @@ sed -i -e 's|^libdir=@libdir@$|libdir=@exec_prefix@/lib|g' src/gpgme-config.in # https://github.com/gpg/gpgme/pull/4 sed -i 's/3.8/%{python3_version}/g' configure -# copy to a qt6 build directory as both can't be build in the same directory -%if %{with qt5} && %{with qt6} -cd .. -cp -r gpgme-%{version} gpgme-%{version}-qt6 -%endif - %build # People neeed to learn that you can't run autogen.sh anymore #./autogen.sh @@ -191,16 +192,23 @@ export CXXFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' export CFLAGS="$(echo ${CFLAGS} | tr '\n\\' ' ')" export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\\' ' ')" export SETUPTOOLS_USE_DISTUTILS=local +#export PYTHON=%{python3} +#export PYTHON_VERSION=%{python3_version} # Also build either qt5 or qt6 +mkdir build +pushd build %configure --disable-static --disable-silent-rules --enable-languages=cpp,%{?with_qt5:qt,}%{!?with_qt5:%{?with_qt6:qt6,}}python %make_build +popd # Build qt6 in extra step if qt5 has been build %if %{with qt5} && %{with qt6} -cd ../gpgme-%{version}-qt6 +mkdir build-qt6 +pushd build-qt6 %configure --disable-static --disable-silent-rules --enable-languages=cpp,qt6,python %make_build +popd %endif %install @@ -209,12 +217,15 @@ cd ../gpgme-%{version}-qt6 # SETUP_PY_EXTRA_OPTS is introduced by the Patch1004 above. export SETUPTOOLS_USE_DISTUTILS=local export SETUP_PY_EXTRA_OPTS="--single-version-externally-managed --root=/" -# Also install either qt5 or qt6 +# Aliso install either qt5 or qt6 +pushd build %make_install +popd # Install qt6 in extra step if qt5 has been installed %if %{with qt5} && %{with qt6} -cd ../gpgme-%{version}-qt6 +pushd build-qt6 %make_install +popd %endif # unpackaged files @@ -251,7 +262,9 @@ rm -vf %{buildroot}%{python3_sitelib}/gpg/install_files.txt %if %{with check} %check +pushd build make check +popd %endif %files diff --git a/sources b/sources index 25fde41..f8f7173 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gpgme-1.20.0.tar.bz2) = 82dfd272edd4adab09e8428bf809c13eeb50a4a7d2397c41d29ffa3832c4f46054ad75eb053fbcc876ebbf78bb8bcf71d95bc9dad68f4b326492ea513dd5b606 \ No newline at end of file +SHA512 (gpgme-1.22.0.tar.bz2) = 17053053fa885f01416433e43072ac716b5d5db0c3edf45b2d6e90e6384d127626e6ae3ce421abba8f449f5ca7e8963f3d62f3565d295847170bc998d1ec1a70