Makefile revision 208538
1176349Smarcel# $FreeBSD: head/sys/boot/powerpc/uboot/Makefile 208538 2010-05-25 15:21:39Z raj $
2176349Smarcel
3176490SmarcelPROG=		ubldr
4176349SmarcelNEWVERSWHAT=	"U-Boot loader" ${MACHINE_ARCH}
5176349SmarcelBINDIR?=	/boot
6176349SmarcelINSTALLFLAGS=	-b
7176490SmarcelNO_MAN=
8176349Smarcel
9176349Smarcel# Architecture-specific loader code
10182724SrajSRCS=		start.S conf.c vers.c
11176349Smarcel
12204315SrajLOADER_DISK_SUPPORT?=	yes
13204315SrajLOADER_UFS_SUPPORT?=	yes
14176349SmarcelLOADER_CD9660_SUPPORT?=	no
15176349SmarcelLOADER_EXT2FS_SUPPORT?=	no
16176349SmarcelLOADER_NET_SUPPORT?=	yes
17176349SmarcelLOADER_NFS_SUPPORT?=	yes
18176349SmarcelLOADER_TFTP_SUPPORT?=	no
19176349SmarcelLOADER_GZIP_SUPPORT?=	no
20176349SmarcelLOADER_BZIP2_SUPPORT?=	no
21208538Sraj.if defined(WITH_FDT)
22208538SrajLOADER_FDT_SUPPORT=	yes
23208538Sraj.else
24208538SrajLOADER_FDT_SUPPORT=	no
25208538Sraj.endif
26176349Smarcel
27176349Smarcel.if ${LOADER_DISK_SUPPORT} == "yes"
28176349SmarcelCFLAGS+=	-DLOADER_DISK_SUPPORT
29176349Smarcel.endif
30176349Smarcel.if ${LOADER_UFS_SUPPORT} == "yes"
31176349SmarcelCFLAGS+=	-DLOADER_UFS_SUPPORT
32176349Smarcel.endif
33176349Smarcel.if ${LOADER_CD9660_SUPPORT} == "yes"
34176349SmarcelCFLAGS+=	-DLOADER_CD9660_SUPPORT
35176349Smarcel.endif
36176349Smarcel.if ${LOADER_EXT2FS_SUPPORT} == "yes"
37176349SmarcelCFLAGS+=	-DLOADER_EXT2FS_SUPPORT
38176349Smarcel.endif
39176349Smarcel.if ${LOADER_GZIP_SUPPORT} == "yes"
40176349SmarcelCFLAGS+=	-DLOADER_GZIP_SUPPORT
41176349Smarcel.endif
42176349Smarcel.if ${LOADER_BZIP2_SUPPORT} == "yes"
43176349SmarcelCFLAGS+=	-DLOADER_BZIP2_SUPPORT
44176349Smarcel.endif
45176349Smarcel.if ${LOADER_NET_SUPPORT} == "yes"
46176349SmarcelCFLAGS+=	-DLOADER_NET_SUPPORT
47176349Smarcel.endif
48176349Smarcel.if ${LOADER_NFS_SUPPORT} == "yes"
49176349SmarcelCFLAGS+=	-DLOADER_NFS_SUPPORT
50176349Smarcel.endif
51176349Smarcel.if ${LOADER_TFTP_SUPPORT} == "yes"
52176349SmarcelCFLAGS+=	-DLOADER_TFTP_SUPPORT
53176349Smarcel.endif
54208538Sraj.if ${LOADER_FDT_SUPPORT} == "yes"
55208538SrajCFLAGS+=	-I${.CURDIR}/../../fdt
56208538SrajCFLAGS+=	-I${.OBJDIR}/../../fdt
57208538SrajCFLAGS+=	-DLOADER_FDT_SUPPORT
58208538SrajLIBFDT=		${.OBJDIR}/../../fdt/libfdt.a
59208538Sraj.endif
60176349Smarcel
61176349Smarcel.if !defined(NO_FORTH)
62176349Smarcel# Enable BootForth
63176349SmarcelBOOT_FORTH=	yes
64176349SmarcelCFLAGS+=	-DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/powerpc
65176349SmarcelLIBFICL=	${.OBJDIR}/../../ficl/libficl.a
66176349Smarcel.endif
67176349Smarcel
68176349Smarcel# Always add MI sources
69176349Smarcel.PATH:		${.CURDIR}/../../common
70176349Smarcel.include	"${.CURDIR}/../../common/Makefile.inc"
71176349SmarcelCFLAGS+=	-I${.CURDIR}/../../common
72176349SmarcelCFLAGS+=	-I.
73176349Smarcel
74176490SmarcelCLEANFILES+=	vers.c ${PROG}.help
75176349Smarcel
76176349SmarcelCFLAGS+=	-ffreestanding
77176349Smarcel
78176349SmarcelLDFLAGS=	-nostdlib -static -T ${.CURDIR}/ldscript.powerpc
79176349Smarcel
80176349Smarcel# Pull in common loader code
81176349Smarcel.PATH:		${.CURDIR}/../../uboot/common
82176349Smarcel.include	"${.CURDIR}/../../uboot/common/Makefile.inc"
83176349SmarcelCFLAGS+=	-I${.CURDIR}/../../uboot/common
84176349Smarcel
85176349Smarcel# U-Boot standalone support library
86176349SmarcelLIBUBOOT=	${.OBJDIR}/../../uboot/lib/libuboot.a
87176349SmarcelCFLAGS+=	-I${.CURDIR}/../../uboot/lib
88176349SmarcelCFLAGS+=	-I${.OBJDIR}/../../uboot/lib
89176349Smarcel
90176349Smarcel# where to get libstand from
91176349SmarcelCFLAGS+=	-I${.CURDIR}/../../../../lib/libstand/
92176349Smarcel
93208538SrajDPADD=		${LIBFICL} ${LIBUBOOT} ${LIBFDT} ${LIBSTAND}
94208538SrajLDADD=		${LIBFICL} ${LIBUBOOT} ${LIBFDT} -lstand
95176349Smarcel
96176349Smarcelvers.c:	${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
97176349Smarcel	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
98176349Smarcel
99204315Srajloader.help: help.common help.uboot
100176349Smarcel	cat ${.ALLSRC} | \
101176349Smarcel	    awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
102176349Smarcel
103176349Smarcel.PATH: ${.CURDIR}/../../forth
104204315SrajFILES=	loader.help
105176349Smarcel
106176349Smarcel.include <bsd.prog.mk>
107