Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Apr 2014 16:53:22 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r264319 - in head/sys/boot/amd64: . efi
Message-ID:  <201404101653.s3AGrM5K032199@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404101653.s3AGrM5K032199>