summaryrefslogtreecommitdiffstats
path: root/template.d
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2018-10-31 12:11:03 +0100
committerRomain Forlot <romain.forlot@iot.bzh>2018-11-06 15:44:09 +0000
commit35d5206a64c88d49e5b8c91b91d8710bca1d4c8e (patch)
treebd74a75e4ec4b47bc5ff7ca38ef395b9533302b6 /template.d
parent8c250308bce289b25007502d6be5c4a0e13d6159 (diff)
Upgrade the autobuild script
This update the autobuild script generated by the CMakeAfbTemplates module making clearer build dir variable and change the way to build using the classic way with cmake .. ; make etc. Remove also an intermediate target that wasn't needed. Change the directory where the autobuild script is generated. Added a README instruction about the autobuild script coming from the SPEC-495 description Change-Id: I24905b348adbdba2dca5ffa146812461a4030690 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'template.d')
-rwxr-xr-xtemplate.d/autobuild/agl/autobuild.in34
-rwxr-xr-xtemplate.d/autobuild/linux/autobuild.in34
2 files changed, 42 insertions, 26 deletions
diff --git a/template.d/autobuild/agl/autobuild.in b/template.d/autobuild/agl/autobuild.in
index 83097ab..a832db4 100755
--- a/template.d/autobuild/agl/autobuild.in
+++ b/template.d/autobuild/agl/autobuild.in
@@ -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
@@ -56,12 +58,18 @@ package: build
@mkdir -p ${BUILD_DIR}/$@/lib
@mkdir -p ${BUILD_DIR}/$@/htdocs
@mkdir -p ${BUILD_DIR}/$@/var
- @cmake --build ${BUILD_DIR} --target widget
- @mkdir -p ${DEST} && cp ${BUILD_DIR}/*wgt ${DEST}
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}
-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
+ @mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}
-${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/template.d/autobuild/linux/autobuild.in b/template.d/autobuild/linux/autobuild.in
index 83097ab..a832db4 100755
--- a/template.d/autobuild/linux/autobuild.in
+++ b/template.d/autobuild/linux/autobuild.in
@@ -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
@@ -56,12 +58,18 @@ package: build
@mkdir -p ${BUILD_DIR}/$@/lib
@mkdir -p ${BUILD_DIR}/$@/htdocs
@mkdir -p ${BUILD_DIR}/$@/var
- @cmake --build ${BUILD_DIR} --target widget
- @mkdir -p ${DEST} && cp ${BUILD_DIR}/*wgt ${DEST}
+ @cmake --build ${BUILD_DIR} ${PACKAGE_ARGS} --target widget
+ @mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}
-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
+ @mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}
-${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