+Mon Mar 22 16:17:58 1993 Fred Fish (fnf@cygnus.com)
+
+ * config/{a29k, arm, convex, gould, h8300, i386, i860, i960, m68k,
+ m88k, mips, none, ns32k, pa, pyr, romp, rs6000, sparc, tahoe, vax,
+ z8k}: New directories to hold cpu specific configuration files.
+ Naming follows gcc convention.
+ * config/{*.mt, *.mh}: All target and host makefile fragment
+ config files moved to an appropriate config/<cpu> subdirectory.
+ * nm-*, xm-*, tm-*: All native, host, and target files, which
+ get linked to nm.h, xm.h, and tm.h respectively by configure,
+ moved to appropriate config/<cpu> subdirectory.
+ * nm-sysv4.h, xm-sysv4.h, tm-sysv4.h, tm-sunos.h, nm-trash.h:
+ Native, host, and target files that are common across more than
+ one cpu architecture and included by one of the configured
+ native, host, or target files, get moved to config directory.
+ * Makefile.in (INCLUDE_CFLAGS): Add -I${srcdir}/config to
+ pick up native, host, or target include files moved to one of
+ the config subdirectories, and that are included by other files.
+ * Makefile.in (alldeps.mak): Modify to account for new config
+ directory structure.
+ * alldeps.mak, depend: Update for new config directory structure.
+ * config/*/[ntx]m-*.h: Modify all files that include other
+ [ntx]m-*.h files to use path relative to gdb/config. I.E.
+ "a29k/tm-ultra3.h" includes "a29k/tm-29k.h" rather than just
+ "tm-29k.h".
+ * remote-eb.c (tm-29k.h): Include a29k/tm-29k.h.
+ * mipsread.c (tm-mips.h): Include mips/tm-mips.h.
+ * i860-pinsn.c (tm-i860.h): Include i860/tm-i860.h.
+ * configure.in: Default gdb_host_cpu to host_cpu, and remap
+ the ones where the default is not unique or different than the
+ config subdirectory name. Similarly, handle gdb_target_cpu.
+ Modify configure.in as appropriate to make use of gdb_host_cpu
+ and gdb_target_cpu to find makefile fragments and make links.
+
Mon Mar 22 12:36:24 1993 Ian Lance Taylor (ian@cygnus.com)
* mipsread.c (compare_blocks): Sort blocks with the same start
# All the includes used for CFLAGS and for lint.
# -I. for config files.
# -I${srcdir} possibly for regex.h also.
-INCLUDE_CFLAGS = -I. -I${srcdir} -I$(INCLUDE_DIR)
+# -I${srcdir}/config for more generic config files.
+INCLUDE_CFLAGS = -I. -I${srcdir} -I${srcdir}/config -I$(INCLUDE_DIR)
# M{H,T}_CFLAGS, if defined, has host- and target-dependent CFLAGS
# from the config/ directory.
SFILES_STAND = $(SFILES) standalone.c
SFILES_KGDB = $(SFILES) stuff.c kdb-start.c
-# Header files that are not named in config/* Makefile fragments go here.
+# Header files that are not named in config/*/* Makefile fragments go here.
HFILES= breakpoint.h buildsym.h call-cmds.h command.h defs.h \
environ.h expression.h frame.h gdbcmd.h gdbcore.h gdbtypes.h \
ieee-float.h inferior.h language.h \
alldeps.mak: ${srcdir}/config
rm -f alldeps.mak alldeps.tmp allparam.tmp allconfig.tmp
- for i in `ls -d ${srcdir}/config/*.m[ht]` ; do \
+ for i in `ls -d ${srcdir}/config/*/*.m[ht]` ; do \
echo $$i >>allconfig.tmp; \
awk <$$i ' \
$$1 == "TDEPFILES=" || $$1 == "XDEPFILES=" \
-e 's!udip2soc.o!29k-share/udi/udip2soc.c!' \
-e 's/\.o/.c/' \
>alldeps2.tmp
+ for i in `cat allparam.tmp` ; do \
+ find config -name $$i -print >>allparam2.tmp ; \
+ done
echo '# Start of "alldeps.mak" definitions' \
>>alldeps.mak;
echo 'ALLDEPFILES = $$(ALLDEPFILES_MAINDIR) $$(ALLDEPFILES_SUBDIR) $$(ALLDEP_FILES_SUBSUBDIR)' \
NR == 0 {printf $$0;} \
NR != 0 {printf "\\\n" $$0} \
END {printf "\n\n"}' >>alldeps.mak;
- sort <allparam.tmp | uniq | awk 'BEGIN {printf "ALLPARAM="} \
+ sort <allparam2.tmp | uniq | awk 'BEGIN {printf "ALLPARAM="} \
NR == 0 {printf $$0;} \
NR != 0 {printf "\\\n" $$0} \
END {printf "\n\n"}' >>alldeps.mak;
END {printf "\n\n"}' >>alldeps.mak;
echo '# End of "alldeps.mak" definitions' \
>>alldeps.mak;
- rm -f alldeps.tmp alldeps2.tmp allparam.tmp allconfig.tmp
+ rm -f alldeps.tmp alldeps2.tmp allparam.tmp allparam2.tmp allconfig.tmp
# The sed script makes everything which depends on {x,t}m.h depend on
# config.status as well, in case someone reconfigures gdb out from
# Start of "alldeps.mak" definitions
-ALLDEPFILES = $(ALLDEPFILES_MAINDIR) $(ALLDEPFILES_SUBDIR)
+ALLDEPFILES = $(ALLDEPFILES_MAINDIR) $(ALLDEPFILES_SUBDIR) $(ALLDEP_FILES_SUBSUBDIR)
ALLDEPFILES_MAINDIR=\
a68v-nat.c\
altos-xdep.c\
go32-xdep.c\
gould-pinsn.c\
gould-xdep.c\
+h8300-tdep.c\
+h8500-tdep.c\
hp300ux-nat.c\
hppa-pinsn.c\
hppab-core.c\
i386v-nat.c\
i386v4-nat.c\
i387-tdep.c\
+i860-pinsn.c\
+i860-tdep.c\
i960-pinsn.c\
i960-tdep.c\
infptrace.c\
remote-adapt.c\
remote-eb.c\
remote-es1800.c\
+remote-hms.c\
+remote-mips.c\
remote-mm.c\
remote-nindy.c\
+remote-sim.c\
remote-st2000.c\
remote-udi.c\
remote-vx.c\
+remote-z8k.c\
rs6000-nat.c\
rs6000-pinsn.c\
rs6000-tdep.c\
vax-pinsn.c\
xcoffexec.c\
xcoffread.c\
-xcoffsolib.c
+xcoffsolib.c\
+z8k-tdep.c
ALLDEPFILES_SUBDIR=\
nindy-share/Onindy.c\
nindy-share/nindy.c\
nindy-share/ttybreak.c\
nindy-share/ttyflush.c\
-29k-share/udi/udip2soc.c\
-29k-share/udi/udr.c\
vx-share/xdr_ld.c\
vx-share/xdr_ptrace.c\
vx-share/xdr_rdb.c
+ALLDEPFILES_SUBSUBDIR=\
+../opcodes/libopcodes.a\
+../sim/h8300/code.c\
+../sim/h8300/perifs.c\
+../sim/h8500/compile.c\
+../sim/z8k/libsim.a\
+29k-share/udi/udip2soc.c\
+29k-share/udi/udr.c
+
ALLPARAM=\
-nm-apollo68b.h\
-nm-apollo68v.h\
-nm-hp300bsd.h\
-nm-hp300hpux.h\
-nm-hppab.h\
-nm-hppah.h\
-nm-i386bsd.h\
-nm-i386mach.h\
-nm-i386sco.h\
-nm-i386sco4.h\
-nm-i386v.h\
-nm-i386v4.h\
-nm-irix3.h\
-nm-irix4.h\
-nm-linux.h\
-nm-m88k.h\
-nm-mips.h\
-nm-news.h\
-nm-rs6000.h\
-nm-sun2.h\
-nm-sun3.h\
-nm-sun386.h\
-nm-sun4os4.h\
-nm-sysv4.h\
-nm-ultra3.h\
-nm-umax.h\
-nm-vax.h\
-tm-29k.h\
-tm-3b1.h\
-tm-68k-noun.h\
-tm-68k-un.h\
-tm-altos.h\
-tm-amix.h\
-tm-arm.h\
-tm-bigmips.h\
-tm-convex.h\
-tm-delta88.h\
-tm-es1800.h\
-tm-hp300bsd.h\
-tm-hp300hpux.h\
-tm-hppab.h\
-tm-hppah.h\
-tm-i386bsd.h\
-tm-i386v.h\
-tm-i386v4.h\
-tm-irix3.h\
-tm-isi.h\
-tm-linux.h\
-tm-m88k.h\
-tm-merlin.h\
-tm-mips.h\
-tm-news.h\
-tm-nindy960.h\
-tm-np1.h\
-tm-os68k.h\
-tm-pn.h\
-tm-pyr.h\
-tm-rs6000.h\
-tm-spc-noun.h\
-tm-spc-un.h\
-tm-st2000.h\
-tm-sun2.h\
-tm-sun2os4.h\
-tm-sun3.h\
-tm-sun386.h\
-tm-sun3os4.h\
-tm-sun4os4.h\
-tm-sun4sol2.h\
-tm-symmetry.h\
-tm-tahoe.h\
-tm-ultra3.h\
-tm-umax.h\
-tm-vax.h\
-tm-vx68.h\
-tm-vx960.h\
-xm-3b1.h\
-xm-altos.h\
-xm-amix.h\
-xm-apollo68b.h\
-xm-apollo68v.h\
-xm-arm.h\
-xm-bigmips.h\
-xm-convex.h\
-xm-delta88.h\
-xm-go32.h\
-xm-hp300bsd.h\
-xm-hp300hpux.h\
-xm-hppab.h\
-xm-hppah.h\
-xm-i386bsd.h\
-xm-i386mach.h\
-xm-i386sco.h\
-xm-i386v.h\
-xm-i386v32.h\
-xm-i386v4.h\
-xm-irix3.h\
-xm-irix4.h\
-xm-isi.h\
-xm-linux.h\
-xm-m88k.h\
-xm-merlin.h\
-xm-mips.h\
-xm-news.h\
-xm-news1000.h\
-xm-np1.h\
-xm-pn.h\
-xm-pyr.h\
-xm-rs6000.h\
-xm-rtbsd.h\
-xm-sun2.h\
-xm-sun3.h\
-xm-sun386.h\
-xm-sun3os4.h\
-xm-sun4os4.h\
-xm-sun4sol2.h\
-xm-symmetry.h\
-xm-tahoe.h\
-xm-ultra3.h\
-xm-umax.h\
-xm-vaxbsd.h\
-xm-vaxult.h
+config/a29k/nm-ultra3.h\
+config/a29k/tm-ultra3.h\
+config/a29k/xm-ultra3.h\
+config/arm/tm-arm.h\
+config/arm/xm-arm.h\
+config/convex/tm-convex.h\
+config/convex/xm-convex.h\
+config/gould/tm-np1.h\
+config/gould/tm-pn.h\
+config/gould/xm-np1.h\
+config/gould/xm-pn.h\
+config/h8300/tm-h8300.h\
+config/h8500/tm-h8500.h\
+config/i386/nm-i386bsd.h\
+config/i386/nm-i386mach.h\
+config/i386/nm-i386sco.h\
+config/i386/nm-i386sco4.h\
+config/i386/nm-i386v.h\
+config/i386/nm-i386v4.h\
+config/i386/nm-linux.h\
+config/i386/nm-sun386.h\
+config/i386/tm-i386bsd.h\
+config/i386/tm-i386v.h\
+config/i386/tm-i386v4.h\
+config/i386/tm-linux.h\
+config/i386/tm-sun386.h\
+config/i386/tm-symmetry.h\
+config/i386/xm-go32.h\
+config/i386/xm-i386bsd.h\
+config/i386/xm-i386mach.h\
+config/i386/xm-i386sco.h\
+config/i386/xm-i386v.h\
+config/i386/xm-i386v32.h\
+config/i386/xm-i386v4.h\
+config/i386/xm-linux.h\
+config/i386/xm-sun386.h\
+config/i386/xm-symmetry.h\
+config/i860/tm-stratus.h\
+config/i860/xm-stratus.h\
+config/i960/tm-nindy960.h\
+config/i960/tm-vx960.h\
+config/m68k/nm-apollo68b.h\
+config/m68k/nm-apollo68v.h\
+config/m68k/nm-hp300bsd.h\
+config/m68k/nm-hp300hpux.h\
+config/m68k/nm-news.h\
+config/m68k/nm-sun2.h\
+config/m68k/nm-sun3.h\
+config/m68k/tm-3b1.h\
+config/m68k/tm-68k-fp.h\
+config/m68k/tm-68k-nofp.h\
+config/m68k/tm-altos.h\
+config/m68k/tm-amix.h\
+config/m68k/tm-es1800.h\
+config/m68k/tm-hp300bsd.h\
+config/m68k/tm-hp300hpux.h\
+config/m68k/tm-isi.h\
+config/m68k/tm-news.h\
+config/m68k/tm-os68k.h\
+config/m68k/tm-st2000.h\
+config/m68k/tm-sun2.h\
+config/m68k/tm-sun2os4.h\
+config/m68k/tm-sun3.h\
+config/m68k/tm-sun3os4.h\
+config/m68k/tm-vx68.h\
+config/m68k/xm-3b1.h\
+config/m68k/xm-altos.h\
+config/m68k/xm-amix.h\
+config/m68k/xm-apollo68b.h\
+config/m68k/xm-apollo68v.h\
+config/m68k/xm-hp300bsd.h\
+config/m68k/xm-hp300hpux.h\
+config/m68k/xm-isi.h\
+config/m68k/xm-news.h\
+config/m68k/xm-news1000.h\
+config/m68k/xm-sun2.h\
+config/m68k/xm-sun3.h\
+config/m68k/xm-sun3os4.h\
+config/m88k/nm-m88k.h\
+config/m88k/tm-delta88.h\
+config/m88k/tm-m88k.h\
+config/m88k/xm-delta88.h\
+config/m88k/xm-m88k.h\
+config/mips/nm-irix3.h\
+config/mips/nm-irix4.h\
+config/mips/nm-mips.h\
+config/mips/tm-bigmips.h\
+config/mips/tm-irix3.h\
+config/mips/tm-mips.h\
+config/mips/xm-bigmips.h\
+config/mips/xm-irix3.h\
+config/mips/xm-irix4.h\
+config/mips/xm-mips.h\
+config/nm-sysv4.h\
+config/ns32k/nm-umax.h\
+config/ns32k/tm-merlin.h\
+config/ns32k/tm-umax.h\
+config/ns32k/xm-merlin.h\
+config/ns32k/xm-umax.h\
+config/pa/nm-hppab.h\
+config/pa/nm-hppah.h\
+config/pa/tm-hppab.h\
+config/pa/tm-hppah.h\
+config/pa/xm-hppab.h\
+config/pa/xm-hppah.h\
+config/pyr/tm-pyr.h\
+config/pyr/xm-pyr.h\
+config/romp/xm-rtbsd.h\
+config/rs6000/nm-rs6000.h\
+config/rs6000/tm-rs6000.h\
+config/rs6000/xm-rs6000.h\
+config/sparc/nm-sun4os4.h\
+config/sparc/tm-spc-em.h\
+config/sparc/tm-sun4os4.h\
+config/sparc/tm-sun4sol2.h\
+config/sparc/xm-sun4os4.h\
+config/sparc/xm-sun4sol2.h\
+config/tahoe/tm-tahoe.h\
+config/tahoe/xm-tahoe.h\
+config/vax/nm-vax.h\
+config/vax/tm-vax.h\
+config/vax/xm-vaxbsd.h\
+config/vax/xm-vaxult.h\
+config/vax/xm-vaxult2.h\
+config/z8k/tm-z8k.h
ALLCONFIG=\
-./config/3b1.mh\
-./config/3b1.mt\
-./config/a29k-kern.mt\
-./config/a29k-udi.mt\
-./config/a29k.mt\
-./config/altos.mh\
-./config/altos.mt\
-./config/amix.mh\
-./config/amix.mt\
-./config/apollo68b.mh\
-./config/apollo68v.mh\
-./config/arm.mh\
-./config/arm.mt\
-./config/bigmips.mh\
-./config/bigmips.mt\
-./config/convex.mh\
-./config/convex.mt\
-./config/decstation.mh\
-./config/decstation.mt\
-./config/delta88.mh\
-./config/delta88.mt\
-./config/es1800.mt\
-./config/go32.mh\
-./config/hp300bsd.mh\
-./config/hp300bsd.mt\
-./config/hp300hpux.mh\
-./config/hp300hpux.mt\
-./config/hppabsd.mh\
-./config/hppabsd.mt\
-./config/hppahpux.mh\
-./config/hppahpux.mt\
-./config/i386aout.mt\
-./config/i386bsd.mh\
-./config/i386bsd.mt\
-./config/i386mach.mh\
-./config/i386sco.mh\
-./config/i386sco4.mh\
-./config/i386sol2.mh\
-./config/i386sol2.mt\
-./config/i386v.mh\
-./config/i386v.mt\
-./config/i386v32.mh\
-./config/i386v4.mh\
-./config/i386v4.mt\
-./config/irix3.mh\
-./config/irix3.mt\
-./config/irix4.mh\
-./config/isi.mh\
-./config/isi.mt\
-./config/linux.mh\
-./config/linux.mt\
-./config/littlemips.mh\
-./config/littlemips.mt\
-./config/m68k-noun.mt\
-./config/m68k-un.mt\
-./config/m88k.mh\
-./config/m88k.mt\
-./config/merlin.mh\
-./config/merlin.mt\
-./config/ncr3000.mh\
-./config/ncr3000.mt\
-./config/news.mh\
-./config/news.mt\
-./config/news1000.mh\
-./config/nindy960.mt\
-./config/none.mh\
-./config/none.mt\
-./config/np1.mh\
-./config/np1.mt\
-./config/os68k.mt\
-./config/pn.mh\
-./config/pn.mt\
-./config/pyramid.mh\
-./config/pyramid.mt\
-./config/rs6000.mh\
-./config/rs6000.mt\
-./config/rtbsd.mh\
-./config/sparc-noun.mt\
-./config/sparc-un.mt\
-./config/st2000.mt\
-./config/sun2os3.mh\
-./config/sun2os3.mt\
-./config/sun2os4.mh\
-./config/sun2os4.mt\
-./config/sun386.mh\
-./config/sun386.mt\
-./config/sun3os3.mh\
-./config/sun3os3.mt\
-./config/sun3os4.mh\
-./config/sun3os4.mt\
-./config/sun4os4.mh\
-./config/sun4os4.mt\
-./config/sun4sol2.mh\
-./config/sun4sol2.mt\
-./config/symmetry.mh\
-./config/symmetry.mt\
-./config/tahoe.mh\
-./config/tahoe.mt\
-./config/ultra3.mh\
-./config/ultra3.mt\
-./config/umax.mh\
-./config/umax.mt\
-./config/vax.mt\
-./config/vaxbsd.mh\
-./config/vaxult.mh\
-./config/vxworks68.mt\
-./config/vxworks960.mt
+./config/a29k/a29k-kern.mt\
+./config/a29k/a29k-udi.mt\
+./config/a29k/a29k.mt\
+./config/a29k/ultra3.mh\
+./config/a29k/ultra3.mt\
+./config/arm/arm.mh\
+./config/arm/arm.mt\
+./config/convex/convex.mh\
+./config/convex/convex.mt\
+./config/gould/np1.mh\
+./config/gould/np1.mt\
+./config/gould/pn.mh\
+./config/gould/pn.mt\
+./config/h8300/h8300hms.mt\
+./config/h8500/h8500hms.mt\
+./config/i386/go32.mh\
+./config/i386/i386aout.mt\
+./config/i386/i386bsd.mh\
+./config/i386/i386bsd.mt\
+./config/i386/i386mach.mh\
+./config/i386/i386sco.mh\
+./config/i386/i386sco4.mh\
+./config/i386/i386sol2.mh\
+./config/i386/i386sol2.mt\
+./config/i386/i386v.mh\
+./config/i386/i386v.mt\
+./config/i386/i386v32.mh\
+./config/i386/i386v4.mh\
+./config/i386/i386v4.mt\
+./config/i386/linux.mh\
+./config/i386/linux.mt\
+./config/i386/ncr3000.mh\
+./config/i386/ncr3000.mt\
+./config/i386/sun386.mh\
+./config/i386/sun386.mt\
+./config/i386/symmetry.mh\
+./config/i386/symmetry.mt\
+./config/i860/stratus.mh\
+./config/i860/stratus.mt\
+./config/i960/nindy960.mt\
+./config/i960/vxworks960.mt\
+./config/m68k/3b1.mh\
+./config/m68k/3b1.mt\
+./config/m68k/altos.mh\
+./config/m68k/altos.mt\
+./config/m68k/amix.mh\
+./config/m68k/amix.mt\
+./config/m68k/apollo68b.mh\
+./config/m68k/apollo68v.mh\
+./config/m68k/es1800.mt\
+./config/m68k/hp300bsd.mh\
+./config/m68k/hp300bsd.mt\
+./config/m68k/hp300hpux.mh\
+./config/m68k/hp300hpux.mt\
+./config/m68k/isi.mh\
+./config/m68k/isi.mt\
+./config/m68k/m68k-fp.mt\
+./config/m68k/m68k-nofp.mt\
+./config/m68k/news.mh\
+./config/m68k/news.mt\
+./config/m68k/news1000.mh\
+./config/m68k/os68k.mt\
+./config/m68k/st2000.mt\
+./config/m68k/sun2os3.mh\
+./config/m68k/sun2os3.mt\
+./config/m68k/sun2os4.mh\
+./config/m68k/sun2os4.mt\
+./config/m68k/sun3os3.mh\
+./config/m68k/sun3os3.mt\
+./config/m68k/sun3os4.mh\
+./config/m68k/sun3os4.mt\
+./config/m68k/vxworks68.mt\
+./config/m88k/delta88.mh\
+./config/m88k/delta88.mt\
+./config/m88k/m88k.mh\
+./config/m88k/m88k.mt\
+./config/mips/bigmips.mh\
+./config/mips/bigmips.mt\
+./config/mips/decstation.mh\
+./config/mips/decstation.mt\
+./config/mips/idt.mt\
+./config/mips/irix3.mh\
+./config/mips/irix3.mt\
+./config/mips/irix4.mh\
+./config/mips/littlemips.mh\
+./config/mips/littlemips.mt\
+./config/none/none.mh\
+./config/none/none.mt\
+./config/ns32k/merlin.mh\
+./config/ns32k/merlin.mt\
+./config/ns32k/umax.mh\
+./config/ns32k/umax.mt\
+./config/pa/hppabsd.mh\
+./config/pa/hppabsd.mt\
+./config/pa/hppahpux.mh\
+./config/pa/hppahpux.mt\
+./config/pyr/pyramid.mh\
+./config/pyr/pyramid.mt\
+./config/romp/rtbsd.mh\
+./config/rs6000/rs6000.mh\
+./config/rs6000/rs6000.mt\
+./config/sparc/sparc-em.mt\
+./config/sparc/sun4os4.mh\
+./config/sparc/sun4os4.mt\
+./config/sparc/sun4sol2.mh\
+./config/sparc/sun4sol2.mt\
+./config/tahoe/tahoe.mh\
+./config/tahoe/tahoe.mt\
+./config/vax/vax.mt\
+./config/vax/vaxbsd.mh\
+./config/vax/vaxult.mh\
+./config/vax/vaxult2.mh\
+./config/z8k/z8ksim.mt
# End of "alldeps.mak" definitions
# per-host:
+# Map host cpu into the config cpu subdirectory name.
+# The default is $host_cpu.
+
+case "${host_cpu}" in
+
+c[12]) gdb_host_cpu=convex ;;
+hppa*) gdb_host_cpu=pa ;;
+i[34]86) gdb_host_cpu=i386 ;;
+m68*) gdb_host_cpu=m68k ;;
+np1) gdb_host_cpu=gould ;;
+pyramid) gdb_host_cpu=pyr ;;
+*) gdb_host_cpu=$host_cpu ;;
+
+esac
+
# map host info into gdb names.
case "${host}" in
esac
-if [ ! -f ${srcdir}/config/${gdb_host}.mh ]; then
+if [ ! -f ${srcdir}/config/${gdb_host_cpu}/${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`
+hostfile=`awk '$1 == "XM_FILE=" { print $2 }' <${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh`
# per-target:
+# Map target cpu into the config cpu subdirectory name.
+# The default is $target_cpu.
+
+case "${target_cpu}" in
+
+c[12]) gdb_target_cpu=convex ;;
+hppa*) gdb_target_cpu=pa ;;
+i[34]86) gdb_target_cpu=i386 ;;
+m68*) gdb_target_cpu=m68k ;;
+np1) gdb_target_cpu=gould ;;
+pn) gdb_target_cpu=gould ;;
+pyramid) gdb_target_cpu=pyr ;;
+*) gdb_target_cpu=$target_cpu ;;
+
+esac
+
+# map target info into gdb names.
+
case "${target}" in
a29k-*-aout) gdb_target=a29k ;;
z8k-unknown-sim) gdb_target=z8ksim ;;
esac
-if [ ! -f ${srcdir}/config/${gdb_target}.mt ]; then
+if [ ! -f ${srcdir}/config/${gdb_target_cpu}/${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" {
+ cat ${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh ${srcdir}/config/${gdb_target_cpu}/${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`
+targetfile=`awk '$1 == "TM_FILE=" { print $2 }' <${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt`
if [ "${target}" = "${host}" ] ; then
- nativefile=`awk '$1 == "NAT_FILE=" { print $2 }' <${srcdir}/config/${gdb_host}.mh`
+ nativefile=`awk '$1 == "NAT_FILE=" { print $2 }' <${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh`
fi
-host_makefile_frag=config/${gdb_host}.mh
-target_makefile_frag=config/${gdb_target}.mt
+host_makefile_frag=config/${gdb_host_cpu}/${gdb_host}.mh
+target_makefile_frag=config/${gdb_target_cpu}/${gdb_target}.mt
# If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
# (NAT_FILE) is not set in the ?config/* file, we don't make the
links=
rm -f xm.h
if [ "${hostfile}" != "" ]; then
- files="${files} ${hostfile}"
+ if [ -f ${srcdir}/config/${hostfile} ]; then
+ files="${files} config/${hostfile}"
+ else
+ files="${files} config/${gdb_host_cpu}/${hostfile}"
+ fi
links="${links} xm.h"
fi
rm -f tm.h
if [ "${targetfile}" != "" ]; then
- files="${files} ${targetfile}"
+ if [ -f ${srcdir}/config/${targetfile} ]; then
+ files="${files} config/${targetfile}"
+ else
+ files="${files} config/${gdb_target_cpu}/${targetfile}"
+ fi
links="${links} tm.h"
fi
-rm -f nat.h
+rm -f nm.h
if [ "${nativefile}" != "" ]; then
- files="${files} ${nativefile}"
+ if [ -f ${srcdir}/config/${nativefile} ]; then
+ files="${files} config/${nativefile}"
+ else
+ files="${files} config/${gdb_host_cpu}/${nativefile}"
+ fi
links="${links} nm.h"
# temporary scaffolding until all hosts have the host/target/native
# split in place.
else
- files="${files} nm-trash.h"
+ files="${files} config/nm-trash.h"
links="${links} nm.h"
fi
-udip2soc.o : ${srcdir}/29k-share/udi/udip2soc.c ${srcdir}/29k-share/udi/udiproc.h ${srcdir}/29k-share/udi/udiphcfg.h \
- ${srcdir}/29k-share/udi/udiphsun.h ${srcdir}/29k-share/udi/udiptcfg.h ${srcdir}/29k-share/udi/udipt29k.h ${srcdir}/29k-share/udi/udisoc.h
-udr.o : ${srcdir}/29k-share/udi/udr.c ${srcdir}/29k-share/udi/udiproc.h ${srcdir}/29k-share/udi/udiphcfg.h \
- ${srcdir}/29k-share/udi/udiphsun.h ${srcdir}/29k-share/udi/udiptcfg.h ${srcdir}/29k-share/udi/udipt29k.h ${srcdir}/29k-share/udi/udisoc.h
a68v-nat.o : a68v-nat.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
gdbtypes.h expression.h gdbcore.h ${srcdir}/../include/bfd.h
c-valprint.o : c-valprint.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status symtab.h ${srcdir}/../include/obstack.h gdbtypes.h expression.h value.h ${srcdir}/../include/demangle.h \
valprint.h language.h
+ch-exp.tab.o : ch-exp.tab.c ${srcdir}/defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status ${srcdir}/expression.h ${srcdir}/language.h ${srcdir}/value.h ${srcdir}/symtab.h ${srcdir}/../include/obstack.h \
+ ${srcdir}/gdbtypes.h ${srcdir}/parser-defs.h ${srcdir}/ch-lang.h
+ch-lang.o : ch-lang.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status symtab.h ${srcdir}/../include/obstack.h gdbtypes.h expression.h parser-defs.h language.h \
+ ch-lang.h
+ch-typeprint.o : ch-typeprint.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status ${srcdir}/../include/obstack.h ${srcdir}/../include/bfd.h symtab.h gdbtypes.h expression.h \
+ value.h gdbcore.h target.h command.h gdbcmd.h language.h ${srcdir}/../include/demangle.h \
+ ch-lang.h
+ch-valprint.o : ch-valprint.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status ${srcdir}/../include/obstack.h symtab.h gdbtypes.h valprint.h expression.h value.h \
+ language.h ${srcdir}/../include/demangle.h
coffread.o : coffread.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status symtab.h ${srcdir}/../include/obstack.h gdbtypes.h breakpoint.h frame.h value.h \
expression.h ${srcdir}/../include/bfd.h symfile.h ${srcdir}/../include/demangle.h objfiles.h \
gdbtypes.h expression.h command.h ${srcdir}/../include/bfd.h target.h gdbcore.h
cp-valprint.o : cp-valprint.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status ${srcdir}/../include/obstack.h symtab.h gdbtypes.h expression.h value.h command.h \
- gdbcmd.h
+ gdbcmd.h ${srcdir}/../include/demangle.h
dbxread.o : dbxread.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status symtab.h breakpoint.h frame.h value.h gdbtypes.h expression.h command.h \
target.h ${srcdir}/../include/bfd.h gdbcore.h ${srcdir}/../bfd/libbfd.h ${srcdir}/../bfd/libaout.h symfile.h \
gould-xdep.o : gould-xdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
gdbtypes.h expression.h gdbcore.h ${srcdir}/../include/bfd.h
+h8300-tdep.o : h8300-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status frame.h ${srcdir}/../include/obstack.h symtab.h
+h8500-tdep.o : h8500-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status frame.h ${srcdir}/../include/obstack.h symtab.h gdbtypes.h gdbcmd.h command.h ${srcdir}/../include/dis-asm.h \
+ ${srcdir}/../include/bfd.h ../opcodes/h8500-opc.h
hppa-pinsn.o : hppa-pinsn.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status symtab.h ${srcdir}/../include/obstack.h ${srcdir}/../include/opcode/hppa.h
hppab-nat.o : hppab-nat.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
gdbtypes.h expression.h ${srcdir}/../include/wait.h gdbcore.h ${srcdir}/../include/bfd.h gdbcmd.h \
command.h target.h symfile.h ${srcdir}/../include/demangle.h objfiles.h
i386-pinsn.o : i386-pinsn.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
- tm.h config.status gdbcore.h ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h
+ tm.h config.status ${srcdir}/../include/dis-asm.h ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h
i386-tdep.o : i386-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
gdbtypes.h expression.h gdbcore.h ${srcdir}/../include/bfd.h target.h
m2-valprint.o : m2-valprint.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status ${srcdir}/../include/obstack.h symtab.h gdbtypes.h valprint.h
m68k-pinsn.o : m68k-pinsn.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
- tm.h config.status symtab.h ${srcdir}/../include/obstack.h ${srcdir}/../include/opcode/m68k.h gdbcore.h ${srcdir}/../include/bfd.h \
- ${srcdir}/../include/ieee-float.h
+ tm.h config.status ${srcdir}/../include/dis-asm.h ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h
m68k-tdep.o : m68k-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
- tm.h config.status ${srcdir}/../include/ieee-float.h frame.h symtab.h ${srcdir}/../include/obstack.h
+ tm.h config.status frame.h symtab.h ${srcdir}/../include/obstack.h
m88k-nat.o : m88k-nat.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
gdbtypes.h expression.h gdbcore.h ${srcdir}/../include/bfd.h /usr/include/setjmp.h
gdbtypes.h expression.h gdbcmd.h command.h language.h gdbcore.h ${srcdir}/../include/bfd.h \
symfile.h ${srcdir}/../include/demangle.h objfiles.h
mipsread.o : mipsread.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
- tm-mips.h ${srcdir}/../include/coff/sym.h ${srcdir}/../include/coff/symconst.h symtab.h ${srcdir}/../include/obstack.h \
- gdbtypes.h gdbcore.h ${srcdir}/../include/bfd.h symfile.h ${srcdir}/../include/demangle.h objfiles.h \
- buildsym.h stabsread.h complaints.h gdb-stabs.h ${srcdir}/../include/coff/internal.h \
- ${srcdir}/../include/coff/mips.h ${srcdir}/../include/coff/ecoff-ext.h ${srcdir}/../bfd/libaout.h ${srcdir}/../include/aout/aout64.h \
- ${srcdir}/../include/aout/stab_gnu.h ${srcdir}/../include/aout/stab.def ${srcdir}/../bfd/libcoff.h ${srcdir}/../bfd/libecoff.h \
- expression.h language.h partial-stab.h
+ ${srcdir}/config/mips/tm-mips.h ${srcdir}/../include/coff/sym.h ${srcdir}/../include/coff/symconst.h \
+ symtab.h ${srcdir}/../include/obstack.h gdbtypes.h gdbcore.h ${srcdir}/../include/bfd.h symfile.h \
+ ${srcdir}/../include/demangle.h objfiles.h buildsym.h stabsread.h complaints.h gdb-stabs.h \
+ ${srcdir}/../include/coff/internal.h ${srcdir}/../include/coff/mips.h ${srcdir}/../include/coff/ecoff-ext.h \
+ ${srcdir}/../bfd/libaout.h ${srcdir}/../include/aout/aout64.h ${srcdir}/../include/aout/stab_gnu.h ${srcdir}/../include/aout/stab.def \
+ ${srcdir}/../bfd/libcoff.h ${srcdir}/../bfd/libecoff.h expression.h language.h partial-stab.h
news-xdep.o : news-xdep.c
Onindy.o : ${srcdir}/nindy-share/Onindy.c ${srcdir}/nindy-share/ttycntl.h ${srcdir}/nindy-share/block_io.h \
${srcdir}/../include/wait.h ${srcdir}/nindy-share/env.h /usr/include/string.h
tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h target.h ${srcdir}/../include/bfd.h \
gdbcore.h
-remote-eb.o : remote-eb.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
- tm-29k.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
- gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h target.h ${srcdir}/../include/bfd.h \
- gdbcore.h
remote-es1800.o : remote-es1800.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
gdbtypes.h expression.h target.h ${srcdir}/../include/bfd.h ${srcdir}/../include/wait.h terminal.h \
command.h
+remote-hms.o : remote-hms.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
+ gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h target.h ${srcdir}/../include/bfd.h \
+ gdbcore.h
+remote-mips.o : remote-mips.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
+ gdbtypes.h expression.h ${srcdir}/../include/bfd.h ${srcdir}/../include/wait.h gdbcmd.h command.h \
+ gdbcore.h serial.h target.h
remote-mm.o : remote-mm.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h minimon.h target.h ${srcdir}/../include/bfd.h
gdbtypes.h expression.h target.h ${srcdir}/../include/bfd.h gdbcore.h command.h ${srcdir}/../include/ieee-float.h \
${srcdir}/../include/wait.h ${srcdir}/nindy-share/ttycntl.h ${srcdir}/nindy-share/demux.h ${srcdir}/nindy-share/env.h \
${srcdir}/nindy-share/stop.h
+remote-sim.o : remote-sim.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
+ gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h target.h ${srcdir}/../include/bfd.h \
+ gdbcore.h
remote-st2000.o : remote-st2000.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status gdbcore.h ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h target.h ${srcdir}/../include/wait.h \
serial.h
gdbtypes.h expression.h ${srcdir}/../include/wait.h target.h ${srcdir}/../include/bfd.h gdbcore.h \
command.h complaints.h ${srcdir}/vx-share/ptrace.h ${srcdir}/vx-share/xdr_ptrace.h ${srcdir}/vx-share/xdr_ld.h \
${srcdir}/vx-share/xdr_rdb.h ${srcdir}/vx-share/dbgRpcLib.h
+remote-z8k.o : remote-z8k.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h frame.h value.h \
+ gdbtypes.h expression.h ${srcdir}/../include/wait.h terminal.h target.h ${srcdir}/../include/bfd.h \
+ gdbcore.h ../sim/z8k/sim.h
remote.o : remote.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
gdbtypes.h expression.h target.h ${srcdir}/../include/bfd.h ${srcdir}/../include/wait.h terminal.h \
target.h
sparc-tdep.o : sparc-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status frame.h inferior.h symtab.h ${srcdir}/../include/obstack.h breakpoint.h value.h \
- gdbtypes.h expression.h target.h ${srcdir}/../include/bfd.h ${srcdir}/../include/ieee-float.h gdbcore.h
+ gdbtypes.h expression.h target.h ${srcdir}/../include/bfd.h ${srcdir}/../include/ieee-float.h \
+ gdbcore.h
stabsread.o : stabsread.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h symtab.h gdbtypes.h symfile.h \
${srcdir}/../include/demangle.h objfiles.h ${srcdir}/../include/aout/stab_gnu.h ${srcdir}/../include/aout/stab.def \
${srcdir}/../include/bfd.h frame.h command.h gdbcmd.h target.h ${srcdir}/../include/demangle.h
vax-pinsn.o : vax-pinsn.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status symtab.h ${srcdir}/../include/obstack.h ${srcdir}/../include/opcode/vax.h
-xdr_ld.o : ${srcdir}/vx-share/xdr_ld.c ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h /usr/include/rpc/rpc.h \
+xdr_ld.o : ${srcdir}/vx-share/xdr_ld.c ${srcdir}/defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h \
+ ${srcdir}/../include/fopen-same.h tm.h config.status ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h /usr/include/rpc/rpc.h \
${srcdir}/vx-share/xdr_ld.h
-xdr_ptrace.o : ${srcdir}/vx-share/xdr_ptrace.c ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h ${srcdir}/vx-share/xdr_ptrace.h
-xdr_rdb.o : ${srcdir}/vx-share/xdr_rdb.c ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h ${srcdir}/vx-share/xdr_rdb.h
+xdr_ptrace.o : ${srcdir}/vx-share/xdr_ptrace.c ${srcdir}/defs.h ${srcdir}/../include/ansidecl.h xm.h config.status \
+ nm.h ${srcdir}/../include/fopen-same.h tm.h config.status ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h \
+ ${srcdir}/vx-share/xdr_ptrace.h
+xdr_rdb.o : ${srcdir}/vx-share/xdr_rdb.c ${srcdir}/defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h \
+ ${srcdir}/../include/fopen-same.h tm.h config.status ${srcdir}/vx-share/vxWorks.h ${srcdir}/vx-share/vxTypes.h ${srcdir}/vx-share/xdr_rdb.h
xcoffread.o : xcoffread.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
tm.h config.status ${srcdir}/../include/bfd.h ${srcdir}/../include/obstack.h symtab.h gdbtypes.h symfile.h \
${srcdir}/../include/demangle.h objfiles.h buildsym.h stabsread.h gdb-stabs.h complaints.h \
${srcdir}/../include/coff/internal.h ${srcdir}/../bfd/libcoff.h ${srcdir}/../include/coff/rs6000.h
+z8k-tdep.o : z8k-tdep.c defs.h ${srcdir}/../include/ansidecl.h xm.h config.status nm.h ${srcdir}/../include/fopen-same.h \
+ tm.h config.status frame.h ${srcdir}/../include/obstack.h symtab.h gdbcmd.h command.h gdbtypes.h ${srcdir}/../include/dis-asm.h \
+ ${srcdir}/../include/bfd.h
#include <stdio.h>
#include "defs.h"
-#include "tm-i860.h"
+#include "i860/tm-i860.h"
#include "i860-opcode.h"
/* i860 instructions are never longer than this many bytes. */
#define TM_FILE_OVERRIDE
#include "defs.h"
-#include "tm-mips.h"
+#include "mips/tm-mips.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "gdbcore.h"
#define TM_FILE_OVERRIDE
#include "defs.h"
#include <string.h>
-#include "tm-29k.h"
+#include "a29k/tm-29k.h"
#include "inferior.h"
#include "wait.h"