diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2013-06-13 09:48:10 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2013-06-13 10:04:49 +0200 |
commit | a43cecb456327b6a19c026c097d588a08961d394 (patch) | |
tree | 8ddbccdcdc23c3a5a894c8313fa48cba1334e623 | |
parent | 0c7265de29163ab9c9ba03257d393ce99bb47ff6 (diff) |
api,header: setup and export MM version symbols in the API
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | configure.ac | 24 | ||||
-rw-r--r-- | docs/reference/api/ModemManager-dbus-reference.xml | 6 | ||||
-rw-r--r-- | docs/reference/api/ModemManager-docs.xml | 7 | ||||
-rw-r--r-- | docs/reference/api/ModemManager-sections.txt | 9 | ||||
-rw-r--r-- | include/Makefile.am | 4 | ||||
-rw-r--r-- | include/ModemManager-version.h.in | 69 | ||||
-rw-r--r-- | include/ModemManager.h | 9 |
8 files changed, 118 insertions, 12 deletions
@@ -28,6 +28,8 @@ libtool callouts/mm-modem-probe test/lsudev +include/ModemManager-version.h + libmm-glib/generated/mm-gdbus-*.[ch] libmm-glib/generated/mm-enums-types.[ch] libmm-glib/generated/mm-errors-types.[ch] diff --git a/configure.ac b/configure.ac index ed63832d..61cfa4bd 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,13 @@ -AC_PREREQ([2.60]) +AC_PREREQ([2.63]) -AC_INIT([ModemManager],[0.7.991],[dcbw@redhat.com],[ModemManager]) +dnl The MM version number +m4_define([mm_major_version], [0]) +m4_define([mm_minor_version], [7]) +m4_define([mm_micro_version], [991]) +m4_define([mm_version], + [mm_major_version.mm_minor_version.mm_micro_version]) + +AC_INIT([ModemManager],[mm_version],[dcbw@redhat.com],[ModemManager]) AM_INIT_AUTOMAKE([1.9 subdir-objects tar-ustar no-dist-gzip dist-xz -Wno-portability]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AM_MAINTAINER_MODE([enable]) @@ -21,6 +28,16 @@ dnl Initialize libtool LT_PREREQ([2.2]) LT_INIT +dnl Version stuff +MM_MAJOR_VERSION=mm_major_version +MM_MINOR_VERSION=mm_minor_version +MM_MICRO_VERSION=mm_micro_version +MM_VERSION=mm_version +AC_SUBST(MM_MAJOR_VERSION) +AC_SUBST(MM_MINOR_VERSION) +AC_SUBST(MM_MICRO_VERSION) +AC_SUBST(MM_VERSION) + dnl dnl Documentation dnl @@ -166,7 +183,7 @@ AC_SUBST(PPPD_PLUGIN_DIR) dnl -dnl Tests +dnl Unit tests dnl AC_ARG_WITH(tests, AS_HELP_STRING([--with-tests], [Build ModemManager tests])) AM_CONDITIONAL(WITH_TESTS, test "x$with_tests" = "xyes") @@ -265,6 +282,7 @@ data/ModemManager.pc data/mm-glib.pc data/org.freedesktop.ModemManager1.policy.in include/Makefile +include/ModemManager-version.h build-aux/Makefile libqcdm/Makefile libqcdm/src/Makefile diff --git a/docs/reference/api/ModemManager-dbus-reference.xml b/docs/reference/api/ModemManager-dbus-reference.xml index c84e4598..64049062 100644 --- a/docs/reference/api/ModemManager-dbus-reference.xml +++ b/docs/reference/api/ModemManager-dbus-reference.xml @@ -75,12 +75,6 @@ </section> </chapter> - <chapter id="ref-dbus-common-types"> - <title>Common types</title> - <xi:include href="mm-enums.xml"/> - <xi:include href="mm-errors.xml"/> - </chapter> - <chapter id="ref-dbus-object-manager"> <title>The <literal>/org/freedesktop/ModemManager1</literal> object</title> <para> diff --git a/docs/reference/api/ModemManager-docs.xml b/docs/reference/api/ModemManager-docs.xml index aef28d31..d321a5a1 100644 --- a/docs/reference/api/ModemManager-docs.xml +++ b/docs/reference/api/ModemManager-docs.xml @@ -73,6 +73,13 @@ <!-- Part 1, overview --> <xi:include href="xml/ModemManager-overview.xml"/> + <part id="ref-common-types"> + <title>Common types and definitions</title> + <xi:include href="xml/mm-version.xml"/> + <xi:include href="xml/mm-enums.xml"/> + <xi:include href="xml/mm-errors.xml"/> + </part> + <!-- Part 2, DBus reference --> <xi:include href="xml/ModemManager-dbus-reference.xml"/> diff --git a/docs/reference/api/ModemManager-sections.txt b/docs/reference/api/ModemManager-sections.txt index 94cc0336..d9d11c88 100644 --- a/docs/reference/api/ModemManager-sections.txt +++ b/docs/reference/api/ModemManager-sections.txt @@ -1,4 +1,13 @@ <SECTION> +<FILE>mm-version</FILE> +<TITLE>Version checks</TITLE> +MM_MAJOR_VERSION +MM_MICRO_VERSION +NM_MINOR_VERSION +MM_CHECK_VERSION +</SECTION> + +<SECTION> <FILE>mm-enums</FILE> <TITLE>Flags and Enumerations</TITLE> MMBearerIpFamily diff --git a/include/Makefile.am b/include/Makefile.am index f0a69d9d..424b51c3 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -8,6 +8,7 @@ include_HEADERS = \ ModemManager-names.h \ ModemManager-enums.h \ ModemManager-errors.h \ + ModemManager-version.h \ ModemManager.h ModemManager-names.h: $(XMLS) $(top_srcdir)/build-aux/header-generator.xsl @@ -15,3 +16,6 @@ ModemManager-names.h: $(XMLS) $(top_srcdir)/build-aux/header-generator.xsl CLEANFILES = \ ModemManager-names.h + +EXTRA_DIST = \ + ModemManager-version.h.in diff --git a/include/ModemManager-version.h.in b/include/ModemManager-version.h.in new file mode 100644 index 00000000..01953901 --- /dev/null +++ b/include/ModemManager-version.h.in @@ -0,0 +1,69 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ +/* + * 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 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. + * + * Copyright (C) 2013 Lanedo GmbH + */ + +#ifndef _MM_VERSION_H_ +#define _MM_VERSION_H_ + +/** + * SECTION:mm-version + * @short_description: Version information in the API. + * + * This section defines types that are used to identify the ModemManager version. + **/ + +/** + * MM_MAJOR_VERSION: + * + * Evaluates to the major version number of ModemManager which this source + * is compiled against. + */ +#define MM_MAJOR_VERSION (@MM_MAJOR_VERSION@) + +/** + * MM_MINOR_VERSION: + * + * Evaluates to the minor version number of ModemManager which this source + * is compiled against. + */ +#define NM_MINOR_VERSION (@MM_MINOR_VERSION@) + +/** + * MM_MICRO_VERSION: + * + * Evaluates to the micro version number of ModemManager which this source + * compiled against. + */ +#define MM_MICRO_VERSION (@MM_MICRO_VERSION@) + +/** + * MM_CHECK_VERSION: + * @major: major version (e.g. 1 for version 1.2.5) + * @minor: minor version (e.g. 2 for version 1.2.5) + * @micro: micro version (e.g. 5 for version 1.2.5) + * + * Returns: %TRUE if the version of the ModemManager header files + * is the same as or newer than the passed-in version. + */ +#define MM_CHECK_VERSION(major,minor,micro) \ + (MM_MAJOR_VERSION > (major) || \ + (MM_MAJOR_VERSION == (major) && MM_MINOR_VERSION > (minor)) || \ + (MM_MAJOR_VERSION == (major) && MM_MINOR_VERSION == (minor) && MM_MICRO_VERSION >= (micro))) + +#endif /* _MM_VERSION_H_ */ diff --git a/include/ModemManager.h b/include/ModemManager.h index 5a30ebc6..3a6eb43c 100644 --- a/include/ModemManager.h +++ b/include/ModemManager.h @@ -1,6 +1,6 @@ /* * ModemManager Interface Specification - * version 0.6 + * version 0.8 * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -18,8 +18,9 @@ * Boston, MA 02110-1301 USA. * * Copyright (C) 2008 - 2009 Novell, Inc. - * Copyright (C) 2009 - 2012 Red Hat, Inc. - * Copyright (C) 2011 - 2012 Google, Inc. + * Copyright (C) 2009 - 2013 Red Hat, Inc. + * Copyright (C) 2011 - 2013 Google, Inc. + * Copyright (C) 2011 - 2013 Lanedo Gmbh */ #ifndef _MODEM_MANAGER_H_ @@ -36,5 +37,7 @@ /* Public header with errors */ #include <ModemManager-errors.h> +/* Public header with version info */ +#include <ModemManager-version.h> #endif /* _MODEM_MANAGER_H_ */ |