Add a C module
This commit is contained in:
parent
f5e3be481b
commit
8968ed27b2
|
@ -0,0 +1,13 @@
|
|||
/* @P@/src/@NAME@/TopSource.c
|
||||
*
|
||||
* (c)2006, @AUTHOR@, <@EMAIL@>.
|
||||
* Released under the GNU GPLv2. See file COPYING or
|
||||
* http://www.gnu.org/copyleft/gpl.html for details.
|
||||
*/
|
||||
|
||||
/* Below are includes used throughout the module */
|
||||
|
||||
/* options for text editors
|
||||
kate: @KATE_MODELINE@
|
||||
vim: @VIM_MODELINE@
|
||||
*/
|
|
@ -0,0 +1 @@
|
|||
source src/@NAME@/build.module
|
|
@ -0,0 +1 @@
|
|||
source src/@NAME@/build.install-module
|
|
@ -0,0 +1,12 @@
|
|||
build_target @NAME@
|
||||
|
||||
# make paths (this is for Gentoo in particular)
|
||||
build_dir_tree "${MODULEDIR}" || return 1
|
||||
|
||||
# install module
|
||||
echo "Installing module into '${MODULEDIR}'"
|
||||
install_file ${@CNAME@} ${MODULEDIR} 0755 || return 1
|
||||
print_success "Done"
|
||||
|
||||
# kate: @KATE_MODELINE@
|
||||
# vim: @VIM_MODELINE@
|
|
@ -0,0 +1,39 @@
|
|||
# These are external variables, and shouldn't clash with anything else
|
||||
# @CNAME@
|
||||
# @CNAME@_BUILT
|
||||
|
||||
if [ -z ${@CNAME@_BUILT} ]
|
||||
then
|
||||
@CNAME@="obj/@NAME@.so"
|
||||
SO_EXTRA="" # @TODO@
|
||||
|
||||
echo "Building module ${@CNAME@}..."
|
||||
|
||||
do_cmd source src/@NAME@/build.monolithic || return 1
|
||||
|
||||
MODIFIED=0
|
||||
for test in ${MONOLITHIC_TESTS} ${SRC}
|
||||
do
|
||||
if [ ${test} -nt ${@CNAME@} ]
|
||||
then
|
||||
MODIFIED=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ ${MODIFIED} -ne 0 ]
|
||||
then
|
||||
echo " Compiling"
|
||||
|
||||
do_cmd ${CC} ${CFLAGS} -Iobj -shared -fpic -o "${@CNAME@}" \
|
||||
${SRC} ${SO_EXTRA} || return 1
|
||||
|
||||
print_success "Module built"
|
||||
else
|
||||
print_success "Module up to date"
|
||||
fi
|
||||
|
||||
@CNAME@_BUILT=1
|
||||
fi
|
||||
# kate: @KATE_MODELINE@
|
||||
# vim: @VIM_MODELINE@
|
|
@ -0,0 +1,17 @@
|
|||
# These are external variables, and shouldn't clash with anything else
|
||||
# @CNAME@_MONOLITHIC
|
||||
|
||||
SRC="obj/@NAME@.c"
|
||||
HDR="obj/@HEADER_NAME@"
|
||||
|
||||
MONOLITHIC_TESTS="src/@NAME@/build.module src/@NAME@/build.monolithic"
|
||||
|
||||
if [ -z "${@CNAME@_MONOLITHIC}" ]
|
||||
then
|
||||
MONOLITHIC_SOURCE="$(echo src/@NAME@/TopSource.c)"
|
||||
make_monolithic ${SRC} C || return 1
|
||||
|
||||
@CNAME@_MONOLITHIC=1
|
||||
fi
|
||||
# kate: @KATE_MODELINE@
|
||||
# vim: @VIM_MODELINE@
|
|
@ -0,0 +1,15 @@
|
|||
if [ $# -ne 0 ]
|
||||
then
|
||||
print_failure "Not expecting arguments."
|
||||
exit 1
|
||||
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}"
|
||||
add_config_option "MODULEDIR" "${COPT_LIBDIR_DEFAULT}/@TODO@/"
|
||||
true
|
||||
|
||||
# kate: replace-trailing-space-save true; space-indent true; tab-width 4;
|
||||
# vim: expandtab:ts=4:sw=4
|
|
@ -7,6 +7,7 @@ build.firmware.gpasm
|
|||
build.firmware.sdcc
|
||||
build.lib.c
|
||||
build.lib.c++
|
||||
build.module.c
|
||||
build.tests.c
|
||||
build.tests.c++
|
||||
module-create.sh
|
||||
|
|
Loading…
Reference in New Issue