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