[lxc-devel] [PATCH] Add LXC version information to version.h

S.Çağlar Onur caglar at 10ur.org
Mon Dec 2 04:14:17 UTC 2013


So that applications can get the LXC version number at compile time.

This can be used to make applications/bindings that support compiling against
multiple versions of LXC.

Signed-off-by: S.Çağlar Onur <caglar at 10ur.org>
---
 .gitignore           |  1 +
 configure.ac         |  7 ++++++-
 src/lxc/version.h    | 31 -------------------------------
 src/lxc/version.h.in | 36 ++++++++++++++++++++++++++++++++++++
 4 files changed, 43 insertions(+), 32 deletions(-)
 delete mode 100644 src/lxc/version.h
 create mode 100644 src/lxc/version.h.in

diff --git a/.gitignore b/.gitignore
index 65d9a77..a38ceb0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -74,6 +74,7 @@ src/lxc/lxc-version
 src/lxc/lxc-wait
 src/lxc/legacy/lxc-ls
 src/lxc/lxc-user-nic
+src/lxc/version.h
 
 src/python-lxc/build/
 src/python-lxc/lxc/__pycache__/
diff --git a/configure.ac b/configure.ac
index e9d3128..7b3da91 100644
--- a/configure.ac
+++ b/configure.ac
@@ -14,6 +14,11 @@ AC_INIT([lxc], [lxc_version])
 AC_SUBST(LXC_VERSION_BASE, lxc_version_base)
 AC_SUBST(LXC_VERSION_BETA, lxc_version_beta)
 
+AC_SUBST([LXC_VERSION_MAJOR], [lxc_version_major])
+AC_SUBST([LXC_VERSION_MINOR], [lxc_version_minor])
+AC_SUBST([LXC_VERSION_MICRO], [lxc_version_micro])
+AC_SUBST([LXC_VERSION], [lxc_version])
+
 AC_CONFIG_SRCDIR([configure.ac])
 AC_CONFIG_AUX_DIR([config])
 AC_CONFIG_HEADERS([src/config.h])
@@ -554,7 +559,7 @@ AC_CONFIG_FILES([
 	src/lxc/lxc-start-ephemeral
 	src/lxc/legacy/lxc-ls
 	src/lxc/lxc.functions
-
+	src/lxc/version.h
 	src/python-lxc/Makefile
 
 	src/lua-lxc/Makefile
diff --git a/src/lxc/version.h b/src/lxc/version.h
deleted file mode 100644
index e2b0fc4..0000000
--- a/src/lxc/version.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * lxc: linux Container library
- *
- * (C) Copyright IBM Corp. 2007, 2008
- *
- * Authors:
- * Daniel Lezcano <daniel.lezcano at free.fr>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#ifndef _version_h
-#define _version_h
-
-/*
- * Returns the version number of the library
- */
-extern const char *lxc_version(void);
-
-#endif
diff --git a/src/lxc/version.h.in b/src/lxc/version.h.in
new file mode 100644
index 0000000..6867b6e
--- /dev/null
+++ b/src/lxc/version.h.in
@@ -0,0 +1,36 @@
+/*
+ * lxc: linux Container library
+ *
+ * (C) Copyright IBM Corp. 2007, 2008
+ *
+ * Authors:
+ * Daniel Lezcano <daniel.lezcano at free.fr>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#ifndef _VERSION_H
+#define _VERSION_H
+
+#define LXC_VERSION_MAJOR @LXC_VERSION_MAJOR@
+#define LXC_VERSION_MINOR @LXC_VERSION_MINOR@
+#define LXC_VERSION_MICRO @LXC_VERSION_MICRO@
+#define LXC_VERSION "@LXC_VERSION@"
+
+/*
+ * Returns the version number of the library
+ */
+extern const char *lxc_version(void);
+
+#endif
-- 
1.8.3.2





More information about the lxc-devel mailing list