xref: /netbsd-src/external/gpl3/gdb/lib/libgdb/Makefile (revision c318fd39780b693bcd70c18b29cfc4c8d31ffb65)
1#	$NetBSD: Makefile,v 1.37 2024/08/14 23:54:50 christos Exp $
2
3NOCTF=
4HOSTPROG_CXX=   1
5
6.include <bsd.own.mk>
7
8.include "../Makefile.inc"
9
10LIBISPRIVATE=	yes
11LIB=		gdb
12GDBARCHDIR=	${.CURDIR}/arch/${GDB_MACHINE_ARCH}
13
14.include "${GDBARCHDIR}/defs.mk"
15.include "${NETBSDSRCDIR}/external/lgpl3/gmp/Makefile.arch"
16
17
18SRCS=		${G_LIBGDB_OBS:.o=.c}
19SRCS+=		dwarf2-frame.c netbsd-nat-low.c target-low.c
20GCPPFLAGS=	${G_INTERNAL_CFLAGS}
21CPPFLAGS+=	-I${.CURDIR} \
22		-I${GDBARCHDIR} \
23		-I${MPFRDIR}/dist/src \
24		-I${DIST} \
25		-I${DIST}/gdb \
26		-I${DIST}/gdbsupport \
27		-I${DIST}/gdb/config \
28		-I${DIST}/gnulib/import \
29		-I${DIST}/include/opcode \
30		-I${DIST}/readline \
31		-I${DIST}/libdecnumber \
32		-I${DIST}/libbacktrace \
33		-I${.CURDIR}/../libgnulib/arch/${GDB_MACHINE_ARCH} \
34		-I${.CURDIR}/../libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib/import \
35		-I${.CURDIR}/../libbacktrace/arch/${GDB_MACHINE_ARCH} \
36		-I${.CURDIR}/../libgdbsupport/arch/${GDB_MACHINE_ARCH} \
37		-I${.CURDIR}/../libbfd/arch/${GDB_MACHINE_ARCH} \
38		-I${.CURDIR}/../libdecnumber/arch/${GDB_MACHINE_ARCH} \
39		-I${DIST}/bfd \
40		-I${DIST}/include \
41		-I${GMPDIR}/arch/${GMP_MACHINE_ARCH} \
42		-include ${DIST}/gdb/defs.h \
43		-Dsighandler_t=sig_t \
44		-DTARGET_SYSTEM_ROOT=\"\" \
45		-DTARGET_SYSTEM_ROOT_RELOCATABLE=0 \
46		-DBINDIR=\"${BINDIR}\" \
47		${GCPPFLAGS:M-D*} -D__STDC_ISO_10646__
48
49CWARNFLAGS.clang+=	-Wno-switch
50
51.include "../../Makefile.inc"
52.include <bsd.lib.mk>
53
54# Force c++
55CWARNFLAGS.clang+=	-Wno-deprecated
56HOST_CC:=		${HOST_CXX}
57HOST_CFLAGS+=		${HOST_CXXFLAGS}
58CC:=			${CXX}
59CFLAGS:=		${CXXFLAGS} -std=gnu++17 -Wno-error=stack-protector
60
61.PATH: ${DIST}/gdb ${DIST}/gdb/arch ${DIST}/gdb/mi ${DIST}/gdb/cli  \
62    ${DIST}/gdb/tui ${DIST}/gdb/python ${DIST}/gdb/common ${DIST}/gdb/target \
63    ${DIST}/gdb/nat ${DIST}/gdb/guile ${DIST}/gdb/compile ${DIST}/gdb/doc \
64    ${DIST}/gdb/dwarf2 ${DIST}/gdb/unittests \
65    ${GDBARCHDIR}
66
67#
68
69ada-exp.c: ada-lex.c
70
71# These are generated by implicit rules and are not easy to generate
72CLEANDIRFILES+= \
73	ada-exp.c ada-lex.c \
74	c-exp.c \
75	d-exp.c \
76	cp-name-parser.c \
77	f-exp.c \
78	go-exp.c \
79	jv-exp.c \
80	m2-exp.c \
81	p-exp.c \
82	rust-exp.c
83
84# corelow.c
85CWARNFLAGS.gcc+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=alloca-larger-than= :}
86