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