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