Home | History | Annotate | Line # | Download | only in etc.evbarm
Makefile.inc revision 1.56
      1 #	$NetBSD: Makefile.inc,v 1.56 2013/08/07 20:57:22 matt Exp $
      2 #
      3 #	etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets
      4 #
      5 
      6 MKIMAGE= ${NETBSDSRCDIR}/distrib/utils/embedded/mkimage
      7 
      8 # If you change the list of distributed kernels, don't forget
      9 # to update the release documentation in distrib/notes/common/contents
     10 EVBARM_BOARDS=
     11 .for i in armv4 xscale armv5t armv6 armv7
     12 EVBARM_BOARDS.${i}=
     13 .endfor
     14 
     15 .if !empty(MACHINE_ARCH:M*eb)
     16 # big endian boards
     17 KERNEL_SETS.armv4+=		IXM1200
     18 EVBARM_BOARDS.xscale+=		ADI_BRH
     19 KERNEL_SETS.xscale+=		NSLU2
     20 EVBARM_BOARDS.armv7+=		BCM5301X
     21 .else
     22 # little endian boards
     23 #EVBARM_BOARDS.armv4+=		ARMADILLO210
     24 #EVBARM_BOARDS.armv4+=		ARMADILLO9
     25 EVBARM_BOARDS.armv4+=		GEMINI
     26 EVBARM_BOARDS.armv4+=		INTEGRATOR
     27 KERNEL_SETS.armv4+=		INTEGRATOR_CP
     28 KERNEL_SETS.armv4+=		IXM1200
     29 #EVBARM_BOARDS.armv4+=		MINI2440
     30 #EVBARM_BOARDS.armv4+=		MPCSA_GENERIC
     31 #EVBARM_BOARDS.armv4+=		NAPPI
     32 EVBARM_BOARDS.armv4+=		SMDK2410
     33 EVBARM_BOARDS.armv4+=		SMDK2800
     34 EVBARM_BOARDS.armv4+=		TS7200
     35 EVBARM_BOARDS.xscale+=		ADI_BRH
     36 EVBARM_BOARDS.xscale+=		CP3100
     37 EVBARM_BOARDS.xscale+=		GUMSTIX
     38 KERNEL_SETS.xscale+=		HDL_G
     39 EVBARM_BOARDS.xscale+=		IQ80310
     40 EVBARM_BOARDS.xscale+=		IQ80321
     41 #EVBARM_BOARDS.xscale+=		LUBBOCK
     42 EVBARM_BOARDS.xscale+=		TEAMASA_NPWR
     43 EVBARM_BOARDS.xscale+=		TWINTAIL
     44 #EVBARM_BOARDS.xscale+=		VIPER
     45 #EVBARM_BOARDS.xscale+=		ZAO425
     46 #EVBARM_BOARDS.armv5t+=		DNS323
     47 #EVBARM_BOARDS.armv5t+=		HPT5325
     48 #EVBARM_BOARDS.armv5t+=		IMX21_OLINUXINO
     49 EVBARM_BOARDS.armv5t+=		KUROBOX_PRO
     50 #EVBARM_BOARDS.armv5t+=		MARVELL_NAS
     51 #EVBARM_BOARDS.armv5t+=		MMNET_GENERIC
     52 EVBARM_BOARDS.armv5t+=		MV2120
     53 #EVBARM_BOARDS.armv5t+=		OPENBLOCKS_A6
     54 EVBARM_BOARDS.armv5t+=		OPENRD
     55 #EVBARM_BOARDS.armv5t+=		OSK5912
     56 EVBARM_BOARDS.armv5t+=		SHEEVAPLUG
     57 #EVBARM_BOARDS.armv6+=		IMX31LITE
     58 #EVBARM_BOARDS.armv6hf+= 	IMX31LITE
     59 EVBARM_BOARDS.armv6+=		RPI
     60 EVBARM_BOARDS.armv6hf+=	 	RPI
     61 EVBARM_BOARDS.armv6+=		TISDP2420
     62 EVBARM_BOARDS.armv6hf+= 	TISDP2420
     63 #EVBARM_BOARDS.armv6+=		TISDP2430
     64 EVBARM_BOARDS.armv7+=		ARMADAXP
     65 EVBARM_BOARDS.armv7+=		BCM5301X
     66 EVBARM_BOARDS.armv7hf+= 	BCM5301X
     67 EVBARM_BOARDS.armv7+=		BEAGLEBOARD
     68 EVBARM_BOARDS.armv7hf+= 	BEAGLEBOARD
     69 EVBARM_BOARDS.armv7+=		BEAGLEBOARDXM
     70 EVBARM_BOARDS.armv7hf+= 	BEAGLEBOARDXM
     71 EVBARM_BOARDS.armv7+=		BEAGLEBONE
     72 EVBARM_BOARDS.armv7hf+= 	BEAGLEBONE
     73 #EVBARM_BOARDS.armv7+=		IGEPV2
     74 #EVBARM_BOARDS.armv7+=		N900
     75 #EVBARM_BOARDS.armv7+=		NETWALKER
     76 #EVBARM_BOARDS.armv7+=		OVERO
     77 #EVBARM_BOARDS.armv7+=		PANDABOARD
     78 #EVBARM_BOARDS.armv7hf+= 	PANDABOARD
     79 .endif
     80 
     81 IMAGE.rel=	${RELEASEDIR}/${RELEASEMACHINEDIR}
     82 IMAGE.dir=	${IMAGE.rel}/binary/gzimg
     83 IMAGE.kern=	${IMAGE.rel}/binary/kernel
     84 IMAGE.instk=	${IMAGE.rel}/installation/instkernel
     85 
     86 __mkimage: .USE
     87 	TOOL_MAKEFS=${TOOL_MAKEFS} \
     88 	TOOL_DISKLABEL=${TOOL_DISKLABEL} \
     89 	TOOL_FDISK=${TOOL_FDISK} \
     90 	TOOL_GZIP=${TOOL_GZIP} \
     91 	TOOL_MKNOD=${TOOL_MKNOD} \
     92 	TOOL_PAX=${TOOL_PAX} \
     93 	TOOL_MTREE=${TOOL_MTREE} \
     94 	HOST_SH=${HOST_SH} \
     95 	${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \
     96 	    -K ${.ALLSRC} -S ${NETBSDSRCDIR} ${MKI_OPTS.${.TARGET}} \
     97 	    ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz
     98 
     99 ARCHES.arm=		armv4 xscale armv5t armv6 armv7
    100 ARCHES.armeb=		armv4 xscale armv5t armv6
    101 ARCHES.earm=		xscale armv5t armv6 armv7
    102 ARCHES.earmeb=		xscale armv5t armv6
    103 ARCHES.earmhf=		armv6hf armv7hf
    104 ARCHES.earmhfeb=	armv6hf
    105 ARCHES.earmv4=		armv4
    106 ARCHES.earmv4eb=	armv4
    107 ARCHES.earmv5=		xscale armv5t
    108 ARCHES.earmv5eb=	xscale armv5t
    109 ARCHES.earmv6=		armv6
    110 ARCHES.earmv6hf=	armv6hf
    111 ARCHES.earmv6eb=	armv6
    112 ARCHES.earmv6hfeb=	armv6hf
    113 ARCHES.earmv7=		armv7
    114 ARCHES.earmv7hf=	armv7hf
    115 ARCHES.earmv7eb=	armv7
    116 ARCHES.earmv7hfeb=	armv7hf
    117 .for arch in ${ARCHES.${MACHINE_ARCH}}
    118 .for board in ${EVBARM_BOARDS.${arch}}
    119 KERNEL_SETS+=		${board}
    120 BUILD_KERNELS+=		${board}_INSTALL
    121 .endfor
    122 KERNEL_SETS+=		${KERNEL_SETS.${arch}}
    123 .endfor
    124 
    125 .if !empty(KERNEL_SETS:MBEAGLEBOARD)
    126 smp_beagleboard: ${IMAGE.kern}/netbsd-BEAGLEBOARD.ub.gz __mkimage
    127 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MBEAGLEBOARD)
    128 SNAP_MD_POST_DEPS+=	smp_beagleboard
    129 .endif
    130 .endif
    131 
    132 .if !empty(KERNEL_SETS:MRPI)
    133 smp_rpi: ${IMAGE.kern}/netbsd-RPI.bin.gz __mkimage
    134 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI)
    135 SNAP_MD_POST_DEPS+=	smp_rpi
    136 .endif
    137 MKI_OPTS.smp_rpi_inst="-b"
    138 smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.bin.gz __mkimage
    139 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL)
    140 SNAP_MD_POST_DEPS+=	smp_rpi_inst
    141 .endif
    142 .endif
    143 
    144 snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS}
    145 
    146 KERNEL_SUFFIXES=	bin srec ub
    147 
    148 INSTALLATION_DIRS+=	binary/gzimg		\
    149 			installation/instkernel
    150