xref: /netbsd-src/tools/libctf/Makefile (revision 53d1339bf7f9c7367b35a9e1ebe693f9b047a47b)
1#	$NetBSD: Makefile,v 1.8 2018/05/01 19:59:47 christos Exp $
2
3HOSTLIB=	ctf
4
5.include <bsd.hostinit.mk>
6
7SRCS=		ctf_create.c \
8		ctf_decl.c \
9		ctf_error.c \
10		ctf_hash.c \
11		ctf_labels.c \
12		ctf_lib.c \
13		ctf_lookup.c \
14		ctf_open.c \
15		ctf_subr.c \
16		ctf_types.c \
17		ctf_util.c
18
19OSNETDIR=	${.CURDIR}/../../external/cddl/osnet
20OPENSOLARIS_DISTDIR= ${OSNETDIR}/dist
21LIBELF_DIR=	${.CURDIR}/../../external/bsd/elftoolchain/dist/libelf
22
23CPPFLAGS+=	-DCTF_OLD_VERSIONS
24
25.ifndef NOCOMPATLIB
26COMPATLIB_NO_LIB= yes # only the include files, not the library
27.-include	"${TOOLDIR}/share/compat/defs.mk"
28.endif
29
30CPPFLAGS+=	-I${.CURDIR}/../compat \
31		-I${OSNETDIR}/sys \
32		-I${OSNETDIR}/include \
33		-I${OPENSOLARIS_DISTDIR}/head \
34		-I${OPENSOLARIS_DISTDIR}/common/ctf \
35		-I${OPENSOLARIS_DISTDIR}/lib/libctf/common \
36		-I${OPENSOLARIS_DISTDIR}/uts/common \
37		-I${LIBELF_DIR}
38
39BUILD_OSTYPE!=  uname -s
40
41# Disable use of pre-compiled headers on Darwin.
42.if ${BUILD_OSTYPE} == "Darwin"
43CPPFLAGS+=	-no-cpp-precomp
44.endif
45
46# -D_FILE_OFFSET_BITS=64 produces a much more amenable `struct stat', and
47# other file ops, on many systems, without changing function names.
48
49CPPFLAGS+=	-DHAVE_NBTOOL_CONFIG_H=1 -D_FILE_OFFSET_BITS=64
50
51.PATH:		${OPENSOLARIS_DISTDIR}/common/ctf
52.PATH:		${OPENSOLARIS_DISTDIR}/lib/libctf/common
53
54HOST_CPPFLAGS:=	${CPPFLAGS} ${HOST_CPPFLAGS}
55CPPFLAGS:=	# empty
56
57realinstall: install.host
58install.host: ${TOOLDIR}/lib/libctf.a
59${TOOLDIR}/lib/libctf.a:: libctf.a
60	${_MKTARGET_INSTALL}
61	mkdir -p ${TOOLDIR}/lib
62	${HOST_INSTALL_FILE} -m ${BINMODE} libctf.a ${.TARGET}
63
64.include "${.CURDIR}/../Makefile.nbincludes"
65.include <bsd.hostlib.mk>
66