Home | History | Annotate | Line # | Download | only in crash
Makefile revision 1.49
      1  1.49  riastrad #	$NetBSD: Makefile,v 1.49 2023/07/09 17:10:47 riastradh 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.12     joerg CWARNFLAGS.clang+=	-Wno-format
      8  1.12     joerg 
      9  1.14     skrll LDADD+=	-lutil -lkvm -ledit -lterminfo
     10   1.7  christos DPADD+=	${LIBUTIL} ${LIBKVM} ${LIBEDIT} ${LIBTERMINFO}
     11   1.1        ad 
     12  1.27     skrll .include <bsd.own.mk>
     13  1.27     skrll 
     14   1.1        ad # some ddb kernel components need limited modifications.  for now,
     15   1.1        ad # punt if not noted as implemented here.
     16  1.10       mrg .if    ${MACHINE} == "amd64" \
     17  1.25     skrll     || ${MACHINE} == "hppa" \
     18  1.10       mrg     || ${MACHINE} == "i386" \
     19  1.32       mrg     || ${MACHINE} == "sparc" \
     20  1.16   mlelstv     || ${MACHINE} == "sparc64" \
     21  1.38     skrll     || ${MACHINE_CPU} == "arm" \
     22  1.41  jakllsch     || ${MACHINE_CPU} == "aarch64" \
     23  1.45       mrg     || ${MACHINE_CPU} == "mips" \
     24  1.47  riastrad     || ${MACHINE_ARCH} == "m68k" \
     25  1.47  riastrad     || ${MACHINE_ARCH} == "powerpc" \
     26  1.47  riastrad     || ${MACHINE_ARCH} == "powerpc64"
     27  1.17  christos SRCS+=	db_trace.c
     28  1.45       mrg .if ${MACHINE_CPU} == "mips"
     29  1.45       mrg SRCS+=	db_interface.c mips_stacktrace.c
     30  1.45       mrg CPPFLAGS+=	-DDDB
     31  1.47  riastrad .elif ${MACHINE_ARCH} != "m68k" \
     32  1.47  riastrad    && ${MACHINE_ARCH} != "powerpc" \
     33  1.47  riastrad    && ${MACHINE_ARCH} != "powerpc64"
     34  1.17  christos SRCS+=	db_machdep.c
     35  1.21  christos .endif
     36  1.10       mrg REALCRASH=yes
     37   1.1        ad .else
     38  1.10       mrg REALCRASH=no
     39  1.10       mrg .endif
     40  1.10       mrg 
     41  1.10       mrg .if ${REALCRASH} != "no"	# {
     42   1.1        ad 
     43   1.7  christos S=		${.CURDIR}/../../sys
     44   1.1        ad 
     45   1.1        ad CPPFLAGS+=	-I${.CURDIR} -I${.OBJDIR} -I${S} -fno-strict-aliasing
     46   1.1        ad CPPFLAGS+=	-DDDB_VERBOSE_HELP -DDB_MAX_LINE=10000000 -D_KMEMUSER
     47  1.31  christos CPPFLAGS+=	-UDB_MACHINE_COMMANDS
     48   1.1        ad 
     49  1.49  riastrad # XXX
     50  1.49  riastrad .if ${MACHINE} == "evbppc"
     51  1.49  riastrad CPPFLAGS+=	-DPPC_INTR_IMPL="<powerpc/intr.h>"
     52  1.49  riastrad .endif
     53  1.49  riastrad 
     54   1.1        ad # ddb files from kernel
     55   1.1        ad .PATH:	$S/ddb
     56   1.1        ad SRCS+=	db_command.c db_lwp.c db_proc.c db_xxx.c db_cpu.c
     57  1.39   mlelstv SRCS+=  db_autoconf.c
     58   1.1        ad SRCS+=	db_access.c db_elf.c db_examine.c
     59   1.1        ad SRCS+=	db_expr.c db_lex.c db_output.c db_print.c
     60  1.49  riastrad SRCS+=	db_sym.c db_syncobj.c db_variables.c db_write_cmd.c
     61   1.1        ad 
     62   1.7  christos .PATH:	${S}/arch/${MACHINE}/${MACHINE}
     63  1.15     skrll .PATH:	${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
     64  1.10       mrg SRCS+=	db_disasm.c
     65   1.7  christos 
     66  1.28  christos .PATH:  $S/kern
     67  1.28  christos SRCS+=	kern_timeout.c
     68  1.29  christos CPPFLAGS.kern_timeout.c += -DCRASH -DDDB
     69  1.28  christos 
     70  1.44       rin CPPFLAGS +=-DLOCKDEBUG
     71  1.44       rin SRCS += subr_lockdebug.c
     72  1.44       rin CPPFLAGS.subr_lockdebug.c += -DCRASH -DDDB
     73  1.44       rin 
     74  1.17  christos CPPFLAGS+=	-I${S}/arch
     75  1.17  christos 
     76  1.10       mrg . if    ${MACHINE} == "amd64" \
     77  1.10       mrg      || ${MACHINE} == "i386"
     78  1.11  christos MACHINE_FAMILY = x86
     79  1.32       mrg . elif  ${MACHINE} == "sparc64"
     80  1.24  christos MACHINE_FAMILY = sparc
     81  1.11  christos . else
     82  1.27     skrll MACHINE_FAMILY = ${MACHINE_CPU}
     83  1.10       mrg . endif
     84  1.10       mrg 
     85  1.27     skrll .if ${MACHINE_CPU} == "arm"
     86  1.17  christos .PATH:	${S}/arch/arm/arm32
     87  1.22     skrll SRCS+=disassem.c cpufunc_asm.S
     88  1.17  christos .endif
     89  1.41  jakllsch .if ${MACHINE_CPU} == "aarch64"
     90  1.41  jakllsch SRCS+=disasm.c
     91  1.41  jakllsch .endif
     92   1.1        ad 
     93  1.17  christos .PATH:	${S}/arch/${MACHINE_FAMILY}/${MACHINE_FAMILY}
     94  1.16   mlelstv 
     95   1.1        ad # crash main source
     96   1.1        ad SRCS+=	crash.c
     97   1.1        ad 
     98   1.1        ad # arch.c
     99   1.1        ad .PATH:	${.CURDIR}/arch
    100  1.11  christos . if (exists(${.CURDIR}/arch/${MACHINE_FAMILY}.c))
    101  1.11  christos SRCS+=	${MACHINE_FAMILY}.c
    102   1.7  christos . else
    103   1.1        ad SRCS+=	generic.c
    104   1.7  christos . endif
    105   1.1        ad 
    106  1.13  christos COPTS.db_output.c += -Wno-format-nonliteral
    107  1.13  christos 
    108  1.40  christos .if ${MKREPRO} == "yes"
    109  1.40  christos .       if ${MKREPRO_TIMESTAMP:U0} != 0
    110  1.40  christos NVFLAGS+=-r ${MKREPRO_TIMESTAMP}
    111  1.40  christos .       else
    112  1.40  christos NVFLAGS+=-R
    113  1.40  christos .       endif
    114  1.40  christos .endif
    115  1.40  christos 
    116   1.1        ad # vers.c
    117   1.1        ad SRCS+=	vers.c
    118  1.23       apb vers.c:	${S}/conf/newvers.sh ${_NETBSD_VERSION_DEPENDS}
    119  1.40  christos 	${HOST_SH} ${S}/conf/newvers.sh ${NVFLAGS} -n -m ${MACHINE} -i CRASH
    120   1.1        ad CLEANFILES+=	vers.c version
    121   1.1        ad 
    122  1.10       mrg .else				# } {
    123  1.10       mrg 
    124  1.10       mrg SRCS+=	unsupported.c
    125  1.10       mrg 
    126  1.10       mrg .endif				# }
    127   1.1        ad 
    128  1.36  christos .if  ${MACHINE} == "sparc" \
    129  1.36  christos     || ${MACHINE} == "sparc64"
    130  1.34  christos COPTS.kern_timeout.c += -Wno-stack-protector
    131  1.36  christos .endif
    132  1.34  christos 
    133  1.33       mrg .include "../../compat/exec.mk"
    134  1.33       mrg 
    135  1.48     lukem COPTS.db_command.c+=	${CC_WNO_CAST_FUNCTION_TYPE}
    136  1.42       mrg 
    137  1.46       mrg COPTS+=		-fcommon
    138  1.46       mrg 
    139   1.1        ad .include <bsd.prog.mk>
    140   1.1        ad .include <bsd.klinks.mk>
    141