Makefile revision 1.51
11.51Schristos# $NetBSD: Makefile,v 1.51 2024/04/26 22:07:32 christos 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.50Sthorpej || ${MACHINE_ARCH} == "alpha" \ 251.47Sriastrad || ${MACHINE_ARCH} == "m68k" \ 261.47Sriastrad || ${MACHINE_ARCH} == "powerpc" \ 271.47Sriastrad || ${MACHINE_ARCH} == "powerpc64" 281.17SchristosSRCS+= db_trace.c 291.50Sthorpej.if ${MACHINE_ARCH} == "alpha" 301.50SthorpejSRCS+= db_interface.c 311.50Sthorpej.elif ${MACHINE_CPU} == "mips" 321.45SmrgSRCS+= db_interface.c mips_stacktrace.c 331.45SmrgCPPFLAGS+= -DDDB 341.47Sriastrad.elif ${MACHINE_ARCH} != "m68k" \ 351.47Sriastrad && ${MACHINE_ARCH} != "powerpc" \ 361.47Sriastrad && ${MACHINE_ARCH} != "powerpc64" 371.17SchristosSRCS+= db_machdep.c 381.21Schristos.endif 391.10SmrgREALCRASH=yes 401.1Sad.else 411.10SmrgREALCRASH=no 421.10Smrg.endif 431.10Smrg 441.10Smrg.if ${REALCRASH} != "no" # { 451.1Sad 461.7SchristosS= ${.CURDIR}/../../sys 471.1Sad 481.1SadCPPFLAGS+= -I${.CURDIR} -I${.OBJDIR} -I${S} -fno-strict-aliasing 491.1SadCPPFLAGS+= -DDDB_VERBOSE_HELP -DDB_MAX_LINE=10000000 -D_KMEMUSER 501.31SchristosCPPFLAGS+= -UDB_MACHINE_COMMANDS 511.1Sad 521.49Sriastrad# XXX 531.49Sriastrad.if ${MACHINE} == "evbppc" 541.49SriastradCPPFLAGS+= -DPPC_INTR_IMPL="<powerpc/intr.h>" 551.49Sriastrad.endif 561.49Sriastrad 571.1Sad# ddb files from kernel 581.1Sad.PATH: $S/ddb 591.1SadSRCS+= db_command.c db_lwp.c db_proc.c db_xxx.c db_cpu.c 601.39SmlelstvSRCS+= db_autoconf.c 611.1SadSRCS+= db_access.c db_elf.c db_examine.c 621.1SadSRCS+= db_expr.c db_lex.c db_output.c db_print.c 631.49SriastradSRCS+= db_sym.c db_syncobj.c db_variables.c db_write_cmd.c 641.1Sad 651.7Schristos.PATH: ${S}/arch/${MACHINE}/${MACHINE} 661.15Sskrll.PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH} 671.10SmrgSRCS+= db_disasm.c 681.7Schristos 691.28Schristos.PATH: $S/kern 701.28SchristosSRCS+= kern_timeout.c 711.29SchristosCPPFLAGS.kern_timeout.c += -DCRASH -DDDB 721.28Schristos 731.44SrinCPPFLAGS +=-DLOCKDEBUG 741.44SrinSRCS += subr_lockdebug.c 751.44SrinCPPFLAGS.subr_lockdebug.c += -DCRASH -DDDB 761.44Srin 771.17SchristosCPPFLAGS+= -I${S}/arch 781.17Schristos 791.10Smrg. if ${MACHINE} == "amd64" \ 801.10Smrg || ${MACHINE} == "i386" 811.11SchristosMACHINE_FAMILY = x86 821.32Smrg. elif ${MACHINE} == "sparc64" 831.24SchristosMACHINE_FAMILY = sparc 841.11Schristos. else 851.27SskrllMACHINE_FAMILY = ${MACHINE_CPU} 861.10Smrg. endif 871.10Smrg 881.27Sskrll.if ${MACHINE_CPU} == "arm" 891.17Schristos.PATH: ${S}/arch/arm/arm32 901.22SskrllSRCS+=disassem.c cpufunc_asm.S 911.17Schristos.endif 921.41Sjakllsch.if ${MACHINE_CPU} == "aarch64" 931.41SjakllschSRCS+=disasm.c 941.41Sjakllsch.endif 951.1Sad 961.17Schristos.PATH: ${S}/arch/${MACHINE_FAMILY}/${MACHINE_FAMILY} 971.16Smlelstv 981.1Sad# crash main source 991.1SadSRCS+= crash.c 1001.1Sad 1011.1Sad# arch.c 1021.1Sad.PATH: ${.CURDIR}/arch 1031.11Schristos. if (exists(${.CURDIR}/arch/${MACHINE_FAMILY}.c)) 1041.11SchristosSRCS+= ${MACHINE_FAMILY}.c 1051.7Schristos. else 1061.1SadSRCS+= generic.c 1071.7Schristos. endif 1081.1Sad 1091.13SchristosCOPTS.db_output.c += -Wno-format-nonliteral 1101.13Schristos 1111.40Schristos.if ${MKREPRO} == "yes" 1121.40Schristos. if ${MKREPRO_TIMESTAMP:U0} != 0 1131.40SchristosNVFLAGS+=-r ${MKREPRO_TIMESTAMP} 1141.40Schristos. else 1151.40SchristosNVFLAGS+=-R 1161.40Schristos. endif 1171.40Schristos.endif 1181.40Schristos 1191.1Sad# vers.c 1201.1SadSRCS+= vers.c 1211.23Sapbvers.c: ${S}/conf/newvers.sh ${_NETBSD_VERSION_DEPENDS} 1221.51Schristos TOOL_DATE=${TOOL_DATE} ${HOST_SH} ${S}/conf/newvers.sh ${NVFLAGS} -n -m ${MACHINE} -i CRASH 1231.1SadCLEANFILES+= vers.c version 1241.1Sad 1251.10Smrg.else # } { 1261.10Smrg 1271.10SmrgSRCS+= unsupported.c 1281.10Smrg 1291.10Smrg.endif # } 1301.1Sad 1311.36Schristos.if ${MACHINE} == "sparc" \ 1321.36Schristos || ${MACHINE} == "sparc64" 1331.34SchristosCOPTS.kern_timeout.c += -Wno-stack-protector 1341.36Schristos.endif 1351.34Schristos 1361.33Smrg.include "../../compat/exec.mk" 1371.33Smrg 1381.48SlukemCOPTS.db_command.c+= ${CC_WNO_CAST_FUNCTION_TYPE} 1391.42Smrg 1401.46SmrgCOPTS+= -fcommon 1411.46Smrg 1421.1Sad.include <bsd.prog.mk> 1431.1Sad.include <bsd.klinks.mk> 144