svn commit: r264319 - in head/sys/boot/amd64: . efi

Ed Maste emaste at FreeBSD.org
Thu Apr 10 16:53:22 UTC 2014


Author: emaste
Date: Thu Apr 10 16:53:21 2014
New Revision: 264319
URL: http://svnweb.freebsd.org/changeset/base/264319

Log:
  Fix EFI loader object tree creation on 9.x build hosts
  
  Previously ${COMPILER_TYPE} was checked in sys/boot/amd64, and the efi
  subdirectory was skipped altogether for gcc (since GCC does not support
  a required attribute).  However, during the early buildworld stages
  ${COMPILER_TYPE} is the existing system compiler (i.e., gcc on 9.x build
  hosts), not the compiler that will eventually be used.  This caused
  "make obj" to skip the efi subdirectory.  In later build stages
  ${COMPILER_TYPE} is "clang", and then the efi loader would attempt to
  build in the source directory.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/sys/boot/amd64/Makefile
  head/sys/boot/amd64/efi/Makefile

Modified: head/sys/boot/amd64/Makefile
==============================================================================
--- head/sys/boot/amd64/Makefile	Thu Apr 10 16:00:33 2014	(r264318)
+++ head/sys/boot/amd64/Makefile	Thu Apr 10 16:53:21 2014	(r264319)
@@ -2,10 +2,6 @@
 
 .include <bsd.own.mk>
 
-# In-tree GCC does not support __attribute__((ms_abi)), required by the
-# UEFI loader.
-.if ${COMPILER_TYPE} != "gcc"
 SUBDIR=		efi
-.endif
 
 .include <bsd.subdir.mk>

Modified: head/sys/boot/amd64/efi/Makefile
==============================================================================
--- head/sys/boot/amd64/efi/Makefile	Thu Apr 10 16:00:33 2014	(r264318)
+++ head/sys/boot/amd64/efi/Makefile	Thu Apr 10 16:53:21 2014	(r264319)
@@ -3,6 +3,10 @@
 NO_MAN=
 
 .include <bsd.own.mk>
+
+# In-tree GCC does not support __attribute__((ms_abi)).
+.if ${COMPILER_TYPE} != "gcc"
+
 MK_SSP=		no
 
 PROG=		loader.sym
@@ -85,6 +89,8 @@ CFLAGS+=	-I${.CURDIR}/../../common
 DPADD=		${LIBFICL} ${LIBEFI} ${LIBSTAND}
 LDADD=		${LIBFICL} ${LIBEFI} ${LIBSTAND}
 
+.endif # ${COMPILER_TYPE} != "gcc"
+
 .include <bsd.prog.mk>
 
 beforedepend ${OBJS}: machine x86


More information about the svn-src-all mailing list