xref: /freebsd/cddl/lib/libdtrace/Makefile (revision a98ff317388a00b992f1bf8404dee596f9383f5e)
1# $FreeBSD$
2
3.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/common
4.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libgen/common
5
6LIB=		dtrace
7SRCS=		dt_aggregate.c \
8		dt_as.c \
9		dt_buf.c \
10		dt_cc.c \
11		dt_cg.c \
12		dt_consume.c \
13		dt_decl.c \
14		dt_dis.c \
15		dt_dof.c \
16		dt_error.c \
17		dt_errtags.c \
18		dt_grammar.y \
19		dt_handle.c \
20		dt_ident.c \
21		dt_isadep.c \
22		dt_inttab.c \
23		dt_lex.l \
24		dt_link.c \
25		dt_list.c \
26		dt_map.c \
27		dt_module.c \
28		dt_names.c \
29		dt_open.c \
30		dt_options.c \
31		dt_parser.c \
32		dt_pcb.c \
33		dt_pid.c \
34		dt_pq.c \
35		dt_pragma.c \
36		dt_print.c \
37		dt_printf.c \
38		dt_proc.c \
39		dt_program.c \
40		dt_provider.c \
41		dt_regset.c \
42		dt_string.c \
43		dt_strtab.c \
44		dt_subr.c \
45		dt_work.c \
46		dt_xlator.c \
47		gmatch.c
48
49DSRCS=		errno.d			\
50		io.d			\
51		psinfo.d		\
52		signal.d		\
53		unistd.d
54
55WARNS?=		1
56
57CFLAGS+=	-I${.OBJDIR} -I${.CURDIR} \
58		-I${.CURDIR}/../../../sys/cddl/dev/dtrace/${MACHINE_ARCH} \
59		-I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
60		-I${.CURDIR}/../../../cddl/compat/opensolaris/include \
61		-I${OPENSOLARIS_USR_DISTDIR}/head \
62		-I${OPENSOLARIS_USR_DISTDIR}/lib/libctf/common \
63		-I${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common \
64		-I${OPENSOLARIS_SYS_DISTDIR}/uts/common
65
66#CFLAGS+=	-DYYDEBUG
67
68.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
69CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/intel -DDIS_MEM
70.PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/i386
71.PATH:		${.CURDIR}/../../../sys/cddl/dev/dtrace/${MACHINE_ARCH}
72.elif ${MACHINE_CPUARCH} == "sparc64"
73CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc
74.PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/sparc
75.elif ${MACHINE_CPUARCH} == "mips"
76CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/mips
77.PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/mips
78.PATH:		${.CURDIR}/../../../sys/cddl/dev/dtrace/mips
79.elif ${MACHINE_CPUARCH} == "powerpc"
80CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/powerpc
81.PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/powerpc
82.PATH:		${.CURDIR}/../../../sys/cddl/dev/dtrace/powerpc
83.else
84# temporary hack
85CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/intel
86.endif
87
88.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64"
89SRCS+=		dis_tables.c
90DSRCS+=		regs_x86.d
91.endif
92
93LFLAGS+=-l
94
95YFLAGS+=-d
96
97CLEANFILES=	dt_errtags.c dt_names.c
98
99dt_errtags.c:
100	sh ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mkerrtags.sh < ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/dt_errtags.h > dt_errtags.c
101
102dt_names.c:
103	sh ${OPENSOLARIS_USR_DISTDIR}/lib/libdtrace/common/mknames.sh < ${OPENSOLARIS_SYS_DISTDIR}/uts/common/sys/dtrace.h > dt_names.c
104
105beforedepend:	dt_errtags.c dt_names.c
106
107beforeinstall:
108.if !defined(LIBRARIES_ONLY) && exists(${DESTDIR}/usr/lib/dtrace)
109.for file in ${DSRCS}
110	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} ${.CURDIR}/${file} ${DESTDIR}/usr/lib/dtrace
111.endfor
112.endif
113
114.include <bsd.lib.mk>
115