From f60dc0bc09f09c6817d6706a9edb1579a3e2b2b8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 23 May 2008 08:32:08 +0000 Subject: [PATCH] Deprecate the conn, dom and net fields in the _virError structure. * include/libvirt/libvirt.h.in: Add VIR_DEPRECATED macro. * src/internal.h: Internal code is allowed to use deprecated features, so override VIR_DEPRECATED here. * include/libvirt/virterror.h: Deprecate the conn, dom and net fields in the _virError structure. --- ChangeLog | 9 +++++++++ include/libvirt/libvirt.h | 10 +++++++++- include/libvirt/libvirt.h.in | 10 +++++++++- include/libvirt/virterror.h | 7 ++++--- src/internal.h | 6 ++++++ 5 files changed, 37 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea4c4a62a0..39a7236872 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Fri May 23 09:23:00 BST 2008 Richard W.M. Jones + + Deprecate the conn, dom and net fields in the _virError structure. + * include/libvirt/libvirt.h.in: Add VIR_DEPRECATED macro. + * src/internal.h: Internal code is allowed to use deprecated + features, so override VIR_DEPRECATED here. + * include/libvirt/virterror.h: Deprecate the conn, dom and net + fields in the _virError structure. + Fri May 23 08:56:00 BST 2008 Richard W.M. Jones Standardize use of header files, making internal.h primary. diff --git a/include/libvirt/libvirt.h b/include/libvirt/libvirt.h index 1a6b720657..d913b046d0 100644 --- a/include/libvirt/libvirt.h +++ b/include/libvirt/libvirt.h @@ -1,4 +1,3 @@ - /* -*- c -*- * libvirt.h: * Summary: core interfaces for the libvirt library @@ -21,6 +20,15 @@ extern "C" { #endif +#ifndef VIR_DEPRECATED + /* The feature is present in gcc-3.1 and newer. */ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1) +# define VIR_DEPRECATED __attribute__((__deprecated__)) +# else +# define VIR_DEPRECATED /* nothing */ +# endif +#endif /* VIR_DEPRECATED */ + /** * virConnect: * diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in index 76bd3e36fe..f67aee7e5c 100644 --- a/include/libvirt/libvirt.h.in +++ b/include/libvirt/libvirt.h.in @@ -1,4 +1,3 @@ - /* -*- c -*- * libvirt.h: * Summary: core interfaces for the libvirt library @@ -21,6 +20,15 @@ extern "C" { #endif +#ifndef VIR_DEPRECATED + /* The feature is present in gcc-3.1 and newer. */ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1) +# define VIR_DEPRECATED __attribute__((__deprecated__)) +# else +# define VIR_DEPRECATED /* nothing */ +# endif +#endif /* VIR_DEPRECATED */ + /** * virConnect: * diff --git a/include/libvirt/virterror.h b/include/libvirt/virterror.h index 75ee5f8cb3..c575f9d048 100644 --- a/include/libvirt/virterror.h +++ b/include/libvirt/virterror.h @@ -76,14 +76,15 @@ struct _virError { int domain; /* What part of the library raised this error */ char *message;/* human-readable informative error message */ virErrorLevel level;/* how consequent is the error */ - virConnectPtr conn; /* connection if available, see note above */ - virDomainPtr dom; /* domain if available, see note above */ + virConnectPtr conn VIR_DEPRECATED; /* connection if available, + see note above */ + virDomainPtr dom VIR_DEPRECATED; /* domain if available, see note above */ char *str1; /* extra string information */ char *str2; /* extra string information */ char *str3; /* extra string information */ int int1; /* extra number information */ int int2; /* extra number information */ - virNetworkPtr net; /* network if available, see note above */ + virNetworkPtr net VIR_DEPRECATED; /* network if available, see note above */ }; /** diff --git a/src/internal.h b/src/internal.h index 3327ea13a4..c44d42f497 100644 --- a/src/internal.h +++ b/src/internal.h @@ -24,6 +24,12 @@ #define pthread_mutex_unlock(lk) /*empty*/ #endif +/* The library itself is allowed to use deprecated functions / + * variables, so effectively undefine the deprecated attribute + * which would otherwise be defined in libvirt.h. + */ +#define VIR_DEPRECATED /*empty*/ + #include "gettext.h" #include "hash.h"