Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into...
[vuplus_openembedded] / conf / distro / include / angstrom-uclibc.inc
1 # uclibc:
2 #fix some iconv issues, needs to be adjusted when doing uclibc builds
3 PREFERRED_PROVIDER_virtual/libc = "uclibc"
4 PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
5 PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
6 PREFERRED_PROVIDER_virtual/libintl_avr32 = "proxy-libintl"
7 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
8 PREFERRED_PROVIDER_virtual/arm-angstrom-linux-uclibcgnueabi-libc-for-gcc    = "uclibc-initial"
9 PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-uclibcgnueabi-libc-for-gcc  = "uclibc-initial"
10
11 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
12 PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
13
14 USE_NLS ?= "no"
15 USE_NLS_glib-2.0 = "yes"
16 USE_NLS_glib-2.0-native = "yes"
17 USE_NLS_gcc-cross = "no"
18
19 TARGET_OS_UC = "linux${@['-uclibc','-uclibcgnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
20 TARGET_OS = "${@['${TARGET_OS_UC}', 'uclinux-uclibc'][bb.data.getVar('TARGET_ARCH',d)  in ['bfin']]}"
21
22 #mess with compiler flags to use -Os instead of -O2
23 #Please see http://free-electrons.com/doc/embedded_linux_optimizations/img47.html for some more info
24 FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os"
25 BUILD_OPTIMIZATION = "-Os"
26
27 #Gcc will die with 'internal consistency error when using the above optimizations
28 #with gcc-4.2.1-atmel.1.0.3 (and probably most other avr32 gcc ports).
29 #However, some packages require optimizations to compile (e.g. libmad).
30 #It appears the guilty optimization is "-frename-registers", leaving that one 
31 #out allows the build to proceed normally.  -fexpensive-optimizations may be OK,
32 #it was removed while debugging an issue that ultimately turned out to be due
33 #to the ICE fixed by gcc-pr32889.patch.  It needs to be tested again. 
34 #Note that this testing was done without the gcc-pr32889.patch.
35 FULL_OPTIMIZATION_avr32 = "-Os -fomit-frame-pointer"
36
37 TARGET_LINK_HASH_STYLE = "${@['-Wl,--hash-style=gnu',''][bb.data.getVar('TARGET_ARCH',d,1) in ['mips', 'mipsel', 'avr32']]}"
38
39 CXXFLAGS += "-fvisibility-inlines-hidden"
40