Date: Fri, 15 Jan 2016 02:16:04 +0000 From: Steven Hartland <steven.hartland@multiplay.co.uk> To: Oliver Pinter <oliver.pinter@hardenedbsd.org>, Ed Maste <emaste@freebsd.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: Re: svn commit: r293297 - in stable/10/sys/boot/efi: . boot1 loader loader/arch loader/arch/amd64 Message-ID: <56985664.50702@multiplay.co.uk> In-Reply-To: <CAPQ4fft3iYc8974b6pa-QHk-bc1HQdobbYY9FxoPK5jLe_VDyg@mail.gmail.com> References: <201601070222.u072MjTs098126@repo.freebsd.org> <CAPQ4fft3iYc8974b6pa-QHk-bc1HQdobbYY9FxoPK5jLe_VDyg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is fixed by 294064 MFC of r274503 On 15/01/2016 01:02, Oliver Pinter wrote: > On 1/7/16, Ed Maste <emaste@freebsd.org> wrote: >> Author: emaste >> Date: Thu Jan 7 02:22:45 2016 >> New Revision: 293297 >> URL: https://svnweb.freebsd.org/changeset/base/293297 >> >> Log: >> MFC r280950: Move the efi loaders to be under sys/boot/efi >> >> In HEAD this was done to support UEFI on arm64. Merging to stable/10 to >> facilitate the merging of later UEFI changes. >> >> Added: >> stable/10/sys/boot/efi/boot1/ >> stable/10/sys/boot/efi/boot1/Makefile (contents, props changed) >> stable/10/sys/boot/efi/boot1/Makefile.fat (contents, props changed) >> stable/10/sys/boot/efi/boot1/boot1.c (contents, props changed) >> stable/10/sys/boot/efi/boot1/fat.tmpl.bz2.uu (contents, props changed) >> stable/10/sys/boot/efi/boot1/generate-fat.sh (contents, props changed) >> stable/10/sys/boot/efi/loader/ >> stable/10/sys/boot/efi/loader/Makefile (contents, props changed) >> stable/10/sys/boot/efi/loader/arch/ >> stable/10/sys/boot/efi/loader/arch/amd64/ >> stable/10/sys/boot/efi/loader/arch/amd64/Makefile.inc (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/amd64_tramp.S (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/elf64_freebsd.c (contents, >> props changed) >> stable/10/sys/boot/efi/loader/arch/amd64/framebuffer.c (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/framebuffer.h (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/ldscript.amd64 (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/reloc.c (contents, props >> changed) >> stable/10/sys/boot/efi/loader/arch/amd64/start.S (contents, props >> changed) >> stable/10/sys/boot/efi/loader/autoload.c (contents, props changed) >> stable/10/sys/boot/efi/loader/bootinfo.c (contents, props changed) >> stable/10/sys/boot/efi/loader/conf.c (contents, props changed) >> stable/10/sys/boot/efi/loader/copy.c (contents, props changed) >> stable/10/sys/boot/efi/loader/devicename.c (contents, props changed) >> stable/10/sys/boot/efi/loader/loader_efi.h (contents, props changed) >> stable/10/sys/boot/efi/loader/main.c (contents, props changed) >> stable/10/sys/boot/efi/loader/version (contents, props changed) >> Modified: >> stable/10/sys/boot/efi/Makefile >> stable/10/sys/boot/efi/Makefile.inc >> >> Modified: stable/10/sys/boot/efi/Makefile >> ============================================================================== >> --- stable/10/sys/boot/efi/Makefile Thu Jan 7 02:06:14 2016 (r293296) >> +++ stable/10/sys/boot/efi/Makefile Thu Jan 7 02:22:45 2016 (r293297) >> @@ -2,4 +2,8 @@ >> >> SUBDIR= libefi >> >> +.if ${MACHINE_CPUARCH} == "amd64" >> +SUBDIR+= loader boot1 >> +.endif >> + >> .include <bsd.subdir.mk> >> >> Modified: stable/10/sys/boot/efi/Makefile.inc >> ============================================================================== >> --- stable/10/sys/boot/efi/Makefile.inc Thu Jan 7 02:06:14 2016 (r293296) >> +++ stable/10/sys/boot/efi/Makefile.inc Thu Jan 7 02:22:45 2016 (r293297) >> @@ -7,7 +7,10 @@ CFLAGS+= -march=i386 >> .endif >> >> # Options used when building app-specific efi components >> +# See conf/kern.mk for the correct set of these >> CFLAGS+= -ffreestanding -fshort-wchar -Wformat >> +CFLAGS+= -mno-red-zone >> +CFLAGS+= -mno-mmx -mno-sse -mno-aes -mno-avx -msoft-float >> LDFLAGS+= -nostdlib >> >> .include "../Makefile.inc" >> >> Added: stable/10/sys/boot/efi/boot1/Makefile >> ============================================================================== >> --- /dev/null 00:00:00 1970 (empty, because file is newly added) >> +++ stable/10/sys/boot/efi/boot1/Makefile Thu Jan 7 02:22:45 >> 2016 (r293297) >> @@ -0,0 +1,84 @@ >> +# $FreeBSD$ >> + >> +MAN= >> + >> +.include <bsd.own.mk> >> + >> +# In-tree GCC does not support __attribute__((ms_abi)). >> +.if ${COMPILER_TYPE} != "gcc" >> + >> +MK_SSP= no >> + >> +PROG= loader.sym >> +INTERNALPROG= >> + >> +# architecture-specific loader code >> +SRCS= boot1.c reloc.c start.S >> + >> +CFLAGS+= -fPIC >> +CFLAGS+= -I. >> +CFLAGS+= -I${.CURDIR}/../include >> +CFLAGS+= -I${.CURDIR}/../include/${MACHINE_CPUARCH} >> +CFLAGS+= -I${.CURDIR}/../../../contrib/dev/acpica/include >> +CFLAGS+= -I${.CURDIR}/../../.. >> + >> +# Always add MI sources and REGULAR efi loader bits >> +.PATH: ${.CURDIR}/../loader/arch/amd64 ${.CURDIR}/../../common >> +CFLAGS+= -I${.CURDIR}/../../common >> + >> +FILES= boot1.efi boot1.efifat >> +FILESMODE_boot1.efi= ${BINMODE} >> + >> +LDSCRIPT= ${.CURDIR}/../loader/arch/${MACHINE_CPUARCH}/ldscript.${MACHINE_CPUARCH} >> +LDFLAGS= -Wl,-T${LDSCRIPT} -Wl,-Bsymbolic -shared -Wl,-znocombreloc >> + >> +${PROG}: ${LDSCRIPT} >> + >> +OBJCOPY?= objcopy >> +OBJDUMP?= objdump >> + >> +.if ${MACHINE_CPUARCH} == "amd64" >> +EFI_TARGET= efi-app-x86_64 >> +.elif ${MACHINE_CPUARCH} == "i386" >> +EFI_TARGET= efi-app-ia32 >> +.endif >> + >> +boot1.efi: loader.sym >> + if [ `${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*' | wc -l` != 0 ]; then \ >> + ${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*'; \ > New build warning on this ^ lines: > > sh: -t: not found > /usr/obj/jenkins/workspace/HardenedBSD-stable-10-STABLE-master-amd64/sys/boot/efi/boot1 > 66+1 records in > 66+1 records out > 33811 bytes transferred in 0.000617 secs (54832354 bytes/sec) > > See the jenkins log: > http://jenkins.hardenedbsd.org:8180/jenkins/job/HardenedBSD-stable-10-STABLE-master-amd64/lastSuccessfulBuild/consoleFull > > Possible solution to add objdump to bootstrap utils. > > >> + exit 1; \ >> + fi >> + ${OBJCOPY} -j .text -j .sdata -j .data \ >> + -j .dynamic -j .dynsym -j .rel.dyn \ >> + -j .rela.dyn -j .reloc -j .eh_frame -j set_Xcommand_set \ >> + --output-target=${EFI_TARGET} ${.ALLSRC} ${.TARGET} >> + >> +boot1.o: ${.CURDIR}/../../common/ufsread.c >> + >> +# The following inserts out objects into a template FAT file system >> +# created by generate-fat.sh >> + >> +.include "${.CURDIR}/Makefile.fat" >> + >> +boot1.efifat: boot1.efi >> + echo ${.OBJDIR} >> + uudecode ${.CURDIR}/fat.tmpl.bz2.uu >> + mv fat.tmpl.bz2 ${.TARGET}.bz2 >> + bzip2 -f -d ${.TARGET}.bz2 >> + dd if=boot1.efi of=${.TARGET} seek=${BOOT1_OFFSET} conv=notrunc >> + >> +CLEANFILES= boot1.efifat >> + >> +.endif # ${COMPILER_TYPE} != "gcc" >> + >> +.include <bsd.prog.mk> >> + >> +beforedepend ${OBJS}: machine x86 >> + >> +CLEANFILES+= machine x86 boot1.efi >> + >> +machine: >> + ln -sf ${.CURDIR}/../../../amd64/include machine >> + >> +x86: >> + ln -sf ${.CURDIR}/../../../x86/include x86 >> >> Added: stable/10/sys/boot/efi/boot1/Makefile.fat >> ============================================================================== >> --- /dev/null 00:00:00 1970 (empty, because file is newly added) >> +++ stable/10/sys/boot/efi/boot1/Makefile.fat Thu Jan 7 02:22:45 >> 2016 (r293297) >> @@ -0,0 +1,3 @@ >> +# This file autogenerated by generate-fat.sh - DO NOT EDIT >> +# $FreeBSD$ >> +BOOT1_OFFSET=0x2d >>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56985664.50702>