Makefile revision 1.10
1#	$NetBSD: Makefile,v 1.10 2011/04/14 08:21:06 mrg Exp $
2
3PROG=		crash
4MAN=		crash.8
5RUMPKERNEL=	yes	# XXX: Avoid -mcmodel=kernel
6
7LDADD+=	-lutil -lkvm -ledit -lterminfo -T${.CURDIR}/ldscript.crash
8DPADD+=	${LIBUTIL} ${LIBKVM} ${LIBEDIT} ${LIBTERMINFO}
9
10# some ddb kernel components need limited modifications.  for now,
11# punt if not noted as implemented here.
12.if    ${MACHINE} == "amd64" \
13    || ${MACHINE} == "i386" \
14    || ${MACHINE} == "sparc64"
15REALCRASH=yes
16.else
17REALCRASH=no
18.endif
19
20.if ${REALCRASH} != "no"	# {
21
22S=		${.CURDIR}/../../sys
23
24CPPFLAGS+=	-I${.CURDIR} -I${.OBJDIR} -I${S} -fno-strict-aliasing
25CPPFLAGS+=	-DDDB_VERBOSE_HELP -DDB_MAX_LINE=10000000 -D_KMEMUSER
26CPPFLAGS+=	-UDB_MACHINE_COMMANDS
27
28# ddb files from kernel
29.PATH:	$S/ddb
30SRCS+=	db_command.c db_lwp.c db_proc.c db_xxx.c db_cpu.c
31SRCS+=	db_access.c db_elf.c db_examine.c
32SRCS+=	db_expr.c db_lex.c db_output.c db_print.c
33SRCS+=	db_sym.c db_variables.c db_write_cmd.c
34
35.PATH:	${S}/arch/${MACHINE}/${MACHINE}
36SRCS+=	db_disasm.c
37
38. if    ${MACHINE} == "amd64" \
39     || ${MACHINE} == "i386"
40.PATH:	${S}/arch/x86/x86
41SRCS+=	db_trace.c
42SRCS+=	db_machdep.c
43. endif
44
45. if ${MACHINE} == "sparc64"
46SRCS+=	db_trace.c db_interface.c
47. endif
48
49# crash main source
50SRCS+=	crash.c
51
52# arch.c
53.PATH:	${.CURDIR}/arch
54. if (exists(${.CURDIR}/arch/${MACHINE_ARCH}.c))
55SRCS+=	${MACHINE_ARCH}.c
56. else
57SRCS+=	generic.c
58. endif
59
60# vers.c
61SRCS+=	vers.c
62vers.c:	${S}/conf/newvers.sh
63	${HOST_SH} ${S}/conf/newvers.sh -r
64CLEANFILES+=	vers.c version
65
66.else				# } {
67
68SRCS+=	unsupported.c
69
70.endif				# }
71
72.include <bsd.prog.mk>
73.include <bsd.klinks.mk>
74