4.0.2 Master Config File
The master config file is where all the target specific config variables
get set for a whole site get set. The idea is that for a centralized
testing lab where people have to share a target between multiple
developers. There are settings for both remote targets and remote hosts.
Here’s an example of a Master Config File (also called the Global config
file) for a canadian cross. A canadian cross is when you build
and test a cross compiler on a machine other than the one it’s to be
hosted on.
Here we have the config settings for our California office. Note that
all config values are site dependant. Here we have two sets of values
that we use for testing m68k-aout cross compilers. As both of these
target boards has a different debugging protocol, we test on both of
them in sequence.
| global CFLAGS
global CXXFLAGS
case "$target_triplet" in {
{ "native" } {
set target_abbrev unix
}
{ "m68*-unknown-aout" } {
set target_abbrev "rom68k"
# IDP target # IDP board with rom68k monitor
set target_info(idp,name) "idp"
set target_info(idp,ldflags) "-Tidp.ld"
set target_info(idp,config) m68k-unknown-aout
set target_info(idp,cflags) ""
set target_info(idp,connect) telnet
set target_info(idp,target) "s7"
set target_info(idp,serial) "tstty12"
set target_info(idp,netport) "truckin:1007"
set target_info(idp,baud) "9600"
# MVME target # Motorola MVME 135 with BUG monitor
set target_info(mvme,name) "mvme"
set target_info(mvme,ldflags) "-Tmvme.ld"
set target_info(mvme,config) m68k-unknown-aout
set target_info(mvme,cflags) ""
set target_info(mvme,connect) telnet
set target_info(mvme,target) "s4"
set target_info(mvme,serial) "tstty8"
set target_info(mvme,netport) "truckin:1004"
set target_info(mvme,baud) "9600"
}
}
|
|
In this case, we have support for several remote hosts for
our m68k-aout cross compiler. Typically the remote Unix hosts run
DejaGnu locally, but we also use them for debugging the testsuites when
we find problems in running on remote hosts. Expect won’t run on NT, so
DejaGnu is run on the local build machine, and it’ll connect to the NT
host and run all the tests for this cross compiler on that host.
|
case "$host_triplet" in {
"native" {
}
"i?86-*-linux*" { # Linux host
set target_info(host,name) "linux-host"
set target_info(host,config) $host_triplet
set target_info(host,connect) rlogin
set target_info(host,target) chinadoll
}
"i?86-*-winnt # NT host
set target_info(host,name) "nt-host"
set target_info(host,config) i386-unknown-winnt
set target_info(host,connect) telnet
set target_info(host,target) ripple
}
"hppa*-hp-hpux*" { # HP-UX host
set target_info(host,name) "hpux-host"
set target_info(host,config) $host_triplet
set target_info(host,connect) rlogin
set target_info(host,target) slipknot
}
"sparc-sun-sunos*" { # SunOS (sun4)
set target_info(host,name) "sunos-host"
set target_info(host,config) $host_triplet
set target_info(host,connect) rlogin
set target_info(host,target) darkstar
}
}
|
|