Makefile revision 329099
1#-
2# Copyright (c) 2013-2014 Robert N. M. Watson
3# All rights reserved.
4#
5# This software was developed by SRI International and the University of
6# Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237)
7# ("CTSRD"), as part of the DARPA CRASH research programme.
8#
9# Redistribution and use in source and binary forms, with or without
10# modification, are permitted provided that the following conditions
11# are met:
12# 1. Redistributions of source code must retain the above copyright
13#    notice, this list of conditions and the following disclaimer.
14# 2. Redistributions in binary form must reproduce the above copyright
15#    notice, this list of conditions and the following disclaimer in the
16#    documentation and/or other materials provided with the distribution.
17#
18# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28# SUCH DAMAGE.
29#
30# $FreeBSD: stable/11/sys/boot/mips/beri/boot2/Makefile 329099 2018-02-10 04:37:44Z kevans $
31
32BINDIR?=	/boot
33INSTALLFLAGS=	-b
34
35LOADERS=	flashboot jtagboot
36FILES=		${LOADERS} ${LOADERS:S/$/.md5/}
37
38SRCS=		relocate.S		\
39		start.S			\
40		boot2.c			\
41		altera_jtag_uart.c	\
42		cfi.c			\
43		sdcard.c
44
45MAN=
46
47AFLAGS=		-G0
48
49CFLAGS=		-ffreestanding			\
50		-I${.CURDIR}			\
51		-I${.CURDIR}/../../../common	\
52		-I${.CURDIR}/../../../..	\
53		-D_KERNEL			\
54		-Wall				\
55		-G0 				\
56		-fno-pic -mno-abicalls		\
57		-msoft-float			\
58		-g
59
60# where to get libstand from
61CFLAGS+=	-I${.CURDIR}/../../../../../lib/libstand/
62LIBSTAND=	${.OBJDIR}/../../../../../lib/libstand/libstand.a
63
64LDFLAGS=	-nostdlib			\
65		-static				\
66		-N				\
67		-G0				\
68		-L${.CURDIR}
69
70.PATH:		${.CURDIR}/../common
71CFLAGS+=	-I${.CURDIR}/../common
72
73flashboot.elf: relocate.o start.o boot2.o altera_jtag_uart.o cfi.o sdcard.o
74	${CC} ${LDFLAGS} -T ${.CURDIR}/flashboot.ldscript -o ${.TARGET}	\
75	    ${.ALLSRC} ${LIBSTAND}
76flashboot: flashboot.elf
77	${OBJCOPY} -S -O binary ${.TARGET}.elf ${.TARGET}
78flashboot.md5: flashboot
79	md5 flashboot > flashboot.md5
80
81jtagboot: start.o boot2.o altera_jtag_uart.o cfi.o sdcard.o
82	${CC} ${LDFLAGS} -T ${.CURDIR}/jtagboot.ldscript -o ${.TARGET}	\
83	    ${.ALLSRC} ${LIBSTAND}
84jtagboot.md5: jtagboot
85	md5 jtagboot > jtagboot.md5
86
87CLEANFILES+=	flashboot.elf
88
89.include <bsd.prog.mk>
90