From aacb01917c30d4c5b8b9b3781714dc3465534cf5 Mon Sep 17 00:00:00 2001 From: Laurence Withers Date: Fri, 8 Dec 2006 15:51:18 +0000 Subject: [PATCH] WIP --- scripts/build.app.c++-qt/build.app | 1 - scripts/build.app.c++-qt/instantiate | 4 ++++ scripts/build.app.c++/instantiate | 3 +++ scripts/build.app.c/instantiate | 3 +++ scripts/build.files.none/instantiate | 1 + scripts/build.firmware.gpasm/build.firmware | 3 +-- scripts/build.firmware.gpasm/instantiate | 3 +++ scripts/build.firmware.sdcc/build.firmware | 1 - scripts/build.firmware.sdcc/instantiate | 3 +++ scripts/build.lib.c++/instantiate | 7 ++++++ scripts/build.lib.c/instantiate | 7 ++++++ scripts/build.tests.c++/instantiate | 2 ++ scripts/build.tests.c/instantiate | 2 ++ scripts/module-create.sh | 24 +++++++++++++++++++++ skel/README | 3 ++- skel/config | 12 +++++++++++ 16 files changed, 74 insertions(+), 5 deletions(-) create mode 100755 skel/config diff --git a/scripts/build.app.c++-qt/build.app b/scripts/build.app.c++-qt/build.app index e9eddf5..c9e0aaf 100644 --- a/scripts/build.app.c++-qt/build.app +++ b/scripts/build.app.c++-qt/build.app @@ -6,7 +6,6 @@ if [ -z ${@CNAME@_BUILT} ] then @CNAME@="obj/@NAME@" - [ -z "${QTSTUFF}" ] && QTSTUFF="-I${QTDIR}/include -L${QTDIR}/lib -lqt-mt" EXTRAS="${QTSTUFF}" # @TODO@ cflags, libs echo "Building application ${@CNAME@}..." diff --git a/scripts/build.app.c++-qt/instantiate b/scripts/build.app.c++-qt/instantiate index 9fb90de..22a11a0 100644 --- a/scripts/build.app.c++-qt/instantiate +++ b/scripts/build.app.c++-qt/instantiate @@ -5,6 +5,10 @@ then fi do_parameter_subst +add_config_option "CXX" "${COPT_CXX_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" +add_config_option "QTSTUFF" "${COPT_QTSTUFF_DEFAULT}" +add_config_option "BINDIR" "${COPT_BINDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.app.c++/instantiate b/scripts/build.app.c++/instantiate index 9fb90de..492e72e 100644 --- a/scripts/build.app.c++/instantiate +++ b/scripts/build.app.c++/instantiate @@ -5,6 +5,9 @@ then fi do_parameter_subst +add_config_option "CXX" "${COPT_CXX_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" +add_config_option "BINDIR" "${COPT_BINDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.app.c/instantiate b/scripts/build.app.c/instantiate index 9fb90de..dc6b368 100644 --- a/scripts/build.app.c/instantiate +++ b/scripts/build.app.c/instantiate @@ -5,6 +5,9 @@ then fi do_parameter_subst +add_config_option "CC" "${COPT_CC_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" +add_config_option "BINDIR" "${COPT_BINDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.files.none/instantiate b/scripts/build.files.none/instantiate index 9fb90de..c85388a 100644 --- a/scripts/build.files.none/instantiate +++ b/scripts/build.files.none/instantiate @@ -5,6 +5,7 @@ then fi do_parameter_subst +add_config_option "FILESDIR" "${COPT_FILESDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.firmware.gpasm/build.firmware b/scripts/build.firmware.gpasm/build.firmware index 746ad40..6651c69 100644 --- a/scripts/build.firmware.gpasm/build.firmware +++ b/scripts/build.firmware.gpasm/build.firmware @@ -27,8 +27,7 @@ then then echo " Compiling..." - [ -z "${GPASM}" ] && GPASM="gpasm" - do_cmd ${GPASM} -p"${PROCESSOR}" -o "${@CNAME@}" ${SRC} ${EXTRAS} || return 1 + do_cmd ${GPASM} ${GPASM_FLAGS} -p"${PROCESSOR}" -o "${@CNAME@}" ${SRC} ${EXTRAS} || return 1 print_success "Firmware built" else diff --git a/scripts/build.firmware.gpasm/instantiate b/scripts/build.firmware.gpasm/instantiate index 9fb90de..813a515 100644 --- a/scripts/build.firmware.gpasm/instantiate +++ b/scripts/build.firmware.gpasm/instantiate @@ -5,6 +5,9 @@ then fi do_parameter_subst +add_config_option "HEXDIR" "${COPT_HEXDIR_DEFAULT}" +add_config_option "GPASM" "gpasm" +add_config_option "GPASM_FLAGS" "" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.firmware.sdcc/build.firmware b/scripts/build.firmware.sdcc/build.firmware index fbb6940..33ce002 100644 --- a/scripts/build.firmware.sdcc/build.firmware +++ b/scripts/build.firmware.sdcc/build.firmware @@ -26,7 +26,6 @@ then then echo " Compiling..." - SDCCFLAGS="" # @TODO@ do_cmd ${SDCC} ${SDCCFLAGS} -o "${@CNAME@}" ${SRC} ${EXTRAS} || return 1 print_success "Firmware built" diff --git a/scripts/build.firmware.sdcc/instantiate b/scripts/build.firmware.sdcc/instantiate index 9fb90de..7947a79 100644 --- a/scripts/build.firmware.sdcc/instantiate +++ b/scripts/build.firmware.sdcc/instantiate @@ -5,6 +5,9 @@ then fi do_parameter_subst +add_config_option "HEXDIR" "${COPT_HEXDIR_DEFAULT}" +add_config_option "SDCC" "sdcc" +add_config_option "SDCCFLAGS" "" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.lib.c++/instantiate b/scripts/build.lib.c++/instantiate index 7292843..963f530 100644 --- a/scripts/build.lib.c++/instantiate +++ b/scripts/build.lib.c++/instantiate @@ -18,6 +18,13 @@ else fi do_parameter_subst NAMEMINUSL HEADER_NAME +add_config_option "CC" "${COPT_CC_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" +add_config_option "BINDIR" "${COPT_BINDIR_DEFAULT}" +add_config_option "LIBDIR" "${COPT_LIBDIR_DEFAULT}" +add_config_option "INCLUDEDIR" "${COPT_INCLUDEDIR_DEFAULT}" +add_config_option "FINALLIBDIR" "${COPT_FINALLIBDIR_DEFAULT}" +add_config_option "FINALINCLUDEDIR" "${COPT_FINALINCLUDEDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.lib.c/instantiate b/scripts/build.lib.c/instantiate index b9f8a82..cd9a400 100644 --- a/scripts/build.lib.c/instantiate +++ b/scripts/build.lib.c/instantiate @@ -18,6 +18,13 @@ else fi do_parameter_subst NAMEMINUSL HEADER_NAME +add_config_option "CC" "${COPT_CC_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" +add_config_option "BINDIR" "${COPT_BINDIR_DEFAULT}" +add_config_option "LIBDIR" "${COPT_LIBDIR_DEFAULT}" +add_config_option "INCLUDEDIR" "${COPT_INCLUDEDIR_DEFAULT}" +add_config_option "FINALLIBDIR" "${COPT_FINALLIBDIR_DEFAULT}" +add_config_option "FINALINCLUDEDIR" "${COPT_FINALINCLUDEDIR_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.tests.c++/instantiate b/scripts/build.tests.c++/instantiate index 7002962..0e73269 100644 --- a/scripts/build.tests.c++/instantiate +++ b/scripts/build.tests.c++/instantiate @@ -22,6 +22,8 @@ do done do_parameter_subst TEST_LIBS LINK_LIBS TEST_HEADERS +add_config_option "CXX" "${COPT_CXX_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/build.tests.c/instantiate b/scripts/build.tests.c/instantiate index 7002962..9f52395 100644 --- a/scripts/build.tests.c/instantiate +++ b/scripts/build.tests.c/instantiate @@ -22,6 +22,8 @@ do done do_parameter_subst TEST_LIBS LINK_LIBS TEST_HEADERS +add_config_option "CC" "${COPT_CC_DEFAULT}" +add_config_option "CFLAGS" "${COPT_CFLAGS_DEFAULT}" true # kate: replace-trailing-space-save true; space-indent true; tab-width 4; diff --git a/scripts/module-create.sh b/scripts/module-create.sh index 4c86416..bcad7ec 100755 --- a/scripts/module-create.sh +++ b/scripts/module-create.sh @@ -73,6 +73,30 @@ do_parameter_subst() { +# function used to add configuration variables +# adds variables to the 'config' file; expects name and default value +# some default default values are given below +add_config_option() { + # don't add it if it already exists + grep -q "{$1}" ../../config && return 0 + + # add the default line + echo "[ -z \"\${$1}\" ] && $1=\"$2\"" >> ../../config +} +COPT_BINDIR_DEFAULT='${PREFIX}/bin' +COPT_LIBDIR_DEFAULT='${PREFIX}/lib' +COPT_HEXDIR_DEFAULT="hexdir" +COPT_INCLUDEDIR_DEFAULT='${PREFIX}/include' +COPT_FINALLIBDIR_DEFAULT='${LIBDIR}' +COPT_FINALLINCLUDEDIR_DEFAULT='${INCLUDEDIR}' +COPT_CC_DEFAULT="gcc" +COPT_CXX_DEFAULT="g++" +COPT_CFLAGS_DEFAULT="-g -O2 -W -Wall" +COPT_QTSTUFF_DEFAULT='-I${QTDIR}/include -L${QTDIR}/lib -lqt-mt' +COPT_FILESDIR_DEFAULT='${PREFIX}/share/@P@/@NAME@' + + + if [ ! -e "src" ] then do_cmd mkdir src || exit 1 diff --git a/skel/README b/skel/README index 084e9d9..fa36aa0 100644 --- a/skel/README +++ b/skel/README @@ -9,6 +9,7 @@ Really Quick Instructions To build: ./make.sh To install: ./make.sh install - (you might want to set PREFIX, by default it's /usr/local) + +You might want to edit 'config' first. @TODO@ diff --git a/skel/config b/skel/config new file mode 100755 index 0000000..a873209 --- /dev/null +++ b/skel/config @@ -0,0 +1,12 @@ +# @P@/config +# kate: @KATE_MODELINE@ +# vim: @VIM_MODELINE@ +# +# (c)2006, @AUTHOR@, <@EMAIL@>. +# Released under the GNU GPLv2. See file COPYING or +# http://www.gnu.org/copyleft/gpl.html for details. +# +# This file contains options used to build @P@. +# + +[ -z "${PREFIX}" ] && PREFIX="/usr/local"