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