xref: /netbsd/tools/Makefile.host (revision cffda8be)
1#	$NetBSD: Makefile.host,v 1.27 2010/12/25 18:56:44 joerg Exp $
2
3NOINFO=		# defined
4NOLINT=		# defined
5NOMAN=		# defined
6
7.include <bsd.own.mk>
8
9.ifndef NOCOMPATLIB
10COMPATOBJ!=	cd ${.CURDIR}/../compat && ${PRINTOBJDIR}
11.-include	"${COMPATOBJ}/defs.mk"
12.endif
13
14# Resolve pathnames in variables.
15_RESOLVE_VARS=	CFLAGS CPPFLAGS DPADD HOST_CPPFLAGS LDADD
16.for var in ${_RESOLVE_VARS}
17${var}:=	${${var}}
18.endfor
19
20# Switch over to the "real" Makefile.
21.PROGDIR:=	${.CURDIR}/../../${HOST_SRCDIR}
22_CURDIR:=	${.CURDIR}
23HOSTPROG?=	${PROG}
24
25.CURDIR:=	${.PROGDIR}
26.PATH:		${.CURDIR}
27.include "${.CURDIR}/Makefile"
28.-include "${.CURDIR}/../Makefile.inc"
29
30# Resolve pathnames from "real" Makefile, and switch .CURDIR back.
31.for var in ${_RESOLVE_VARS}
32${var}:=	${${var}}
33.endfor
34.CURDIR:=	${_CURDIR}
35.undef		_CURDIR
36
37# Set up the environment for <bsd.hostprog.mk>.
38.if ${USETOOLS} != "yes"
39.undef HOSTPROG
40.endif
41
42HOSTPROGNAME?=	${HOSTPROG}
43HOST_BINDIR?=	${TOOLDIR}/bin
44HOST_CPPFLAGS:=	${HOST_CPPFLAGS} ${CPPFLAGS}
45HOST_CPPFLAGS:=	${HOST_CPPFLAGS:N-Wp,-iremap,*}
46.undef LINKS
47
48SRCS?=		${HOSTPROG}.c
49SRCS+=		${HOST_SRCS}
50
51.PATH:		${.PROGDIR}
52
53# Install rule.
54realinstall: install.host install.files
55install.host: ${HOST_BINDIR}/${HOSTPROGNAME}
56${HOST_BINDIR}/${HOSTPROGNAME}:: ${HOSTPROG}
57	${_MKTARGET_INSTALL}
58	mkdir -p ${HOST_BINDIR}
59	${HOST_INSTALL_FILE} -m ${BINMODE} ${HOSTPROG}${HOSTEXEEXT} ${.TARGET}
60
61.if ${MKUPDATE} == "no"
62.PHONY:		${HOST_BINDIR}/${HOSTPROGNAME}
63.endif
64
65install.files:
66.for F in ${HOSTFILES}
67install.files: ${HOST_FILESDIR}/${F}
68${HOST_FILESDIR}/${F}: ${F}
69	${_MKTARGET_INSTALL}
70	mkdir -p ${HOST_FILESDIR}
71	${HOST_INSTALL_FILE} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET}
72
73.if ${MKUPDATE} == "no"
74.PHONY:		${HOST_FILESDIR}/${F}
75.endif
76.endfor
77
78.include <bsd.hostprog.mk>
79