Hey Stéphane, On Mon, Dec 2, 2013 at 10:34 AM, Stéphane Graber <stgra...@ubuntu.com> wrote: > On Sun, Dec 01, 2013 at 11:14:17PM -0500, S.Çağlar Onur wrote: >> 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. > > So I guess that information would indeed be useful to some external > software/bindings. > > However I think we have to be careful there as my plan was to seriously > cut back in the number of public headers. > > The goal for 1.0 is for liblxc1 to be the only bits we export for out of > tree use, currently, that'd be lxccontainer.h and its rdepends so: > - lxccontainer.h > - lxclock.h > - attach_options.h > > Everything else would be available only for in-tree use.
I see, that sounds like a good plan to me. > I guess we could have lxccontainer.h include version.h and then ship > version.h. > Looking at it again, especially in view of your changes, I suspect we > could kill version.c and the lxc_version function and simply have > lxccontainer.c return LXC_VERSION. (That'd avoid both lxccontainer.h and > version.h exporting the same function with two different names). > > Actually I'm not completely sure we should even export lxclock, is there > any cases where we expect external users to want to mess with our locks? I think we don't need it. I would expect no one to use it externally. >> >> Signed-off-by: S.Çağlar Onur <cag...@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 >> >> >> ------------------------------------------------------------------------------ >> Rapidly troubleshoot problems before they affect your business. Most IT >> organizations don't have a clear picture of how application performance >> affects their revenue. With AppDynamics, you get 100% visibility into your >> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics >> Pro! >> http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk >> _______________________________________________ >> Lxc-devel mailing list >> Lxc-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/lxc-devel > > -- > Stéphane Graber > Ubuntu developer > http://www.ubuntu.com -- S.Çağlar Onur <cag...@10ur.org> ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel