aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephane Desneux <stephane.desneux@iot.bzh>2019-03-13 09:45:09 +0100
committerGitHub <noreply@github.com>2019-03-13 09:45:09 +0100
commite9d304eb5ac99b3ba6b72022458f09fcd713b584 (patch)
tree93480ea5e719877da313f1ebb087aec613554c23
parent66abc905889c96e77a570d22551749354e352789 (diff)
parente23dd63bb675ee6ac5c88bfa8e6bddea18b5fa5f (diff)
Merge pull request #1 from rm-medina/agl-autobuild
autobuild: fix warnings due to cp command exit code
-rw-r--r--.gitmodules6
-rw-r--r--CMakeLists.txt2
-rwxr-xr-xautobuild/agl/autobuild (renamed from conf.d/autobuild/agl/autobuild)40
-rwxr-xr-xautobuild/linux/autobuild (renamed from conf.d/autobuild/linux/autobuild)40
m---------conf.d/app-templates0
-rw-r--r--conf.d/cmake/config.cmake12
-rw-r--r--conf.d/config.cmake148
7 files changed, 57 insertions, 191 deletions
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index ad40439..0000000
--- a/.gitmodules
+++ /dev/null
@@ -1,6 +0,0 @@
-[submodule "conf.d/app-templates"]
- path = conf.d/app-templates
- url = https://gerrit.automotivelinux.org/gerrit/apps/app-templates
-[submodule "afb-utilities"]
- path = afb-utilities
- url = https://gerrit.automotivelinux.org/gerrit/apps/app-afb-helpers-submodule
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9cdbb14..b485097 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -18,4 +18,4 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.3)
-include(${CMAKE_CURRENT_SOURCE_DIR}/conf.d/config.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/conf.d/cmake/config.cmake)
diff --git a/conf.d/autobuild/agl/autobuild b/autobuild/agl/autobuild
index 3a1ba5f..db00c1a 100755
--- a/conf.d/autobuild/agl/autobuild
+++ b/autobuild/agl/autobuild
@@ -1,5 +1,5 @@
#!/usr/bin/make -f
-# Copyright (C) 2015, 2016 "IoT.bzh"
+# Copyright (C) 2015 - 2018 "IoT.bzh"
# Author "Romain Forlot" <romain.forlot@iot.bzh>
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,8 +15,8 @@
# limitations under the License.
THISFILE := $(lastword $(MAKEFILE_LIST))
-BUILD_DIR := $(abspath $(dir $(THISFILE)/../../../../..)/build)
-DEST := ${BUILD_DIR}/target
+BUILD_DIR := $(abspath $(dir $(THISFILE))/../../build)
+DEST := ${BUILD_DIR}
.PHONY: all clean distclean configure build package help update
@@ -33,19 +33,21 @@ help:
@echo "- package: output a widget file '*.wgt'"
@echo "- install: install in your ${CMAKE_INSTALL_DIR} directory"
@echo ""
- @echo "Usage: ./conf.d/autobuild/agl/autobuild package DEST=${HOME}/opt"
+ @echo "Usage: ./autobuild/agl/autobuild package DEST=${HOME}/opt"
@echo "Don't use your build dir as DEST as wgt file is generated at this location"
update: configure
@cmake --build ${BUILD_DIR} --target autobuild
clean:
- @([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} clean) || echo Nothing to clean
+ @([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} ${CLEAN_ARGS} clean) || echo Nothing to clean
distclean:
@rm -rf ${BUILD_DIR}
-configure: ${BUILD_DIR}/Makefile
+configure:
+ @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}
+ @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CONFIGURE_ARGS} ..)
build: configure
@cmake --build ${BUILD_DIR} ${BUILD_ARGS} --target all
@@ -55,13 +57,23 @@ package: build
@mkdir -p ${BUILD_DIR}/$@/etc
@mkdir -p ${BUILD_DIR}/$@/lib
@mkdir -p ${BUILD_DIR}/$@/htdocs
- @mkdir -p ${BUILD_DIR}/$@/data
- @cmake --build ${BUILD_DIR} --target widget
- @mkdir -p ${DEST} && cp ${BUILD_DIR}/*wgt ${DEST}
+ @mkdir -p ${BUILD_DIR}/$@/var
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @if [ "${DEST}" != "${BUILD_DIR}" ]; then \
+ mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}; \
+ fi
-install: build
- @cmake --build ${BUILD_DIR} --target install
+package-test: build
+ @mkdir -p ${BUILD_DIR}/$@/bin
+ @mkdir -p ${BUILD_DIR}/$@/etc
+ @mkdir -p ${BUILD_DIR}/$@/lib
+ @mkdir -p ${BUILD_DIR}/$@/htdocs
+ @mkdir -p ${BUILD_DIR}/$@/var
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target test_widget
+ @if [ "${DEST}" != "${BUILD_DIR}" ]; then \
+ mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}; \
+ fi
-${BUILD_DIR}/Makefile:
- @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}
- @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CONFIGURE_ARGS} ..)
+install: build
+ @cmake --build ${BUILD_DIR} ${INSTALL_ARGS} --target install
diff --git a/conf.d/autobuild/linux/autobuild b/autobuild/linux/autobuild
index 3a1ba5f..db00c1a 100755
--- a/conf.d/autobuild/linux/autobuild
+++ b/autobuild/linux/autobuild
@@ -1,5 +1,5 @@
#!/usr/bin/make -f
-# Copyright (C) 2015, 2016 "IoT.bzh"
+# Copyright (C) 2015 - 2018 "IoT.bzh"
# Author "Romain Forlot" <romain.forlot@iot.bzh>
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,8 +15,8 @@
# limitations under the License.
THISFILE := $(lastword $(MAKEFILE_LIST))
-BUILD_DIR := $(abspath $(dir $(THISFILE)/../../../../..)/build)
-DEST := ${BUILD_DIR}/target
+BUILD_DIR := $(abspath $(dir $(THISFILE))/../../build)
+DEST := ${BUILD_DIR}
.PHONY: all clean distclean configure build package help update
@@ -33,19 +33,21 @@ help:
@echo "- package: output a widget file '*.wgt'"
@echo "- install: install in your ${CMAKE_INSTALL_DIR} directory"
@echo ""
- @echo "Usage: ./conf.d/autobuild/agl/autobuild package DEST=${HOME}/opt"
+ @echo "Usage: ./autobuild/agl/autobuild package DEST=${HOME}/opt"
@echo "Don't use your build dir as DEST as wgt file is generated at this location"
update: configure
@cmake --build ${BUILD_DIR} --target autobuild
clean:
- @([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} clean) || echo Nothing to clean
+ @([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} ${CLEAN_ARGS} clean) || echo Nothing to clean
distclean:
@rm -rf ${BUILD_DIR}
-configure: ${BUILD_DIR}/Makefile
+configure:
+ @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}
+ @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CONFIGURE_ARGS} ..)
build: configure
@cmake --build ${BUILD_DIR} ${BUILD_ARGS} --target all
@@ -55,13 +57,23 @@ package: build
@mkdir -p ${BUILD_DIR}/$@/etc
@mkdir -p ${BUILD_DIR}/$@/lib
@mkdir -p ${BUILD_DIR}/$@/htdocs
- @mkdir -p ${BUILD_DIR}/$@/data
- @cmake --build ${BUILD_DIR} --target widget
- @mkdir -p ${DEST} && cp ${BUILD_DIR}/*wgt ${DEST}
+ @mkdir -p ${BUILD_DIR}/$@/var
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @if [ "${DEST}" != "${BUILD_DIR}" ]; then \
+ mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}; \
+ fi
-install: build
- @cmake --build ${BUILD_DIR} --target install
+package-test: build
+ @mkdir -p ${BUILD_DIR}/$@/bin
+ @mkdir -p ${BUILD_DIR}/$@/etc
+ @mkdir -p ${BUILD_DIR}/$@/lib
+ @mkdir -p ${BUILD_DIR}/$@/htdocs
+ @mkdir -p ${BUILD_DIR}/$@/var
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target test_widget
+ @if [ "${DEST}" != "${BUILD_DIR}" ]; then \
+ mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}; \
+ fi
-${BUILD_DIR}/Makefile:
- @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}
- @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CONFIGURE_ARGS} ..)
+install: build
+ @cmake --build ${BUILD_DIR} ${INSTALL_ARGS} --target install
diff --git a/conf.d/app-templates b/conf.d/app-templates
deleted file mode 160000
-Subproject bb3c5413dd0e2ff098a99748a53be1c66186f23
diff --git a/conf.d/cmake/config.cmake b/conf.d/cmake/config.cmake
index 7ed1336..0ebb3b3 100644
--- a/conf.d/cmake/config.cmake
+++ b/conf.d/cmake/config.cmake
@@ -29,13 +29,9 @@ set(PROJECT_AUTHOR_MAIL "romain.forlot@iot.bzh")
set(PROJECT_LICENCE "APL2.0")
set(PROJECT_LANGUAGES,"C")
-# Where are stored default templates files from submodule or subtree app-templates in your project tree
+# Where are stored the project configuration files
# relative to the root project directory
-set(PROJECT_APP_TEMPLATES_DIR "conf.d/app-templates")
-
-# Where are stored config.xml.in and icon.png.in files. Template available at :
-# https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/app-templates
-# set(PROJECT_WGT_DIR "packaging/wgt")
+set(PROJECT_CMAKE_CONF_DIR "conf.d")
# Where are stored your external libraries for your project. This is 3rd party library that you don't maintain
# but used and must be built and linked.
@@ -86,7 +82,7 @@ set(LD_LIBRARY_PATH ${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib)
# Optional location for config.xml.in
# -----------------------------------
-set(WIDGET_CONFIG_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/conf.d/wgt/config.xml.in)
+set(WIDGET_CONFIG_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/conf.d/wgt/config.xml.in CACHE PATH "Path to widget config file template (config.xml.in)")
# Mandatory widget Mimetype specification of the main unit
# --------------------------------------------------------------------------
@@ -145,4 +141,4 @@ set(WIDGET_ENTRY_POINT "lib/afb-high-viwi.so")
# This include is mandatory and MUST happens at the end
# of this file, else you expose you to unexpected behavior
# -----------------------------------------------------------
-include(${PROJECT_APP_TEMPLATES_DIR}/cmake/common.cmake)
+include(CMakeAfbTemplates)
diff --git a/conf.d/config.cmake b/conf.d/config.cmake
deleted file mode 100644
index 7ed1336..0000000
--- a/conf.d/config.cmake
+++ /dev/null
@@ -1,148 +0,0 @@
-###########################################################################
-# Copyright 2015, 2016, 2017 IoT.bzh
-#
-# author: Fulup Ar Foll <fulup@iot.bzh>
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-###########################################################################
-
-# Project Info
-# ------------------
-set(PROJECT_NAME high-viwi-service)
-set(PROJECT_VERSION "4.0")
-set(PROJECT_PRETTY_NAME "High level CAN service")
-set(PROJECT_DESCRIPTION "Expose CAN Low Level APIs through AGL Framework")
-set(PROJECT_URL "https://github.com/iotbzh/CAN_signaling")
-set(PROJECT_ICON "icon.png")
-set(PROJECT_AUTHOR "Romain Forlot")
-set(PROJECT_AUTHOR_MAIL "romain.forlot@iot.bzh")
-set(PROJECT_LICENCE "APL2.0")
-set(PROJECT_LANGUAGES,"C")
-
-# Where are stored default templates files from submodule or subtree app-templates in your project tree
-# relative to the root project directory
-set(PROJECT_APP_TEMPLATES_DIR "conf.d/app-templates")
-
-# Where are stored config.xml.in and icon.png.in files. Template available at :
-# https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/app-templates
-# set(PROJECT_WGT_DIR "packaging/wgt")
-
-# Where are stored your external libraries for your project. This is 3rd party library that you don't maintain
-# but used and must be built and linked.
-# set(PROJECT_LIBDIR "libs")
-
-# Where are stored data for your application. Pictures, static resources must be placed in that folder.
-# set(PROJECT_RESOURCES "data")
-
-# Which directories inspect to find CMakeLists.txt target files
-# set(PROJECT_SRC_DIR_PATTERN "*")
-
-# Compilation Mode (DEBUG, RELEASE)
-# ----------------------------------
-set(CMAKE_BUILD_TYPE "DEBUG")
-
-# Kernel selection if needed. Impose a minimal version.
-# NOTE FOR NOW IT CHECKS KERNEL Yocto SDK Kernel version
-# else only HOST VERSION
-# -----------------------------------------------
-#set (kernel_minimal_version 4.8)
-
-# Compiler selection if needed. Impose a minimal version.
-# -----------------------------------------------
-set (gcc_minimal_version 4.9)
-
-# PKG_CONFIG required packages
-# -----------------------------
-set (PKG_REQUIRED_LIST
- json-c
- libsystemd
- afb-daemon
-)
-
-# Static constante definition
-# -----------------------------
-add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-std=c++11>)
-
-# Print a helper message when every thing is finished
-# ----------------------------------------------------
-#set(CLOSING_MESSAGE "")
-#set(WIDGET_MESSAGE "Install widget file using in the target : afm-util install ${PROJECT_NAME}.wgt")
-
-# (BUG!!!) as PKG_CONFIG_PATH does not work [should be an env variable]
-# ---------------------------------------------------------------------
-set(CMAKE_INSTALL_PREFIX $ENV{HOME}/opt)
-set(CMAKE_PREFIX_PATH ${CMAKE_INSTALL_PREFIX}/lib64/pkgconfig ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
-set(LD_LIBRARY_PATH ${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib)
-
-# Optional location for config.xml.in
-# -----------------------------------
-set(WIDGET_CONFIG_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/conf.d/wgt/config.xml.in)
-
-# Mandatory widget Mimetype specification of the main unit
-# --------------------------------------------------------------------------
-# Choose between :
-#- text/html : HTML application,
-# content.src designates the home page of the application
-#
-#- application/vnd.agl.native : AGL compatible native,
-# content.src designates the relative path of the binary.
-#
-# - application/vnd.agl.service: AGL service, content.src is not used.
-#
-#- ***application/x-executable***: Native application,
-# content.src designates the relative path of the binary.
-# For such application, only security setup is made.
-#
-set(WIDGET_TYPE application/vnd.agl.service)
-
-# Mandatory Widget entry point file of the main unit
-# --------------------------------------------------------------
-# This is the file that will be executed, loaded,
-# at launch time by the application framework.
-#
-set(WIDGET_ENTRY_POINT "lib/afb-high-viwi.so")
-
-# Optional dependencies order
-# ---------------------------
-#set(EXTRA_DEPENDENCIES_ORDER)
-
-# Optional Extra global include path
-# -----------------------------------
-#set(EXTRA_INCLUDE_DIRS)
-
-# Optional extra libraries
-# -------------------------
-#set(EXTRA_LINK_LIBRARIES)
-
-# Optional force binding installation
-# ------------------------------------
-# set(BINDINGS_INSTALL_PREFIX PrefixPath )
-
-# Optional force binding Linking flag
-# ------------------------------------
-# set(BINDINGS_LINK_FLAG LinkOptions )
-
-# Optional force package prefix generation, like widget
-# -----------------------------------------------------
-# set(PACKAGE_PREFIX DestinationPath)
-
-# Optional Application Framework security token
-# and port use for remote debugging.
-#------------------------------------------------------------
-#set(AFB_TOKEN "" CACHE PATH "Default AFB_TOKEN")
-#set(AFB_REMPORT "1234" CACHE PATH "Default AFB_TOKEN")
-
-# This include is mandatory and MUST happens at the end
-# of this file, else you expose you to unexpected behavior
-# -----------------------------------------------------------
-include(${PROJECT_APP_TEMPLATES_DIR}/cmake/common.cmake)