commit
9a9e6836b3
@ -0,0 +1 @@
|
|||||||
|
SOURCES/osinfo-db-tools-1.11.0.tar.xz
|
@ -0,0 +1 @@
|
|||||||
|
71d6f9b4e83198a7146069198a038d69c9ccae82 SOURCES/osinfo-db-tools-1.11.0.tar.xz
|
@ -0,0 +1,85 @@
|
|||||||
|
From 34378a4ac257f2f5fcf364786d1634a8c36b304f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
Date: Mon, 27 Nov 2023 15:04:43 +0100
|
||||||
|
Subject: [PATCH 1/2] Make xmlError structs constant
|
||||||
|
|
||||||
|
In libxml2 commits v2.12.0~14 and v2.12.0~77 the API changed so
|
||||||
|
that:
|
||||||
|
|
||||||
|
1) xmlGetLastError() returns pointer to a constant xmlError
|
||||||
|
struct, and
|
||||||
|
|
||||||
|
2) xmlSetStructuredErrorFunc() changed the signature of callback
|
||||||
|
(validate_structured_error_nop()), it too is passed pointer to
|
||||||
|
a constant xmlError struct.
|
||||||
|
|
||||||
|
But of course, older libxml2 expects different callback
|
||||||
|
signature. Therefore, we need to typecast it anyway.
|
||||||
|
|
||||||
|
Also, drop obviously incorrect @error annotation in
|
||||||
|
validate_structured_error_nop; the variable is used.
|
||||||
|
|
||||||
|
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
---
|
||||||
|
tools/osinfo-db-validate.c | 5 +++--
|
||||||
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/osinfo-db-validate.c b/tools/osinfo-db-validate.c
|
||||||
|
index a721b4d..b1434a6 100644
|
||||||
|
--- a/tools/osinfo-db-validate.c
|
||||||
|
+++ b/tools/osinfo-db-validate.c
|
||||||
|
@@ -35,7 +35,7 @@ static void validate_generic_error_nop(void *userData G_GNUC_UNUSED,
|
||||||
|
}
|
||||||
|
|
||||||
|
static void validate_structured_error_nop(void *userData G_GNUC_UNUSED,
|
||||||
|
- xmlErrorPtr error G_GNUC_UNUSED)
|
||||||
|
+ const xmlError *error)
|
||||||
|
{
|
||||||
|
if (error->file)
|
||||||
|
g_printerr("%s:%d %s", error->file, error->line, error->message);
|
||||||
|
@@ -173,7 +173,8 @@ static gboolean validate_files(GFile *schema, gsize nfiles, GFile **files, GErro
|
||||||
|
g_autofree gchar *schemapath = NULL;
|
||||||
|
|
||||||
|
xmlSetGenericErrorFunc(NULL, validate_generic_error_nop);
|
||||||
|
- xmlSetStructuredErrorFunc(NULL, validate_structured_error_nop);
|
||||||
|
+ /* Drop this typecast when >=libxml2-2.12.0 is required */
|
||||||
|
+ xmlSetStructuredErrorFunc(NULL, (xmlStructuredErrorFunc) validate_structured_error_nop);
|
||||||
|
|
||||||
|
schemapath = g_file_get_path(schema);
|
||||||
|
rngParser = xmlRelaxNGNewParserCtxt(schemapath);
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
||||||
|
|
||||||
|
From 019487cbc79925e49988789bf533c78dab7e1842 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
Date: Mon, 27 Nov 2023 15:06:04 +0100
|
||||||
|
Subject: [PATCH 2/2] osinfo-db-validate: Add more libxml/ includes
|
||||||
|
|
||||||
|
In its 2.12.0 release, libxml reworked their header files (some
|
||||||
|
might even call it cleaning up, I call it API incompatible
|
||||||
|
change) and now we don't get all declarations we need by just
|
||||||
|
including one file. Add missing includes.
|
||||||
|
|
||||||
|
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
---
|
||||||
|
tools/osinfo-db-validate.c | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/tools/osinfo-db-validate.c b/tools/osinfo-db-validate.c
|
||||||
|
index b1434a6..f3275db 100644
|
||||||
|
--- a/tools/osinfo-db-validate.c
|
||||||
|
+++ b/tools/osinfo-db-validate.c
|
||||||
|
@@ -20,7 +20,9 @@
|
||||||
|
* Daniel P. Berrange <berrange@redhat.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
+#include <libxml/parser.h>
|
||||||
|
#include <libxml/relaxng.h>
|
||||||
|
+#include <libxml/tree.h>
|
||||||
|
#include <locale.h>
|
||||||
|
#include <glib/gi18n.h>
|
||||||
|
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
@ -0,0 +1,160 @@
|
|||||||
|
## START: Set by rpmautospec
|
||||||
|
## (rpmautospec version 0.6.1)
|
||||||
|
## RPMAUTOSPEC: autorelease
|
||||||
|
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
|
||||||
|
release_number = 6;
|
||||||
|
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
|
||||||
|
print(release_number + base_release_number - 1);
|
||||||
|
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
|
||||||
|
## END: Set by rpmautospec
|
||||||
|
|
||||||
|
# -*- rpm-spec -*-
|
||||||
|
|
||||||
|
%define with_mingw 0
|
||||||
|
%if 0%{?fedora}
|
||||||
|
%define with_mingw 0%{!?_without_mingw:1}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
Summary: Tools for managing the osinfo database
|
||||||
|
Name: osinfo-db-tools
|
||||||
|
Version: 1.11.0
|
||||||
|
Release: %autorelease
|
||||||
|
License: GPL-2.0-or-later
|
||||||
|
Source: https://releases.pagure.org/libosinfo/%{name}-%{version}.tar.xz
|
||||||
|
URL: https://libosinfo.org
|
||||||
|
|
||||||
|
# Fix build for libxml2-2.12
|
||||||
|
Patch: https://gitlab.com/libosinfo/osinfo-db-tools/-/merge_requests/80.patch
|
||||||
|
|
||||||
|
BuildRequires: meson
|
||||||
|
BuildRequires: gcc
|
||||||
|
BuildRequires: gettext-devel
|
||||||
|
BuildRequires: git
|
||||||
|
BuildRequires: glib2-devel
|
||||||
|
BuildRequires: libxml2-devel >= 2.6.0
|
||||||
|
BuildRequires: libxslt-devel >= 1.0.0
|
||||||
|
%if 0%{?fedora} > 36 || 0%{?rhel} > 9
|
||||||
|
BuildRequires: libsoup3-devel
|
||||||
|
%else
|
||||||
|
BuildRequires: libsoup-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: libarchive-devel
|
||||||
|
BuildRequires: json-glib-devel
|
||||||
|
BuildRequires: /usr/bin/pod2man
|
||||||
|
|
||||||
|
#Required for testing purposes
|
||||||
|
BuildRequires: python3
|
||||||
|
BuildRequires: python3-pytest
|
||||||
|
BuildRequires: python3-requests
|
||||||
|
|
||||||
|
%if %{with_mingw}
|
||||||
|
BuildRequires: mingw32-filesystem
|
||||||
|
BuildRequires: mingw32-gcc
|
||||||
|
BuildRequires: mingw32-binutils
|
||||||
|
BuildRequires: mingw32-glib2
|
||||||
|
BuildRequires: mingw32-json-glib
|
||||||
|
BuildRequires: mingw32-libxml2
|
||||||
|
BuildRequires: mingw32-libxslt
|
||||||
|
BuildRequires: mingw32-libarchive
|
||||||
|
BuildRequires: mingw32-libsoup
|
||||||
|
|
||||||
|
BuildRequires: mingw64-filesystem
|
||||||
|
BuildRequires: mingw64-gcc
|
||||||
|
BuildRequires: mingw64-binutils
|
||||||
|
BuildRequires: mingw64-glib2
|
||||||
|
BuildRequires: mingw64-json-glib
|
||||||
|
BuildRequires: mingw64-libxml2
|
||||||
|
BuildRequires: mingw64-libxslt
|
||||||
|
BuildRequires: mingw64-libarchive
|
||||||
|
BuildRequires: mingw64-libsoup
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
This package provides tools for managing the osinfo database of
|
||||||
|
information about operating systems for use with virtualization
|
||||||
|
|
||||||
|
%if %{with_mingw}
|
||||||
|
%package -n mingw32-osinfo-db-tools
|
||||||
|
Summary: %{summary}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: pkgconfig
|
||||||
|
|
||||||
|
%description -n mingw32-osinfo-db-tools
|
||||||
|
This package provides tools for managing the osinfo database of
|
||||||
|
information about operating systems for use with virtualization
|
||||||
|
|
||||||
|
%package -n mingw64-osinfo-db-tools
|
||||||
|
Summary: %{summary}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: pkgconfig
|
||||||
|
|
||||||
|
%description -n mingw64-osinfo-db-tools
|
||||||
|
This package provides tools for managing the osinfo database of
|
||||||
|
information about operating systems for use with virtualization
|
||||||
|
|
||||||
|
%{?mingw_debug_package}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -S git
|
||||||
|
|
||||||
|
%build
|
||||||
|
%meson
|
||||||
|
%meson_build
|
||||||
|
|
||||||
|
%if %{with_mingw}
|
||||||
|
%mingw_meson
|
||||||
|
%mingw_ninja
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%check
|
||||||
|
%meson_test
|
||||||
|
|
||||||
|
%install
|
||||||
|
%meson_install
|
||||||
|
|
||||||
|
%find_lang %{name}
|
||||||
|
|
||||||
|
%if %{with_mingw}
|
||||||
|
%mingw_ninja_install
|
||||||
|
|
||||||
|
# Manpages don't need to be bundled
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw32_datadir}/man
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw64_datadir}/man
|
||||||
|
|
||||||
|
%mingw_debug_install_post
|
||||||
|
|
||||||
|
%mingw_find_lang osinfo-db-tools
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files -f %{name}.lang
|
||||||
|
%doc NEWS README
|
||||||
|
%license COPYING
|
||||||
|
%{_bindir}/osinfo-db-export
|
||||||
|
%{_bindir}/osinfo-db-import
|
||||||
|
%{_bindir}/osinfo-db-path
|
||||||
|
%{_bindir}/osinfo-db-validate
|
||||||
|
%{_mandir}/man1/osinfo-db-export.1*
|
||||||
|
%{_mandir}/man1/osinfo-db-import.1*
|
||||||
|
%{_mandir}/man1/osinfo-db-path.1*
|
||||||
|
%{_mandir}/man1/osinfo-db-validate.1*
|
||||||
|
|
||||||
|
%if %{with_mingw}
|
||||||
|
%files -n mingw32-osinfo-db-tools -f mingw32-osinfo-db-tools.lang
|
||||||
|
%doc NEWS README
|
||||||
|
%license COPYING
|
||||||
|
%{mingw32_bindir}/osinfo-db-export.exe
|
||||||
|
%{mingw32_bindir}/osinfo-db-import.exe
|
||||||
|
%{mingw32_bindir}/osinfo-db-path.exe
|
||||||
|
%{mingw32_bindir}/osinfo-db-validate.exe
|
||||||
|
|
||||||
|
%files -n mingw64-osinfo-db-tools -f mingw64-osinfo-db-tools.lang
|
||||||
|
%doc NEWS README
|
||||||
|
%license COPYING
|
||||||
|
%{mingw64_bindir}/osinfo-db-export.exe
|
||||||
|
%{mingw64_bindir}/osinfo-db-import.exe
|
||||||
|
%{mingw64_bindir}/osinfo-db-path.exe
|
||||||
|
%{mingw64_bindir}/osinfo-db-validate.exe
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%changelog
|
Loading…
Reference in new issue