6219872845
FossilOrigin-Name: dfb1e7f0cce9bc79c43eee7208cad0e2df562b2bc9705d3a36fd78f86c75495b
74 lines
2.0 KiB
Plaintext
74 lines
2.0 KiB
Plaintext
# Copyright (c) 2016 WorkWare Systems http://www.workware.net.au/
|
|
# All rights reserved
|
|
|
|
# Auto-load module for 'tmake' build system integration
|
|
|
|
use init
|
|
|
|
autosetup_add_init_type tmake "Tcl-based tmake build system" {
|
|
autosetup_check_create auto.def \
|
|
{# Initial auto.def created by 'autosetup --init=tmake'
|
|
# vim:set syntax=tcl:
|
|
|
|
use cc cc-lib cc-db cc-shared
|
|
use tmake
|
|
|
|
# Add any user options here
|
|
# Really want a --configure that takes over the rest of the command line
|
|
options {
|
|
}
|
|
|
|
cc-check-tools ar ranlib
|
|
|
|
set objdir [get-env BUILDDIR objdir]
|
|
|
|
make-config-header $objdir/include/autoconf.h
|
|
make-tmake-settings $objdir/settings.conf {[A-Z]*} *dir lib_*
|
|
}
|
|
|
|
autosetup_check_create project.spec \
|
|
{# Initial project.spec created by 'autosetup --init=tmake'
|
|
|
|
tmake-require-version 0.7.3
|
|
|
|
# vim:set syntax=tcl:
|
|
define? DESTDIR _install
|
|
|
|
# XXX If configure creates additional/different files than include/autoconf.h
|
|
# that should be reflected here
|
|
Autosetup include/autoconf.h
|
|
|
|
# e.g. for autoconf.h
|
|
IncludePaths include
|
|
|
|
ifconfig !CONFIGURED {
|
|
# Not configured, so don't process subdirs
|
|
AutoSubDirs off
|
|
# And don't process this file any further
|
|
ifconfig false
|
|
}
|
|
}
|
|
|
|
set configure [readfile configure]
|
|
# XXX Do we need also need to support a system install of tmake?
|
|
if {[string first {#@TMAKEUPDATED@} $configure] < 0} {
|
|
if {[regsub {#@@INITCHECK@@#} $configure \
|
|
{test -z "$TMAKE" -a -x "$dir/tmake" \&\& exec "$dir/tmake" --force --configure "$@"; #@TMAKEUPDATED@} configure]} {
|
|
writefile configure $configure\n
|
|
exec chmod +x configure
|
|
puts "Updated configure to invoke local tmake."
|
|
if {![file exec autosetup/tmake]} {
|
|
puts "Warning: autosetup/tmake is missing."
|
|
puts " Install it with: tmake --install=autosetup"
|
|
}
|
|
} else {
|
|
puts "Warning: configure isn't created by a recent autosetup, not updating."
|
|
}
|
|
} else {
|
|
puts "I see configure for tmake already exists."
|
|
}
|
|
if {![file exists build.spec]} {
|
|
puts "Note: I don't see build.spec. Try running: tmake --genie"
|
|
}
|
|
}
|