diff --git a/debian/control b/debian/control index e3cbcbb8..1726cb72 100644 --- a/debian/control +++ b/debian/control @@ -87,7 +87,8 @@ Section: libdevel Architecture: any Depends: libguh1 (= ${binary:Version}), ${shlibs:Depends}, - ${misc:Depends} + ${misc:Depends}, + python Description: Server for home automation systems - development files guh is an open source home automation server, which allows to control a lot of different devices from many different manufacturers. With the diff --git a/debian/libguh1-dev.install b/debian/libguh1-dev.install index e40600ac..7e9c9e5e 100644 --- a/debian/libguh1-dev.install +++ b/debian/libguh1-dev.install @@ -1,4 +1,4 @@ usr/lib/libguh.so usr/include/guh/* usr/include/guh -usr/bin/generateplugininfo usr/bin +usr/bin/guh-generateplugininfo usr/bin diff --git a/libguh/libguh.pro b/libguh/libguh.pro index 165d62e8..7ee2155a 100644 --- a/libguh/libguh.pro +++ b/libguh/libguh.pro @@ -76,10 +76,19 @@ HEADERS += plugin/device.h \ # install files for libguh-dev -headers.files = $$HEADERS -headers.path = /usr/include/guh - -generateplugininfo.files = $$top_srcdir/plugins/generateplugininfo +generateplugininfo.files = $$top_srcdir/plugins/guh-generateplugininfo generateplugininfo.path = /usr/bin -INSTALLS += headers generateplugininfo +INSTALLS += generateplugininfo + +# install header file with relative subdirectory +for(header, HEADERS) { + path = /usr/include/guh/$${dirname(header)} + eval(headers_$${path}.files += $${header}) + eval(headers_$${path}.path = $${path}) + eval(INSTALLS *= headers_$${path}) +} + + + + diff --git a/plugins/generateplugininfo b/plugins/guh-generateplugininfo similarity index 92% rename from plugins/generateplugininfo rename to plugins/guh-generateplugininfo index 53fa2d5d..e9d3c897 100755 --- a/plugins/generateplugininfo +++ b/plugins/guh-generateplugininfo @@ -23,12 +23,25 @@ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +import argparse +import traceback import json import sys -inputFile = open(sys.argv[1], "r") -outputfile = open(sys.argv[2], "w") -outputfile2 = open("extern-" + sys.argv[2], "w") +__version__="1.0.0" + +parser = argparse.ArgumentParser(description='The guh-generateplugininfo is a precompiler for building plugins. This precompiler will create a plugininfo.h containing the uuid definitions from the plugin json file.') +parser.add_argument("input", help="The JSON input file with the plugin description") +parser.add_argument("output", help="The plugininfo.h outputfile file with the uuid declarations") +parser.add_argument('-v','--version', action='version', version=__version__) +args = parser.parse_args() + +inputFile = open(args.input, "r") +outputfile = open(args.output, "w") +outputfile2 = open("extern-" + args.output, "w") + +print "%s -> %s" %(args.input, args.output) + variableNames = [] externDefinitions = [] diff --git a/plugins/plugins.pri b/plugins/plugins.pri index 5ba35332..7dd6801b 100644 --- a/plugins/plugins.pri +++ b/plugins/plugins.pri @@ -9,8 +9,8 @@ INCLUDEPATH += ../../../libguh LIBS += -L../../../libguh -lguh infofile.output = plugininfo.h -infofile.commands = $$top_srcdir/plugins/generateplugininfo ${QMAKE_FILE_NAME} ${QMAKE_FILE_OUT} -infofile.depends = $$top_srcdir/plugins/generateplugininfo +infofile.commands = $$top_srcdir/plugins/guh-generateplugininfo ${QMAKE_FILE_NAME} ${QMAKE_FILE_OUT} +infofile.depends = $$top_srcdir/plugins/guh-generateplugininfo infofile.CONFIG = no_link JSONFILES = deviceplugin"$$TARGET".json infofile.input = JSONFILES