1# $NetBSD: bsd.klinks.mk,v 1.15 2020/04/25 15:46:59 bouyer Exp $ 2# 3 4.include <bsd.own.mk> 5 6KLINK_MACHINE?= ${MACHINE} 7 8##### Default values 9.if !defined(S) 10. if defined(NETBSDSRCDIR) 11S= ${NETBSDSRCDIR}/sys 12. elif defined(BSDSRCDIR) 13S= ${BSDSRCDIR}/sys 14. else 15S= /sys 16. endif 17.endif 18 19KLINKFILES+= ${MACHINE_CPU} ${KLINK_MACHINE} 20 21.if ${KLINK_MACHINE} == "sun2" || ${KLINK_MACHINE} == "sun3" 22KLINKFILES+= sun68k 23.elif ${KLINK_MACHINE} == "sparc64" 24KLINKFILES+= sparc 25.elif ${KLINK_MACHINE} == "i386" 26KLINKFILES+= x86 xen 27.elif ${KLINK_MACHINE} == "amd64" 28KLINKFILES+= x86 i386 xen 29.elif ${KLINK_MACHINE} == "evbmips" 30KLINKFILES+= algor sbmips 31.elif ${MACHINE_CPU} == "aarch64" 32KLINKFILES+= arm 33.elif defined(XEN_BUILD) || ${KLINK_MACHINE} == "xen" 34KLINKFILES+= xen 35CLEANFILES+= xen-ma/machine # xen-ma 36CPPFLAGS+= -I${.OBJDIR}/xen-ma 37.endif 38 39CLEANFILES+= machine ${KLINKFILES} 40 41# XXX. This should be done a better way. It's @'d to reduce visual spew. 42# XXX .BEGIN is used to make sure the links are done before anything else. 43.if !make(obj) && !make(clean) && !make(cleandir) 44.BEGIN: 45 -@rm -f machine && \ 46 ln -s $S/arch/${KLINK_MACHINE}/include machine 47. for kl in ${KLINKFILES} 48 -@if [ -d $S/arch/${kl}/include ]; then \ 49 rm -f ${kl} && ln -s $S/arch/${kl}/include ${kl}; \ 50 fi 51. endfor 52. if defined(XEN_BUILD) || ${KLINK_MACHINE} == "xen" 53 -@rm -rf xen-ma && mkdir xen-ma && \ 54 ln -s ../${XEN_BUILD:U${MACHINE_ARCH}} xen-ma/machine 55. endif 56.endif 57