From dd501bff133ae8722bf6b6f583b73a8b5360539b Mon Sep 17 00:00:00 2001 From: jbnadal Date: Wed, 7 Jun 2017 11:50:07 +0200 Subject: [PATCH] Add domod. --- bsp/buildroot_external/Config.in | 3 + .../package/domod/Config.in | 7 ++ bsp/buildroot_external/package/domod/domod.mk | 21 ++++++ bsp/cmake-modules/br.cmake | 3 +- projects/rpi_domo/configs/buildroot_defconfig | 1 + src/prog/domod/builders/cmake/CMakeLists.txt | 66 ++++++++++--------- src/prog/domod/src/devices/Light.cpp | 2 +- src/prog/domod/src/devices/Shutter.cpp | 2 +- src/prog/domod/src/devices/Sprinkler.cpp | 2 +- src/prog/domod/src/timers/Timers.h | 2 +- src/prog/domod/src/ubus/capabilities.h | 2 +- src/prog/domod/src/ubus/capabilities_lights.h | 2 +- .../domod/src/ubus/capabilities_shutters.h | 2 +- .../src/ubus/capabilities_sprinklers.cpp | 2 +- .../domod/src/ubus/capabilities_sprinklers.h | 2 +- src/prog/domod/src/ubus/speach_command.cpp | 2 +- src/prog/domod/src/ubus/speach_command.h | 2 +- src/prog/domod/src/ubus/timers.h | 2 +- 18 files changed, 80 insertions(+), 45 deletions(-) create mode 100644 bsp/buildroot_external/package/domod/Config.in create mode 100644 bsp/buildroot_external/package/domod/domod.mk diff --git a/bsp/buildroot_external/Config.in b/bsp/buildroot_external/Config.in index 3410ff8a..8460169a 100644 --- a/bsp/buildroot_external/Config.in +++ b/bsp/buildroot_external/Config.in @@ -45,6 +45,9 @@ source "$BR2_EXTERNAL_DOMO_PATH/package/chacond/Config.in" # SPRINKLERD source "$BR2_EXTERNAL_DOMO_PATH/package/sprinklerd/Config.in" +# DOMOD +source "$BR2_EXTERNAL_DOMO_PATH/package/domod/Config.in" + endmenu # Programmes endmenu # Domo diff --git a/bsp/buildroot_external/package/domod/Config.in b/bsp/buildroot_external/package/domod/Config.in new file mode 100644 index 00000000..6472d3b0 --- /dev/null +++ b/bsp/buildroot_external/package/domod/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_DOMOD + bool "domod" + select BR2_PACKAGE_LIBUBUS_CPP + select BR2_PACKAGE_JSONCPP + default n + help + This program is the main domo daemon. diff --git a/bsp/buildroot_external/package/domod/domod.mk b/bsp/buildroot_external/package/domod/domod.mk new file mode 100644 index 00000000..83261812 --- /dev/null +++ b/bsp/buildroot_external/package/domod/domod.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# DOMOD +# +################################################################################ + +DOMOD_VERSION:= 1.0 + +DOMOD_SITE = $(TOPDIR)/../../src/prog/domod/builders/cmake +DOMOD_SITE_METHOD = local +DOMOD_INSTALL_STAGING = YES + +DOMOD_DEPENDENCIES = libubus-cpp jsoncpp + +DOMOD_CONF = SRC_DIR=$(TOPDIR)/../.. + +DOMOD_CONF_ENV = $(DOMOD_CONF) +DOMOD_MAKE_ENV = $(DOMOD_CONF) +DOMOD_CONF_OPTS += -DMODULE_PATH=$(TOPDIR)/../../bsp/cmake-modules -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) + +$(eval $(cmake-package)) diff --git a/bsp/cmake-modules/br.cmake b/bsp/cmake-modules/br.cmake index 6a064bdb..323b4e0e 100644 --- a/bsp/cmake-modules/br.cmake +++ b/bsp/cmake-modules/br.cmake @@ -10,7 +10,8 @@ endif(CMAKE_SYSTEM_PROCESSOR STREQUAL mipsel) SET(CMAKE_INSTALL_RPATH "/usr/local/lib") # C++ -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions -fno-rtti") +#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions -fno-rtti") + # # Release set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DNDEBUG -Os") diff --git a/projects/rpi_domo/configs/buildroot_defconfig b/projects/rpi_domo/configs/buildroot_defconfig index c5faf377..d3bd24c8 100644 --- a/projects/rpi_domo/configs/buildroot_defconfig +++ b/projects/rpi_domo/configs/buildroot_defconfig @@ -59,3 +59,4 @@ BR2_PACKAGE_UBOX=y BR2_PACKAGE_MOUNTD=y BR2_PACKAGE_CHACOND=y BR2_PACKAGE_SPRINKLERD=y +BR2_PACKAGE_DOMOD=y diff --git a/src/prog/domod/builders/cmake/CMakeLists.txt b/src/prog/domod/builders/cmake/CMakeLists.txt index 60db1cf9..154d59ea 100644 --- a/src/prog/domod/builders/cmake/CMakeLists.txt +++ b/src/prog/domod/builders/cmake/CMakeLists.txt @@ -1,49 +1,51 @@ -cmake_minimum_required(VERSION 2.8.11) +cmake_minimum_required(VERSION 3.0) project(domod) -include (libubus) -include (libubox) -include (libubuscpp) -include (libjsoncpp) +set (CMAKE_MODULE_PATH "${MODULE_PATH}") +set (CMAKE_CXX_STANDARD 11) -include_directories(../../src) +include (br) -set(CMAKE_CXX_FLAGS "-std=c++11 -Wall -Wextra -pedantic -Werror=strict-aliasing") +include_directories($ENV{SRC_DIR}/src/prog/domod/src) + +#set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Werror=strict-aliasing") file( GLOB_RECURSE source_files - ../../src/timers/Timers.cpp - ../../src/timers/Event.cpp - ../../src/timers/Clock.cpp - ../../src/devices/Devices.cpp - ../../src/devices/Device.cpp - ../../src/devices/LightDevice.cpp - ../../src/devices/ShutterDevice.cpp - ../../src/devices/SprinklerDevice.cpp - ../../src/devices/Light.cpp - ../../src/devices/Shutter.cpp - ../../src/devices/Sprinkler.cpp - ../../src/ubus/capabilities.cpp - ../../src/ubus/capabilities_lights.cpp - ../../src/ubus/capabilities_shutters.cpp - ../../src/ubus/capabilities_sprinklers.cpp - ../../src/ubus/speach_command.cpp - ../../src/ubus/timers.cpp - ../../src/helpers/Tokenizer.cpp - ../../src/helpers/Strings.cpp - ../../src/main.cpp + $ENV{SRC_DIR}/src/prog/domod/src/timers/Timers.cpp + $ENV{SRC_DIR}/src/prog/domod/src/timers/Event.cpp + $ENV{SRC_DIR}/src/prog/domod/src/timers/Clock.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/Devices.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/Device.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/LightDevice.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/ShutterDevice.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/SprinklerDevice.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/Light.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/Shutter.cpp + $ENV{SRC_DIR}/src/prog/domod/src/devices/Sprinkler.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities_lights.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities_shutters.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/capabilities_sprinklers.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/speach_command.cpp + $ENV{SRC_DIR}/src/prog/domod/src/ubus/timers.cpp + $ENV{SRC_DIR}/src/prog/domod/src/helpers/Tokenizer.cpp + $ENV{SRC_DIR}/src/prog/domod/src/helpers/Strings.cpp + $ENV{SRC_DIR}/src/prog/domod/src/main.cpp ) -add_executable ( - domod - ${source_files} -) +add_executable (domod ${source_files}) target_link_libraries (domod LINK_PUBLIC jsoncpp - ubuscpp + ubus-cpp + ubox + ubus + blobmsg_json rt ) + +install (TARGETS domod DESTINATION local/bin) \ No newline at end of file diff --git a/src/prog/domod/src/devices/Light.cpp b/src/prog/domod/src/devices/Light.cpp index 81bc4e8b..059dba27 100644 --- a/src/prog/domod/src/devices/Light.cpp +++ b/src/prog/domod/src/devices/Light.cpp @@ -27,7 +27,7 @@ #include -#include +#include #include "devices/Light.h" diff --git a/src/prog/domod/src/devices/Shutter.cpp b/src/prog/domod/src/devices/Shutter.cpp index 6ed7c874..5219978a 100644 --- a/src/prog/domod/src/devices/Shutter.cpp +++ b/src/prog/domod/src/devices/Shutter.cpp @@ -27,7 +27,7 @@ #include -#include +#include #include "devices/Shutter.h" diff --git a/src/prog/domod/src/devices/Sprinkler.cpp b/src/prog/domod/src/devices/Sprinkler.cpp index a981a2d0..e77ad713 100644 --- a/src/prog/domod/src/devices/Sprinkler.cpp +++ b/src/prog/domod/src/devices/Sprinkler.cpp @@ -27,7 +27,7 @@ #include -#include +#include #include "devices/Sprinkler.h" diff --git a/src/prog/domod/src/timers/Timers.h b/src/prog/domod/src/timers/Timers.h index ee5c93ed..147feb90 100644 --- a/src/prog/domod/src/timers/Timers.h +++ b/src/prog/domod/src/timers/Timers.h @@ -33,7 +33,7 @@ #include -#include "ubuscpp/UBusTimer.h" +#include "ubus-cpp/UBusTimer.h" #include "timers/Event.h" /*---------------------------------- Deps -----------------------------------*/ diff --git a/src/prog/domod/src/ubus/capabilities.h b/src/prog/domod/src/ubus/capabilities.h index b6c485dd..6438775c 100644 --- a/src/prog/domod/src/ubus/capabilities.h +++ b/src/prog/domod/src/ubus/capabilities.h @@ -30,7 +30,7 @@ #include -#include +#include /*--------------------------------- Define ----------------------------------*/ diff --git a/src/prog/domod/src/ubus/capabilities_lights.h b/src/prog/domod/src/ubus/capabilities_lights.h index 7a4666f5..25e91757 100644 --- a/src/prog/domod/src/ubus/capabilities_lights.h +++ b/src/prog/domod/src/ubus/capabilities_lights.h @@ -31,7 +31,7 @@ #include #include -#include +#include diff --git a/src/prog/domod/src/ubus/capabilities_shutters.h b/src/prog/domod/src/ubus/capabilities_shutters.h index 9ddcd0ee..c0a054bf 100644 --- a/src/prog/domod/src/ubus/capabilities_shutters.h +++ b/src/prog/domod/src/ubus/capabilities_shutters.h @@ -30,7 +30,7 @@ #include -#include +#include /*--------------------------------- Define ----------------------------------*/ diff --git a/src/prog/domod/src/ubus/capabilities_sprinklers.cpp b/src/prog/domod/src/ubus/capabilities_sprinklers.cpp index edcdd10a..8c6c103b 100644 --- a/src/prog/domod/src/ubus/capabilities_sprinklers.cpp +++ b/src/prog/domod/src/ubus/capabilities_sprinklers.cpp @@ -29,7 +29,7 @@ extern "C" { #include } -#include +#include #include diff --git a/src/prog/domod/src/ubus/capabilities_sprinklers.h b/src/prog/domod/src/ubus/capabilities_sprinklers.h index db545fee..838c8280 100644 --- a/src/prog/domod/src/ubus/capabilities_sprinklers.h +++ b/src/prog/domod/src/ubus/capabilities_sprinklers.h @@ -30,7 +30,7 @@ #include -#include +#include /*--------------------------------- Define ----------------------------------*/ diff --git a/src/prog/domod/src/ubus/speach_command.cpp b/src/prog/domod/src/ubus/speach_command.cpp index 868b9c61..b6d3a66c 100644 --- a/src/prog/domod/src/ubus/speach_command.cpp +++ b/src/prog/domod/src/ubus/speach_command.cpp @@ -31,7 +31,7 @@ extern "C" { #include } -#include +#include #include "devices/Devices.h" diff --git a/src/prog/domod/src/ubus/speach_command.h b/src/prog/domod/src/ubus/speach_command.h index 08047982..4f1264af 100644 --- a/src/prog/domod/src/ubus/speach_command.h +++ b/src/prog/domod/src/ubus/speach_command.h @@ -31,7 +31,7 @@ #include #include -#include +#include diff --git a/src/prog/domod/src/ubus/timers.h b/src/prog/domod/src/ubus/timers.h index 71e36589..e58e6e1c 100644 --- a/src/prog/domod/src/ubus/timers.h +++ b/src/prog/domod/src/ubus/timers.h @@ -30,7 +30,7 @@ #include -#include +#include /*--------------------------------- Define ----------------------------------*/