Makefile revision 1.25
1193323Sed#	$NetBSD: Makefile,v 1.25 2014/02/24 07:23:44 skrll Exp $
2193323Sed
3193323SedPROG=		crash
4193323SedMAN=		crash.8
5193323SedRUMPKERNEL=	yes	# XXX: Avoid -mcmodel=kernel
6193323Sed
7193323SedCWARNFLAGS.clang+=	-Wno-format
8193323Sed
9193323SedLDADD+=	-lutil -lkvm -ledit -lterminfo
10193323SedDPADD+=	${LIBUTIL} ${LIBKVM} ${LIBEDIT} ${LIBTERMINFO}
11193323Sed
12193323Sed# some ddb kernel components need limited modifications.  for now,
13193323Sed# punt if not noted as implemented here.
14193323Sed.if    ${MACHINE} == "amd64" \
15193323Sed    || ${MACHINE} == "hppa" \
16193323Sed    || ${MACHINE} == "i386" \
17198090Srdivacky    || ${MACHINE} == "sparc64" \
18314564Sdim    || (${MACHINE_ARCH} == "arm" && ${MACHINE} != "acorn26") \
19249423Sdim    || ${MACHINE_ARCH} == "m68k"
20249423SdimSRCS+=	db_trace.c
21249423Sdim.if ${MACHINE_ARCH} != "m68k"
22249423SdimSRCS+=	db_machdep.c
23276479Sdim.endif
24276479SdimREALCRASH=yes
25193323Sed.else
26193323SedREALCRASH=no
27193323Sed.endif
28249423Sdim
29309124Sdim.if ${REALCRASH} != "no"	# {
30193323Sed
31193323SedS=		${.CURDIR}/../../sys
32193323Sed
33314564SdimCPPFLAGS+=	-I${.CURDIR} -I${.OBJDIR} -I${S} -fno-strict-aliasing
34314564SdimCPPFLAGS+=	-DDDB_VERBOSE_HELP -DDB_MAX_LINE=10000000 -D_KMEMUSER
35309124SdimCPPFLAGS+=	-UDB_MACHINE_COMMANDS
36193323Sed
37193323Sed# ddb files from kernel
38314564Sdim.PATH:	$S/ddb
39314564SdimSRCS+=	db_command.c db_lwp.c db_proc.c db_xxx.c db_cpu.c
40314564SdimSRCS+=	db_access.c db_elf.c db_examine.c
41314564SdimSRCS+=	db_expr.c db_lex.c db_output.c db_print.c
42314564SdimSRCS+=	db_sym.c db_variables.c db_write_cmd.c
43314564Sdim
44314564Sdim.PATH:	${S}/arch/${MACHINE}/${MACHINE}
45314564Sdim.PATH:	${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
46193323SedSRCS+=	db_disasm.c
47314564Sdim
48314564SdimCPPFLAGS+=	-I${S}/arch
49193323Sed
50314564Sdim. if    ${MACHINE} == "amd64" \
51314564Sdim     || ${MACHINE} == "i386"
52314564SdimMACHINE_FAMILY = x86
53314564Sdim. elif  ${MACHINE_ARCH} == "m68k" \
54314564Sdim     || ${MACHINE_ARCH} == "arm"
55314564SdimMACHINE_FAMILY = ${MACHINE_ARCH}
56309124Sdim. elif    ${MACHINE} == "sparc64" \
57193323Sed     || ${MACHINE} == "sparc64"
58193323SedMACHINE_FAMILY = sparc
59193323Sed. else
60193323SedMACHINE_FAMILY = ${MACHINE}
61314564Sdim. endif
62212793Sdim
63314564Sdim.if ${MACHINE_ARCH} == "arm"
64193323Sed.PATH:	${S}/arch/arm/arm32
65193323SedSRCS+=disassem.c cpufunc_asm.S
66198090Srdivacky.endif
67198090Srdivacky
68193323Sed.PATH:	${S}/arch/${MACHINE_FAMILY}/${MACHINE_FAMILY}
69193323Sed
70314564Sdim# crash main source
71314564SdimSRCS+=	crash.c
72198090Srdivacky
73198090Srdivacky# arch.c
74193323Sed.PATH:	${.CURDIR}/arch
75314564Sdim. if (exists(${.CURDIR}/arch/${MACHINE_FAMILY}.c))
76314564SdimSRCS+=	${MACHINE_FAMILY}.c
77314564Sdim. else
78314564SdimSRCS+=	generic.c
79314564Sdim. endif
80193323Sed
81221337SdimCOPTS.db_output.c += -Wno-format-nonliteral
82193323Sed
83314564Sdim# vers.c
84314564SdimSRCS+=	vers.c
85314564Sdimvers.c:	${S}/conf/newvers.sh ${_NETBSD_VERSION_DEPENDS}
86314564Sdim	${HOST_SH} ${S}/conf/newvers.sh -r -n
87314564SdimCLEANFILES+=	vers.c version
88198090Srdivacky
89193323Sed.else				# } {
90198090Srdivacky
91198090SrdivackySRCS+=	unsupported.c
92193323Sed
93193323Sed.endif				# }
94314564Sdim
95193323Sed.include <bsd.prog.mk>
96314564Sdim.include <bsd.klinks.mk>
97193323Sed