diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-05-18 18:21:08 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2018-10-15 18:22:20 +0200 |
commit | 9f1bb185fa4bbf739f59e38bf7ca3a430fada162 (patch) | |
tree | 5a9f653486ba342612ce177a7199142aeef40fdf /scripts/build | |
parent | a808486bae230c982a05980a0a28c00a43c05d3a (diff) |
Reorganization for a new project tree logic.
This directory has to be include as submodules by example into a conf.d
directory at root project path. conf.d will have config.cmake, icon.png, build scripts
and a package directory where should lies builded config.xml and config.spec files to
build package using OBS (by example)
Change-Id: I2a5cd8a4b5641995ef89a1e796a0e5a229303f7c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'scripts/build')
-rwxr-xr-x | scripts/build | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/scripts/build b/scripts/build new file mode 100755 index 0000000..5f8f595 --- /dev/null +++ b/scripts/build @@ -0,0 +1,47 @@ +#!/usr/bin/make -f +# Copyright (C) 2015, 2016 "IoT.bzh" +# Author "Romain Forlot" <romain.forlot@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. + +BUILD_DIR := build +PACKAGING_DIR := packaging/wgt + +VPATH = etc:$(PACKAGING_DIR):$(PACKAGING_DIR)/etc:$(BUILD_DIR) + +.PHONY: all clean mrproper package + +all: build + +clean: + @([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} clean) || echo Nothing to clean + +mrproper: + @rm -rf ${BUILD_DIR} + +build: ${BUILD_DIR}/Makefile + @cmake --build ${BUILD_DIR} --target all + +package: config.xml.in icon.png.in build | $(PKG_FILELIST) + @mkdir -p ${BUILD_DIR}/$@/bin + @mkdir -p ${BUILD_DIR}/$@/etc + @mkdir -p ${BUILD_DIR}/$@/lib + @mkdir -p ${BUILD_DIR}/$@/htdocs + @mkdir -p ${BUILD_DIR}/$@/data + @mkdir -p package + @cmake --build ${BUILD_DIR} --target widget + @cp ${BUILD_DIR}/*wgt package + +${BUILD_DIR}/Makefile: + @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR} + @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CMAKE_OPTS} ..) |