efibootmgr: fix build error with gcc 5.2

It fails to build efibootmgr with gcc 5.2:

src/lib/disk.o: In function `disk_get_scsi_pci':
src/lib/disk.c:154: undefined reference to `get_scsi_pci'
src/lib/efi.o: In function `make_edd30_device_path':
src/lib/efi.c:474: undefined reference to `get_scsi_idlun'
collect2: error: ld returned 1 exit status

Because functions get_scsi_pci and get_scsi_idlun are declared as
inline. It has different semantics for inilne function between gcc 4
and gcc 5.

Pass flag '-fgnu89-inline' to gcc to fix the errors.

Ref:
https://gcc.gnu.org/gcc-5/porting_to.html

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
Kai Kang
2015-08-27 17:30:22 +08:00
committed by Martin Jansa
parent a686b8f898
commit b1bdecb7be
@@ -19,7 +19,7 @@ SRC_URI = "http://linux.dell.com/efibootmgr/permalink/efibootmgr-${PV}.tar.gz \
SRC_URI[md5sum] = "9e9a31d79e579644de83a14139b66d10" SRC_URI[md5sum] = "9e9a31d79e579644de83a14139b66d10"
SRC_URI[sha256sum] = "5167488b92950e60028d1025942ce6bda04638c6fb5e110abb8c8f687844d155" SRC_URI[sha256sum] = "5167488b92950e60028d1025942ce6bda04638c6fb5e110abb8c8f687844d155"
EXTRA_OEMAKE = "'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/src/lib -I${S}/src/include'" EXTRA_OEMAKE = "'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/src/lib -I${S}/src/include -fgnu89-inline'"
do_install () { do_install () {
install -D -p -m0755 src/efibootmgr/efibootmgr ${D}/${sbindir}/efibootmgr install -D -p -m0755 src/efibootmgr/efibootmgr ${D}/${sbindir}/efibootmgr