16de02228SDomagoj StolfaSHLIBDIR?= /lib 26de02228SDomagoj Stolfa 36de02228SDomagoj Stolfa.include <src.opts.mk> 46de02228SDomagoj Stolfa 5acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/common 6acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libgen/common 7ebe86aacSJohn Birrell 879ac3c12SEmmanuel VadotPACKAGE= dtrace 9ebe86aacSJohn BirrellLIB= dtrace 106de02228SDomagoj Stolfa 11ebe86aacSJohn BirrellSRCS= dt_aggregate.c \ 12ebe86aacSJohn Birrell dt_as.c \ 13ebe86aacSJohn Birrell dt_buf.c \ 14ebe86aacSJohn Birrell dt_cc.c \ 15ebe86aacSJohn Birrell dt_cg.c \ 16ebe86aacSJohn Birrell dt_consume.c \ 17ebe86aacSJohn Birrell dt_decl.c \ 18ebe86aacSJohn Birrell dt_dis.c \ 19ebe86aacSJohn Birrell dt_dof.c \ 20ebe86aacSJohn Birrell dt_error.c \ 21ebe86aacSJohn Birrell dt_errtags.c \ 22ebe86aacSJohn Birrell dt_grammar.y \ 23ebe86aacSJohn Birrell dt_handle.c \ 24ebe86aacSJohn Birrell dt_ident.c \ 250f2bd1e8SRui Paulo dt_isadep.c \ 26ebe86aacSJohn Birrell dt_inttab.c \ 27ebe86aacSJohn Birrell dt_lex.l \ 28ebe86aacSJohn Birrell dt_link.c \ 29ebe86aacSJohn Birrell dt_list.c \ 30ebe86aacSJohn Birrell dt_map.c \ 31ebe86aacSJohn Birrell dt_module.c \ 32ebe86aacSJohn Birrell dt_names.c \ 33ebe86aacSJohn Birrell dt_open.c \ 34ebe86aacSJohn Birrell dt_options.c \ 35ebe86aacSJohn Birrell dt_parser.c \ 36ebe86aacSJohn Birrell dt_pcb.c \ 37ebe86aacSJohn Birrell dt_pid.c \ 3809e6105fSMark Johnston dt_pq.c \ 39ebe86aacSJohn Birrell dt_pragma.c \ 4054727873SPedro F. Giffuni dt_print.c \ 41ebe86aacSJohn Birrell dt_printf.c \ 42ebe86aacSJohn Birrell dt_proc.c \ 43ebe86aacSJohn Birrell dt_program.c \ 44ebe86aacSJohn Birrell dt_provider.c \ 45ebe86aacSJohn Birrell dt_regset.c \ 46ebe86aacSJohn Birrell dt_string.c \ 47ebe86aacSJohn Birrell dt_strtab.c \ 48ebe86aacSJohn Birrell dt_subr.c \ 49650f66acSMark Johnston dt_sugar.c \ 50ebe86aacSJohn Birrell dt_work.c \ 51ebe86aacSJohn Birrell dt_xlator.c \ 52457c7edfSOleksandr Tymoshenko gmatch.c 53ebe86aacSJohn Birrell 54ebe86aacSJohn BirrellDSRCS= errno.d \ 553fac94baSGeorge V. Neville-Neil io.d \ 5657f60867SMark Johnston ip.d \ 57ebe86aacSJohn Birrell psinfo.d \ 581e88cc8bSMichael Tuexen sctp.d \ 59d4a115afSMark Johnston siftr.d \ 60ebe86aacSJohn Birrell signal.d \ 6157f60867SMark Johnston tcp.d \ 62958f4928SGeorge V. Neville-Neil socket.d \ 6357f60867SMark Johnston udp.d \ 647bda9663SMichael Tuexen udplite.d \ 65ebe86aacSJohn Birrell unistd.d 66ebe86aacSJohn Birrell 67144cd65bSBryan DreweryFILES= ${DSRCS} 68144cd65bSBryan DreweryFILESDIR= /usr/lib/dtrace 69144cd65bSBryan DreweryFILESMODE= ${NOBINMODE} 70144cd65bSBryan Drewery 711f6612b4SAlex RichardsonINCSGROUPS= INCS SYSINCS 721f6612b4SAlex RichardsonSYSINCSDIR= ${INCLUDEDIR}/sys 731f6612b4SAlex RichardsonINCS+= ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/common/dtrace.h 741f6612b4SAlex RichardsonSYSINCS+= ${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h 751f6612b4SAlex RichardsonSYSINCS+= ${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/sys/ctf_api.h 761f6612b4SAlex Richardson 774ef20db2SUlrich SpörleinWARNS?= 1 78ebe86aacSJohn Birrell 799e5787d2SMatt MacyCFLAGS+= -DIN_BASE 80*4303bde4SMartin MatuskaCFLAGS+= -DSKIP_SPL_SYS_CONDVAR_H 819e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include 829e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/ 839e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/os/freebsd 849e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys 859e5787d2SMatt MacyCFLAGS+= -include ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/spl/sys/ccompile.h 869e5787d2SMatt MacyCFLAGS+= -DHAVE_ISSETUGID 879e5787d2SMatt Macy 889e5787d2SMatt Macy 890f2bd1e8SRui PauloCFLAGS+= -I${.OBJDIR} -I${.CURDIR} \ 90acc37ca1SEnji Cooper -I${SRCTOP}/sys/cddl/dev/dtrace/${MACHINE_ARCH} \ 912179a159SChristos Margiolis -I${SRCTOP}/sys/cddl/dev/kinst \ 92acc37ca1SEnji Cooper -I${SRCTOP}/sys/cddl/compat/opensolaris \ 93acc37ca1SEnji Cooper -I${SRCTOP}/cddl/compat/opensolaris/include \ 94ebe86aacSJohn Birrell -I${OPENSOLARIS_USR_DISTDIR}/head \ 95ebe86aacSJohn Birrell -I${OPENSOLARIS_USR_DISTDIR}/lib/libctf/common \ 96ebe86aacSJohn Birrell -I${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common \ 97ebe86aacSJohn Birrell -I${OPENSOLARIS_SYS_DISTDIR}/uts/common 98ebe86aacSJohn Birrell 99ebe86aacSJohn Birrell#CFLAGS+= -DYYDEBUG 100ebe86aacSJohn Birrell 101b78ee15eSRuslan Bukin.if ${MACHINE_CPUARCH} == "aarch64" 102b78ee15eSRuslan BukinCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/aarch64 103acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/aarch64 104acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/aarch64 105b78ee15eSRuslan Bukin.elif ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" 106acc37ca1SEnji CooperCFLAGS+= -I${SRCTOP}/sys/cddl/dev/dtrace/x86 1070f2bd1e8SRui PauloCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel -DDIS_MEM 108acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/i386 109acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/${MACHINE_ARCH} 110acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/x86 111fcb56067SGeorge V. Neville-Neil.elif ${MACHINE_CPUARCH} == "arm" 112fcb56067SGeorge V. Neville-NeilCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/arm 113acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/arm 114acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/arm 115c7570492SJustin Hibbits.elif ${MACHINE_CPUARCH} == "powerpc" 116c7570492SJustin HibbitsCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/powerpc 117acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/powerpc 118acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/powerpc 119fed1ca4bSRuslan Bukin.elif ${MACHINE_CPUARCH} == "riscv" 120fed1ca4bSRuslan BukinCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/riscv 121acc37ca1SEnji Cooper.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/riscv 122acc37ca1SEnji Cooper.PATH: ${SRCTOP}/sys/cddl/dev/dtrace/riscv 123ebe86aacSJohn Birrell.else 124ebe86aacSJohn Birrell# temporary hack 125ebe86aacSJohn BirrellCFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel 126ebe86aacSJohn Birrell.endif 127ebe86aacSJohn Birrell 1280f2bd1e8SRui Paulo.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" 129080e56a6SChristos MargiolisSRCS+= dis_tables.c instr_size.c 1300f2bd1e8SRui PauloDSRCS+= regs_x86.d 1310f2bd1e8SRui Paulo.endif 1320f2bd1e8SRui Paulo 133080e56a6SChristos Margiolis.if ${MACHINE_CPUARCH} == "riscv" 134080e56a6SChristos MargiolisSRCS+= instr_size.c 1351fef7abdSChristos MargiolisDSRCS+= regs_riscv.d 136080e56a6SChristos Margiolis.endif 137080e56a6SChristos Margiolis 138db05f9fbSChristos Margiolis.if ${MACHINE_CPUARCH} == "aarch64" 139db05f9fbSChristos MargiolisSRCS+= instr_size.c 14021a16d55SChristos MargiolisDSRCS+= regs_aarch64.d 141db05f9fbSChristos Margiolis.endif 142db05f9fbSChristos Margiolis 143ebe86aacSJohn BirrellYFLAGS+=-d 144ebe86aacSJohn Birrell 1456de02228SDomagoj Stolfa.if ${MK_DTRACE_ASAN} != "no" 1466de02228SDomagoj StolfaCFLAGS+= -fsanitize=address -fsanitize=undefined 1476de02228SDomagoj StolfaLDFLAGS+= -fsanitize=address -fsanitize=undefined 1486de02228SDomagoj Stolfa.endif 1496de02228SDomagoj Stolfa 15093f27766SDomagoj StolfaLIBADD= ctf elf proc pthread rtld_db xo 15153d5099dSBaptiste Daroussin 152ebe86aacSJohn BirrellCLEANFILES= dt_errtags.c dt_names.c 153ebe86aacSJohn Birrell 154ebe86aacSJohn Birrell.include <bsd.lib.mk> 155e2072706SMark Johnston 156e2072706SMark Johnstondt_errtags.c: ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/dt_errtags.h 157e2072706SMark Johnston sh ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mkerrtags.sh < ${.ALLSRC} > ${.TARGET} 158e2072706SMark Johnston 159e2072706SMark Johnstondt_names.c: ${OPENSOLARIS_SYS_DISTDIR}/uts/common/sys/dtrace.h 160e2072706SMark Johnston sh ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mknames.sh < ${.ALLSRC} > ${.TARGET} 161