# $NetBSD: Makefile,v 1.6 2017/04/09 22:50:02 christos Exp $ S= ${.CURDIR}/../../../../.. .include "../Makefile.booters" PROGS= loader.sym loader.efi MAN.loader.sym= # no man MAN.loader.efi= # no man CPPFLAGS+= -I${IA64_STAND_DIR}/efi/libefi/ CPPFLAGS+= -I${IA64_STAND_DIR}/common/ CPPFLAGS+= -I${S} CPPFLAGS+= -DLOADER -DLIBKERN_OPTIMISE_SPACE -DHEAP_VARIABLE # Always add MI sources .PATH: ${.CURDIR}/../../common .include "${.CURDIR}/../../common/Makefile.inc" .include "${S}/conf/newvers_stand.mk" # need to do this after common stuff pulled in SRCS.loader.sym:= start.S conf.c efimd.c main.c ${SRCS} # XXX verify BINDIR?= /usr/mdec LDSCRIPT= ${.CURDIR}/ldscript.${MACHINE_ARCH} LDFLAGS= -Wl,-T${LDSCRIPT} -shared -symbolic -nostdlib loader.sym: ${LDSCRIPT} CLEANFILES+= ${OBJS} NEWVERSWHAT= "EFI boot" ${MACHINE_ARCH} loader.efi: loader.sym if [ `${OBJDUMP} -t loader.sym | fgrep '*UND*' | wc -l` != 0 ]; then \ ${OBJDUMP} -t loader.sym | fgrep '*UND*'; \ exit 1; \ fi ${OBJCOPY} -j .data -j .dynamic -j .dynstr -j .dynsym -j .hash \ -j .rela.dyn -j .reloc -j .sdata -j .text \ --target=efi-app-${MACHINE_ARCH} loader.sym ${.TARGET} @echo link finished. all: loader.efi # Pull in libefi .include "${IA64_STAND_DIR}/efi/libefi/Makefile.inc" LIBEFI= ${EFILIB} DPADD= ${LIBEFI} ${LIBLIST} # Cross dependencies between LIBEFI and LIB(SA|KERN). Need to elaborate below. LDADD= ${LIBEFI} ${LIBLIST} ${LIBEFI} ${LIBLIST} .include