mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 00:32:12 +02:00
libdnf: upgrade 0.28.1 -> 0.47.0
Add a patch that avoids hardcoded sphinx dependency. Switch off a couple of new features (zchunk, html docs for hawkey library via sphinx) that both require new dependencies. Move from modulemd 1.x to 2.x, drop upstreamed patches. (From OE-Core rev: ce54462de6642935859421f2116e25ca5b2faa8c) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
e1ab20ea5a
commit
7add0b8b4d
@@ -1,4 +1,4 @@
|
||||
From e5a50db749b2b02e9e0cff9f7b639020e8ac76da Mon Sep 17 00:00:00 2001
|
||||
From 56fa2bbdbd29377a6ef0d0b7aadbac8b5ea8c95b Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Tue, 6 Nov 2018 13:54:43 +0100
|
||||
Subject: [PATCH] Add WITH_TESTS option
|
||||
@@ -14,18 +14,18 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
2 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index ce88b9e3..7a99320a 100644
|
||||
index 881152a..965c992 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -32,6 +32,7 @@ option(WITH_HTML "Enables hawkey HTML generation" ON)
|
||||
option(WITH_MAN "Enables hawkey man page generation" ON)
|
||||
@@ -33,6 +33,7 @@ option(WITH_MAN "Enables hawkey man page generation" ON)
|
||||
option(WITH_ZCHUNK "Build with zchunk support" ON)
|
||||
option(ENABLE_RHSM_SUPPORT "Build with Red Hat Subscription Manager support?" OFF)
|
||||
option(ENABLE_SOLV_URPMREORDER "Build with support for URPM-like solution reordering?" OFF)
|
||||
+option(WITH_TESTS "Enables unit tests" ON)
|
||||
|
||||
|
||||
# load pkg-config first; it's required by other modules
|
||||
@@ -158,8 +159,10 @@ endif()
|
||||
@@ -165,8 +166,10 @@ endif()
|
||||
|
||||
|
||||
# build tests
|
||||
@@ -37,7 +37,7 @@ index ce88b9e3..7a99320a 100644
|
||||
add_subdirectory(python/hawkey)
|
||||
endif()
|
||||
diff --git a/python/hawkey/CMakeLists.txt b/python/hawkey/CMakeLists.txt
|
||||
index d9645346..84d17204 100644
|
||||
index d964534..84d1720 100644
|
||||
--- a/python/hawkey/CMakeLists.txt
|
||||
+++ b/python/hawkey/CMakeLists.txt
|
||||
@@ -50,4 +50,6 @@ target_link_libraries(_hawkeymodule ${PYTHON_LIBRARY})
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From b570c7f8bd089deec7da2b108aa789a27025a473 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Tue, 19 Nov 2019 13:46:09 +0100
|
||||
Subject: [PATCH] Look fo sphinx only if documentation is actually enabled
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
---
|
||||
docs/hawkey/CMakeLists.txt | 20 +++++++++++---------
|
||||
1 file changed, 11 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/docs/hawkey/CMakeLists.txt b/docs/hawkey/CMakeLists.txt
|
||||
index 52cc35c6..63c7672f 100644
|
||||
--- a/docs/hawkey/CMakeLists.txt
|
||||
+++ b/docs/hawkey/CMakeLists.txt
|
||||
@@ -2,15 +2,17 @@
|
||||
# tell sphinx-build to do them both in one go:
|
||||
|
||||
|
||||
-find_program(SPHINX_PROGRAM NAMES "sphinx-build-${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}")
|
||||
-if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
- find_program(SPHINX_PROGRAM NAMES sphinx-build-${PYTHON_VERSION_MAJOR})
|
||||
-endif()
|
||||
-if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
- find_program(SPHINX_PROGRAM NAMES sphinx-build)
|
||||
-endif()
|
||||
-if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
- message(FATAL_ERROR "Sphinx program not found." )
|
||||
+if (WITH_HTML OR WITH_MAN)
|
||||
+ find_program(SPHINX_PROGRAM NAMES "sphinx-build-${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}")
|
||||
+ if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
+ find_program(SPHINX_PROGRAM NAMES sphinx-build-${PYTHON_VERSION_MAJOR})
|
||||
+ endif()
|
||||
+ if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
+ find_program(SPHINX_PROGRAM NAMES sphinx-build)
|
||||
+ endif()
|
||||
+ if(NOT EXISTS ${SPHINX_PROGRAM})
|
||||
+ message(FATAL_ERROR "Sphinx program not found." )
|
||||
+ endif()
|
||||
endif()
|
||||
|
||||
if(WITH_HTML)
|
||||
@@ -1,65 +0,0 @@
|
||||
From 5f8eee5040d7074710cd542fc50f7a40918321fc Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 23 Dec 2019 14:30:22 -0800
|
||||
Subject: [PATCH] include <stdexcept> for runtime_error
|
||||
|
||||
Fixes
|
||||
|
||||
error: class 'libdnf::ModulePackageContainer::Exception' does not have any field named 'runtime_error'
|
||||
explicit Exception(const std::string &what) : runtime_error(what) {}
|
||||
^~~~~~~~~~~~~
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/867]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
libdnf/goal/Goal.hpp | 1 +
|
||||
libdnf/module/ModulePackageContainer.hpp | 1 +
|
||||
libdnf/repo/solvable/Dependency.cpp | 3 ++-
|
||||
3 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libdnf/goal/Goal.hpp b/libdnf/goal/Goal.hpp
|
||||
index f33dfa24..7b8d822c 100644
|
||||
--- a/libdnf/goal/Goal.hpp
|
||||
+++ b/libdnf/goal/Goal.hpp
|
||||
@@ -22,6 +22,7 @@
|
||||
#define __GOAL_HPP
|
||||
|
||||
#include <memory>
|
||||
+#include <stdexcept>
|
||||
|
||||
#include "../dnf-types.h"
|
||||
#include "../hy-goal.h"
|
||||
diff --git a/libdnf/module/ModulePackageContainer.hpp b/libdnf/module/ModulePackageContainer.hpp
|
||||
index 1f815fda..37a8832d 100644
|
||||
--- a/libdnf/module/ModulePackageContainer.hpp
|
||||
+++ b/libdnf/module/ModulePackageContainer.hpp
|
||||
@@ -30,6 +30,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <set>
|
||||
+#include <stdexcept>
|
||||
|
||||
//class ModulePackageContainer;
|
||||
//typedef std::shared_ptr<ModulePackageContainer> ModulePackageContainerPtr;
|
||||
diff --git a/libdnf/repo/solvable/Dependency.cpp b/libdnf/repo/solvable/Dependency.cpp
|
||||
index 6682b729..0fc8b5cd 100644
|
||||
--- a/libdnf/repo/solvable/Dependency.cpp
|
||||
+++ b/libdnf/repo/solvable/Dependency.cpp
|
||||
@@ -18,6 +18,7 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+#include <stdexcept>
|
||||
#include "Dependency.hpp"
|
||||
#include "libdnf/utils/utils.hpp"
|
||||
#include "libdnf/repo/DependencySplitter.hpp"
|
||||
@@ -106,4 +107,4 @@ Dependency::getReldepId(DnfSack *sack, const char * reldepStr)
|
||||
}
|
||||
}
|
||||
|
||||
-}
|
||||
\ No newline at end of file
|
||||
+}
|
||||
--
|
||||
2.24.1
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
From 66d9b2ba3fbc7b04f2b5ad9d0e5371340c037b5f Mon Sep 17 00:00:00 2001
|
||||
From: Marek Blaha <mblaha@redhat.com>
|
||||
Date: Wed, 10 Jul 2019 10:11:01 +0200
|
||||
Subject: [oe-core][PATCH 1/1] Fix Python 3.8 deprecation warning
|
||||
(RhBug:1724244)
|
||||
|
||||
This deprecation warning was introduced in Python 3.8 by
|
||||
https://bugs.python.org/issue36381:
|
||||
|
||||
/usr/lib/python3.8/site-packages/dnf/package.py:57: DeprecationWarning: PY_SSIZE_T_CLEAN will be required for '#' formats
|
||||
return super(Package, self).chksum
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1724244
|
||||
---
|
||||
python/hawkey/package-py.cpp | 3 ++-
|
||||
python/hawkey/packagedelta-py.cpp | 3 ++-
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
---
|
||||
|
||||
Unchanged. Appears in version 0.35.2.
|
||||
|
||||
Upstream-Status: Backport [git://github.com/rpm-software-management/libdnf.git]
|
||||
|
||||
Signed-off-by: Joe Slater <joe.slater@windriver.com>
|
||||
|
||||
|
||||
diff --git a/python/hawkey/package-py.cpp b/python/hawkey/package-py.cpp
|
||||
index 5102bba..68e03cb 100644
|
||||
--- a/python/hawkey/package-py.cpp
|
||||
+++ b/python/hawkey/package-py.cpp
|
||||
@@ -18,6 +18,7 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+#define PY_SSIZE_T_CLEAN
|
||||
#include <Python.h>
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -251,7 +252,7 @@ get_chksum(_PackageObject *self, void *closure)
|
||||
#if PY_MAJOR_VERSION < 3
|
||||
res = Py_BuildValue("is#", type, cs, checksum_length);
|
||||
#else
|
||||
- res = Py_BuildValue("iy#", type, cs, checksum_length);
|
||||
+ res = Py_BuildValue("iy#", type, cs, (Py_ssize_t)checksum_length);
|
||||
#endif
|
||||
|
||||
return res;
|
||||
diff --git a/python/hawkey/packagedelta-py.cpp b/python/hawkey/packagedelta-py.cpp
|
||||
index ca1cb7d..1a64836 100644
|
||||
--- a/python/hawkey/packagedelta-py.cpp
|
||||
+++ b/python/hawkey/packagedelta-py.cpp
|
||||
@@ -18,6 +18,7 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+#define PY_SSIZE_T_CLEAN
|
||||
#include <Python.h>
|
||||
|
||||
// hawkey
|
||||
@@ -92,7 +93,7 @@ get_chksum(_PackageDeltaObject *self, void *closure)
|
||||
#if PY_MAJOR_VERSION < 3
|
||||
res = Py_BuildValue("is#", type, cs, checksum_length);
|
||||
#else
|
||||
- res = Py_BuildValue("iy#", type, cs, checksum_length);
|
||||
+ res = Py_BuildValue("iy#", type, cs, (Py_ssize_t)checksum_length);
|
||||
#endif
|
||||
|
||||
return res;
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -2,27 +2,28 @@ SUMMARY = "Library providing simplified C and Python API to libsolv"
|
||||
LICENSE = "LGPLv2.1"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
SRC_URI = "git://github.com/rpm-software-management/libdnf \
|
||||
SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master \
|
||||
file://0001-FindGtkDoc.cmake-drop-the-requirement-for-GTKDOC_SCA.patch \
|
||||
file://0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch \
|
||||
file://0001-Get-parameters-for-both-libsolv-and-libsolvext-libdn.patch \
|
||||
file://0001-Add-WITH_TESTS-option.patch \
|
||||
file://0001-include-stdexcept-for-runtime_error.patch \
|
||||
file://fix-deprecation-warning.patch \
|
||||
file://0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch \
|
||||
"
|
||||
|
||||
SRCREV = "751f89045b80d58c0d05800f74357cf78cdf7e77"
|
||||
SRCREV = "8330eea6985c4e4b53796f858de5b6b38b1ddf5c"
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "glib-2.0 libsolv libcheck librepo rpm gtk-doc libmodulemd-v1 json-c swig-native"
|
||||
DEPENDS = "glib-2.0 libsolv libcheck librepo rpm gtk-doc libmodulemd json-c swig-native"
|
||||
|
||||
inherit gtk-doc gobject-introspection cmake pkgconfig distutils3-base
|
||||
|
||||
EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DWITH_MAN=OFF -DPYTHON_DESIRED=3 \
|
||||
${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DWITH_GIR=ON', '-DWITH_GIR=OFF', d)} \
|
||||
-DWITH_TESTS=OFF \
|
||||
-DWITH_ZCHUNK=OFF \
|
||||
-DWITH_HTML=OFF \
|
||||
"
|
||||
EXTRA_OECMAKE_append_class-native = " -DWITH_GIR=OFF"
|
||||
EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_GIR=OFF"
|
||||
Reference in New Issue
Block a user