Makefile.inc revision 1.31.2.3 1 # $NetBSD: Makefile.inc,v 1.31.2.3 2013/06/23 06:26:21 tls 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
12 .if ${MACHINE_ARCH} == "arm"
13 # Little endian platforms (armv4 or pre-armv5t)
14 EVBARM_BOARDS+= ADI_BRH CP3100 GEMINI GUMSTIX INTEGRATOR \
15 IQ80310 IQ80321 MINI2440 MV2120 SMDK2410 \
16 SMDK2800 TEAMASA_NPWR TS7200 TWINTAIL KUROBOX_PRO
17 .endif
18
19
20 IMAGE.rel= ${RELEASEDIR}/${RELEASEMACHINEDIR}
21 IMAGE.dir= ${IMAGE.rel}/binary/gzimg
22 IMAGE.kern= ${IMAGE.rel}/binary/kernel
23 IMAGE.instk= ${IMAGE.rel}/installation/instkernel
24
25 __mkimage: .USE
26 TOOL_MAKEFS=${TOOL_MAKEFS} \
27 TOOL_DISKLABEL=${TOOL_DISKLABEL} \
28 TOOL_FDISK=${TOOL_FDISK} \
29 TOOL_GZIP=${TOOL_GZIP} \
30 TOOL_MKNOD=${TOOL_MKNOD} \
31 TOOL_PAX=${TOOL_PAX} \
32 TOOL_MTREE=${TOOL_MTREE} \
33 HOST_SH=${HOST_SH} \
34 ${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \
35 -K ${.ALLSRC} -S ${NETBSDSRCDIR} ${MKI_OPTS.${.TARGET}} \
36 ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz
37
38 .if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "earm" \
39 || ${MACHINE_ARCH} == "earmhf"
40 # Little endian platforms with VFP
41 EVBARM_BOARDS+= BCM5301X BEAGLEBOARD BEAGLEBOARDXM BEAGLEBONE TISDP2420
42 smp_beagleboard: ${IMAGE.kern}/netbsd-BEAGLEBOARD.ub.gz __mkimage
43 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MBEAGLEBOARD)
44 SNAP_MD_POST_DEPS+= smp_beagleboard
45 .endif
46 .endif
47 .if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "earm"
48 # Little endian platforms (armv5t+)
49 EVBARM_BOARDS+= OPENRD SHEEVAPLUG
50 .endif
51
52 .if ${MACHINE_ARCH} == "armeb"
53 # Big endian platforms
54 EVBARM_BOARDS+= ADI_BRH
55 .endif
56
57 .for board in ${EVBARM_BOARDS}
58 KERNEL_SETS+= ${board}
59 BUILD_KERNELS+= ${board}_INSTALL
60 .endfor
61
62 .if ${MACHINE_ARCH} == "arm"
63 # Little endian platforms.
64 KERNEL_SETS+= HDL_G INTEGRATOR_CP IXM1200
65 .endif
66
67 .if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "earm" \
68 || ${MACHINE_ARCH} == "earmhf"
69 KERNEL_SETS+= RPI
70 BUILD_KERNELS+= RPI_INSTALL
71 smp_rpi: ${IMAGE.kern}/netbsd-RPI.bin.gz __mkimage
72 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI)
73 SNAP_MD_POST_DEPS+= smp_rpi
74 .endif
75 MKI_OPTS.smp_rpi_inst="-b"
76 smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.bin.gz __mkimage
77 .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL)
78 SNAP_MD_POST_DEPS+= smp_rpi_inst
79 .endif
80 .endif
81
82 .if ${MACHINE_ARCH} == "armeb"
83 # Big endian platforms.
84 KERNEL_SETS+= IXM1200 NSLU2
85 .endif
86
87 snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS}
88
89 KERNEL_SUFFIXES= bin srec ub
90
91 INSTALLATION_DIRS+= binary/gzimg \
92 installation/instkernel
93