1 # $NetBSD: Makefile,v 1.6 2017/02/03 17:28:58 roy Exp $ 2 3 LIB= gnuefi 4 LIBISPRIVATE?= yes 5 6 GNUEFI_USE_CREAD?= no # Read compressed kernels 7 GNUEFI_INCLUDE_NET?= yes # Netboot via TFTP, NFS 8 GNUEFI_USE_LOADFILE?= no # Generic executable loading support 9 GNUEFI_ENABLE_LS_OP?= no # Filesystems ls operation 10 11 GNUEFIDIST= ${GNUEFIDIR}/../../external/bsd/gnu-efi/dist 12 13 CPPFLAGS= -I${GNUEFIDIR} ${GNUEFICPPFLAGS} ${GNUEFIMISCCPPFLAGS} 14 15 .if defined(GNUEFI_EXTRADIR) 16 .-include "${GNUEFI_EXTRADIR}/Makefile.inc" 17 .endif 18 19 .include <bsd.own.mk> 20 21 LIBGNUEFI_ARCH?= ${MACHINE_ARCH} 22 LIBGNUEFI_CPU?= ${MACHINE_CPU} 23 24 .if ${LIBGNUEFI_ARCH} == "i386" 25 GNUEFIARCH=ia32 26 .else 27 GNUEFIARCH=${LIBGNUEFI_ARCH} 28 .endif 29 30 .if defined(LIBGNUEFI_ARCH) && !empty(LIBGNUEFI_ARCH) && \ 31 exists(${GNUEFIDIR}/arch/${LIBGNUEFI_ARCH}) 32 ARCHSUBDIR= ${LIBGNUEFI_ARCH} 33 .elif defined(MACHINE_ARCH) && !empty(MACHINE_ARCH) && \ 34 exists(${GNUEFIDIR}/arch/${MACHINE_ARCH}) 35 ARCHSUBDIR= ${MACHINE_ARCH} 36 .elif defined(MACHINE_CPU) && !empty(MACHINE_CPU) && \ 37 exists(${GNUEFIDIR}/arch/${MACHINE_CPU}) 38 ARCHSUBDIR= ${MACHINE_CPU} 39 .endif 40 41 M= ${GNUEFIDIR}/arch/${ARCHSUBDIR} 42 43 .if exists($M/Makefile.inc) 44 CPPFLAGS+= -I$M 45 .PATH.c: $M 46 .PATH.S: $M 47 .include "$M/Makefile.inc" 48 .endif 49 50 .PATH.c: ${GNUEFIDIR} ${GNUEFIDIST}/lib/${GNUEFIARCH} ${GNUEFIDIST}/lib ${GNUEFIDIST}/lib/runtime 51 .PATH.S: ${GNUEFIDIR} ${GNUEFIDIST}/lib/${GNUEFIARCH} ${GNUEFIDIST}/lib ${GNUEFIDIST}/lib/runtime 52 53 SRCS+= boxdraw.c smbios.c console.c crc.c data.c debug.c dpath.c \ 54 error.c event.c guid.c hand.c hw.c init.c lock.c \ 55 misc.c print.c sread.c str.c \ 56 rtlock.c efirtlib.c rtstr.c vm.c rtdata.c \ 57 initplat.c math.c 58 59 CWARNFLAGS.gcc+= -Wno-unused-but-set-variable 60 COPTS.boxdraw.c= -Wno-missing-field-initializers 61 COPTS.guid.c= -Wno-missing-field-initializers 62 COPTS.smbios.c= -Wno-int-to-pointer-cast 63 COPTS.dpath.c= -Wno-missing-prototypes 64 COPTS.print.c= -Wno-missing-prototypes 65 COPTS.hw.c= -Wno-shadow 66 67 .include <bsd.lib.mk> 68 69 lib${LIB}.o:: ${OBJS:O} 70 @echo building standard ${LIB} library 71 @rm -f lib${LIB}.o 72 @${LD} -r -o lib${LIB}.o `lorder ${OBJS} | tsort` 73 74 CPPFLAGS+= -Wno-pointer-sign 75