From ff5ea7b76a633d91c94d495c522a0bc5d86c184d Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Tue, 18 Oct 2011 20:08:08 +0200 Subject: [PATCH] build: setup autogeneration of names header for the new API The `include/ModemManager-names.h' autogenerated header includes the list of Interface, Method, Signal and Property names defined in the DBus API. --- .gitignore | 1 + build-aux/Makefile.am | 3 +- build-aux/header-generator-new.xsl | 190 +++++++++++++++++++++++++++++ include/Makefile.am | 15 ++- new/all.xml | 18 +++ 5 files changed, 222 insertions(+), 5 deletions(-) create mode 100644 build-aux/header-generator-new.xsl create mode 100644 new/all.xml diff --git a/.gitignore b/.gitignore index 5ec4fc80..47a599d8 100644 --- a/.gitignore +++ b/.gitignore @@ -42,6 +42,7 @@ libqcdm/tests/test-qcdm libwmc/tests/test-wmc include/ModemManager.h +include/ModemManager-names.h po/Makefile.in.in po/POTFILES diff --git a/build-aux/Makefile.am b/build-aux/Makefile.am index fdcf628c..86c7f890 100644 --- a/build-aux/Makefile.am +++ b/build-aux/Makefile.am @@ -1,3 +1,4 @@ EXTRA_DIST = \ - header-generator.xsl + header-generator.xsl \ + header-generator-new.xsl diff --git a/build-aux/header-generator-new.xsl b/build-aux/header-generator-new.xsl new file mode 100644 index 00000000..4cd0dea0 --- /dev/null +++ b/build-aux/header-generator-new.xsl @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + MANAGER + + + +#define "" + + + + + + + + + + + + MANAGER + + + +#define "" + + + + + + + + + + + + MANAGER + + + +#define "" + + + + +/* Generated Header file do not edit */ + +/* + * ModemManager Interface Specification + * Version 0.6 + * + * 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) 2008 - 2009 Novell, Inc. + * Copyright (C) 2009 - 2011 Red Hat, Inc. + * Copyright (C) 2011 Google, Inc. + */ + +#ifndef _MODEM_MANAGER_NAMES_H_ +#define _MODEM_MANAGER_NAMES_H_ + +#define MM_DBUS_PATH "/org/freedesktop/ModemManager1" +#define MM_DBUS_SERVICE "org.freedesktop.ModemManager1" + +/************** + * Interfaces * + **************/ + + + + + + + + + + + + + + + + _ + + + + + + + +#define "" + +/****************************** + * Methods/Signals/Properties * + ******************************/ + +/* + * Interface '' + */ + + + + + + + + + + + + + + +#endif /* _MODEM_MANAGER_NAMES_H_ */ + + + + + + + + diff --git a/include/Makefile.am b/include/Makefile.am index 03b6b934..6a9c564a 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -1,14 +1,21 @@ XSLTPROC = xsltproc --xinclude --nonet -XMLS = $(wildcard $(top_srcdir)/introspection/*.xml) +OLD_XMLS = $(wildcard $(top_srcdir)/introspection/*.xml) +NEW_XMLS = $(wildcard $(top_srcdir)/new/*.xml) includedir = @includedir@/mm include_HEADERS = \ + ModemManager-names.h \ ModemManager.h -ModemManager.h: $(XMLS) $(top_srcdir)/introspection/all.xml $(top_srcdir)/build-aux/header-generator.xsl - $(XSLTPROC) $(top_srcdir)/build-aux/header-generator.xsl $(top_srcdir)/introspection/all.xml > $@ +# NOTE: This is the header of the 0.5 API, which will get removed +ModemManager.h: $(OLD_XMLS) $(top_srcdir)/introspection/all.xml $(top_srcdir)/build-aux/header-generator.xsl + $(AM_V_GEN) $(XSLTPROC) $(top_srcdir)/build-aux/header-generator.xsl $(top_srcdir)/introspection/all.xml > $@ + +ModemManager-names.h: $(NEW_XMLS) $(top_srcdir)/new/all.xml $(top_srcdir)/build-aux/header-generator-new.xsl + $(AM_V_GEN) $(XSLTPROC) $(top_srcdir)/build-aux/header-generator-new.xsl $(top_srcdir)/new/all.xml > $@ CLEANFILES = \ - ModemManager.h \ No newline at end of file + ModemManager-names.h \ + ModemManager.h diff --git a/new/all.xml b/new/all.xml new file mode 100644 index 00000000..c6b3e4b8 --- /dev/null +++ b/new/all.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + +