Re: linaro toolchain recipe updates

2014-02-18 Thread Koen Kooi

On 02/16/2014 06:43 AM, Khem Raj wrote:

The following changes since commit aa242029aa5eecc84a27f2ba026e8fedaf925dbd:

   Merge "linaro-image-lng: add package lng-network-config" (2014-02-14 
16:24:51 +)

are available in the git repository at:


   git://github.com/kraj/meta-linaro master

for you to fetch changes up to e4b9751778fe7772185f12cbd29453bf80460546:

   binutils: Rename version to linux-2.24 (2014-02-16 05:16:00 +)


Khem Raj (3):
   gcc: Lets not override OE-Core gcc
   gcc-linaro-4.7: Delete
   binutils: Rename version to linux-2.24


I've imported them into gerrit:

https://review.linaro.org/#/c/1190/
https://review.linaro.org/#/c/1192/
https://review.linaro.org/#/c/1193/
https://review.linaro.org/#/c/1194/

regards,

Koen



  .../binutils/binutils-cross-canadian.inc   |   29 -
  .../binutils/binutils-cross-canadian_2.24.bb   |3 -
  .../binutils-cross-canadian_linaro-2.24.bb |3 +
  .../recipes-devtools/binutils/binutils-cross.inc   |   27 -
  .../binutils/binutils-cross_2.24.bb|3 -
  .../binutils/binutils-cross_linaro-2.24.bb |3 +
  ...dk_2.24.bb => binutils-crosssdk_linaro-2.24.bb} |2 +-
  ...{binutils-2.24.inc => binutils-linaro-2.24.inc} |5 +-
  .../binutils-armv5e.patch  |0
  .../binutils-poison.patch  |0
  .../binutils-uclibc-100-uclibc-conf.patch  |0
  ...binutils-uclibc-300-001_ld_makefile_patch.patch |0
  ...binutils-uclibc-300-006_better_file_error.patch |0
  ...ils-uclibc-300-012_check_ldrunpath_length.patch |0
  .../binutils-uclibc-gas-needs-libm.patch   |0
  .../binutils-xlp-support.patch |0
  .../fix-pr15815.patch  |0
  .../libiberty_path_fix.patch   |0
  .../libtool-2.4-update.patch   |0
  .../libtool-rpath-fix.patch|0
  .../mips64-default-ld-emulation.patch  |0
  .../relocatable_sdk.patch  |0
  .../recipes-devtools/binutils/binutils.inc |  148 --
  .../{binutils_2.24.bb => binutils_linaro-2.24.bb}  |4 +-
  .../recipes-devtools/gcc/gcc-4.7.inc   |  145 -
  ...-vis_hide-gen-hide-list-Do-not-make-defin.patch |   93 -
  ...USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch |   49 -
  .../gcc/gcc-4.7/100-uclibc-conf.patch  |   39 -
  .../gcc/gcc-4.7/200-uclibc-locale.patch| 2810 
  .../gcc/gcc-4.7/203-uclibc-locale-no__x.patch  |  235 --
  .../gcc/gcc-4.7/204-uclibc-locale-wchar_fix.patch  |   54 -
  .../gcc/gcc-4.7/205-uclibc-locale-update.patch |  521 
  .../gcc/gcc-4.7/301-missing-execinfo_h.patch   |   15 -
  .../gcc/gcc-4.7/302-c99-snprintf.patch |   15 -
  .../gcc/gcc-4.7/303-c99-complex-ugly-hack.patch|   16 -
  .../gcc/gcc-4.7/304-index_macro.patch  |   30 -
  .../gcc/gcc-4.7/305-libmudflap-susv3-legacy.patch  |   51 -
  .../gcc/gcc-4.7/306-libstdc++-namespace.patch  |   40 -
  .../recipes-devtools/gcc/gcc-4.7/64bithack.patch   |   63 -
  .../gcc/gcc-4.7/740-sh-pr24836.patch   |   31 -
  .../gcc/gcc-4.7/800-arm-bigendian.patch|   36 -
  .../gcc/gcc-4.7/COLLECT_GCC_OPTIONS.patch  |   25 -
  .../gcc/gcc-4.7/GLIBC_DYNAMIC_LINKER.patch |  165 --
  .../gcc/gcc-4.7/arm-hard-float-loader.patch|   48 -
  .../gcc/gcc-4.7/avoid-oob-array-access.patch   |   45 -
  .../gcc/gcc-4.7/cpp-honor-sysroot.patch|   40 -
  .../gcc/gcc-4.7/define_insn_reservation.patch  |  118 -
  .../gcc/gcc-4.7/disable-texinfo-5.patch|  107 -
  .../gcc/gcc-4.7/disable_relax_pic_calls_flag.patch |   48 -
  .../recipes-devtools/gcc/gcc-4.7/disablesdt.patch  |   66 -
  .../gcc/gcc-4.7/fix-g++-sysroot.patch  |  428 ---
  .../gcc/gcc-4.7/fortran-cross-compile-hack.patch   |   32 -
  .../gcc-4.7/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch  |   33 -
  .../gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch  |  116 -
  .../gcc/gcc-4.7/gcc-argument-list-too-long.patch   |   33 -
  .../gcc-4.7/gcc-armv4-pass-fix-v4bx-to-ld.patch|   31 -
  .../gcc/gcc-4.7/gcc-poison-dir-extend.patch|   27 -
  .../gcc-4.7/gcc-poison-system-directories.patch|  223 --
  .../gcc-uclibc-locale-ctype_touplow_t.patch|   72 -
  .../gcc/gcc-4.7/libgcc-sjlj-check.patch|   61 -
  .../recipes-devtools/gcc/gcc-4.7/libtool.patch |   29 -
  .../gcc/gcc-4.7/mips64-default-n64.patch   |   19 -
  .../gcc/gcc-4.7/optional_libstdc.patch |   86 -
  .../gcc/gcc-4.7/ppc_no_crtsavres.patch |   72 -
  .../gcc/gcc-4.7/ppc_with_cpu.patch |  752 --
  .../gcc/gcc-4.7/ppce5500-e6500-support.patch   |  713 -
  .../recipes-devtools/gcc/gcc-4.7/pr32219.patch |   7

