Home | History | Annotate | Line # | Download | only in conf
      1 #	$NetBSD: Makefile.evbarm.inc,v 1.35 2021/03/21 09:00:55 skrll Exp $
      2 
      3 #
      4 # If this is a install kernel and the ramdisk image exists in the object
      5 # tree, insert it into the kernel *before* we make the u-boot images.
      6 #
      7 RAMDISKNAME?=	ramdisk
      8 .if ${KERNEL_BUILD:T:M*INSTALL*} != ""
      9 RAMDISKDIR!=	cd ${NETBSDSRCDIR}/distrib/${THISARM:T}/instkernel/${RAMDISKNAME} && ${PRINTOBJDIR}
     10 
     11 .if exists(${RAMDISKDIR}/${RAMDISKNAME}.fs)
     12 SYSTEM_DEP+=	${RAMDISKDIR}/${RAMDISKNAME}.fs
     13 SYSTEM_LD_TAIL_EXTRA+=; \
     14 	echo ${TOOL_MDSETIMAGE} -s $@ ${RAMDISKDIR}/${RAMDISKNAME}.fs; \
     15 	${TOOL_MDSETIMAGE} -s $@ ${RAMDISKDIR}/${RAMDISKNAME}.fs
     16 .endif
     17 .endif
     18 
     19 .if defined(BOARDMKFRAG)	# Must be a full pathname.
     20 .include "${BOARDMKFRAG}"
     21 .endif
     22 
     23 #
     24 # All boards should use a runtime calculation of kern_vtopdiff, but
     25 # support the leagacy compile time method.
     26 #
     27 .if !defined(KERNEL_VOFFSET_RUNTIME)
     28 .if defined(KERNEL_BASE_PHYS) && defined(KERNEL_BASE_VIRT)
     29 . if ${KERNEL_BASE_PHYS} == ${KERNEL_BASE_VIRT}
     30 CPPFLAGS+=-DKERNEL_BASES_EQUAL -DKERNEL_BASE_VOFFSET=0
     31 . else
     32 CPPFLAGS+=-DKERNEL_BASE_VOFFSET="(${KERNEL_BASE_VIRT}-${KERNEL_BASE_PHYS})"
     33 . endif
     34 .endif
     35 .endif
     36 
     37 EXTRA_CLEAN+=	${KERNELS:=.map}
     38 
     39 .if defined(KERNEL_BASE_PHYS)
     40 LINKTEXT=
     41 KERNLDSCRIPT=	ldscript
     42 
     43 EXTRA_CLEAN+=	${KERNLDSCRIPT} tmp
     44 
     45 # generate ldscript from common template
     46 ${KERNLDSCRIPT}: \
     47     ${THISARM}/conf/ldscript.evbarm \
     48     ${THISARM}/conf/Makefile.evbarm.inc \
     49     Makefile \
     50     ${BOARDMKFRAG}
     51 	${_MKTARGET_CREATE}
     52 	${TOOL_SED} -e 's/@KERNEL_BASE_PHYS@/${KERNEL_BASE_PHYS}/' \
     53 	    -e 's/@KERNEL_BASE_VIRT@/${KERNEL_BASE_VIRT}/' \
     54 	    ${THISARM}/conf/ldscript.evbarm > tmp && mv tmp $@
     55 
     56 .else
     57 LINKTEXT=	-Ttext ${LOADADDRESS}
     58 .endif	# KERNEL_BASE_PHYS
     59