Also upgrades `python3Packages.libvirt` and patches the `rpcgen` tool from Apple's `developer_cmds` package.wip/yesman
parent
a7218d6914
commit
d5b0c8bcdf
@ -1,106 +0,0 @@ |
||||
From a9ce1217742d542a5ae4b154b6f55342aace374e Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Bosch <maximilian@mbosch.me>
|
||||
Date: Mon, 17 Aug 2020 19:35:44 +0200
|
||||
Subject: [PATCH] Fix build with libtirpc
|
||||
|
||||
Derived from https://github.com/libvirt/libvirt/commit/d7147b3797380de2d159ce6324536f3e1f2d97e3.patch
|
||||
---
|
||||
libvirt.spec.in | 4 +++-
|
||||
src/Makefile.am | 2 +-
|
||||
src/admin/Makefile.inc.am | 1 +
|
||||
src/locking/Makefile.inc.am | 2 ++
|
||||
src/logging/Makefile.inc.am | 1 +
|
||||
src/remote/Makefile.inc.am | 1 +
|
||||
6 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libvirt.spec.in b/libvirt.spec.in
|
||||
index 6abf97d..71fc4e6 100644
|
||||
--- a/libvirt.spec.in
|
||||
+++ b/libvirt.spec.in
|
||||
@@ -405,11 +405,13 @@ BuildRequires: wireshark-devel >= 2.4.0
|
||||
BuildRequires: libssh-devel >= 0.7.0
|
||||
%endif
|
||||
|
||||
+# On RHEL-7 rpcgen is still part of glibc-common package
|
||||
%if 0%{?fedora} || 0%{?rhel} > 7
|
||||
BuildRequires: rpcgen
|
||||
-BuildRequires: libtirpc-devel
|
||||
%endif
|
||||
|
||||
+BuildRequires: libtirpc-devel
|
||||
+
|
||||
%if %{with_firewalld_zone}
|
||||
BuildRequires: firewalld-filesystem
|
||||
%endif
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index 12dd6b8..8d0d4e1 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -439,7 +439,7 @@ libvirt_la_LDFLAGS += -Wl,-flat_namespace
|
||||
endif WITH_MACOS
|
||||
libvirt_la_LDFLAGS += $(NULL)
|
||||
libvirt_la_LIBADD += \
|
||||
- $(DRIVER_MODULES_LIBS)
|
||||
+ $(DRIVER_MODULES_LIBS) $(XDR_LIBS)
|
||||
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
|
||||
# Because we specify libvirt_la_DEPENDENCIES for $(LIBVIRT_SYMBOL_FILE), we
|
||||
# lose automake's automatic dependencies on an appropriate subset of
|
||||
diff --git a/src/admin/Makefile.inc.am b/src/admin/Makefile.inc.am
|
||||
index 0a9717a..8556a3b 100644
|
||||
--- a/src/admin/Makefile.inc.am
|
||||
+++ b/src/admin/Makefile.inc.am
|
||||
@@ -72,6 +72,7 @@ libvirt_admin_la_LDFLAGS = \
|
||||
|
||||
libvirt_admin_la_LIBADD = \
|
||||
libvirt.la \
|
||||
+ $(XDR_LIBS) \
|
||||
$(CAPNG_LIBS) \
|
||||
$(YAJL_LIBS) \
|
||||
$(DEVMAPPER_LIBS) \
|
||||
diff --git a/src/locking/Makefile.inc.am b/src/locking/Makefile.inc.am
|
||||
index d1bf49c..ab01d8e 100644
|
||||
--- a/src/locking/Makefile.inc.am
|
||||
+++ b/src/locking/Makefile.inc.am
|
||||
@@ -120,6 +120,7 @@ lockd_la_LDFLAGS = $(AM_LDFLAGS_MOD_NOUNDEF)
|
||||
lockd_la_LIBADD = \
|
||||
libvirt.la \
|
||||
$(GLIB_LIBS) \
|
||||
+ $(XDR_LIBS) \
|
||||
$(NULL)
|
||||
augeas_DATA += locking/libvirt_lockd.aug
|
||||
if WITH_DTRACE_PROBES
|
||||
@@ -161,6 +162,7 @@ virtlockd_CFLAGS = \
|
||||
virtlockd_LDFLAGS = \
|
||||
$(AM_LDFLAGS) \
|
||||
$(PIE_LDFLAGS) \
|
||||
+ $(XDR_LIBS) \
|
||||
$(NO_UNDEFINED_LDFLAGS) \
|
||||
$(NULL)
|
||||
virtlockd_LDADD = \
|
||||
diff --git a/src/logging/Makefile.inc.am b/src/logging/Makefile.inc.am
|
||||
index dc09cfe..4be3376 100644
|
||||
--- a/src/logging/Makefile.inc.am
|
||||
+++ b/src/logging/Makefile.inc.am
|
||||
@@ -99,6 +99,7 @@ virtlogd_CFLAGS = \
|
||||
virtlogd_LDFLAGS = \
|
||||
$(AM_LDFLAGS) \
|
||||
$(PIE_LDFLAGS) \
|
||||
+ $(XDR_LIBS) \
|
||||
$(NO_UNDEFINED_LDFLAGS) \
|
||||
$(NULL)
|
||||
virtlogd_LDADD = \
|
||||
diff --git a/src/remote/Makefile.inc.am b/src/remote/Makefile.inc.am
|
||||
index 1b1be83..8a40c96 100644
|
||||
--- a/src/remote/Makefile.inc.am
|
||||
+++ b/src/remote/Makefile.inc.am
|
||||
@@ -69,6 +69,7 @@ REMOTE_DAEMON_LD_ADD = \
|
||||
$(LIBXML_LIBS) \
|
||||
$(GNUTLS_LIBS) \
|
||||
$(SASL_LIBS) \
|
||||
+ $(XDR_LIBS) \
|
||||
$(DBUS_LIBS) \
|
||||
$(LIBNL_LIBS) \
|
||||
$(NULL)
|
||||
--
|
||||
2.25.4
|
||||
|
@ -0,0 +1,66 @@ |
||||
diff --git a/rpcgen/rpc_parse.c b/rpcgen/rpc_parse.c
|
||||
index 52edc9f..db0c1f1 100644
|
||||
--- a/rpcgen/rpc_parse.c
|
||||
+++ b/rpcgen/rpc_parse.c
|
||||
@@ -580,6 +580,10 @@ get_type(prefixp, typep, dkind)
|
||||
*typep = "long";
|
||||
(void) peekscan(TOK_INT, &tok);
|
||||
break;
|
||||
+ case TOK_HYPER:
|
||||
+ *typep = "int64_t";
|
||||
+ (void) peekscan(TOK_INT, &tok);
|
||||
+ break;
|
||||
case TOK_VOID:
|
||||
if (dkind != DEF_UNION && dkind != DEF_PROGRAM) {
|
||||
error("voids allowed only inside union and program definitions with one argument");
|
||||
@@ -592,6 +596,7 @@ get_type(prefixp, typep, dkind)
|
||||
case TOK_INT:
|
||||
case TOK_FLOAT:
|
||||
case TOK_DOUBLE:
|
||||
+ case TOK_QUAD:
|
||||
case TOK_BOOL:
|
||||
*typep = tok.str;
|
||||
break;
|
||||
@@ -622,6 +627,11 @@ unsigned_dec(typep)
|
||||
*typep = "u_long";
|
||||
(void) peekscan(TOK_INT, &tok);
|
||||
break;
|
||||
+ case TOK_HYPER:
|
||||
+ get_token(&tok);
|
||||
+ *typep = "u_int64_t";
|
||||
+ (void) peekscan(TOK_INT, &tok);
|
||||
+ break;
|
||||
case TOK_INT:
|
||||
get_token(&tok);
|
||||
*typep = "u_int";
|
||||
diff --git a/rpcgen/rpc_scan.c b/rpcgen/rpc_scan.c
|
||||
index a8df441..4130107 100644
|
||||
--- a/rpcgen/rpc_scan.c
|
||||
+++ b/rpcgen/rpc_scan.c
|
||||
@@ -419,8 +419,10 @@ static token symbols[] = {
|
||||
{TOK_UNSIGNED, "unsigned"},
|
||||
{TOK_SHORT, "short"},
|
||||
{TOK_LONG, "long"},
|
||||
+ {TOK_HYPER, "hyper"},
|
||||
{TOK_FLOAT, "float"},
|
||||
{TOK_DOUBLE, "double"},
|
||||
+ {TOK_QUAD, "quadruple"},
|
||||
{TOK_STRING, "string"},
|
||||
{TOK_PROGRAM, "program"},
|
||||
{TOK_VERSION, "version"},
|
||||
diff --git a/rpcgen/rpc_scan.h b/rpcgen/rpc_scan.h
|
||||
index bac2be4..e4c57c8 100644
|
||||
--- a/rpcgen/rpc_scan.h
|
||||
+++ b/rpcgen/rpc_scan.h
|
||||
@@ -66,9 +66,11 @@ enum tok_kind {
|
||||
TOK_INT,
|
||||
TOK_SHORT,
|
||||
TOK_LONG,
|
||||
+ TOK_HYPER,
|
||||
TOK_UNSIGNED,
|
||||
TOK_FLOAT,
|
||||
TOK_DOUBLE,
|
||||
+ TOK_QUAD,
|
||||
TOK_OPAQUE,
|
||||
TOK_CHAR,
|
||||
TOK_STRING,
|
Loading…
Reference in new issue