diff options
Diffstat (limited to 'autobuild/linux/autobuild')
-rwxr-xr-x | autobuild/linux/autobuild | 100 |
1 files changed, 87 insertions, 13 deletions
diff --git a/autobuild/linux/autobuild b/autobuild/linux/autobuild index db00c1a2..7816b3d2 100755 --- a/autobuild/linux/autobuild +++ b/autobuild/linux/autobuild @@ -16,10 +16,14 @@ THISFILE := $(lastword $(MAKEFILE_LIST)) BUILD_DIR := $(abspath $(dir $(THISFILE))/../../build) +BUILD_DIR_TEST := $(abspath $(dir $(THISFILE))/../../build-test) +BUILD_DIR_DEBUG := $(abspath $(dir $(THISFILE))/../../build-debug) +BUILD_DIR_COVERAGE := $(abspath $(dir $(THISFILE))/../../build-coverage) +BUILD_DIR_DEBUG_TEST := $(abspath $(dir $(THISFILE))/../../build-debug-test) +BUILD_DIR_COVERAGE_TEST := $(abspath $(dir $(THISFILE))/../../build-coverage-test) DEST := ${BUILD_DIR} -.PHONY: all clean distclean configure build package help update - +.PHONY: all clean distclean configure build package help update configure-debug configure-coverage build-debug build-coverage package-test package-debug package-coverage package-debug package-debug-test package-coverage-test package-all all: help help: @@ -47,11 +51,32 @@ distclean: configure: @[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR} - @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CONFIGURE_ARGS} ..) + @[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake -DCMAKE_BUILD_TYPE=RELEASE ${CONFIGURE_ARGS} ..) + +configure-test: + @[ -d ${BUILD_DIR_TEST} ] || mkdir -p ${BUILD_DIR_TEST} + @[ -f ${BUILD_DIR_TEST}/Makefile ] || (cd ${BUILD_DIR_TEST} && cmake -DCMAKE_BUILD_TYPE=RELEASE ${CONFIGURE_ARGS} ..) + +configure-debug: + @[ -d ${BUILD_DIR_DEBUG} ] || mkdir -p ${BUILD_DIR_DEBUG} + @[ -f ${BUILD_DIR_DEBUG}/Makefile ] || (cd ${BUILD_DIR_DEBUG} && cmake -DCMAKE_BUILD_TYPE=DEBUG ${CONFIGURE_ARGS} ..) + +configure-coverage: + @[ -d ${BUILD_DIR_COVERAGE} ] || mkdir -p ${BUILD_DIR_COVERAGE} + @[ -f ${BUILD_DIR_COVERAGE}/Makefile ] || (cd ${BUILD_DIR_COVERAGE} && cmake -DCMAKE_BUILD_TYPE=COVERAGE ${CONFIGURE_ARGS} ..) build: configure @cmake --build ${BUILD_DIR} ${BUILD_ARGS} --target all +build-test: configure-test + @cmake --build ${BUILD_DIR_TEST} ${BUILD_ARGS} --target all + +build-debug: configure-debug + @cmake --build ${BUILD_DIR_DEBUG} ${BUILD_ARGS} --target all + +build-coverage: configure-coverage + @cmake --build ${BUILD_DIR} ${BUILD_ARGS} --target all + package: build @mkdir -p ${BUILD_DIR}/$@/bin @mkdir -p ${BUILD_DIR}/$@/etc @@ -63,17 +88,66 @@ package: build mkdir -p ${DEST} && cp ${BUILD_DIR}/*.wgt ${DEST}; \ fi -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}; \ +package-test: build-test + @mkdir -p ${BUILD_DIR_TEST}/$@/bin + @mkdir -p ${BUILD_DIR_TEST}/$@/etc + @mkdir -p ${BUILD_DIR_TEST}/$@/lib + @mkdir -p ${BUILD_DIR_TEST}/$@/htdocs + @mkdir -p ${BUILD_DIR_TEST}/$@/var + @cmake --build ${BUILD_DIR_TEST} ${PACKAGE_ARGS} --target widget + @cmake --build ${BUILD_DIR_TEST} ${PACKAGE_ARGS} --target test_widget + @if [ "${DEST}" != "${BUILD_DIR_TEST}" ]; then \ + mkdir -p ${DEST} && cp ${BUILD_DIR_TEST}/*.wgt ${DEST}; \ + fi + +package-debug: build-debug + @mkdir -p ${BUILD_DIR_DEBUG}/$@/bin + @mkdir -p ${BUILD_DIR_DEBUG}/$@/etc + @mkdir -p ${BUILD_DIR_DEBUG}/$@/lib + @mkdir -p ${BUILD_DIR_DEBUG}/$@/htdocs + @mkdir -p ${BUILD_DIR_DEBUG}/$@/var + @cmake --build ${BUILD_DIR_DEBUG} ${PACKAGE_ARGS} --target widget + @if [ "${DEST}" != "${BUILD_DIR_DEBUG}" ]; then \ + mkdir -p ${DEST} && cp ${BUILD_DIR_DEBUG}/*.wgt ${DEST}; \ + fi + +package-coverage: build-coverage + @mkdir -p ${BUILD_DIR_COVERAGE}/$@/bin + @mkdir -p ${BUILD_DIR_COVERAGE}/$@/etc + @mkdir -p ${BUILD_DIR_COVERAGE}/$@/lib + @mkdir -p ${BUILD_DIR_COVERAGE}/$@/htdocs + @mkdir -p ${BUILD_DIR_COVERAGE}/$@/var + @cmake --build ${BUILD_DIR_COVERAGE} ${PACKAGE_ARGS} --target widget + @if [ "${DEST}" != "${BUILD_DIR_COVERAGE}" ]; then \ + mkdir -p ${DEST} && cp ${BUILD_DIR_COVERAGE}/*.wgt ${DEST}; \ fi +package-coverage-test: build-coverage + @mkdir -p ${BUILD_DIR_COVERAGE_TEST}/$@/bin + @mkdir -p ${BUILD_DIR_COVERAGE_TEST}/$@/etc + @mkdir -p ${BUILD_DIR_COVERAGE_TEST}/$@/lib + @mkdir -p ${BUILD_DIR_COVERAGE_TEST}/$@/htdocs + @mkdir -p ${BUILD_DIR_COVERAGE_TEST}/$@/var + @cmake --build ${BUILD_DIR_COVERAGE_TEST} ${PACKAGE_ARGS} --target widget + @cmake --build ${BUILD_DIR_COVERAGE_TEST} ${PACKAGE_ARGS} --target test_widget + @if [ "${DEST}" != "${BUILD_DIR_COVERAGE_TEST}" ]; then \ + mkdir -p ${DEST} && cp ${BUILD_DIR_COVERAGE_TEST}/*.wgt ${DEST}; \ + fi + + +package-debug-test: build-debug + @mkdir -p ${BUILD_DIR_DEBUG_TEST}/$@/bin + @mkdir -p ${BUILD_DIR_DEBUG_TEST}/$@/etc + @mkdir -p ${BUILD_DIR_DEBUG_TEST}/$@/lib + @mkdir -p ${BUILD_DIR_DEBUG_TEST}/$@/htdocs + @mkdir -p ${BUILD_DIR_DEBUG_TEST}/$@/var + @cmake --build ${BUILD_DIR_DEBUG_TEST} ${PACKAGE_ARGS} --target widget + @cmake --build ${BUILD_DIR_DEBUG_TEST} ${PACKAGE_ARGS} --target test_widget + @if [ "${DEST}" != "${BUILD_DIR_DEBUG_TEST}" ]; then \ + mkdir -p ${DEST} && cp ${BUILD_DIR_DEBUG_TEST}/*.wgt ${DEST}; \ + fi + +package-all: package package-test package-coverage package-debug + install: build @cmake --build ${BUILD_DIR} ${INSTALL_ARGS} --target install |