1105197Ssam# $FreeBSD: releng/10.3/sys/boot/ia64/efi/Makefile 294460 2016-01-20 21:22:06Z emaste $
2105197Ssam
3105197SsamMAN=
4139823Simp
5105197Ssam.include <bsd.own.mk>
6105197SsamMK_SSP=		no
7105197Ssam
8105197SsamPROG=		loader.sym
9105197SsamINTERNALPROG=
10105197SsamSRCS=		conf.c efimd.c main.c pal.S start.S vers.c
11105197Ssam
12105197Ssam.PATH: ${.CURDIR}/../../../${MACHINE_CPUARCH}/${MACHINE_CPUARCH}
13105197Ssam
14105197SsamCFLAGS+=	-I${.CURDIR}/../common
15105197SsamCFLAGS+=	-I${.CURDIR}/../../common
16105197SsamCFLAGS+=	-I${.CURDIR}/../../efi/include
17105197SsamCFLAGS+=	-I${.CURDIR}/../../efi/include/${MACHINE_CPUARCH}
18105197SsamCFLAGS+=	-I${.CURDIR}/../../..
19105197SsamCFLAGS+=	-I${.CURDIR}/../../../../lib/libstand
20105197Ssam
21105197SsamLDSCRIPT=	${.CURDIR}/ldscript.${MACHINE_CPUARCH}
22105197SsamLDFLAGS=	-Wl,-T${LDSCRIPT} -shared -symbolic
23105197Ssam
24105197Ssam${PROG}: ${LDSCRIPT}
25105197Ssam
26105197SsamNEWVERSWHAT=	"EFI boot" ${MACHINE_CPUARCH}
27105197Ssam
28105197Ssamvers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
29105197Ssam	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
30105197Ssam
31105197SsamOBJCOPY?=	objcopy
32105197SsamOBJDUMP?=	objdump
33105197Ssam
34105197SsamFILES=		loader.efi
35105197SsamFILESMODE_loader.efi= ${BINMODE}
36105197Ssam
37105197Ssamloader.efi: loader.sym
38105197Ssam	if [ `${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*' | wc -l` != 0 ]; then \
39105197Ssam		${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*'; \
40105197Ssam		exit 1; \
41105197Ssam	fi
42105197Ssam	${OBJCOPY} -j .data -j .dynamic -j .dynstr -j .dynsym -j .hash \
43105197Ssam	    -j .rela.dyn -j .reloc -j .sdata -j .text \
44105197Ssam	    --target=efi-app-${MACHINE_CPUARCH} ${.ALLSRC} ${.TARGET}
45105197Ssam
46105197SsamCLEANFILES=	vers.c loader.efi
47105197Ssam
48105197SsamLIBIA64=	${.OBJDIR}/../common/libia64.a
49105197SsamLIBEFI=		${.OBJDIR}/../../efi/libefi/libefi.a
50105197Ssam.if ${MK_FORTH} != "no"
51105197SsamLIBFICL=        ${.OBJDIR}/../../ficl/libficl.a
52105197Ssam.endif
53105197Ssam
54105197SsamDPADD=		${LIBIA64} ${LIBFICL} ${LIBEFI} ${LIBSTAND}
55105197SsamLDADD=		-Wl,--whole-archive ${LIBIA64} -Wl,--no-whole-archive \
56		    ${LIBFICL} ${LIBEFI} -lstand
57
58.include <bsd.prog.mk>
59