380 lines
6.3 KiB
Plaintext
380 lines
6.3 KiB
Plaintext
configdirs="doc"
|
|
srcname="GDB"
|
|
srctrigger=main.c
|
|
target_dependent=true
|
|
|
|
# per-host:
|
|
|
|
# map host info into gdb names.
|
|
|
|
case "${host_cpu}" in
|
|
|
|
m68k)
|
|
case "${host_vendor}" in
|
|
apollo*)
|
|
case "${host_os}" in
|
|
sysv*) gdb_host=apollo68v ;;
|
|
esac
|
|
;;
|
|
att) gdb_host=3b1 ;;
|
|
altos)
|
|
case "${host_os}" in
|
|
gas) gdb_host=altosgas ;;
|
|
*) gdb_host=altos ;;
|
|
esac
|
|
;;
|
|
|
|
cbm)
|
|
case ${host_os} in
|
|
amigados) gdb_host=amigados ;;
|
|
sysv4*) gdb_host=amix ;;
|
|
esac
|
|
;;
|
|
|
|
hp)
|
|
case ${host_os} in
|
|
hpux) gdb_host=hp300hpux ;;
|
|
bsd) gdb_host=hp300bsd ;;
|
|
esac
|
|
;;
|
|
|
|
isi) gdb_host=isi ;;
|
|
sony) gdb_host=news ;;
|
|
sun)
|
|
case "${host_os}" in
|
|
sunos3) gdb_host=sun3os3 ;;
|
|
sunos4) gdb_host=sun3os4 ;;
|
|
*) gdb_host=sun3 ;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
|
|
m68000)
|
|
case "${host_vendor}" in
|
|
sun)
|
|
case "${host_os}" in
|
|
sunos3) gdb_host=sun2os3 ;;
|
|
sunos4) gdb_host=sun2os4 ;;
|
|
*) gdb_host=sun2 ;;
|
|
esac
|
|
esac
|
|
;;
|
|
|
|
sparc)
|
|
case "${host_os}" in
|
|
sunos3) gdb_host=sun4os3 ;;
|
|
sunos4) gdb_host=sun4os4 ;;
|
|
sunos5*|sysv4*) gdb_host=sun4os5 ;;
|
|
*) gdb_host=sun4 ;;
|
|
esac
|
|
;;
|
|
|
|
m68030)
|
|
case "${host_vendor}" in
|
|
sony) gdb_host=news1000 ;;
|
|
esac
|
|
;;
|
|
|
|
mips)
|
|
case "${host_vendor}" in
|
|
sony) gdb_host=bigmips ;;
|
|
dec) gdb_host=decstation ;;
|
|
little) gdb_host=littlemips ;;
|
|
sgi)
|
|
case "${host_os}" in
|
|
irix3) gdb_host=irix3 ;;
|
|
irix4) gdb_host=irix4 ;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
|
|
i860)
|
|
gdb_host=stratus
|
|
;;
|
|
|
|
i386)
|
|
case "${host_vendor}" in
|
|
sun) gdb_host=sun386 ;;
|
|
sco) gdb_host=i386sco ;;
|
|
sequent) gdb_host=symmetry ;;
|
|
ncr) gdb_host=ncr3000 ;;
|
|
*)
|
|
case "${host_os}" in
|
|
go32) gdb_host=go32 ;;
|
|
sysv32) gdb_host=i386v32 ;;
|
|
sysv4*) gdb_host=i386v4 ;;
|
|
sysv*) gdb_host=i386v ;;
|
|
scosysv*) gdb_host=i386sco ;;
|
|
mach) gdb_host=i386mach ;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
|
|
c1 | c2) gdb_host=convex ;;
|
|
|
|
ns32k)
|
|
case "${host_vendor}" in
|
|
umax) gdb_host=umax ;;
|
|
esac
|
|
;;
|
|
|
|
romp)
|
|
gdb_host=rtbsd
|
|
;;
|
|
|
|
rs6000)
|
|
gdb_host=rs6000
|
|
;;
|
|
|
|
a29k)
|
|
gdb_host=ultra3
|
|
;;
|
|
|
|
m88k)
|
|
case "${host_vendor}" in
|
|
motorola)
|
|
gdb_host=delta88 ;;
|
|
*)
|
|
gdb_host=m88k ;;
|
|
esac
|
|
;;
|
|
|
|
vax)
|
|
case "${host_os}" in
|
|
bsd*)
|
|
gdb_host=vaxbsd ;;
|
|
ultrix*)
|
|
gdb_host=vaxult ;;
|
|
esac
|
|
;;
|
|
|
|
arm | merlin | none | np1 | pn | pyramid | tahoe)
|
|
gdb_host=${host_cpu}
|
|
;;
|
|
|
|
### unhandled hosts
|
|
#altosgas
|
|
#i386v-g
|
|
#i386v32-g
|
|
|
|
esac
|
|
|
|
|
|
if [ ! -f ${srcdir}/config/${gdb_host}.mh ]; then
|
|
echo '***' "Gdb does not support host ${host}" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
# We really shouldn't depend on there being a space after XM_FILE= ...
|
|
hostfile=`awk '$1 == "XM_FILE=" { print $2 }' <${srcdir}/config/${gdb_host}.mh`
|
|
|
|
# per-target:
|
|
|
|
case "${target_cpu}" in
|
|
|
|
m68k)
|
|
case "${target_vendor}" in
|
|
att) gdb_target=3b1 ;;
|
|
altos) gdb_target=altos ;;
|
|
cbm)
|
|
case ${target_os} in
|
|
amigados) gdb_host=amigados ;;
|
|
sysv4*) gdb_target=amix ;;
|
|
esac
|
|
;;
|
|
hp)
|
|
case "${target_os}" in
|
|
bsd) gdb_target=hp300bsd ;;
|
|
hpux) gdb_target=hp300hpux ;;
|
|
esac
|
|
;;
|
|
sun)
|
|
case "${target_os}" in
|
|
sunos3) gdb_target=sun3os3 ;;
|
|
sunos4) gdb_target=sun3os4 ;;
|
|
*) gdb_target=sun3 ;;
|
|
esac
|
|
;;
|
|
wrs) gdb_target=vxworks68 ;;
|
|
isi) gdb_target=isi ;;
|
|
sony) gdb_target=news ;;
|
|
esac
|
|
case "${target_os}" in
|
|
os68k) gdb_target=os68k ;;
|
|
esac
|
|
;;
|
|
|
|
m68000)
|
|
case "${target_vendor}" in
|
|
sun)
|
|
case "${target_os}" in
|
|
sunos3) gdb_target=sun2os3 ;;
|
|
sunos4) gdb_target=sun2os4 ;;
|
|
*) gdb_target=sun2 ;;
|
|
esac
|
|
;;
|
|
wrs) gdb_target=vxworks68 ;;
|
|
esac
|
|
;;
|
|
|
|
m680[124]0)
|
|
case "${target_vendor}" in
|
|
wrs) gdb_target=vxworks68 ;;
|
|
esac
|
|
;;
|
|
|
|
m68030)
|
|
case "${target_vendor}" in
|
|
sony) gdb_target=news1000 ;;
|
|
wrs) gdb_target=vxworks68 ;;
|
|
esac
|
|
;;
|
|
|
|
m68kmote)
|
|
case "${target_vendor}" in
|
|
tandem) gdb_target=st2000 ;;
|
|
esac
|
|
;;
|
|
|
|
none | arm | tahoe | vax | np1 | pn | np1 | pn | pyramid | merlin)
|
|
gdb_target=${target_cpu} ;;
|
|
|
|
m88k)
|
|
case "${target_vendor}" in
|
|
motorola) gdb_target=delta88 ;;
|
|
*) gdb_target=dgux ;;
|
|
esac
|
|
;;
|
|
a29k)
|
|
case "${target_os}" in
|
|
none|aout|coff) gdb_target=a29k ;;
|
|
sym1) gdb_target=ultra3 ;;
|
|
kern) gdb_target=a29k-kern ;;
|
|
ebmon) gdb_target=a29k;;
|
|
udi) gdb_target=a29k-udi;;
|
|
esac
|
|
;;
|
|
|
|
mips)
|
|
case "${target_vendor}" in
|
|
sony) gdb_target=bigmips ;;
|
|
big) gdb_target=bigmips ;;
|
|
dec) gdb_target=decstation ;;
|
|
little) gdb_target=littlemips ;;
|
|
sgi) gdb_target=irix3 ;;
|
|
esac
|
|
;;
|
|
|
|
c1 | c2) gdb_target=convex ;;
|
|
|
|
sparc)
|
|
case "${target_vendor}" in
|
|
sun)
|
|
case "${target_os}" in
|
|
sunos3) gdb_target=sun4os3 ;;
|
|
sunos4) gdb_target=sun4os4 ;;
|
|
sunos5|sysv4*) gdb_target=sun4os5 ;;
|
|
*) gdb_target=sun4 ;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
|
|
h8300)
|
|
gdb_target=h8300hms
|
|
;;
|
|
|
|
i860) gdb_target=stratus
|
|
;;
|
|
|
|
i386)
|
|
case "${target_vendor}" in
|
|
sco) gdb_target=i386sco ;;
|
|
sun) gdb_target=sun386 ;;
|
|
sequent) gdb_target=symmetry ;;
|
|
ncr) gdb_target=ncr3000 ;;
|
|
*)
|
|
case "${target_os}" in
|
|
sysv32) gdb_target=i386v32 ;;
|
|
scosysv3*) gdb_target=i386v32 ;;
|
|
sysv4*) gdb_target=i386v4 ;;
|
|
sysv*) gdb_target=i386v ;;
|
|
mach) gdb_target=i386mach ;;
|
|
coff) gdb_target=i386v ;;
|
|
aout) gdb_target=i386aout ;;
|
|
esac
|
|
esac
|
|
;;
|
|
|
|
i960)
|
|
case "${target_vendor}" in
|
|
bout | wrs) gdb_target=vxworks960 ;;
|
|
coff | intel) gdb_target=nindy960 ;;
|
|
esac
|
|
;;
|
|
|
|
ns32k)
|
|
case "${target_vendor}" in
|
|
utek) gdb_target=umax ;;
|
|
esac
|
|
;;
|
|
|
|
rs6000)
|
|
gdb_target=rs6000
|
|
;;
|
|
|
|
### unhandled targets
|
|
# altosgas
|
|
# i386v-g
|
|
# i386v32-g
|
|
|
|
esac
|
|
|
|
if [ ! -f ${srcdir}/config/${gdb_target}.mt ]; then
|
|
echo '***' "Gdb does not support target ${target}" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "${removing}" ] ; then
|
|
cat ${srcdir}/config/${gdb_host}.mh ${srcdir}/config/${gdb_target}.mt | awk '$1 == "#msg" {
|
|
print substr($0,6)}'
|
|
fi
|
|
|
|
# We really shouldn't depend on there being a space after TM_FILE= ...
|
|
targetfile=`awk '$1 == "TM_FILE=" { print $2 }' <${srcdir}/config/${gdb_target}.mt`
|
|
|
|
host_makefile_frag=config/${gdb_host}.mh
|
|
target_makefile_frag=config/${gdb_target}.mt
|
|
|
|
# If hostfile (XM_FILE) and/or targetfile (TM_FILE) is not set in the
|
|
# ?config/* file, we don't make the corresponding links. But we have
|
|
# to remove the xm.h files and tm.h files anyway, e.g. when switching
|
|
# from "configure host" to "configure none".
|
|
files=
|
|
links=
|
|
rm -f xm.h
|
|
if [ "${hostfile}" != "" ]; then
|
|
files="${files} ${hostfile}"
|
|
links="${links} xm.h"
|
|
fi
|
|
rm -f tm.h
|
|
if [ "${targetfile}" != "" ]; then
|
|
files="${files} ${targetfile}"
|
|
links="${links} tm.h"
|
|
fi
|
|
|
|
# post-target:
|
|
|
|
case ${srcdir} in
|
|
.)
|
|
;;
|
|
*)
|
|
grep -s "source ${srcdir}/.gdbinit" .gdbinit 2>/dev/null || \
|
|
echo "source ${srcdir}/.gdbinit" >> .gdbinit
|
|
esac
|
|
|
|
cat ${srcdir}/alldeps.mak ${srcdir}/depend >>Makefile
|