1176349Smarcel# $FreeBSD: releng/10.2/sys/boot/powerpc/uboot/Makefile 278604 2015-02-11 23:05:58Z ian $
2176349Smarcel
3209125Sraj.include <bsd.own.mk>
4209125Sraj
5176490SmarcelPROG=		ubldr
6176349SmarcelNEWVERSWHAT=	"U-Boot loader" ${MACHINE_ARCH}
7176349SmarcelBINDIR?=	/boot
8176349SmarcelINSTALLFLAGS=	-b
9276486SngieMAN=
10176349Smarcel
11176349Smarcel# Architecture-specific loader code
12182724SrajSRCS=		start.S conf.c vers.c
13209920SnwhitehornSRCS+=		ucmpdi2.c
14176349Smarcel
15240277Sae.if !defined(LOADER_NO_DISK_SUPPORT)
16204315SrajLOADER_DISK_SUPPORT?=	yes
17240277Sae.else
18240277SaeLOADER_DISK_SUPPORT=	no
19240277Sae.endif
20204315SrajLOADER_UFS_SUPPORT?=	yes
21176349SmarcelLOADER_CD9660_SUPPORT?=	no
22176349SmarcelLOADER_EXT2FS_SUPPORT?=	no
23176349SmarcelLOADER_NET_SUPPORT?=	yes
24176349SmarcelLOADER_NFS_SUPPORT?=	yes
25176349SmarcelLOADER_TFTP_SUPPORT?=	no
26176349SmarcelLOADER_GZIP_SUPPORT?=	no
27176349SmarcelLOADER_BZIP2_SUPPORT?=	no
28209125Sraj.if ${MK_FDT} != "no"
29208538SrajLOADER_FDT_SUPPORT=	yes
30208538Sraj.else
31208538SrajLOADER_FDT_SUPPORT=	no
32208538Sraj.endif
33176349Smarcel
34176349Smarcel.if ${LOADER_DISK_SUPPORT} == "yes"
35176349SmarcelCFLAGS+=	-DLOADER_DISK_SUPPORT
36176349Smarcel.endif
37176349Smarcel.if ${LOADER_UFS_SUPPORT} == "yes"
38176349SmarcelCFLAGS+=	-DLOADER_UFS_SUPPORT
39176349Smarcel.endif
40176349Smarcel.if ${LOADER_CD9660_SUPPORT} == "yes"
41176349SmarcelCFLAGS+=	-DLOADER_CD9660_SUPPORT
42176349Smarcel.endif
43176349Smarcel.if ${LOADER_EXT2FS_SUPPORT} == "yes"
44176349SmarcelCFLAGS+=	-DLOADER_EXT2FS_SUPPORT
45176349Smarcel.endif
46176349Smarcel.if ${LOADER_GZIP_SUPPORT} == "yes"
47176349SmarcelCFLAGS+=	-DLOADER_GZIP_SUPPORT
48176349Smarcel.endif
49176349Smarcel.if ${LOADER_BZIP2_SUPPORT} == "yes"
50176349SmarcelCFLAGS+=	-DLOADER_BZIP2_SUPPORT
51176349Smarcel.endif
52176349Smarcel.if ${LOADER_NET_SUPPORT} == "yes"
53176349SmarcelCFLAGS+=	-DLOADER_NET_SUPPORT
54176349Smarcel.endif
55176349Smarcel.if ${LOADER_NFS_SUPPORT} == "yes"
56176349SmarcelCFLAGS+=	-DLOADER_NFS_SUPPORT
57176349Smarcel.endif
58176349Smarcel.if ${LOADER_TFTP_SUPPORT} == "yes"
59176349SmarcelCFLAGS+=	-DLOADER_TFTP_SUPPORT
60176349Smarcel.endif
61208538Sraj.if ${LOADER_FDT_SUPPORT} == "yes"
62208538SrajCFLAGS+=	-I${.CURDIR}/../../fdt
63208538SrajCFLAGS+=	-I${.OBJDIR}/../../fdt
64208538SrajCFLAGS+=	-DLOADER_FDT_SUPPORT
65275763SandrewLIBUBOOT_FDT=	${.OBJDIR}/../../uboot/fdt/libuboot_fdt.a
66208538SrajLIBFDT=		${.OBJDIR}/../../fdt/libfdt.a
67208538Sraj.endif
68176349Smarcel
69278604Sian.if ${MK_FORTH} != "no"
70176349Smarcel# Enable BootForth
71176349SmarcelBOOT_FORTH=	yes
72176349SmarcelCFLAGS+=	-DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/powerpc
73176349SmarcelLIBFICL=	${.OBJDIR}/../../ficl/libficl.a
74176349Smarcel.endif
75176349Smarcel
76176349Smarcel# Always add MI sources
77209920Snwhitehorn.PATH:		${.CURDIR}/../../common ${.CURDIR}/../../../libkern
78176349Smarcel.include	"${.CURDIR}/../../common/Makefile.inc"
79209920SnwhitehornCFLAGS+=	-I${.CURDIR}/../../common -I${.CURDIR}/../../..
80176349SmarcelCFLAGS+=	-I.
81176349Smarcel
82176490SmarcelCLEANFILES+=	vers.c ${PROG}.help
83176349Smarcel
84176349SmarcelCFLAGS+=	-ffreestanding
85176349Smarcel
86176349SmarcelLDFLAGS=	-nostdlib -static -T ${.CURDIR}/ldscript.powerpc
87176349Smarcel
88176349Smarcel# Pull in common loader code
89176349Smarcel.PATH:		${.CURDIR}/../../uboot/common
90176349Smarcel.include	"${.CURDIR}/../../uboot/common/Makefile.inc"
91176349SmarcelCFLAGS+=	-I${.CURDIR}/../../uboot/common
92176349Smarcel
93176349Smarcel# U-Boot standalone support library
94176349SmarcelLIBUBOOT=	${.OBJDIR}/../../uboot/lib/libuboot.a
95176349SmarcelCFLAGS+=	-I${.CURDIR}/../../uboot/lib
96176349SmarcelCFLAGS+=	-I${.OBJDIR}/../../uboot/lib
97176349Smarcel
98176349Smarcel# where to get libstand from
99271130SemasteLIBSTAND=	${.OBJDIR}/../../libstand32/libstand.a
100176349SmarcelCFLAGS+=	-I${.CURDIR}/../../../../lib/libstand/
101176349Smarcel
102275763SandrewDPADD=		${LIBFICL} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSTAND}
103275763SandrewLDADD=		${LIBFICL} ${LIBUBOOT} ${LIBFDT} ${LIBUBOOT_FDT} ${LIBSTAND}
104176349Smarcel
105176349Smarcelvers.c:	${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
106176349Smarcel	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
107176349Smarcel
108246647Skientzleloader.help: help.common help.uboot ${.CURDIR}/../../fdt/help.fdt
109176349Smarcel	cat ${.ALLSRC} | \
110176349Smarcel	    awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
111176349Smarcel
112176349Smarcel.PATH: ${.CURDIR}/../../forth
113204315SrajFILES=	loader.help
114176349Smarcel
115176349Smarcel.include <bsd.prog.mk>
116