xref: /netbsd-src/external/gpl3/gdb.old/bin/gdb/Makefile (revision 8f3d8139f581b6a5056693c3ba8e494246f85e85)
1#	$NetBSD: Makefile,v 1.14 2024/08/18 19:26:28 christos Exp $
2
3NOCTF=
4.include <bsd.own.mk>
5.include "../Makefile.inc"
6
7GDBLIBDIR=${.CURDIR}/../../lib
8GDBARCHDIR=${GDBLIBDIR}/libgdb/arch/${GDB_MACHINE_ARCH}
9.include "${GDBARCHDIR}/defs.mk"
10
11PROG=		gdb
12MAN=		gdb.1 gdbinit.5
13
14SRCS=		gdb.c
15CPPFLAGS+=	-I${.CURDIR} \
16		-I${GNULIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib \
17		-I${DIST}/gdb \
18		-I${DIST}/gdbsupport \
19		-I${DIST}/gdb/config \
20		-I${DIST}/gnulib/import \
21		-I${DIST}/include/opcode \
22		-I${DIST}/readline \
23		-I${DIST}/libdecnumber \
24		-I${DIST} \
25		-I${GDBLIBDIR}/libgdbsupport/arch/${GDB_MACHINE_ARCH} \
26		-I${GDBLIBDIR}/libgdbsupport/arch/${GDB_MACHINE_ARCH}/gdbsupport \
27		-I${GDBLIBDIR}/libbfd/arch/${GDB_MACHINE_ARCH} \
28		-I${GDBLIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH} \
29		-I${GDBLIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib/import \
30		-I${DIST}/bfd \
31		-I${DIST}/include \
32		${GCPPFLAGS:M-D*}
33
34
35TEXINFO=	annotate.texinfo gdb.texinfo stabs.texinfo
36INFOFLAGS=	-I${DIST}/gdb/doc -I${DIST}/gdb/mi \
37		-I${DIST}/readline/readline/doc -I${.CURDIR}/.. -DGDBN=${GDBN}
38
39gdb-cfg.texi: ${DIST}/gdb/doc/all-cfg.texi
40	${TOOL_CAT} ${.ALLSRC} > ${.TARGET}
41
42CLEANFILES+= gdb-cfg.texi
43annotate.info stabs.info gdb.info: gdb-cfg.texi GDBvn.texi
44
45FILES=		netbsd.xml
46FILESDIR=	/usr/share/gdb/syscalls
47
48.include "../../Makefile.inc"
49.include <bsd.info.mk>
50
51PROGDPLIBS+= gdb ${GDBLIBDIR}/libgdb
52# XXX: modula2 won't load otherwise, since nothing brings the m2-objs in.
53LIBGDBDIR!=	cd ${GDBLIBDIR}/libgdb && ${PRINTOBJDIR}
54LDADD+=		${LIBGDBDIR}/m2-lang.o
55
56# Simulator support
57.if ${GDB_MACHINE_ARCH} == powerpc || ${GDB_MACHINE_ARCH} == powerpcle || \
58    ${GDB_MACHINE_ARCH} == powerpc64
59PROGDPLIBS+= sim ${GDBLIBDIR}/libsim
60.elif ${MACHINE_CPU} == xxmips
61PROGDPLIBS+= sim ${GDBLIBDIR}/libsim
62.endif
63
64PROGDPLIBS+= opcodes ${GDBLIBDIR}/libopcodes \
65    bfd ${GDBLIBDIR}/libbfd \
66    decnumber ${GDBLIBDIR}/libdecnumber \
67    gdbsupport ${GDBLIBDIR}/libgdbsupport \
68    backtrace ${GDBLIBDIR}/libbacktrace \
69    sframe ${GDBLIBDIR}/libsframe \
70    ctf ${GDBLIBDIR}/libctf \
71    gnulib ${GDBLIBDIR}/libgnulib \
72    iberty ${GDBLIBDIR}/libiberty
73
74.if ${USE_LIBEDIT} == yes
75LDADD+= -ledit
76DPADD+= ${LIBEDIT}
77.else
78PROGDPLIBS+= readline ${GDBLIBDIR}/libreadline
79.endif
80
81.include <bsd.prog.mk>
82
83LIBGMP!=	cd ${.CURDIR}/../../../../lgpl3/gmp/lib/libgmp && ${PRINTOBJDIR}
84LDADD+= -L${LIBGMP} -lgmp
85DPADD+= ${LIBGMP}/libgmp.a
86
87LDADD+=	-lexpat -llzma -lz -lcurses -lterminfo -lintl -lm -lkvm -lutil -lpthread
88DPADD+=	${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBTERMINFO} ${LIBINTL} \
89    ${LIBM} ${LIBKVM} ${LIBUTIL} ${LIBPTHREAD}
90
91# Force c++
92CWARNFLAGS.clang+=	-Wno-deprecated
93HOST_CC:=		${HOST_CXX}
94HOST_CFLAGS+=		${HOST_CXXFLAGS}
95CC:=			${CXX}
96CFLAGS:=		${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector
97
98.PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \
99    ${DIST}/gdb/signals ${DIST}/gdb/syscalls ${DIST}/gdb/doc \
100    ${.CURDIR}/../arch/${GDB_MACHINE_ARCH}
101