Date: Thu, 14 Jan 2016 01:47:50 -0800 From: NGie Cooper <yaneurabeya@gmail.com> To: Steven Hartland <smh@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r293903 - in head/sys/boot: arm/uboot efi/fdt efi/libefi Message-ID: <9A7534C4-0A2C-4DAC-981A-09868F1723DA@gmail.com> In-Reply-To: <F3E05332-F6B1-4685-812A-FD2BBB870075@gmail.com> References: <201601140922.u0E9M1rV025146@repo.freebsd.org> <F3E05332-F6B1-4685-812A-FD2BBB870075@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Jan 14, 2016, at 01:27, NGie Cooper <yaneurabeya@gmail.com> wrote: >=20 >=20 >> On Jan 14, 2016, at 01:22, Steven Hartland <smh@FreeBSD.org> wrote: >>=20 >> Author: smh >> Date: Thu Jan 14 09:22:01 2016 >> New Revision: 293903 >> URL: https://svnweb.freebsd.org/changeset/base/293903 >>=20 >> Log: >> Fix GCC warnings causing build failure after r293724 >>=20 >> Disable some compiler warnings for GCC (non-standard compiler) fixing >> build failures introduced by r293724, which enabled WARNS in the EFI = boot >> code, when compiling with none standard compiler (GCC). >=20 > Disabling warnings is wrong. Here=E2=80=99s how arm could be fixed: >=20 > $ svn diff sys/boot/ > Index: sys/boot/common/bootstrap.h > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- sys/boot/common/bootstrap.h (revision 293877) > +++ sys/boot/common/bootstrap.h (working copy) > @@ -32,6 +32,7 @@ > #include <sys/types.h> > #include <sys/queue.h> > #include <sys/linker_set.h> > +#include <time.h> >=20 > /* > * Generic device specifier; architecture-dependant=20 > @@ -332,12 +333,8 @@ > extern struct arch_switch archsw; >=20 > /* This must be provided by the MD code, but should it be in the = archsw? */ > -void delay(int delay); > - > void dev_cleanup(void); >=20 > -time_t time(time_t *tloc); > - > #ifndef CTASSERT /* Allow lint to override */ > #define CTASSERT(x) _CTASSERT(x, __LINE__) > #define _CTASSERT(x, y) __CTASSERT(x, y) > Index: sys/boot/efi/include/efiapi.h > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- sys/boot/efi/include/efiapi.h (revision 293877) > +++ sys/boot/efi/include/efiapi.h (working copy) > @@ -532,6 +532,7 @@ > typedef > EFI_STATUS > (EFIAPI *EFI_RESERVED_SERVICE) ( > + VOID > ); >=20 > typedef >=20 > amd64 is a bit trickier: >=20 > /scratch/tmp/ngie/svn/sys/boot/efi/libefi/../include/efigop.h:75: = warning: 'ms_abi' attribute directive ignored >=20 > I didn=E2=80=99t dig into why this is happening [yet], other than = there maybe being MS extensions involved? >=20 > Thanks, > -NGie This might fix amd64: Index: = /scratch/tmp/ngie/svn/sys/boot/efi/libefi/../include/amd64/efibind.h =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /scratch/tmp/ngie/svn/sys/boot/efi/libefi/../include/amd64/efibind.h = (revision 293877) +++ /scratch/tmp/ngie/svn/sys/boot/efi/libefi/../include/amd64/efibind.h = (working copy) @@ -160,8 +160,10 @@ // =20 #ifdef __amd64__ +#if defined(__clang__) && (__clang_major__ >=3D 3 && __clang_minor__ >=3D= 5) #define EFIAPI __attribute__((ms_abi)) #endif +#endif =20 #ifndef EFIAPI // Forces EFI calling conventions = reguardless of compiler options=20 #ifdef _MSC_EXTENSIONS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9A7534C4-0A2C-4DAC-981A-09868F1723DA>