# $NetBSD: Makefile.host,v 1.36 2023/06/04 16:53:59 lukem Exp $ NOINFO= # defined NOLINT= # defined NOMAN= # defined MKREPRO=no # Native toolchain might be unable to do it .include <bsd.own.mk> .ifndef NOCOMPATLIB # Use TOOLDIR copy of libnbcompat and associated *.h files .-include "${TOOLDIR}/share/compat/defs.mk" .elif !empty(.MAKE.OS:M*CYGWIN*) HOSTEXEEXT=.exe .endif # Resolve pathnames in variables. _RESOLVE_VARS= CFLAGS CPPFLAGS DPADD HOST_CPPFLAGS LDADD .for var in ${_RESOLVE_VARS} ${var}:= ${${var}} .endfor # Switch over to the "real" Makefile. .PROGDIR:= ${.CURDIR}/../../${HOST_SRCDIR} _CURDIR:= ${.CURDIR} HOSTPROG?= ${PROG} .CURDIR:= ${.PROGDIR} .PATH: ${.CURDIR} .include "${.CURDIR}/Makefile" .-include "${.CURDIR}/../Makefile.inc" # Resolve pathnames from "real" Makefile, and switch .CURDIR back. .for var in ${_RESOLVE_VARS} ${var}:= ${${var}} .endfor .CURDIR:= ${_CURDIR} .undef _CURDIR # Set up the environment for <bsd.hostprog.mk>. .if ${USETOOLS} != "yes" .undef HOSTPROG .endif HOSTPROGNAME?= ${HOSTPROG} HOST_BINDIR?= ${TOOLDIR}/bin HOST_CPPFLAGS:= ${HOST_CPPFLAGS} ${CPPFLAGS} HOST_CPPFLAGS:= ${HOST_CPPFLAGS:N-Wp,-iremap,*:N--sysroot=*} HOST_INSTALLPROG?=${HOST_BINDIR}/${HOSTPROGNAME}${HOSTEXEEXT} .undef LINKS SRCS?= ${HOSTPROG}.c SRCS+= ${HOST_SRCS} .PATH: ${.PROGDIR} # Install rule. realinstall: install.host install.files install.host: ${HOST_INSTALLPROG} ${HOST_INSTALLPROG}:: ${HOSTPROG} ${_MKTARGET_INSTALL} mkdir -p ${HOST_BINDIR} ${HOST_INSTALL_FILE} -m ${BINMODE} ${HOSTPROG}${HOSTEXEEXT} ${.TARGET} .if !empty(.MAKE.OS:M*CYGWIN*) ${HOST_SH} ${NETBSDSRCDIR}/tools/binstall/mkmanifest ${.TARGET} .endif .if ${MKUPDATE} == "no" .PHONY: ${HOST_INSTALLPROG} .endif install.files: .for F in ${HOSTFILES} install.files: ${HOST_FILESDIR}/${F} ${HOST_FILESDIR}/${F}: ${F} ${_MKTARGET_INSTALL} mkdir -p ${HOST_FILESDIR} ${HOST_INSTALL_FILE} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET} .if ${MKUPDATE} == "no" .PHONY: ${HOST_FILESDIR}/${F} .endif .endfor .include <bsd.hostprog.mk> |