| @@ -1,179 +1,183 @@ | | | @@ -1,179 +1,183 @@ |
1 | # $NetBSD: Makefile.inc,v 1.123 2021/05/27 08:43:02 rin Exp $ | | 1 | # $NetBSD: Makefile.inc,v 1.124 2021/07/24 17:07:59 jmcneill Exp $ |
2 | # | | 2 | # |
3 | # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets | | 3 | # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets |
4 | # | | 4 | # |
5 | | | 5 | |
6 | MKIMAGE= ${NETBSDSRCDIR}/distrib/utils/embedded/mkimage | | 6 | MKIMAGE= ${NETBSDSRCDIR}/distrib/utils/embedded/mkimage |
7 | | | 7 | |
8 | # If you change the list of distributed kernels, don't forget | | 8 | # If you change the list of distributed kernels, don't forget |
9 | # to update the release documentation in distrib/notes/common/contents | | 9 | # to update the release documentation in distrib/notes/common/contents |
10 | EVBARM_BOARDS= | | 10 | EVBARM_BOARDS= |
11 | .for i in armv4 xscale armv5t armv6 armv7 arm64 | | 11 | .for i in armv4 xscale armv5t armv6 armv7 arm64 |
12 | EVBARM_BOARDS.${i}= | | 12 | EVBARM_BOARDS.${i}= |
13 | .endfor | | 13 | .endfor |
14 | | | 14 | |
15 | .if !empty(MACHINE_ARCH:M*eb) | | 15 | .if !empty(MACHINE_ARCH:M*eb) |
16 | IMAGEENDIAN= be | | 16 | IMAGEENDIAN= be |
17 | # big endian boards | | 17 | # big endian boards |
18 | KERNEL_SETS.armv4+= IXM1200 | | 18 | KERNEL_SETS.armv4+= IXM1200 |
19 | | | 19 | |
20 | EVBARM_BOARDS.xscale+= ADI_BRH | | 20 | EVBARM_BOARDS.xscale+= ADI_BRH |
21 | KERNEL_SETS.xscale+= NSLU2 | | 21 | KERNEL_SETS.xscale+= NSLU2 |
22 | | | 22 | |
23 | EVBARM_BOARDS.armv6+= RPI | | 23 | EVBARM_BOARDS.armv6+= RPI |
24 | EVBARM_BOARDS.armv6hf+= RPI | | 24 | EVBARM_BOARDS.armv6hf+= RPI |
25 | KERNEL_SETS.armv6+= RPI2 | | 25 | KERNEL_SETS.armv6+= RPI2 |
26 | KERNEL_SETS.armv6hf+= RPI2 | | 26 | KERNEL_SETS.armv6hf+= RPI2 |
27 | | | 27 | |
28 | KERNEL_SETS.armv7+= GENERIC | | 28 | KERNEL_SETS.armv7+= GENERIC |
29 | KERNEL_SETS.armv7hf+= GENERIC | | 29 | KERNEL_SETS.armv7hf+= GENERIC |
30 | KERNEL_SETS.arm64+= GENERIC64 | | 30 | KERNEL_SETS.arm64+= GENERIC64 |
31 | .else | | 31 | .else |
32 | IMAGEENDIAN= le | | 32 | IMAGEENDIAN= le |
33 | # little endian boards | | 33 | # little endian boards |
34 | #EVBARM_BOARDS.armv4+= ARMADILLO210 | | 34 | #EVBARM_BOARDS.armv4+= ARMADILLO210 |
35 | #EVBARM_BOARDS.armv4+= ARMADILLO9 | | 35 | #EVBARM_BOARDS.armv4+= ARMADILLO9 |
36 | EVBARM_BOARDS.armv4+= GEMINI | | 36 | EVBARM_BOARDS.armv4+= GEMINI |
37 | EVBARM_BOARDS.armv4+= INTEGRATOR | | 37 | EVBARM_BOARDS.armv4+= INTEGRATOR |
38 | EVBARM_BOARDS.armv4+= INTEGRATOR_CP | | 38 | EVBARM_BOARDS.armv4+= INTEGRATOR_CP |
39 | KERNEL_SETS.armv4+= IXM1200 | | 39 | KERNEL_SETS.armv4+= IXM1200 |
40 | #EVBARM_BOARDS.armv4+= MINI2440 | | 40 | #EVBARM_BOARDS.armv4+= MINI2440 |
41 | #EVBARM_BOARDS.armv4+= MPCSA_GENERIC | | 41 | #EVBARM_BOARDS.armv4+= MPCSA_GENERIC |
42 | #EVBARM_BOARDS.armv4+= NAPPI | | 42 | #EVBARM_BOARDS.armv4+= NAPPI |
43 | EVBARM_BOARDS.armv4+= SMDK2410 | | 43 | EVBARM_BOARDS.armv4+= SMDK2410 |
44 | EVBARM_BOARDS.armv4+= SMDK2800 | | 44 | EVBARM_BOARDS.armv4+= SMDK2800 |
45 | EVBARM_BOARDS.armv4+= TS7200 | | 45 | EVBARM_BOARDS.armv4+= TS7200 |
46 | | | 46 | |
47 | EVBARM_BOARDS.xscale+= ADI_BRH | | 47 | EVBARM_BOARDS.xscale+= ADI_BRH |
48 | EVBARM_BOARDS.xscale+= CP3100 | | 48 | EVBARM_BOARDS.xscale+= CP3100 |
49 | EVBARM_BOARDS.xscale+= GUMSTIX | | 49 | EVBARM_BOARDS.xscale+= GUMSTIX |
50 | KERNEL_SETS.xscale+= HDL_G | | 50 | KERNEL_SETS.xscale+= HDL_G |
51 | EVBARM_BOARDS.xscale+= IQ80310 | | 51 | EVBARM_BOARDS.xscale+= IQ80310 |
52 | EVBARM_BOARDS.xscale+= IQ80321 | | 52 | EVBARM_BOARDS.xscale+= IQ80321 |
53 | #EVBARM_BOARDS.xscale+= LUBBOCK | | 53 | #EVBARM_BOARDS.xscale+= LUBBOCK |
54 | EVBARM_BOARDS.xscale+= TEAMASA_NPWR | | 54 | EVBARM_BOARDS.xscale+= TEAMASA_NPWR |
55 | EVBARM_BOARDS.xscale+= TWINTAIL | | 55 | EVBARM_BOARDS.xscale+= TWINTAIL |
56 | #EVBARM_BOARDS.xscale+= VIPER | | 56 | #EVBARM_BOARDS.xscale+= VIPER |
57 | #EVBARM_BOARDS.xscale+= ZAO425 | | 57 | #EVBARM_BOARDS.xscale+= ZAO425 |
58 | | | 58 | |
59 | #EVBARM_BOARDS.armv5t+= DNS323 | | 59 | #EVBARM_BOARDS.armv5t+= DNS323 |
60 | #EVBARM_BOARDS.armv5t+= HPT5325 | | 60 | #EVBARM_BOARDS.armv5t+= HPT5325 |
61 | #EVBARM_BOARDS.armv5t+= IMX23_OLINUXINO | | 61 | #EVBARM_BOARDS.armv5t+= IMX23_OLINUXINO |
62 | EVBARM_BOARDS.armv5t+= KUROBOX_PRO | | 62 | EVBARM_BOARDS.armv5t+= KUROBOX_PRO |
63 | #EVBARM_BOARDS.armv5t+= MARVELL_NAS | | 63 | #EVBARM_BOARDS.armv5t+= MARVELL_NAS |
64 | #EVBARM_BOARDS.armv5t+= MMNET_GENERIC | | 64 | #EVBARM_BOARDS.armv5t+= MMNET_GENERIC |
65 | EVBARM_BOARDS.armv5t+= MV2120 | | 65 | EVBARM_BOARDS.armv5t+= MV2120 |
66 | #EVBARM_BOARDS.armv5t+= OPENBLOCKS_A6 | | 66 | #EVBARM_BOARDS.armv5t+= OPENBLOCKS_A6 |
67 | EVBARM_BOARDS.armv5t+= OPENRD | | 67 | EVBARM_BOARDS.armv5t+= OPENRD |
68 | #EVBARM_BOARDS.armv5t+= OSK5912 | | 68 | #EVBARM_BOARDS.armv5t+= OSK5912 |
69 | EVBARM_BOARDS.armv5t+= SHEEVAPLUG | | 69 | EVBARM_BOARDS.armv5t+= SHEEVAPLUG |
70 | | | 70 | |
71 | #EVBARM_BOARDS.armv6+= IMX31LITE | | 71 | #EVBARM_BOARDS.armv6+= IMX31LITE |
72 | #EVBARM_BOARDS.armv6hf+= IMX31LITE | | 72 | #EVBARM_BOARDS.armv6hf+= IMX31LITE |
73 | EVBARM_BOARDS.armv6+= RPI | | 73 | EVBARM_BOARDS.armv6+= RPI |
74 | EVBARM_BOARDS.armv6hf+= RPI | | 74 | EVBARM_BOARDS.armv6hf+= RPI |
75 | KERNEL_SETS.armv6+= RPI2 | | 75 | KERNEL_SETS.armv6+= RPI2 |
76 | KERNEL_SETS.armv6hf+= RPI2 | | 76 | KERNEL_SETS.armv6hf+= RPI2 |
77 | EVBARM_BOARDS.armv6+= TISDP2420 | | 77 | EVBARM_BOARDS.armv6+= TISDP2420 |
78 | EVBARM_BOARDS.armv6hf+= TISDP2420 | | 78 | EVBARM_BOARDS.armv6hf+= TISDP2420 |
79 | #EVBARM_BOARDS.armv6+= TISDP2430 | | 79 | #EVBARM_BOARDS.armv6+= TISDP2430 |
80 | | | 80 | |
81 | KERNEL_SETS.armv7+= GENERIC | | 81 | KERNEL_SETS.armv7+= GENERIC |
82 | KERNEL_SETS.armv7hf+= GENERIC | | 82 | KERNEL_SETS.armv7hf+= GENERIC |
83 | KERNEL_SETS.arm64+= GENERIC64 | | 83 | KERNEL_SETS.arm64+= GENERIC64 |
84 | .endif | | 84 | .endif |
85 | | | 85 | |
86 | IMAGE.rel= ${RELEASEDIR}/${RELEASEMACHINEDIR} | | 86 | IMAGE.rel= ${RELEASEDIR}/${RELEASEMACHINEDIR} |
87 | IMAGE.dir= ${IMAGE.rel}/binary/gzimg | | 87 | IMAGE.dir= ${IMAGE.rel}/binary/gzimg |
88 | IMAGE.kern= ${IMAGE.rel}/binary/kernel | | 88 | IMAGE.kern= ${IMAGE.rel}/binary/kernel |
89 | IMAGE.instk= ${IMAGE.rel}/installation/instkernel | | 89 | IMAGE.instk= ${IMAGE.rel}/installation/instkernel |
90 | | | 90 | |
91 | __mkimage: .USE | | 91 | __mkimage: .USE |
92 | TOOL_MAKE=${MAKE} \ | | 92 | TOOL_MAKE=${MAKE} \ |
93 | TOOL_MAKEFS=${TOOL_MAKEFS} \ | | 93 | TOOL_MAKEFS=${TOOL_MAKEFS} \ |
94 | TOOL_DISKLABEL=${TOOL_DISKLABEL} \ | | 94 | TOOL_DISKLABEL=${TOOL_DISKLABEL} \ |
95 | TOOL_FDISK=${TOOL_FDISK} \ | | 95 | TOOL_FDISK=${TOOL_FDISK} \ |
96 | TOOL_GPT=${TOOL_GPT} \ | | 96 | TOOL_GPT=${TOOL_GPT} \ |
97 | TOOL_GZIP=${TOOL_GZIP} \ | | 97 | TOOL_GZIP=${TOOL_GZIP} \ |
98 | TOOL_MKNOD=${TOOL_MKNOD} \ | | 98 | TOOL_MKNOD=${TOOL_MKNOD} \ |
99 | TOOL_PAX=${TOOL_PAX} \ | | 99 | TOOL_PAX=${TOOL_PAX} \ |
100 | TOOL_MKUBOOTIMAGE=${TOOL_MKUBOOTIMAGE} \ | | 100 | TOOL_MKUBOOTIMAGE=${TOOL_MKUBOOTIMAGE} \ |
101 | TOOL_MTREE=${TOOL_MTREE} \ | | 101 | TOOL_MTREE=${TOOL_MTREE} \ |
102 | HOST_SH=${HOST_SH} \ | | 102 | HOST_SH=${HOST_SH} \ |
103 | KERNOBJDIR=${KERNOBJDIR} \ | | 103 | KERNOBJDIR=${KERNOBJDIR} \ |
104 | MACHINE=${MACHINE} \ | | 104 | MACHINE=${MACHINE} \ |
105 | MKDTB=${MKDTB} \ | | 105 | MKDTB=${MKDTB} \ |
106 | ${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \ | | 106 | ${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \ |
107 | -S ${NETBSDSRCDIR} -B ${IMAGEENDIAN} ${MKI_OPTS.${.TARGET}} \ | | 107 | -S ${NETBSDSRCDIR} -B ${IMAGEENDIAN} ${MKI_OPTS.${.TARGET}} \ |
108 | ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz | | 108 | ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz |
109 | | | 109 | |
110 | ARCHES.earmv4= armv4 | | 110 | ARCHES.earmv4= armv4 |
111 | ARCHES.earmv4eb= armv4 | | 111 | ARCHES.earmv4eb= armv4 |
112 | ARCHES.earmv5= xscale armv5t | | 112 | ARCHES.earmv5= xscale armv5t |
113 | ARCHES.earmv5eb= xscale armv5t | | 113 | ARCHES.earmv5eb= xscale armv5t |
114 | ARCHES.earmv6= armv6 | | 114 | ARCHES.earmv6= armv6 |
115 | ARCHES.earmv6hf= armv6hf | | 115 | ARCHES.earmv6hf= armv6hf |
116 | ARCHES.earmv6eb= armv6 | | 116 | ARCHES.earmv6eb= armv6 |
117 | ARCHES.earmv6hfeb= armv6hf | | 117 | ARCHES.earmv6hfeb= armv6hf |
118 | ARCHES.earmv7= armv7 | | 118 | ARCHES.earmv7= armv7 |
119 | ARCHES.earmv7hf= armv7hf | | 119 | ARCHES.earmv7hf= armv7hf |
120 | ARCHES.earmv7eb= armv7 | | 120 | ARCHES.earmv7eb= armv7 |
121 | ARCHES.earmv7hfeb= armv7hf | | 121 | ARCHES.earmv7hfeb= armv7hf |
122 | ARCHES.aarch64= arm64 | | 122 | ARCHES.aarch64= arm64 |
123 | ARCHES.aarch64eb= arm64 | | 123 | ARCHES.aarch64eb= arm64 |
124 | .for arch in ${ARCHES.${MACHINE_ARCH}} | | 124 | .for arch in ${ARCHES.${MACHINE_ARCH}} |
125 | .for board in ${EVBARM_BOARDS.${arch}} | | 125 | .for board in ${EVBARM_BOARDS.${arch}} |
126 | KERNEL_SETS+= ${board} | | 126 | KERNEL_SETS+= ${board} |
127 | BUILD_KERNELS+= ${board}_INSTALL | | 127 | BUILD_KERNELS+= ${board}_INSTALL |
128 | .endfor | | 128 | .endfor |
129 | KERNEL_SETS+= ${KERNEL_SETS.${arch}} | | 129 | KERNEL_SETS+= ${KERNEL_SETS.${arch}} |
130 | .endfor | | 130 | .endfor |
131 | | | 131 | |
132 | .if !empty(MACHINE_ARCH:Maarch64*) | | 132 | .if !empty(MACHINE_ARCH:Maarch64*) |
133 | smp_efibootaa64: | | 133 | smp_efibootaa64: |
134 | cd ${KERNSRCDIR}/stand/efiboot/bootaa64 && ${MAKE} release | | 134 | cd ${KERNSRCDIR}/stand/efiboot/bootaa64 && ${MAKE} release |
135 | SNAP_MD_POST_DEPS+= smp_efibootaa64 | | 135 | SNAP_MD_POST_DEPS+= smp_efibootaa64 |
136 | INSTALLATION_DIRS+= installation/misc | | 136 | INSTALLATION_DIRS+= installation/misc |
137 | .endif | | 137 | .endif |
138 | | | 138 | |
139 | .if !empty(MACHINE_ARCH:Mearmv7hf) | | 139 | .if !empty(MACHINE_ARCH:Mearmv7hf) |
140 | smp_efibootarm: | | 140 | smp_efibootarm: |
141 | cd ${KERNSRCDIR}/stand/efiboot/bootarm && ${MAKE} release | | 141 | cd ${KERNSRCDIR}/stand/efiboot/bootarm && ${MAKE} release |
142 | SNAP_MD_POST_DEPS+= smp_efibootarm | | 142 | SNAP_MD_POST_DEPS+= smp_efibootarm |
143 | INSTALLATION_DIRS+= installation/misc | | 143 | INSTALLATION_DIRS+= installation/misc |
144 | .endif | | 144 | .endif |
145 | | | 145 | |
146 | .if !empty(MACHINE_ARCH:M*armv7*) && empty(ALL_KERNELS) | | 146 | .if !empty(MACHINE_ARCH:M*armv7*) && empty(ALL_KERNELS) |
147 | smp_armv7: __mkimage | | 147 | smp_armv7: __mkimage |
148 | MKI_OPTS.smp_armv7= -K ${IMAGE.kern} | | 148 | MKI_OPTS.smp_armv7= -K ${IMAGE.kern} |
149 | SNAP_MD_POST_DEPS+= smp_armv7 | | 149 | SNAP_MD_POST_DEPS+= smp_armv7 |
150 | .endif | | 150 | .endif |
151 | | | 151 | |
152 | .if !empty(MACHINE_ARCH:Maarch64*) && empty(ALL_KERNELS) | | 152 | .if !empty(MACHINE_ARCH:Maarch64*) && empty(ALL_KERNELS) |
153 | smp_arm64: __mkimage | | 153 | smp_arm64: __mkimage |
154 | MKI_OPTS.smp_arm64= -K ${IMAGE.kern} | | 154 | MKI_OPTS.smp_arm64= -K ${IMAGE.kern} |
155 | SNAP_MD_POST_DEPS+= smp_arm64 | | 155 | SNAP_MD_POST_DEPS+= smp_arm64 |
156 | smp_arm64mbr: __mkimage | | 156 | smp_arm64mbr: __mkimage |
157 | MKI_OPTS.smp_arm64mbr= -K ${IMAGE.kern} | | 157 | MKI_OPTS.smp_arm64mbr= -K ${IMAGE.kern} |
158 | SNAP_MD_POST_DEPS+= smp_arm64mbr | | 158 | SNAP_MD_POST_DEPS+= smp_arm64mbr |
159 | .endif | | 159 | .endif |
160 | | | 160 | |
161 | .if !empty(KERNEL_SETS:MRPI) | | 161 | .if !empty(KERNEL_SETS:MRPI) |
162 | smp_rpi: __mkimage | | 162 | smp_rpi: __mkimage |
163 | .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI) | | 163 | .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI) |
164 | MKI_OPTS.smp_rpi= -K ${IMAGE.kern}/netbsd-RPI.img.gz | | 164 | MKI_OPTS.smp_rpi= -K ${IMAGE.kern}/netbsd-RPI.img.gz |
165 | SNAP_MD_POST_DEPS+= smp_rpi | | 165 | SNAP_MD_POST_DEPS+= smp_rpi |
166 | .endif | | 166 | .endif |
167 | smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz __mkimage | | 167 | smp_rpi_inst: ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz __mkimage |
168 | .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL) | | 168 | .if empty(ALL_KERNELS) || !empty(ALL_KERNELS:MRPI_INSTALL) |
169 | MKI_OPTS.smp_rpi_inst= -b -K ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz | | 169 | MKI_OPTS.smp_rpi_inst= -b -K ${IMAGE.instk}/netbsd-RPI_INSTALL.img.gz |
170 | SNAP_MD_POST_DEPS+= smp_rpi_inst | | 170 | SNAP_MD_POST_DEPS+= smp_rpi_inst |
171 | .endif | | 171 | .endif |
172 | .endif | | 172 | .endif |
173 | | | 173 | |
174 | snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS} | | 174 | snap_md_post: check_DESTDIR check_RELEASEDIR snap_post .WAIT ${SNAP_MD_POST_DEPS} |
175 | | | 175 | |
| | | 176 | .if !empty(MACHINE_ARCH:Maarch64*) |
| | | 177 | KERNEL_SUFFIXES= img |
| | | 178 | .else |
176 | KERNEL_SUFFIXES= bin img srec ub | | 179 | KERNEL_SUFFIXES= bin img srec ub |
| | | 180 | .endif |
177 | | | 181 | |
178 | INSTALLATION_DIRS+= binary/gzimg \ | | 182 | INSTALLATION_DIRS+= binary/gzimg \ |
179 | installation/instkernel | | 183 | installation/instkernel |