Makefile revision 1.49
11.49Sriastrad# $NetBSD: Makefile,v 1.49 2023/07/09 17:10:47 riastradh Exp $ 21.1Sad 31.7SchristosPROG= crash 41.7SchristosMAN= crash.8 51.3SchristosRUMPKERNEL= yes # XXX: Avoid -mcmodel=kernel 61.1Sad 71.12SjoergCWARNFLAGS.clang+= -Wno-format 81.12Sjoerg 91.14SskrllLDADD+= -lutil -lkvm -ledit -lterminfo 101.7SchristosDPADD+= ${LIBUTIL} ${LIBKVM} ${LIBEDIT} ${LIBTERMINFO} 111.1Sad 121.27Sskrll.include <bsd.own.mk> 131.27Sskrll 141.1Sad# some ddb kernel components need limited modifications. for now, 151.1Sad# punt if not noted as implemented here. 161.10Smrg.if ${MACHINE} == "amd64" \ 171.25Sskrll || ${MACHINE} == "hppa" \ 181.10Smrg || ${MACHINE} == "i386" \ 191.32Smrg || ${MACHINE} == "sparc" \ 201.16Smlelstv || ${MACHINE} == "sparc64" \ 211.38Sskrll || ${MACHINE_CPU} == "arm" \ 221.41Sjakllsch || ${MACHINE_CPU} == "aarch64" \ 231.45Smrg || ${MACHINE_CPU} == "mips" \ 241.47Sriastrad || ${MACHINE_ARCH} == "m68k" \ 251.47Sriastrad || ${MACHINE_ARCH} == "powerpc" \ 261.47Sriastrad || ${MACHINE_ARCH} == "powerpc64" 271.17SchristosSRCS+= db_trace.c 281.45Smrg.if ${MACHINE_CPU} == "mips" 291.45SmrgSRCS+= db_interface.c mips_stacktrace.c 301.45SmrgCPPFLAGS+= -DDDB 311.47Sriastrad.elif ${MACHINE_ARCH} != "m68k" \ 321.47Sriastrad && ${MACHINE_ARCH} != "powerpc" \ 331.47Sriastrad && ${MACHINE_ARCH} != "powerpc64" 341.17SchristosSRCS+= db_machdep.c 351.21Schristos.endif 361.10SmrgREALCRASH=yes 371.1Sad.else 381.10SmrgREALCRASH=no 391.10Smrg.endif 401.10Smrg 411.10Smrg.if ${REALCRASH} != "no" # { 421.1Sad 431.7SchristosS= ${.CURDIR}/../../sys 441.1Sad 451.1SadCPPFLAGS+= -I${.CURDIR} -I${.OBJDIR} -I${S} -fno-strict-aliasing 461.1SadCPPFLAGS+= -DDDB_VERBOSE_HELP -DDB_MAX_LINE=10000000 -D_KMEMUSER 471.31SchristosCPPFLAGS+= -UDB_MACHINE_COMMANDS 481.1Sad 491.49Sriastrad# XXX 501.49Sriastrad.if ${MACHINE} == "evbppc" 511.49SriastradCPPFLAGS+= -DPPC_INTR_IMPL="<powerpc/intr.h>" 521.49Sriastrad.endif 531.49Sriastrad 541.1Sad# ddb files from kernel 551.1Sad.PATH: $S/ddb 561.1SadSRCS+= db_command.c db_lwp.c db_proc.c db_xxx.c db_cpu.c 571.39SmlelstvSRCS+= db_autoconf.c 581.1SadSRCS+= db_access.c db_elf.c db_examine.c 591.1SadSRCS+= db_expr.c db_lex.c db_output.c db_print.c 601.49SriastradSRCS+= db_sym.c db_syncobj.c db_variables.c db_write_cmd.c 611.1Sad 621.7Schristos.PATH: ${S}/arch/${MACHINE}/${MACHINE} 631.15Sskrll.PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH} 641.10SmrgSRCS+= db_disasm.c 651.7Schristos 661.28Schristos.PATH: $S/kern 671.28SchristosSRCS+= kern_timeout.c 681.29SchristosCPPFLAGS.kern_timeout.c += -DCRASH -DDDB 691.28Schristos 701.44SrinCPPFLAGS +=-DLOCKDEBUG 711.44SrinSRCS += subr_lockdebug.c 721.44SrinCPPFLAGS.subr_lockdebug.c += -DCRASH -DDDB 731.44Srin 741.17SchristosCPPFLAGS+= -I${S}/arch 751.17Schristos 761.10Smrg. if ${MACHINE} == "amd64" \ 771.10Smrg || ${MACHINE} == "i386" 781.11SchristosMACHINE_FAMILY = x86 791.32Smrg. elif ${MACHINE} == "sparc64" 801.24SchristosMACHINE_FAMILY = sparc 811.11Schristos. else 821.27SskrllMACHINE_FAMILY = ${MACHINE_CPU} 831.10Smrg. endif 841.10Smrg 851.27Sskrll.if ${MACHINE_CPU} == "arm" 861.17Schristos.PATH: ${S}/arch/arm/arm32 871.22SskrllSRCS+=disassem.c cpufunc_asm.S 881.17Schristos.endif 891.41Sjakllsch.if ${MACHINE_CPU} == "aarch64" 901.41SjakllschSRCS+=disasm.c 911.41Sjakllsch.endif 921.1Sad 931.17Schristos.PATH: ${S}/arch/${MACHINE_FAMILY}/${MACHINE_FAMILY} 941.16Smlelstv 951.1Sad# crash main source 961.1SadSRCS+= crash.c 971.1Sad 981.1Sad# arch.c 991.1Sad.PATH: ${.CURDIR}/arch 1001.11Schristos. if (exists(${.CURDIR}/arch/${MACHINE_FAMILY}.c)) 1011.11SchristosSRCS+= ${MACHINE_FAMILY}.c 1021.7Schristos. else 1031.1SadSRCS+= generic.c 1041.7Schristos. endif 1051.1Sad 1061.13SchristosCOPTS.db_output.c += -Wno-format-nonliteral 1071.13Schristos 1081.40Schristos.if ${MKREPRO} == "yes" 1091.40Schristos. if ${MKREPRO_TIMESTAMP:U0} != 0 1101.40SchristosNVFLAGS+=-r ${MKREPRO_TIMESTAMP} 1111.40Schristos. else 1121.40SchristosNVFLAGS+=-R 1131.40Schristos. endif 1141.40Schristos.endif 1151.40Schristos 1161.1Sad# vers.c 1171.1SadSRCS+= vers.c 1181.23Sapbvers.c: ${S}/conf/newvers.sh ${_NETBSD_VERSION_DEPENDS} 1191.40Schristos ${HOST_SH} ${S}/conf/newvers.sh ${NVFLAGS} -n -m ${MACHINE} -i CRASH 1201.1SadCLEANFILES+= vers.c version 1211.1Sad 1221.10Smrg.else # } { 1231.10Smrg 1241.10SmrgSRCS+= unsupported.c 1251.10Smrg 1261.10Smrg.endif # } 1271.1Sad 1281.36Schristos.if ${MACHINE} == "sparc" \ 1291.36Schristos || ${MACHINE} == "sparc64" 1301.34SchristosCOPTS.kern_timeout.c += -Wno-stack-protector 1311.36Schristos.endif 1321.34Schristos 1331.33Smrg.include "../../compat/exec.mk" 1341.33Smrg 1351.48SlukemCOPTS.db_command.c+= ${CC_WNO_CAST_FUNCTION_TYPE} 1361.42Smrg 1371.46SmrgCOPTS+= -fcommon 1381.46Smrg 1391.1Sad.include <bsd.prog.mk> 1401.1Sad.include <bsd.klinks.mk> 141