1 1.34 mrg # $NetBSD: Makefile,v 1.34 2025/09/18 03:36:00 mrg Exp $ 2 1.2 darran 3 1.17 chs # $FreeBSD: head/cddl/lib/libdtrace/Makefile 314654 2017-03-04 11:30:04Z ngie $ 4 1.1 darran 5 1.10 christos WARNS=1 6 1.15 christos .include <bsd.init.mk> 7 1.1 darran 8 1.1 darran LIB= dtrace 9 1.1 darran 10 1.1 darran SRCS= dt_aggregate.c \ 11 1.1 darran dt_as.c \ 12 1.1 darran dt_buf.c \ 13 1.1 darran dt_cc.c \ 14 1.1 darran dt_cg.c \ 15 1.1 darran dt_consume.c \ 16 1.1 darran dt_decl.c \ 17 1.1 darran dt_dis.c \ 18 1.1 darran dt_dof.c \ 19 1.1 darran dt_error.c \ 20 1.1 darran dt_errtags.c \ 21 1.1 darran dt_grammar.y \ 22 1.1 darran dt_handle.c \ 23 1.1 darran dt_ident.c \ 24 1.1 darran dt_inttab.c \ 25 1.17 chs dt_isadep.c \ 26 1.1 darran dt_lex.l \ 27 1.1 darran dt_link.c \ 28 1.1 darran dt_list.c \ 29 1.1 darran dt_map.c \ 30 1.1 darran dt_module.c \ 31 1.1 darran dt_names.c \ 32 1.1 darran dt_open.c \ 33 1.1 darran dt_options.c \ 34 1.1 darran dt_parser.c \ 35 1.1 darran dt_pcb.c \ 36 1.1 darran dt_pid.c \ 37 1.11 christos dt_pq.c \ 38 1.1 darran dt_pragma.c \ 39 1.11 christos dt_print.c \ 40 1.1 darran dt_printf.c \ 41 1.1 darran dt_proc.c \ 42 1.1 darran dt_program.c \ 43 1.1 darran dt_provider.c \ 44 1.1 darran dt_regset.c \ 45 1.1 darran dt_string.c \ 46 1.1 darran dt_strtab.c \ 47 1.1 darran dt_subr.c \ 48 1.17 chs dt_sugar.c \ 49 1.1 darran dt_work.c \ 50 1.1 darran dt_xlator.c \ 51 1.1 darran gmatch.c 52 1.1 darran 53 1.1 darran DSRCS= errno.d \ 54 1.1 darran psinfo.d \ 55 1.1 darran signal.d \ 56 1.1 darran unistd.d 57 1.1 darran 58 1.17 chs FILES= ${DSRCS} 59 1.17 chs FILESDIR= /usr/lib/dtrace 60 1.17 chs 61 1.5 christos .PATH: ${.CURDIR}/../../dist/lib/libgen/common 62 1.5 christos .PATH: ${.CURDIR}/../../dist/lib/libdtrace/common 63 1.1 darran 64 1.5 christos CPPFLAGS+= -I${.OBJDIR} \ 65 1.11 christos -I${.CURDIR} \ 66 1.2 darran -I${OSNETDIR}/sys \ 67 1.2 darran -I${OSNETDIR}/include \ 68 1.1 darran -I${OPENSOLARIS_USR_DISTDIR}/head \ 69 1.1 darran -I${OPENSOLARIS_USR_DISTDIR}/lib/libctf/common \ 70 1.1 darran -I${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common \ 71 1.1 darran -I${OPENSOLARIS_SYS_DISTDIR}/uts/common 72 1.1 darran 73 1.3 tron COPTS.dt_aggregate.c += -Wno-stack-protector 74 1.3 tron COPTS.dt_consume.c += -Wno-stack-protector 75 1.3 tron COPTS.dt_decl.c += -Wno-stack-protector 76 1.4 tron COPTS.dt_dof.c += -Wno-stack-protector 77 1.4 tron COPTS.dt_handle.c += -Wno-stack-protector 78 1.4 tron COPTS.dt_ident.c += -Wno-stack-protector 79 1.4 tron COPTS.dt_link.c += -Wno-stack-protector 80 1.4 tron COPTS.dt_options.c += -Wno-stack-protector 81 1.4 tron COPTS.dt_parser.c += -Wno-stack-protector 82 1.4 tron COPTS.dt_pragma.c += -Wno-stack-protector 83 1.13 christos COPTS.dt_print.c += -Wno-stack-protector 84 1.4 tron COPTS.dt_printf.c += -Wno-stack-protector 85 1.4 tron COPTS.dt_program.c += -Wno-stack-protector 86 1.4 tron COPTS.dt_provider.c += -Wno-stack-protector 87 1.4 tron COPTS.dt_subr.c += -Wno-stack-protector 88 1.31 lukem COPTS.dt_lex.c += ${CC_WNO_STRINGOP_TRUNCATION} 89 1.31 lukem COPTS.dt_pid.c += ${CC_WNO_STRINGOP_TRUNCATION} 90 1.3 tron 91 1.18 kamil COPTS.dt_consume.c += -Wno-parentheses 92 1.32 lukem COPTS.dt_consume.c += ${CC_WNO_MAYBE_UNINITIALIZED} 93 1.17 chs COPTS.dt_options.c += -Wno-parentheses 94 1.19 kamil COPTS.dt_pid.c += ${${ACTIVE_CC} == "gcc" :? -Wno-unused-but-set-variable :} 95 1.17 chs COPTS.dt_isadep.c += -Wno-unused-variable 96 1.17 chs 97 1.33 riastrad EXPSYM_SRCS+= dtrace.common.expsym 98 1.33 riastrad 99 1.6 wiz .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 100 1.5 christos CPPFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel 101 1.17 chs CPPFLAGS+= -I${.CURDIR}/../../dev/dtrace/x86 102 1.17 chs .PATH: ${.CURDIR}/../../dist/lib/libdtrace/i386 ${.CURDIR}/../../dev/dtrace/x86 103 1.17 chs SRCS+= dis_tables.c 104 1.18 kamil COPTS.dis_tables.c += -Wno-parentheses 105 1.32 lukem COPTS.dis_tables.c += ${CC_WNO_MAYBE_UNINITIALIZED} 106 1.33 riastrad EXPSYM_SRCS+= dtrace.x86.expsym 107 1.1 darran .elif ${MACHINE_ARCH} == "sparc64" 108 1.5 christos CPPFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc 109 1.26 jmcneill .elif ${MACHINE_ARCH} == "aarch64" 110 1.26 jmcneill CPPFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/aarch64 111 1.26 jmcneill .PATH: ${.CURDIR}/../../dist/lib/libdtrace/aarch64 112 1.9 ozaki .elif ${MACHINE_CPU} == "arm" 113 1.7 christos CPPFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/arm 114 1.7 christos .PATH: ${.CURDIR}/../../dist/lib/libdtrace/arm 115 1.29 simonb .elif ${MACHINE_CPU} == "mips" 116 1.29 simonb CPPFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/mips 117 1.29 simonb .PATH: ${.CURDIR}/../../dist/lib/libdtrace/mips 118 1.1 darran .endif 119 1.31 lukem COPTS.dt_link.c += ${CC_WNO_FORMAT_TRUNCATION} 120 1.1 darran 121 1.33 riastrad LIB_EXPSYM= dtrace.expsym 122 1.33 riastrad dtrace.expsym: ${EXPSYM_SRCS} 123 1.33 riastrad ${_MKTARGET_CREATE} 124 1.33 riastrad LC_ALL=C sort -m ${.ALLSRC} >${.TARGET}.tmp && \ 125 1.33 riastrad ${MV} ${.TARGET}.tmp ${.TARGET} 126 1.33 riastrad CLEANFILES+= dtrace.expsym dtrace.expsym.tmp 127 1.33 riastrad 128 1.1 darran LFLAGS+=-l 129 1.1 darran 130 1.1 darran YFLAGS+=-d 131 1.1 darran 132 1.2 darran CLEANFILES= dt_errtags.c dt_names.c dt_grammar.h 133 1.1 darran 134 1.12 christos MKERRTAGS=${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mkerrtags.sh 135 1.12 christos dt_errtags.c: ${MKERRTAGS} ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/dt_errtags.h 136 1.12 christos sh ${MKERRTAGS} < ${.ALLSRC:M*.h} > ${.TARGET} 137 1.12 christos 138 1.12 christos MKNAMES=${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mknames.sh 139 1.12 christos dt_names.c: ${MKNAMES} ${OPENSOLARIS_SYS_DISTDIR}/uts/common/sys/dtrace.h 140 1.12 christos sh ${MKNAMES} < ${.ALLSRC:M*.h} > ${.TARGET} 141 1.1 darran 142 1.1 darran beforedepend: dt_errtags.c dt_names.c 143 1.1 darran 144 1.16 christos .SUFFIXES: .in 145 1.16 christos .in: 146 1.16 christos ${CPP} -D_KERNEL ${CPPFLAGS} $< | tr -d ' ' | tr '"' '@' | \ 147 1.16 christos ${TOOL_SED} -e 's/\&/\\\&/g' | grep '^s/' > ${.TARGET} 148 1.16 christos 149 1.16 christos 150 1.11 christos LIBDPLIBS= proc ${NETBSDSRCDIR}/external/bsd/libproc/lib 151 1.11 christos 152 1.30 mrg COPTS.dt_link.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-restrict :} 153 1.34 mrg # GCC 14 is wrong. 154 1.34 mrg COPTS.dt_open.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 14:? -Wuse-after-free :} 155 1.30 mrg 156 1.1 darran .include <bsd.lib.mk> 157