1 # $NetBSD: bsd.host.mk,v 1.6 2021/12/20 20:33:20 christos Exp $ 2 3 .if !defined(_BSD_HOST_MK_) 4 _BSD_HOST_MK_=1 5 6 .if ${MKDEBUGTOOLS:Uno} == "yes" 7 HOST_DBG?= -g 8 .else 9 HOST_DBG?= -O 10 .endif 11 12 .if ${MKDTRACE:Uno} != "no" 13 # disable compiler options that interfere with dtrace 14 HOST_DTRACE_OPTS?= -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-ipa-sra 15 .endif 16 17 # Helpers for cross-compiling 18 HOST_CC?= cc 19 HOST_CFLAGS?= ${HOST_DBG} 20 HOST_COMPILE.c?=${HOST_CC} ${HOST_CFLAGS} ${HOST_DTRACE_OPTS} ${HOST_CPPFLAGS} -c 21 HOST_COMPILE.cc?= ${HOST_CXX} ${HOST_CXXFLAGS} ${HOST_DTRACE_OPTS} ${HOST_CPPFLAGS} -c 22 HOST_LINK.cc?= ${HOST_CXX} ${HOST_CXXFLAGS} ${HOST_CPPFLAGS} ${HOST_LDFLAGS} 23 .if defined(HOSTPROG_CXX) 24 HOST_LINK.c?= ${HOST_LINK.cc} 25 .else 26 HOST_LINK.c?= ${HOST_CC} ${HOST_CFLAGS} ${HOST_CPPFLAGS} ${HOST_LDFLAGS} 27 .endif 28 29 HOST_CXX?= c++ 30 HOST_CXXFLAGS?= ${HOST_DBG} 31 32 HOST_CPP?= cpp 33 HOST_CPPFLAGS?= 34 35 HOST_LD?= ld 36 HOST_LDFLAGS?= 37 38 HOST_AR?= ar 39 HOST_RANLIB?= ranlib 40 41 HOST_LN?= ln 42 43 # HOST_SH must be an absolute path 44 HOST_SH?= /bin/sh 45 46 .if !defined(HOST_OSTYPE) 47 _HOST_OSNAME!= uname -s 48 _HOST_OSREL!= uname -r 49 # For _HOST_ARCH, if uname -p fails, or prints "unknown", or prints 50 # something that does not look like an identifier, then use uname -m. 51 _HOST_ARCH!= uname -p 2>/dev/null 52 _HOST_ARCH:= ${HOST_ARCH:tW:C/.*[^-_A-Za-z0-9].*//:S/unknown//} 53 .if empty(_HOST_ARCH) 54 _HOST_ARCH!= uname -m 55 .endif 56 HOST_OSTYPE:= ${_HOST_OSNAME}-${_HOST_OSREL:C/\([^\)]*\)//g:[*]:C/ /_/g}-${_HOST_ARCH:C/\([^\)]*\)//g:[*]:C/ /_/g} 57 .MAKEOVERRIDES+= HOST_OSTYPE 58 .endif # !defined(HOST_OSTYPE) 59 60 .if ${USETOOLS} == "yes" 61 HOST_MKDEP?= ${TOOLDIR}/bin/${_TOOL_PREFIX}host-mkdep 62 HOST_MKDEPCXX?= ${TOOLDIR}/bin/${_TOOL_PREFIX}host-mkdep 63 .else 64 HOST_MKDEP?= CC=${HOST_CC:Q} mkdep 65 HOST_MKDEPCXX?= CC=${HOST_CXX:Q} mkdep 66 .endif 67 68 .if ${HOST_OSTYPE:MLinux*} 69 HOST_CPPFLAGS+=-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 70 .endif 71 72 .if ${NEED_OWN_INSTALL_TARGET} != "no" 73 HOST_INSTALL_FILE?= ${INSTALL} ${COPY} ${PRESERVE} ${RENAME} 74 HOST_INSTALL_DIR?= ${INSTALL} -d 75 HOST_INSTALL_SYMLINK?= ${INSTALL} ${SYMLINK} ${RENAME} 76 .endif 77 78 .endif 79