From 936487e3d959c7a901140d3b375bdc3b2504ff00 Mon Sep 17 00:00:00 2001 From: NADAL Jean-Baptiste Date: Fri, 21 Apr 2017 23:56:05 +0200 Subject: [PATCH] Fix compilation of sprinklerd --- bsp/buildroot_external/Config.in | 16 +++++++++ bsp/buildroot_external/Domo.in | 5 --- .../package/sprinklerd/Config.in | 2 +- .../package/sprinklerd/sprinklerd.mk | 2 +- projects/rpi_domo/configs/buildroot_defconfig | 2 ++ .../libubus-cpp/builders/cmake/CMakeLists.txt | 32 ++++++++++------- .../include/{ubuscpp => ubus-cpp}/UBusCall.h | 0 .../include/{ubuscpp => ubus-cpp}/UBusCpp.h | 2 +- .../{ubuscpp => ubus-cpp}/UBusObject.h | 4 +-- .../include/{ubuscpp => ubus-cpp}/UBusTimer.h | 0 src/lib/libubus-cpp/src/UBusCall.cpp | 2 +- src/lib/libubus-cpp/src/UBusObject.cpp | 29 +++++++++++---- src/lib/libubus-cpp/src/UBusTimer.cpp | 2 +- .../chacond/builders/cmake/CMakeLists.txt | 2 +- .../{sprinklersd => sprinklerd}/Readme.md | 0 .../sprinklerd/builders/cmake/CMakeLists.txt | 35 +++++++++++++++++++ .../{sprinklersd => sprinklerd}/src/main.cpp | 2 +- .../src/sprinklers.cpp | 4 +-- .../src/sprinklers.h | 0 .../src/ubus-sprinkler-model.cpp} | 7 ++-- .../src/ubus-sprinkler-model.h} | 2 +- .../sprinklersd/builders/cmake/CMakeLists.txt | 32 ----------------- 22 files changed, 110 insertions(+), 72 deletions(-) delete mode 100644 bsp/buildroot_external/Domo.in rename src/lib/libubus-cpp/include/{ubuscpp => ubus-cpp}/UBusCall.h (100%) rename src/lib/libubus-cpp/include/{ubuscpp => ubus-cpp}/UBusCpp.h (99%) rename src/lib/libubus-cpp/include/{ubuscpp => ubus-cpp}/UBusObject.h (97%) rename src/lib/libubus-cpp/include/{ubuscpp => ubus-cpp}/UBusTimer.h (100%) rename src/prog/{sprinklersd => sprinklerd}/Readme.md (100%) create mode 100644 src/prog/sprinklerd/builders/cmake/CMakeLists.txt rename src/prog/{sprinklersd => sprinklerd}/src/main.cpp (98%) rename src/prog/{sprinklersd => sprinklerd}/src/sprinklers.cpp (98%) rename src/prog/{sprinklersd => sprinklerd}/src/sprinklers.h (100%) rename src/prog/{sprinklersd/src/UbusSprinklerModel.cpp => sprinklerd/src/ubus-sprinkler-model.cpp} (98%) rename src/prog/{sprinklersd/src/UbusSprinklerModel.h => sprinklerd/src/ubus-sprinkler-model.h} (97%) delete mode 100644 src/prog/sprinklersd/builders/cmake/CMakeLists.txt diff --git a/bsp/buildroot_external/Config.in b/bsp/buildroot_external/Config.in index 93f63835..a7c73e51 100644 --- a/bsp/buildroot_external/Config.in +++ b/bsp/buildroot_external/Config.in @@ -28,6 +28,22 @@ endmenu # Third parties menu "Domo" +menu "Libraries" + +source "$BR2_EXTERNAL_DOMO_PATH/package/libubus-cpp/Config.in" + +endmenu # Libraries + +menu "Programmes" + +# CHACOND +source "$BR2_EXTERNAL_DOMO_PATH/package/chacond/Config.in" + +# SPRINKLERD +source "$BR2_EXTERNAL_DOMO_PATH/package/sprinklerd/Config.in" + +endmenu # Programmes + endmenu # Domo menu "Host tools" diff --git a/bsp/buildroot_external/Domo.in b/bsp/buildroot_external/Domo.in deleted file mode 100644 index a1b048a8..00000000 --- a/bsp/buildroot_external/Domo.in +++ /dev/null @@ -1,5 +0,0 @@ - -menu "Domo" - - -endmenu # Domo diff --git a/bsp/buildroot_external/package/sprinklerd/Config.in b/bsp/buildroot_external/package/sprinklerd/Config.in index 3cb984f9..43bd558d 100644 --- a/bsp/buildroot_external/package/sprinklerd/Config.in +++ b/bsp/buildroot_external/package/sprinklerd/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_SPRINKLERD bool "sprinklerd" select BR2_PACKAGE_LIBUBUS_CPP - select BR2_PACKAGE_JSON_C + select BR2_PACKAGE_JSONCPP default n help This program manage the sprinklers of the domo project. diff --git a/bsp/buildroot_external/package/sprinklerd/sprinklerd.mk b/bsp/buildroot_external/package/sprinklerd/sprinklerd.mk index 835fc066..c506c6d5 100644 --- a/bsp/buildroot_external/package/sprinklerd/sprinklerd.mk +++ b/bsp/buildroot_external/package/sprinklerd/sprinklerd.mk @@ -10,7 +10,7 @@ SPRINKLERD_SITE = $(TOPDIR)/../../src/prog/sprinklerd/builders/cmake SPRINKLERD_SITE_METHOD = local SPRINKLERD_INSTALL_STAGING = YES -SPRINKLERD_DEPENDENCIES = libubus-cpp json-c +SPRINKLERD_DEPENDENCIES = libubus-cpp jsoncpp SPRINKLERD_CONF = SRC_DIR=$(TOPDIR)/../.. diff --git a/projects/rpi_domo/configs/buildroot_defconfig b/projects/rpi_domo/configs/buildroot_defconfig index fa0dcbe4..d6e68285 100644 --- a/projects/rpi_domo/configs/buildroot_defconfig +++ b/projects/rpi_domo/configs/buildroot_defconfig @@ -55,3 +55,5 @@ BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y BR2_PACKAGE_PROCD=y +BR2_PACKAGE_CHACOND=y +BR2_PACKAGE_SPRINKLERD=y diff --git a/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt b/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt index ddea941b..95dc6d36 100644 --- a/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt +++ b/src/lib/libubus-cpp/builders/cmake/CMakeLists.txt @@ -1,28 +1,36 @@ -cmake_minimum_required(VERSION 2.8.11) +cmake_minimum_required (VERSION 3.0) -include (libubus) -include (libubox) -include (libubuscpp) +project (libubus-cpp) -project (libubuscpp) +set (CMAKE_MODULE_PATH "${MODULE_PATH}") + +include (br) + +include_directories ($ENV{SRC_DIR}/src/lib/libubus-cpp/include/) file( GLOB_RECURSE source_files - ../../src/UBusCall.cpp - ../../src/UBusObject.cpp - ../../src/UBusTimer.cpp + + $ENV{SRC_DIR}/src/lib/libubus-cpp/src/UBusCall.cpp + $ENV{SRC_DIR}/src/lib/libubus-cpp/src/UBusObject.cpp + $ENV{SRC_DIR}/src/lib/libubus-cpp/src/UBusTimer.cpp ) add_library( - ubuscpp + ubus-cpp SHARED ${source_files} ) -target_link_libraries (ubuscpp +target_link_libraries (ubus-cpp LINK_PUBLIC ubus - ) +) -target_include_directories (ubuscpp PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories (ubus-cpp PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) + +install (TARGETS ubus-cpp LIBRARY DESTINATION local/lib) + +file (GLOB headers $ENV{SRC_DIR}/src/lib/libubus-cpp/include/ubus-cpp/*) +install (FILES ${headers} DESTINATION include/ubus-cpp) diff --git a/src/lib/libubus-cpp/include/ubuscpp/UBusCall.h b/src/lib/libubus-cpp/include/ubus-cpp/UBusCall.h similarity index 100% rename from src/lib/libubus-cpp/include/ubuscpp/UBusCall.h rename to src/lib/libubus-cpp/include/ubus-cpp/UBusCall.h diff --git a/src/lib/libubus-cpp/include/ubuscpp/UBusCpp.h b/src/lib/libubus-cpp/include/ubus-cpp/UBusCpp.h similarity index 99% rename from src/lib/libubus-cpp/include/ubuscpp/UBusCpp.h rename to src/lib/libubus-cpp/include/ubus-cpp/UBusCpp.h index 3dc89b78..176c0c39 100644 --- a/src/lib/libubus-cpp/include/ubuscpp/UBusCpp.h +++ b/src/lib/libubus-cpp/include/ubus-cpp/UBusCpp.h @@ -29,7 +29,7 @@ /*------------------------------- INCLUDES ----------------------------------*/ extern "C" { -#include +#include } diff --git a/src/lib/libubus-cpp/include/ubuscpp/UBusObject.h b/src/lib/libubus-cpp/include/ubus-cpp/UBusObject.h similarity index 97% rename from src/lib/libubus-cpp/include/ubuscpp/UBusObject.h rename to src/lib/libubus-cpp/include/ubus-cpp/UBusObject.h index 093129bf..8eb0f88b 100644 --- a/src/lib/libubus-cpp/include/ubuscpp/UBusObject.h +++ b/src/lib/libubus-cpp/include/ubus-cpp/UBusObject.h @@ -1,5 +1,5 @@ /*! - * UbusCall.h + * UbusObject.h * * Copyright (c) 2015, NADAL Jean-Baptiste. All rights reserved. * @@ -28,7 +28,7 @@ /*------------------------------- INCLUDES ----------------------------------*/ -#include "ubuscpp/UBusCpp.h" +#include "ubus-cpp/UBusCpp.h" /*----------------------------- Dependencies --------------------------------*/ diff --git a/src/lib/libubus-cpp/include/ubuscpp/UBusTimer.h b/src/lib/libubus-cpp/include/ubus-cpp/UBusTimer.h similarity index 100% rename from src/lib/libubus-cpp/include/ubuscpp/UBusTimer.h rename to src/lib/libubus-cpp/include/ubus-cpp/UBusTimer.h diff --git a/src/lib/libubus-cpp/src/UBusCall.cpp b/src/lib/libubus-cpp/src/UBusCall.cpp index c1a1e667..8a973331 100644 --- a/src/lib/libubus-cpp/src/UBusCall.cpp +++ b/src/lib/libubus-cpp/src/UBusCall.cpp @@ -32,7 +32,7 @@ extern "C" { #include "common.h" -#include "ubuscpp/UBusCall.h" +#include "ubus-cpp/UBusCall.h" #define kDefaultTimeoutInSecond 5 diff --git a/src/lib/libubus-cpp/src/UBusObject.cpp b/src/lib/libubus-cpp/src/UBusObject.cpp index 4c7e1d90..ff0afae8 100644 --- a/src/lib/libubus-cpp/src/UBusObject.cpp +++ b/src/lib/libubus-cpp/src/UBusObject.cpp @@ -1,17 +1,32 @@ /*! - * (C) Copyright 2003-2015 Awox SA. All rights reserved. - * This work contains confidential trade secrets of Awox. - * Use, examination, copying, transfer and disclosure to others - * are prohibited, except with the express written agreement of Awox. + * UbusCall.cpp + * + * Copyright (c) 2015, NADAL Jean-Baptiste. All rights reserved. + * + * 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 + * + * @Author: NADAL Jean-Baptiste + * @Date: 21/03/2015 * - * @Author: Awox - * @Date: 06/10/2014 */ /*------------------------------- INCLUDES ----------------------------------*/ -#include "ubuscpp/UBusObject.h" +#include "ubus-cpp/UBusObject.h" /*------------------------------- GLOBALS ----------------------------------*/ diff --git a/src/lib/libubus-cpp/src/UBusTimer.cpp b/src/lib/libubus-cpp/src/UBusTimer.cpp index 5411abb9..b2a1d85d 100644 --- a/src/lib/libubus-cpp/src/UBusTimer.cpp +++ b/src/lib/libubus-cpp/src/UBusTimer.cpp @@ -27,7 +27,7 @@ #include -#include "ubuscpp/UBusTimer.h" +#include "ubus-cpp/UBusTimer.h" /*! ---------------------------------------------------------------------------- diff --git a/src/prog/chacond/builders/cmake/CMakeLists.txt b/src/prog/chacond/builders/cmake/CMakeLists.txt index d37dd658..2d7bb12c 100644 --- a/src/prog/chacond/builders/cmake/CMakeLists.txt +++ b/src/prog/chacond/builders/cmake/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required (VERSION 3.0) -project(chacond) +project (chacond) set (CMAKE_MODULE_PATH "${MODULE_PATH}") diff --git a/src/prog/sprinklersd/Readme.md b/src/prog/sprinklerd/Readme.md similarity index 100% rename from src/prog/sprinklersd/Readme.md rename to src/prog/sprinklerd/Readme.md diff --git a/src/prog/sprinklerd/builders/cmake/CMakeLists.txt b/src/prog/sprinklerd/builders/cmake/CMakeLists.txt new file mode 100644 index 00000000..b7898b80 --- /dev/null +++ b/src/prog/sprinklerd/builders/cmake/CMakeLists.txt @@ -0,0 +1,35 @@ +cmake_minimum_required (VERSION 3.0) + +project (sprinklerd) + +set (CMAKE_MODULE_PATH "${MODULE_PATH}") +set (CMAKE_CXX_STANDARD 11) + +include (br) + +include_directories ($ENV{SRC_DIR}/src/prog/sprinklerd) + +set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Werror=strict-aliasing") + +file( + GLOB_RECURSE + source_files + + $ENV{SRC_DIR}/src/prog/sprinklerd/src/main.cpp + $ENV{SRC_DIR}/src/prog/sprinklerd/src/ubus-sprinkler-model.cpp + $ENV{SRC_DIR}/src/prog/sprinklerd/src/sprinklers.cpp +) + +add_executable (sprinklerd ${source_files}) + +target_link_libraries (sprinklerd + LINK_PUBLIC + ubus-cpp + jsoncpp + ubox + ubus + blobmsg_json + rt +) + +install (TARGETS sprinklerd DESTINATION local/bin) \ No newline at end of file diff --git a/src/prog/sprinklersd/src/main.cpp b/src/prog/sprinklerd/src/main.cpp similarity index 98% rename from src/prog/sprinklersd/src/main.cpp rename to src/prog/sprinklerd/src/main.cpp index 6a114d60..1e1d4dbd 100644 --- a/src/prog/sprinklersd/src/main.cpp +++ b/src/prog/sprinklerd/src/main.cpp @@ -32,7 +32,7 @@ extern "C" { #include } -#include "UbusSprinklerModel.h" +#include "ubus-sprinkler-model.h" #include "sprinklers.h" diff --git a/src/prog/sprinklersd/src/sprinklers.cpp b/src/prog/sprinklerd/src/sprinklers.cpp similarity index 98% rename from src/prog/sprinklersd/src/sprinklers.cpp rename to src/prog/sprinklerd/src/sprinklers.cpp index ba022316..ab6ff191 100644 --- a/src/prog/sprinklersd/src/sprinklers.cpp +++ b/src/prog/sprinklerd/src/sprinklers.cpp @@ -29,10 +29,10 @@ #include #include -#include +#include #include -#include +#include #include "sprinklers.h" diff --git a/src/prog/sprinklersd/src/sprinklers.h b/src/prog/sprinklerd/src/sprinklers.h similarity index 100% rename from src/prog/sprinklersd/src/sprinklers.h rename to src/prog/sprinklerd/src/sprinklers.h diff --git a/src/prog/sprinklersd/src/UbusSprinklerModel.cpp b/src/prog/sprinklerd/src/ubus-sprinkler-model.cpp similarity index 98% rename from src/prog/sprinklersd/src/UbusSprinklerModel.cpp rename to src/prog/sprinklerd/src/ubus-sprinkler-model.cpp index 59b67866..eb7c3948 100644 --- a/src/prog/sprinklersd/src/UbusSprinklerModel.cpp +++ b/src/prog/sprinklerd/src/ubus-sprinkler-model.cpp @@ -30,7 +30,7 @@ #include #include -#include +#include extern "C" { #include @@ -38,7 +38,7 @@ extern "C" { #include "sprinklers.h" -#include "UbusSprinklerModel.h" +#include "ubus-sprinkler-model.h" namespace { @@ -69,8 +69,7 @@ SprinkerModel::SprinkerModel (void) : * @brief Destructor of the UBus Mixer Volume. */ SprinkerModel::~SprinkerModel (void) -{ - +{ } diff --git a/src/prog/sprinklersd/src/UbusSprinklerModel.h b/src/prog/sprinklerd/src/ubus-sprinkler-model.h similarity index 97% rename from src/prog/sprinklersd/src/UbusSprinklerModel.h rename to src/prog/sprinklerd/src/ubus-sprinkler-model.h index bcb6cef2..3a8aa04d 100644 --- a/src/prog/sprinklersd/src/UbusSprinklerModel.h +++ b/src/prog/sprinklerd/src/ubus-sprinkler-model.h @@ -30,7 +30,7 @@ #include -#include +#include /*--------------------------------- Define ----------------------------------*/ diff --git a/src/prog/sprinklersd/builders/cmake/CMakeLists.txt b/src/prog/sprinklersd/builders/cmake/CMakeLists.txt deleted file mode 100644 index 63a132e0..00000000 --- a/src/prog/sprinklersd/builders/cmake/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -cmake_minimum_required(VERSION 2.8.11) - -project(sprinklersd) - -include (libubus) -include (libubox) -include (libubuscpp) -include (libjsoncpp) - -include_directories(../../src) - -set(CMAKE_CXX_FLAGS "-std=c++11 -Wall -Wextra -pedantic -Werror=strict-aliasing") - -file( - GLOB_RECURSE - source_files - ../../src/main.cpp - ../../src/UbusSprinklerModel.cpp - ../../src/sprinklers.cpp -) - -add_executable ( - sprinklersd - ${source_files} -) - -target_link_libraries (sprinklersd - LINK_PUBLIC - jsoncpp - ubuscpp - rt - )