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