public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* [crosstool-ng/crosstool-ng] de0d1d: Resepct CT_TARGET_{C,LD}FLAGS when building musl
@ 2019-12-23 22:58 Alexey Neyman
  0 siblings, 0 replies; only message in thread
From: Alexey Neyman @ 2019-12-23 22:58 UTC (permalink / raw)
  To: crossgcc

  Branch: refs/heads/master
  Home:   https://github.com/crosstool-ng/crosstool-ng
  Commit: de0d1dbe023c3df09efbdaf6786c9c30e985ccfb
      https://github.com/crosstool-ng/crosstool-ng/commit/de0d1dbe023c3df09efbdaf6786c9c30e985ccfb
  Author: Dima Krasner <dima@dimakrasner.com>
  Date:   2019-12-04 (Wed, 04 Dec 2019)

  Changed paths:
    M scripts/build/libc/musl.sh

  Log Message:
  -----------
  Resepct CT_TARGET_{C,LD}FLAGS when building musl

I was trying to build static binaries for a range of Broadcom soft-float ARMv7
SoCs and kept getting SIGILL, although I was targeting Cortex A7 (and A5,
later), even on A9 and A15.

I found out that once I add -msoft-float, +mp+sec is to blame:

   Attribute Section: aeabi
   File Attributes
  -  Tag_CPU_name: "7VE"
  +  Tag_CPU_name: "7"
     Tag_CPU_arch: v7
  -  Tag_CPU_arch_profile: Application
  -  Tag_ARM_ISA_use: Yes
     Tag_THUMB_ISA_use: Thumb-2
     Tag_ABI_PCS_wchar_t: 4
     Tag_ABI_FP_rounding: Needed
  @@ -12,8 +10,5 @@ File Attributes
     Tag_ABI_FP_number_model: IEEE 754
     Tag_ABI_align_needed: 8-byte
     Tag_ABI_enum_size: int
     Tag_ABI_optimization_goals: Aggressive Size
     Tag_CPU_unaligned_access: v6
  -  Tag_MPextension_use: Allowed
  -  Tag_DIV_use: Allowed in v7-A with integer division extension
  -  Tag_Virtualization_use: TrustZone and Virtualization Extensions

(This is the readelf -A diff, before and after armv7-a+nofp -> armv7+nofp).

I kept getting SIGILL even after building my application with a toolchain built
with the correct CFLAGS and found out that crosstool-ng doesn't pass the host
CFLAGS when building musl, which pollutes my binary with these ARMv7 extensions.

Signed-off-by: Dima Krasner <dima@dimakrasner.com>


  Commit: e0a63b85460876325154305b472459a9231384aa
      https://github.com/crosstool-ng/crosstool-ng/commit/e0a63b85460876325154305b472459a9231384aa
  Author: Alexey Neyman <stilor@att.net>
  Date:   2019-12-23 (Mon, 23 Dec 2019)

  Changed paths:
    M scripts/build/libc/musl.sh

  Log Message:
  -----------
  Merge pull request #1280 from dimkr/musl-cflags

Resepct CT_TARGET_{C,LD}FLAGS when building musl


Compare: https://github.com/crosstool-ng/crosstool-ng/compare/f8864925304e...e0a63b854608

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-12-23 22:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-23 22:58 [crosstool-ng/crosstool-ng] de0d1d: Resepct CT_TARGET_{C,LD}FLAGS when building musl Alexey Neyman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).