]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Macro for testing the version you are compiling with
authorDoug Goldstein <cardoe@cardoe.com>
Wed, 13 Nov 2013 16:46:03 +0000 (10:46 -0600)
committerDoug Goldstein <cardoe@cardoe.com>
Mon, 18 Nov 2013 17:53:18 +0000 (11:53 -0600)
Added a macro similar to the GLib's GLIB_CHECK_VERSION so that one can
simply do something like:

 #if LIBVIR_CHECK_VERSION(1,1,3)
   /* Call function here that appeared in 1.1.3 and newer */
   virSomeNewFunction();
 #endif

include/libvirt/libvirt.h.in

index d656634bbb10b7df266e02c5ad7fb7561e2385fa..146a59bb9d09e14ff8db2f499546795137b30256 100644 (file)
@@ -1466,6 +1466,22 @@ VIR_EXPORT_VAR virConnectAuthPtr virConnectAuthPtrDefault;
 
 #define LIBVIR_VERSION_NUMBER @LIBVIRT_VERSION_NUMBER@
 
+/**
+ * LIBVIR_CHECK_VERSION:
+ * @major: major component of the version number
+ * @minor: minor component of the version number
+ * @micro: micro component of the version number
+ *
+ * Macro for developers to easily check what version of the library
+ * their code is compiling against.
+ * e.g.
+ *   #if LIBVIR_CHECK_VERSION(1,1,3)
+ *     // some code that only works in 1.1.3 and newer
+ *   #endif
+ */
+#define LIBVIR_CHECK_VERSION(major, minor, micro) \
+    ((major) * 1000000 + (minor) * 1000 + (micro) <= LIBVIR_VERSION_NUMBER)
+
 int                     virGetVersion           (unsigned long *libVer,
                                                  const char *type,
                                                  unsigned long *typeVer);