icu: not available when BR2_BINFMT_FLAT is used

icu does not recognize 'uclinux' as a supported platform. While making
it recognize uclinux is easy, there is another problem down the road:
icu does very weird things to generate an ELF library containing
static data (libicudata.a), and the generated library being ELF, it is
not compatible with the FLAT binary format expected by uclinux
platforms such as Blackfin in FLAT format.

Therefore, we simply disallow the selection of icu on FLAT
platforms.

Note that adding a dependency on BR2_BINFMT_ELF doesn't work, because
BR2_BINFMT_FDPIC is considered to be separate (even if technically
FDPIC is a derivative of ELF). That's why the dependency we're adding
is "depends on !BR2_BINFMT_FLAT" and not "depends on BR2_BINFMT_ELF".

Fixes:

  http://autobuild.buildroot.org/results/b41/b415fed7fae4012bad7d8b53a481bd71bdab716f/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Petazzoni
2014-02-20 14:32:45 +01:00
committed by Peter Korsgaard
parent 085d4f0270
commit 8797a8cb58
6 changed files with 12 additions and 1 deletions

View File

@@ -162,11 +162,13 @@ config BR2_PACKAGE_PHP_EXT_INTL
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on !BR2_arc # icu -> atomic builtins
depends on !BR2_BINFMT_FLAT # icu
help
Internationalization support
comment "intl support needs a toolchain w/ C++, wchar"
depends on !BR2_arc
depends on !BR2_BINFMT_FLAT
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR
comment "Image processing"