Makefile revision 1.23
1#	$NetBSD: Makefile,v 1.23 2013/01/13 14:43:23 mlelstv Exp $
2
3.include <bsd.own.mk>
4.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
5
6.include <bsd.kernobj.mk>
7
8#
9# `make' or `make all' builds all gzimg files defined in ${TARGETS}.
10# `make _KERNELNAME_' builds all gzimg files for specified kernels.
11#
12
13
14
15#	TARGETS is a list of:
16#		KERNEL_name	GZBOOT_name	GZIMG_name
17#		RELOC_ADDR	WHICH_kernel
18#	
19.if ${MACHINE_ARCH} == "arm"
20# Little endian platforms.
21TARGETS=	ADI_BRH		ADI_BRH		ADI_BRH_sd0	\
22		0x00140000	netbsd-sd0			\
23								\
24		ADI_BRH		ADI_BRH		ADI_BRH_wd0	\
25		0x00140000	netbsd-wd0			\
26								\
27		CP3100		IQ80321		CP3100_sd0	\
28		0xf0080000	netbsd-sd0			\
29								\
30		CP3100		IQ80321		CP3100_wd0	\
31		0xf0080000	netbsd-wd0			\
32								\
33		GEMINI		GEMINI		GEMINI		\
34		0x01600000	netbsd				\
35								\
36		IQ80310		IQ80310		IQ80310_sd0	\
37		0x00080000	netbsd-sd0			\
38								\
39		IQ80310		IQ80310		IQ80310_wd0	\
40		0x00080000	netbsd-wd0			\
41								\
42		IQ80321		IQ80321		IQ80321_sd0	\
43		0xf0080000	netbsd-sd0			\
44								\
45		IQ80321		IQ80321		IQ80321_wd0	\
46		0xf0080000	netbsd-wd0			\
47								\
48		TEAMASA_NPWR	IQ80310		TEAMASA_NPWR_sd0 \
49		0x00080000	netbsd-sd0			\
50								\
51		TS7200		TS7200		TS7200_wd0	\
52		0x60660000	netbsd-wd0			\
53								\
54		SMDK2800	SMDK2800	SMDK2800	\
55		0x00000000	netbsd
56.else
57# Big endian platforms.
58TARGETS=	ADI_BRH		ADI_BRH		ADI_BRH_sd0	\
59		0x00140000	netbsd-sd0			\
60								\
61		ADI_BRH		ADI_BRH		ADI_BRH_wd0	\
62		0x00140000	netbsd-wd0
63.endif
64
65ALL_KERNELS?= "+"
66.for K G I R W in ${TARGETS}				# {
67.for configsel in ${ALL_KERNELS}			# {
68.if ${configsel} == "+" || ${configsel} == ${K}
69
70GZB${G}=	${DESTDIR}/usr/mdec/gzboot_${G}_${R}.bin
71
72GZIMGS+=	gzimg_${I}_flash_${R}.gz
73
74gzimg_${I}_flash_${R}: .NOTMAIN ${GZB${G}} ${KERNOBJDIR}/${K}/${W}.bin
75	@echo "Populating ${.TARGET}"
76	-rm -f ${.TARGET}.kern.gz
77	gzip -9nc ${KERNOBJDIR}/${K}/${W}.bin > ${.TARGET}.kern.gz
78	${TOOL_CAT} ${GZB${G}} ${.TARGET}.kern.gz > ${.TARGET}
79
80gzimg_${I}_flash_${R}.gz: .NOTMAIN gzimg_${I}_flash_${R}
81	-rm -f ${.TARGET}
82	gzip -9nc ${.ALLSRC} > ${.TARGET}
83
84CLEANFILES+=	gzimg_${I}_flash_${R}.kern gzimg_${I}_flash_${R}.kern.gz \
85		gzimg_${I}_flash_${R}
86
87.if empty(GZKERNELS:M${K})
88GZKERNELS+=	$K
89.endif
90KZ${K}+=	gzimg_${I}_flash_${R}.gz
91
92.endif
93.endfor							# }
94.endfor							# }
95
96.for K in ${GZKERNELS}
97${K}: .PHONY ${KZ${K}}
98.endfor
99
100CLEANFILES+=	${GZIMGS}
101
102
103realall: ${GZIMGS}
104
105release: check_RELEASEDIR .WAIT ${GZIMGS}
106.for img in ${GZIMGS}
107	${RELEASE_INSTALL} ${img} ${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/gzimg
108.endfor
109
110.include <bsd.prog.mk>
111