efivar: disable for some incompatible Sourcery CodeBench toolchains

linux/nvme.h has been renamed to linux/nvme_ioctl.h since 4.4, and we
have a patch to handle that situation. However, some Sourcery CodeBench
toolchains use 4.4 kernel headers but don't have that header file
renamed, and that is causing build failures. So, prevent this package
to be built using those toolchains.

Fixes:

  http://autobuild.buildroot.net/results/66c/66cf68261fa73c2366610f8d14bd02180ba7cd2d/
  http://autobuild.buildroot.net/results/54c/54cc7d4e3b284b35931e08f9c7f0f902df96a989/

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
[Romain:
  - add back slash on line breaks
  - propagate efivar dependencies to efibootmgr
  - add comments dependencies]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Vicente Olivert Riera 2016-07-03 16:20:36 +02:00 committed by Thomas Petazzoni
parent a4b65e1900
commit 5ae01db605
2 changed files with 14 additions and 0 deletions

View File

@ -3,6 +3,8 @@ config BR2_PACKAGE_EFIBOOTMGR
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # efivar
depends on BR2_TOOLCHAIN_USES_GLIBC # efivar
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # efivar
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # efivar
select BR2_PACKAGE_EFIVAR
help
A Linux user-space application to modify the Intel Extensible
@ -16,3 +18,5 @@ comment "efibootmgr requires a glibc toolchain w/ headers >= 3.12, gcc >= 4.7"
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \
!BR2_TOOLCHAIN_USES_GLIBC || \\
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII

View File

@ -1,6 +1,14 @@
config BR2_PACKAGE_EFIVAR
bool "efivar"
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # linux/nvme.h
# linux/nvme.h has been renamed to linux/nvme_ioctl.h since 4.4,
# and we have a patch to handle that situation. However, some
# Sourcery CodeBench toolchains use 4.4 kernel headers but they
# don't have that header file renamed, and that is causing build
# failures. So, prevent this package to be built using those
# toolchains.
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
# doesn't build with uclibc due to lack of uchar.h
# doesn't build with musl due to lack of __bswap_constant_16
depends on BR2_TOOLCHAIN_USES_GLIBC
@ -15,3 +23,5 @@ comment "efivar requires a glibc toolchain w/ headers >= 3.12, gcc >= 4.7"
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \
!BR2_TOOLCHAIN_USES_GLIBC || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII