1 1.21 jakllsch # $NetBSD: bsd.hostlib.mk,v 1.21 2024/04/12 16:28:43 jakllsch Exp $ 2 1.1 tv 3 1.20 christos .include <bsd.hostinit.mk> 4 1.1 tv .include <bsd.sys.mk> 5 1.1 tv 6 1.1 tv ##### Basic targets 7 1.1 tv 8 1.1 tv ##### Default values 9 1.1 tv CFLAGS+= ${COPTS} 10 1.19 erh MKDEP_SUFFIXES?= .o .lo .d 11 1.1 tv 12 1.1 tv # Override these: 13 1.2 tv MKDEP:= ${HOST_MKDEP} 14 1.17 joerg MKDEPCXX:= ${HOST_MKDEPCXX} 15 1.1 tv 16 1.12 lukem .if ${TOOLCHAIN_MISSING} == "no" || defined(EXTERNAL_TOOLCHAIN) 17 1.1 tv OBJHOSTMACHINE= # set 18 1.1 tv .endif 19 1.1 tv 20 1.1 tv ##### Build rules 21 1.1 tv .if defined(HOSTLIB) 22 1.14 lukem _YHLSRCS= ${SRCS:M*.[ly]:C/\..$/.c/} ${YHEADER:D${SRCS:M*.y:.y=.h}} 23 1.14 lukem DPSRCS+= ${_YHLSRCS} 24 1.14 lukem CLEANFILES+= ${_YHLSRCS} 25 1.1 tv .endif # defined(HOSTLIB) 26 1.1 tv 27 1.1 tv .if !empty(SRCS:N*.h:N*.sh) 28 1.1 tv OBJS+= ${SRCS:N*.h:N*.sh:R:S/$/.lo/g} 29 1.1 tv .endif 30 1.1 tv 31 1.1 tv .if defined(OBJS) && !empty(OBJS) 32 1.15 plunky .NOPATH: lib${HOSTLIB}.a ${OBJS} ${_YHLSRCS} 33 1.1 tv 34 1.7 lukem ${OBJS}: ${DPSRCS} 35 1.7 lukem 36 1.7 lukem lib${HOSTLIB}.a: ${OBJS} ${DPADD} 37 1.10 lukem ${_MKTARGET_BUILD} 38 1.8 lukem rm -f ${.TARGET} 39 1.1 tv ${HOST_AR} cq ${.TARGET} ${OBJS} 40 1.8 lukem ${HOST_RANLIB} ${.TARGET} 41 1.1 tv 42 1.1 tv .endif # defined(OBJS) && !empty(OBJS) 43 1.1 tv 44 1.1 tv realall: lib${HOSTLIB}.a 45 1.1 tv 46 1.16 apb CLEANFILES+= a.out [Ee]rrs mklog core *.core lib${HOSTLIB}.a ${OBJS} 47 1.1 tv 48 1.1 tv beforedepend: 49 1.1 tv CFLAGS:= ${HOST_CFLAGS} 50 1.21 jakllsch CPPFLAGS:= ${HOST_CPPFLAGS:N-Wp,-iremap,*} 51 1.1 tv 52 1.1 tv ##### Pull in related .mk logic 53 1.6 lukem .include <bsd.obj.mk> 54 1.1 tv .include <bsd.dep.mk> 55 1.16 apb .include <bsd.clean.mk> 56 1.1 tv 57 1.1 tv ${TARGETS}: # ensure existence 58