1214501Srpaulo 2214501SrpauloLOADER_DISK_SUPPORT?= yes 3214501SrpauloLOADER_CD9660_SUPPORT?= yes 4214501SrpauloLOADER_MSDOS_SUPPORT?= no 5252726SrpauloLOADER_EXT2FS_SUPPORT?= yes 6252726SrpauloLOADER_UFS_SUPPORT?= yes 7214501SrpauloLOADER_ZFS_SUPPORT?= yes 8214501SrpauloLOADER_NET_SUPPORT?= no 9214501SrpauloLOADER_NFS_SUPPORT?= no 10214501SrpauloLOADER_TFTP_SUPPORT?= no 11214501SrpauloLOADER_GZIP_SUPPORT?= no 12214501SrpauloLOADER_BZIP2_SUPPORT?= no 13214501Srpaulo 14214501Srpaulo.include <bsd.init.mk> 15214501Srpaulo 16214501SrpauloPROG= loader.kboot 17214501SrpauloNEWVERSWHAT= "kboot loader" ${MACHINE_ARCH} 18214501SrpauloINSTALLFLAGS= -b 19214501Srpaulo 20214501Srpaulo# Architecture-specific loader code 21214501SrpauloSRCS= \ 22214501Srpaulo bootinfo.c \ 23214501Srpaulo conf.c \ 24252726Srpaulo hostcons.c \ 25214501Srpaulo hostdisk.c \ 26214501Srpaulo hostfs.c \ 27214501Srpaulo init.c \ 28214501Srpaulo kbootfdt.c \ 29214501Srpaulo main.c \ 30214501Srpaulo seg.c \ 31214501Srpaulo util.c \ 32214501Srpaulo vers.c 33214501Srpaulo 34214501Srpaulo.if ${MK_LOADER_ZFS} != "no" 35214501SrpauloCFLAGS+= -I${ZFSSRC} 36214501SrpauloCFLAGS+= -I${SYSDIR}/contrib/openzfs/include 37214501SrpauloCFLAGS+= -I${SYSDIR}/contrib/openzfs/include/os/freebsd/zfs 38214501SrpauloHAVE_ZFS=yes 39214501Srpaulo.endif 40214501Srpaulo 41214501SrpauloHELP_FILENAME= loader.help.kboot 42214501Srpaulo 43214501Srpaulo.include "${BOOTSRC}/fdt.mk" 44214501Srpaulo 45214501Srpaulo# We share bootinfo.c with efi 46214501Srpaulo.PATH: ${BOOTSRC}/efi/loader 47214501Srpaulo 48214501Srpaulo# Note: Since we're producing a userland binary, we key off of MACHINE_ARCH 49214501Srpaulo# instead of the more normal MACHINE since the changes between different flavors 50214501Srpaulo# of MACHINE_ARCH are large enough in Linux that it's easier that way. 51214501Srpaulo.PATH: ${.CURDIR}/arch/${MACHINE_ARCH} 52214501Srpaulo.include "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc" 53214501Srpaulo 54214501Srpaulo# Bring in our ldscript 55214501SrpauloLDFLAGS= -nostdlib -static -T ${.CURDIR}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}.ldscript 56214501Srpaulo 57214501Srpaulo# Always add MI sources 58214501Srpaulo.include "${BOOTSRC}/loader.mk" 59214501SrpauloCFLAGS+= -I${.CURDIR} -I${.CURDIR}/arch/${MACHINE_ARCH} 60214501Srpaulo 61214501SrpauloCFLAGS+= -Wall 62214501Srpaulo 63214501SrpauloDPADD= ${LDR_INTERP} ${LIBOFW} ${LIBSAFDT} ${LIBSA} ${LIBKBOOT} 64214501SrpauloLDADD= ${LDR_INTERP} ${LIBOFW} ${LIBSAFDT} ${LIBSA} ${LIBKBOOT} 65214501Srpaulo 66214501Srpaulo# Add our own lua bindings until they are universal 67214501Srpaulo.if ${LOADER_INTERP} == "lua" 68214501SrpauloSRCS+= \ 69252726Srpaulo lua_bindings.c 70252726SrpauloCFLAGS.lua_bindings.c+= -I${FLUALIB}/libhash 71214501Srpaulo.endif 72214501Srpaulo 73214501Srpaulo.include <bsd.prog.mk> 74214501Srpaulo