xref: /netbsd-src/external/gpl3/gdb.old/bin/gdb/Makefile (revision 73d56d5b0be8704e4f0a7e8221a2c7309572c9a1)
1#	$NetBSD: Makefile,v 1.9 2020/09/14 00:39:48 christos Exp $
2
3NOCTF=
4.include <bsd.own.mk>
5.include "../Makefile.inc"
6
7GDBARCHDIR=${.CURDIR}/../../lib/libgdb/arch/${GDB_MACHINE_ARCH}
8.include "${GDBARCHDIR}/defs.mk"
9
10PROG=		gdb
11
12SRCS=		gdb.c
13CPPFLAGS+=	-I${.CURDIR} \
14		-I${GDBARCHDIR} \
15		-I${DIST}/gdb \
16		-I${DIST}/gdb/common \
17		-I${DIST}/gdb/config \
18		-I${DIST}/gdb/gnulib/import \
19		-I${DIST}/include/opcode \
20		-I${DIST} \
21		-I${.CURDIR}/../../lib/libbfd/arch/${GDB_MACHINE_ARCH} \
22		-I${DIST}/bfd \
23		-I${DIST}/include \
24		${GCPPFLAGS:M-D*}
25
26TEXINFO=	gdb.texinfo stabs.texinfo
27INFOFLAGS=	-I${DIST}/gdb/doc -I${DIST}/gdb/mi \
28		-I${DIST}/readline/doc -I${.CURDIR}/.. -DGDBN=${GDBN}
29
30GDBvn.texi: ${DIST}/gdb/version.in
31	echo "@set GDBVN $$(${TOOL_CAT} ${.ALLSRC})" > ${.TARGET}
32
33gdb-cfg.texi: ${DIST}/gdb/doc/all-cfg.texi
34	${TOOL_CAT} ${.ALLSRC} > ${.TARGET}
35
36CLEANFILES+= GDBvn.texi gdb-cfg.texi
37stabs.info gdb.info: gdb-cfg.texi GDBvn.texi
38
39.include "../../Makefile.inc"
40.include <bsd.info.mk>
41
42LIBOPCODESDIR!=   cd ${.CURDIR}/../../lib/libopcodes   && ${PRINTOBJDIR}
43LIBBFDDIR!=       cd ${.CURDIR}/../../lib/libbfd       && ${PRINTOBJDIR}
44LIBIBERTYDIR!=    cd ${.CURDIR}/../../lib/libiberty    && ${PRINTOBJDIR}
45LIBGDBDIR!=	  cd ${.CURDIR}/../../lib/libgdb       && ${PRINTOBJDIR}
46LIBDECNUMBERDIR!= cd ${.CURDIR}/../../lib/libdecnumber && ${PRINTOBJDIR}
47
48.if ${USE_LIBEDIT} == yes
49LIBRL=-ledit
50LIBRLDP=${LIBEDIT}
51.else
52LIBRLDIR!=  cd ${.CURDIR}/../../lib/libreadline && ${PRINTOBJDIR}
53LIBRL=      -L${LIBRLDIR} -lreadline
54LIBRLDP=    ${LIBRLDIR}/libreadline.a
55.endif
56
57LDADD+= -L${LIBGDBDIR} -lgdb
58DPADD+= ${LIBGDBDIR}/libgdb.a
59
60# Simulator support
61.if ${GDB_MACHINE_ARCH} == powerpc || ${GDB_MACHINE_ARCH} == powerpcle || \
62    ${GDB_MACHINE_ARCH} == powerpc64
63SIMOBJ!=	cd ${.CURDIR}/../../lib/libsim && ${PRINTOBJDIR}
64LDADD+=		-L${SIMOBJ} -lsim
65DPADD+=		${SIMOBJ}/libsim.a
66.elif ${MACHINE_CPU} == xxmips
67SIMOBJ!=	cd ${.CURDIR}/../../lib/libsim && ${PRINTOBJDIR}
68LDADD+=		-L${SIMOBJ} -lsim
69DPADD+=		${SIMOBJ}/libsim.a
70.endif
71
72LDADD+= -L${LIBOPCODESDIR} -lopcodes \
73	-L${LIBBFDDIR} -lbfd \
74	-L${LIBDECNUMBERDIR} -ldecnumber \
75	${LIBRL} \
76	-lterminfo \
77	-L${LIBIBERTYDIR} -liberty
78
79DPADD+=	${LIBOPCODESDIR}/libopcodes.a \
80	${LIBBFDDIR}/libbfd.a \
81	${LIBDECNUMBERDIR}/libdecnumber.a \
82	${LIBRLDP} \
83	${LIBTERMINFO} \
84	${LIBIBERTYDIR}/libiberty.a
85
86LDADD+=		-lexpat -llzma -lz -lcurses -lintl -lm -lkvm -lutil
87DPADD+=		${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM} ${LIBUTIL}
88
89.include <bsd.prog.mk>
90
91# Force c++
92CWARNFLAGS.clang+=	-Wno-deprecated
93HOST_CC:=		${HOST_CXX}
94CC:=			${CXX}
95CFLAGS:=		${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector
96
97.PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \
98    ${DIST}/gdb/signals ${DIST}/gdb/doc ${.CURDIR}/../arch/${GDB_MACHINE_ARCH}
99