~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to testsuite/lib/compile.exp

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#
 
2
# Compilation utility functions
 
3
#
 
4
 
 
5
#
 
6
# Unix SMB/Netbios implementation.
 
7
# Copyright (C) Tim Potter 2000
 
8
#   
 
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.
 
13
#   
 
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.
 
18
#   
 
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/>.
 
21
#
 
22
 
 
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.
 
26
 
 
27
proc simple_compile { args } {
 
28
    global srcdir
 
29
    global subdir
 
30
 
 
31
    # Compile up program
 
32
 
 
33
    set program [lindex $args 0]
 
34
    set libs [lindex $args 1]
 
35
 
 
36
    if { $libs == "" } {
 
37
    
 
38
        set output [target_compile "$srcdir/$subdir/$program.c" \
 
39
                "$srcdir/$subdir/$program" executable \
 
40
                {additional_flags="-g"}]
 
41
    } else {
 
42
 
 
43
        set output [target_compile "$srcdir/$subdir/$program.c" \
 
44
                "$srcdir/$subdir/$program" executable \
 
45
                [list libs=$libs additional_flags="-g"]]
 
46
    }
 
47
 
 
48
    # Check for errors
 
49
 
 
50
    if {$output != ""} {
 
51
        perror "compile $program"
 
52
        puts $output
 
53
        return -1
 
54
    }
 
55
}
 
56
 
 
57
# Compile a program from a Makefile.suffix
 
58
 
 
59
proc simple_make { args } {
 
60
    global srcdir
 
61
    global subdir
 
62
 
 
63
    # Compile up program with make
 
64
 
 
65
    set suffix [lindex $args 0]
 
66
    set program [lindex $args 1]
 
67
 
 
68
    set output [util_start "make" \
 
69
            "-C $srcdir/$subdir -f Makefile.$suffix $program"]
 
70
 
 
71
    # Check for errors
 
72
 
 
73
    if { [regexp "Error" $output] } {
 
74
        perror "make $program"
 
75
        puts $output
 
76
        return -1
 
77
    }
 
78
}