-mfpu=softvfp+vfp in LLVM

2014-02-18 Thread Renato Golin
Richard,

I found some emails about you implementing softvfp back in 2003, and
I'd like to know what is the expected behaviour when it conflicts with
the target triple, for example:

 -triple arm-linux-gnueabihf + -mfpu=sofvfp+vfp

In this case, in LLVM, the triple sets "-float-abi=hard" but the fpu
would set "+soft-float-abi", which are contradictory flags.

Is that case even possible? If so, what's the expected behaviour? Soft
or hard float?

Do the extra flags always override the triple behaviour? Is it
expected that *every* compiler flag will work on a
last-seen-sets-behaviour manner?

cheers,
--renato

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: linaro toolchain recipe updates

2014-02-18 Thread Koen Kooi

On 02/18/2014 09:54 AM, Koen Kooi wrote:

On 02/16/2014 06:43 AM, Khem Raj wrote:

The following changes since commit
aa242029aa5eecc84a27f2ba026e8fedaf925dbd:

   Merge "linaro-image-lng: add package lng-network-config"
(2014-02-14 16:24:51 +)

are available in the git repository at:


   git://github.com/kraj/meta-linaro master

for you to fetch changes up to e4b9751778fe7772185f12cbd29453bf80460546:

   binutils: Rename version to linux-2.24 (2014-02-16 05:16:00 +)


Khem Raj (3):
   gcc: Lets not override OE-Core gcc
   gcc-linaro-4.7: Delete
   binutils: Rename version to linux-2.24


I've imported them into gerrit:

https://review.linaro.org/#/c/1190/
https://review.linaro.org/#/c/1192/
https://review.linaro.org/#/c/1193/
https://review.linaro.org/#/c/1194/


With those 4 patches mariadb fails to buid:

