2 # Compilation utility functions
6 # Unix SMB
/Netbios implementation.
7 # Copyright
(C
) Tim Potter
2000
9 # This
program is free software
; you can redistribute it and
/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation
; either version
3 of the License
, or
12 #
(at your option
) any later version.
14 # This
program is distributed in the hope that it will be useful
,
15 # but WITHOUT
ANY WARRANTY
; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License
for more details.
19 # You should have received a copy of the GNU General Public License
20 # along with this
program; if not
, see
<http
://www.gnu.org
/licenses
/>.
23 #
Compile a
program consisting of one .c file.
For example
24 # simple_compile
"foo" will compile foo.c to the executable foo.exe
25 # Use a second
argument to specify link libraries.
27 proc simple_compile
{ args } {
33 set program [lindex $
args 0]
34 set libs
[lindex $
args 1]
38 set output
[target_compile
"$srcdir/$subdir/$program.c" \
39 "$srcdir/$subdir/$program" executable \
40 {additional_flags
="-g"}]
43 set output
[target_compile
"$srcdir/$subdir/$program.c" \
44 "$srcdir/$subdir/$program" executable \
45 [list libs
=$libs additional_flags
="-g"]]
51 perror
"compile $program"
57 #
Compile a
program from a Makefile.suffix
59 proc simple_make
{ args } {
63 #
Compile up
program with make
65 set suffix
[lindex $
args 0]
66 set program [lindex $
args 1]
68 set output
[util_start
"make" \
69 "-C $srcdir/$subdir -f Makefile.$suffix $program"]
73 if { [regexp
"Error" $output] } {
74 perror
"make $program"