1 .include "../Makefile.inc"
3 TARGET_ARCH?= ${MACHINE_ARCH}
8 CONTRIBDIR= ${BASEDIR}/gdb
9 .PATH: ${CONTRIBDIR} ${CONTRIBDIR}/cli ${CONTRIBDIR}/mi
10 .PATH: ${CONTRIBDIR}/common ${CONTRIBDIR}/python ${CONTRIBDIR}/features
11 .PATH: ${CONTRIBDIR}/tui
13 VERSION!= cat ${CONTRIBDIR}/version.in
15 CFLAGS+= -I${.OBJDIR} -I${.CURDIR} -I${.CURDIR}/..
16 CFLAGS+= -I${BASEDIR}/include -I${BASEDIR}/bfd
17 CFLAGS+= -I${CONTRIBDIR} -I${CONTRIBDIR}/common
18 CFLAGS+= -I${BASEDIR}/libdecnumber
19 CFLAGS+= -I${.CURDIR}/../libbfd -I${.OBJDIR}/../libbfd
21 CFLAGS+= -DMACHINE_ARCH='"${MACHINE_ARCH}"'
22 CFLAGS+= -DTARGET_ARCH='"${TARGET_ARCH}"'
23 CFLAGS+= -DVERSION_STRING='"${VERSION}"'
24 CFLAGS+= -DTUI # enable "gdb -tui" (TUI MODE)
26 SRCS+= observer.h gdb_stdint.h
28 # The order of these sources is important,
29 # because init.c below needs to obey a certain ordering
40 blockframe.c breakpoint.c break-catch-sig.c \
41 findvar.c regcache.c cleanups.c \
42 charset.c continuations.c corelow.c disasm.c dummy-frame.c dfp.c \
43 source.c value.c eval.c valops.c valarith.c valprint.c printcmd.c \
44 block.c symtab.c psymtab.c symfile.c symmisc.c linespec.c dictionary.c \
47 expprint.c environ.c stack.c thread.c \
54 macrotab.c macrocmd.c macroexp.c macroscope.c \
56 event-loop.c event-top.c inf-loop.c completer.c \
57 gdbarch.c arch-utils.c gdbtypes.c gdb_bfd.c gdb_obstack.c \
59 memattr.c mem-break.c target.c parse.c language.c buildsym.c \
64 bcache.c objfiles.c observer.c minsyms.c maint.c demangle.c \
65 dbxread.c coffread.c coff-pe-read.c \
66 dwarf2read.c mipsread.c stabsread.c corefile.c \
67 dwarf2expr.c dwarf2loc.c dwarf2-frame.c dwarf2-frame-tailcall.c \
68 ada-lang.c c-lang.c d-lang.c f-lang.c objc-lang.c \
69 ada-tasks.c ada-varobj.c \
72 go-lang.c go-valprint.c go-typeprint.c \
73 jv-lang.c jv-valprint.c jv-typeprint.c \
74 m2-lang.c opencl-lang.c p-lang.c p-typeprint.c p-valprint.c \
76 complaints.c typeprint.c \
77 ada-typeprint.c c-typeprint.c f-typeprint.c m2-typeprint.c \
78 ada-valprint.c c-valprint.c cp-valprint.c d-valprint.c f-valprint.c \
80 serial.c mdebugread.c top.c utils.c \
83 frame.c frame-unwind.c doublest.c \
86 gnu-v2-abi.c gnu-v3-abi.c cp-abi.c cp-support.c \
88 reggroups.c regset.c \
91 solib.c solib-target.c \
92 prologue-value.c memory-map.c memrange.c \
93 xml-support.c xml-syscall.c xml-utils.c \
94 target-descriptions.c target-memory.c xml-tdesc.c xml-builtin.c \
95 inferior.c osdata.c gdb_usleep.c record.c record-full.c gcore.c \
96 gdb_vecs.c jit.c progspace.c skip.c probe.c \
97 common-utils.c buffer.c ptid.c gdb-dlfcn.c common-agent.c \
98 format.c registry.c btrace.c record-btrace.c
104 SRCS+= ser-base.c ser-unix.c ser-pipe.c ser-tcp.c
107 SRCS+= remote.c dcache.c tracepoint.c ax-general.c ax-gdb.c \
108 remote-fileio.c remote-notif.c
112 cli-decode.c cli-script.c cli-cmds.c cli-setshow.c \
114 cli-interp.c cli-utils.c
117 SRCS+= mi-out.c mi-console.c \
118 mi-cmds.c mi-cmd-catch.c mi-cmd-env.c \
119 mi-cmd-var.c mi-cmd-break.c mi-cmd-stack.c \
120 mi-cmd-file.c mi-cmd-disas.c mi-symbol-cmds.c \
121 mi-cmd-target.c mi-cmd-info.c mi-interp.c \
122 mi-main.c mi-parse.c mi-getopt.c
131 SRCS+= elfread.c posix-hdep.c stap-probe.c
134 SRCS+= tui-command.c \
168 library-list-svr4.dtd \
171 traceframe-info.dtd \
174 DPADD= ${LIBEDIT} ${LIBKVM} ${LIBTERMCAP} ${LIBM}
175 DPADD+= ../libbfd/libbfd.a ../libopcodes/libopcodes.a ../libiberty/libiberty.a
176 LDADD= -ledit -ltermcap -lm
177 LDADD+= -L../libbfd -lbfd -L../libopcodes -lopcodes -L../libiberty -liberty
179 .include "Makefile.${TARGET_ARCH}"
181 init.c: ${SRCS:Ninit.c} Makefile
182 echo '/* Do not modify this file. */' > ${.TARGET}
183 echo '/* It is created automatically by the Makefile. */' >> ${.TARGET}
184 echo '#include "defs.h" /* For initialize_file_ftype. */' >> ${.TARGET}
185 echo 'extern void initialize_all_files(void);' >> ${.TARGET}
186 sed -n -e 's/^_initialize_\([a-z_0-9A-Z]*\).*/extern initialize_file_ftype _initialize_\1;/p' ${.ALLSRC:M*.c} >> ${.TARGET}
187 echo 'void' >> ${.TARGET}
188 echo 'initialize_all_files (void)' >> ${.TARGET}
189 echo '{' >> ${.TARGET}
190 sed -n -e 's/^_initialize_\([a-z_0-9A-Z]*\).*/ _initialize_\1 ();/p' ${.ALLSRC:M*.c} >> ${.TARGET}
191 echo '}' >> ${.TARGET}
193 xml-builtin.c: feature_to_c.sh ${XMLFILES}
195 sh ${CONTRIBDIR}/features/feature_to_c.sh ${.TARGET} ${.ALLSRC:M*.dtd}
197 common-agent.c: ${CONTRIBDIR}/common/agent.c
198 cp ${.ALLSRC} ${.TARGET}
200 # observer.inc can't be included in SRCS, it would duplicate the entry in OBJS
201 observer.h: observer.sh observer.inc doc/observer.texi
202 sh ${CONTRIBDIR}/observer.sh h ${CONTRIBDIR}/doc/observer.texi ${.TARGET}
204 observer.inc: observer.sh doc/observer.texi
205 sh ${CONTRIBDIR}/observer.sh inc ${CONTRIBDIR}/doc/observer.texi ${.TARGET}
210 CLEANFILES+= observer.h observer.inc gdb_stdint.h \
211 init.c xml-builtin.c common-agent.c
213 .include <bsd.lib.mk>