| make  all-am
| make[4]: Entering directory 
`/build/linaro/build/build/tmp-eglibc/work/aarch64-oe-linux/mariadb/5.1.67-r0/mariadb-5.1.67/libmysqld/examples'
| aarch64-oe-linux-g++ 
--sysroot=/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8 
-DEMBEDDED_LIBRARY -I. -I../../include -I../../include -I../../include 
-I. -I../.. -I../../client -I../../regex -I../../tests -O2 -pipe -g 
-feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden 
  -fno-implicit-templates -fno-exceptions -fno-rtti -c -o mysqltest.o 
mysqltest.cc
| ../../aarch64-oe-linux-libtool  --tag=CXX   --mode=link 
aarch64-oe-linux-g++ 
--sysroot=/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8 
-O2 -pipe -g -feliminate-unused-debug-types -fpermissive 
-fvisibility-inlines-hidden   -fno-implicit-templates -fno-exceptions 
-fno-rtti  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -rdynamic  -o 
mysqltest_embedded mysqltest.o ../../libmysqld/libmysqld.la -ldl 
../../regex/libregex.la  -lpthread -lcrypt -lnsl -lm  -lpthread 
-lcrypt -lnsl -lm 
-L/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8/usr//lib -lz
| aarch64-oe-linux-libtool: link: aarch64-oe-linux-g++ 
--sysroot=/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8 -O2 
-pipe -g -feliminate-unused-debug-types -fpermissive 
-fvisibility-inlines-hidden -fno-implicit-templates -fno-exceptions 
-fno-rtti -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -rdynamic -o 
.libs/mysqltest_embedded mysqltest.o  ../../libmysqld/.libs/libmysqld.so 
-L/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8/usr//lib 
/build/linaro/build/build/tmp-eglibc/sysroots/genericarmv8/usr/lib/libstdc++.so 
-ldl ../../regex/.libs/libregex.a -lpthread -lcrypt -lnsl -lm -lz 
-Wl,-rpath -Wl,/usr/lib/mysql

| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlopen'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlclose'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlerror'




regards,

Koen



  .../binutils/binutils-cross-canadian.inc   |   29 -
  .../binutils/binutils-cross-canadian_2.24.bb   |3 -
  .../binutils-cross-canadian_linaro-2.24.bb |3 +
  .../recipes-devtools/binutils/binutils-cross.inc   |   27 -
  .../binutils/binutils-cross_2.24.bb|3 -
  .../binutils/binutils-cross_linaro-2.24.bb |3 +
  ...dk_2.24.bb => binutils-crosssdk_linaro-2.24.bb} |2 +-
  ...{binutils-2.24.inc => binutils-linaro-2.24.inc} |5 +-
  .../binutils-armv5e.patch  |0
  .../binutils-poison.patch  |0
  .../binutils-uclibc-100-uclibc-conf.patch  |0
  ...binutils-uclibc-300-001_ld_makefile_patch.patch |0
  ...binutils-uclibc-300-006_better_file_error.patch |0
  ...ils-uclibc-300-012_check_ldrunpath_length.patch |0
  .../binutils-uclibc-gas-needs-libm.patch   |0
  .../binutils-xlp-support.patch |0
  .../fix-pr15815.patch  |0
  .../libiberty_path_fix.patch   |0
  .../libtool-2.4-update.patch   |0
  .../libtool-rpath-fix.patch|0
  .../mips64-default-ld-emulation.patch  |0
  .../relocatable_sdk.patch  |0
  .../recipes-devtools/binutils/binutils.inc |  148 --
  .../{binutils_2.24.bb => binutils_linaro-2.24.bb}  |4 +-
  .../recipes-devtools/gcc/gcc-4.7.inc   |  145 -
  ...-vis_hide-gen-hide-list-Do-not-make-defin.patch |   93 -
  ...USE_PT_GNU_EH_FRAME-Define-for-systems-us.patch |   49 -
  .../gcc/gcc-4.7/100-uclibc-conf.patch  |   39 -
  .../gcc/gcc-4.7/200-uclibc-locale.patch| 2810

  .../gcc/gcc-4.7/203-uclibc-locale-no__x.patch  |  235 --
  .../gcc/gcc-4.7/204-uclibc-locale-wchar_fix.patch  |   54 -
  .../gcc/gcc-4.7/205-uclibc-locale-update.patch |  521 
  .../gcc/gcc-4.7/301-missing-execinfo_h.patch   |   15 -
  .../gcc/gcc-4.7/302-c99-snprintf.pat

Re: -mfpu=softvfp+vfp in LLVM

2014-02-18 Thread Richard Earnshaw
On 18/02/14 12:59, Renato Golin wrote:
> Richard,
> 
> I found some emails about you implementing softvfp back in 2003, and
> I'd like to know what is the expected behaviour when it conflicts with
> the target triple, for example:
> 
>  -triple arm-linux-gnueabihf + -mfpu=sofvfp+vfp
> 
> In this case, in LLVM, the triple sets "-float-abi=hard" but the fpu
> would set "+soft-float-abi", which are contradictory flags.
> 
> Is that case even possible? If so, what's the expected behaviour? Soft
> or hard float?
> 
> Do the extra flags always override the triple behaviour? Is it
> expected that *every* compiler flag will work on a
> last-seen-sets-behaviour manner?
> 
> cheers,
> --renato
> 

I honestly don't remember what -mfpu=softvfp+vfp is without going to
look it up... you're talking about code that was written 11 years ago!
I suspect it dates to the time when we were starting to phase out
support for the old FPA instructions (if you don't remember those, think
yourself lucky :-); where softvfp meant to use the floating-point data
format that was used with the VFP; the +vfp was probably meant to imply
that vfp instructions could be used as well, but didn't change the ABI
(doesn't imply float-abi=hard) -- I would say the combination you
describe above is probably meaningless.

In the gcc world triplets are only used during configuration of the
compiler to set the various defaults, they never override something
given on the command line at run time.  It is possible to create
meaningless combinations of some options (thumb1 + hard-float ABI is
currently one that GCC can't handle).

R.


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: -mfpu=softvfp+vfp in LLVM

2014-02-18 Thread Renato Golin
On 18 February 2014 13:55, Richard Earnshaw  wrote:
> I honestly don't remember what -mfpu=softvfp+vfp is without going to
> look it up... you're talking about code that was written 11 years ago!

I know! Sorry to bring sorrow after so many years... ;)


> the +vfp was probably meant to imply
> that vfp instructions could be used as well, but didn't change the ABI
> (doesn't imply float-abi=hard)

Yes. The meaning is soft ABI with VFP instructions, which can be
particularly useful for Android, which is soft-ABI only but mostly
runs on ARMv7 hardware.


> -- I would say the combination you
> describe above is probably meaningless.

One use would be if the kernel is set up as a "hard-float platform"
(for system/user code), but still uses soft-float ABI (for whatever
crazy reasons).


> In the gcc world triplets are only used during configuration of the
> compiler to set the various defaults, they never override something
> given on the command line at run time.  It is possible to create
> meaningless combinations of some options (thumb1 + hard-float ABI is
> currently one that GCC can't handle).

We're also trying to reduce the importance of the triples, so I think
the most sensible thing to do is to just override and call it a day.

Thanks for the input!

cheers,
--renato

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: linaro toolchain recipe updates

2014-02-18 Thread Koen Kooi

On 02/18/2014 03:30 PM, Khem Raj wrote:

On Tue, Feb 18, 2014 at 5:34 AM, Koen Kooi  wrote:

| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlopen'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlclose'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlerror'


see 5916ffe0a19422706d1f84870adc603bad202f1c in meta-openembedded
you will need something like that. Don't think its toolchain related



With out the 2 binutils commits it does compile :(

--
Koen Kooi
Builds and Baselines | Release Manager
Linaro.org | Open source software for ARM SoCs

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: linaro toolchain recipe updates

2014-02-18 Thread Koen Kooi

On 02/18/2014 05:13 PM, Khem Raj wrote:

On Tue, Feb 18, 2014 at 6:30 AM, Khem Raj  wrote:

On Tue, Feb 18, 2014 at 5:34 AM, Koen Kooi  wrote:

| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlopen'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlclose'
| ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlerror'


see 5916ffe0a19422706d1f84870adc603bad202f1c in meta-openembedded
you will need something like that. Don't think its toolchain related


I bult mariadb for beaglebone to double check and it built fine using
(angstrom-next) which uses latest tip of meta-openembedded
so I would suggest to cherry pick above said commit into you branch of
meta-openembedded which is under test.


I looked into it some more and I found the following problems with my setup:

1) the mariadb patch is only for -native, so I moved that
2) the binutils reversioning makes it pick a different binutils, not the 
linaro one.


I'm doing a build right now with 1) and will try a build with 1) and 2) 
after that.


--
Koen Kooi
Builds and Baselines | Release Manager
Linaro.org | Open source software for ARM SoCs

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain