diff options
| author | Mark Hatle <mark.hatle@xilinx.com> | 2020-05-14 13:00:14 -0700 |
|---|---|---|
| committer | Mark Hatle <mark.hatle@xilinx.com> | 2020-05-14 13:03:43 -0700 |
| commit | 1d5b70a2dbf329630c12f9c6170e4897b4689253 (patch) | |
| tree | 118fbae8be40c026cc3bba02bfeb7ac5e1ac3a4b | |
| parent | 3f1eacbf958ab13efa2c8533a54f7de1657e1f7b (diff) | |
| download | meta-xilinx-1d5b70a2dbf329630c12f9c6170e4897b4689253.tar.gz | |
meta-xilinx-standalone gcc: Fix microblaze crtend.o
Issue: CR-1065455
Microblaze does not support initfini_array in a baremetal configuration.
This has previously been disabled in binutils, but it was missed in GCC and
related libraries.
This patch slightly restructures the baremetal configurations to move the
common configuration elements into a single configure set. This matches the
behavior from the Yocto Project gcc-configure-common.inc file.
Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
6 files changed, 13 insertions, 10 deletions
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-configure-xilinx-standalone.inc b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-configure-xilinx-standalone.inc new file mode 100644 index 00000000..b9bfe83d --- /dev/null +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-configure-xilinx-standalone.inc | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | # Mimic the file gcc-configure-common from the Yocto Project | ||
| 2 | LINKER_HASH_STYLE_xilinx-standalone = "" | ||
| 3 | SYMVERS_CONF_xilinx-standalone = "" | ||
| 4 | |||
| 5 | EXTRA_OECONF_append_xilinx-standalone_microblaze = " --disable-initfini_array" | ||
| 6 | |||
| 7 | EXTRA_OECONF_append_xilinx-standalone_microblaze = " --disable-__cxa_atexit" | ||
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend index 6a3138a3..15234848 100644 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend | |||
| @@ -1,3 +1,4 @@ | |||
| 1 | require gcc-configure-xilinx-standalone.inc | ||
| 1 | require gcc-xilinx-standalone.inc | 2 | require gcc-xilinx-standalone.inc |
| 2 | 3 | ||
| 3 | # We want to use the stock multilib configs, when available | 4 | # We want to use the stock multilib configs, when available |
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend index dd810a12..22a3e3a9 100644 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend | |||
| @@ -1,3 +1,4 @@ | |||
| 1 | require gcc-configure-xilinx-standalone.inc | ||
| 1 | require gcc-xilinx-standalone.inc | 2 | require gcc-xilinx-standalone.inc |
| 2 | 3 | ||
| 3 | # We want to use the stock multilib configs, when available | 4 | # We want to use the stock multilib configs, when available |
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend index 7d177efe..7057a057 100644 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend | |||
| @@ -1,8 +1,6 @@ | |||
| 1 | COMPATIBLE_HOST = "${HOST_SYS}" | 1 | require gcc-configure-xilinx-standalone.inc |
| 2 | 2 | ||
| 3 | # Copy of gcc-xilinx-standalone.inc, but with _class-target added | 3 | COMPATIBLE_HOST = "${HOST_SYS}" |
| 4 | LINKER_HASH_STYLE_xilinx-standalone_class-target = "" | ||
| 5 | SYMVERS_CONF_xilinx-standalone_class-target = "" | ||
| 6 | 4 | ||
| 7 | EXTRA_OECONF_append_xilinx-standalone_class-target = " \ | 5 | EXTRA_OECONF_append_xilinx-standalone_class-target = " \ |
| 8 | --disable-libstdcxx-pch \ | 6 | --disable-libstdcxx-pch \ |
| @@ -33,7 +31,6 @@ EXTRA_OECONF_append_xilinx-standalone_armrm_class-target = " \ | |||
| 33 | " | 31 | " |
| 34 | 32 | ||
| 35 | EXTRA_OECONF_append_xilinx-standalone_microblaze_class-target = " \ | 33 | EXTRA_OECONF_append_xilinx-standalone_microblaze_class-target = " \ |
| 36 | --disable-__cxa_atexit \ | ||
| 37 | --enable-target-optspace \ | 34 | --enable-target-optspace \ |
| 38 | --without-long-double-128 \ | 35 | --without-long-double-128 \ |
| 39 | " | 36 | " |
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc index 34b5083e..29f67aff 100644 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc | |||
| @@ -1,7 +1,3 @@ | |||
| 1 | # Any changes to this file should be synced with gcc-runtime_%.bbappend | ||
| 2 | LINKER_HASH_STYLE_xilinx-standalone = "" | ||
| 3 | SYMVERS_CONF_xilinx-standalone = "" | ||
| 4 | |||
| 5 | EXTRA_OECONF_append_xilinx-standalone = " \ | 1 | EXTRA_OECONF_append_xilinx-standalone = " \ |
| 6 | --disable-libstdcxx-pch \ | 2 | --disable-libstdcxx-pch \ |
| 7 | --with-newlib \ | 3 | --with-newlib \ |
| @@ -30,7 +26,6 @@ EXTRA_OECONF_append_xilinx-standalone_armrm = " \ | |||
| 30 | " | 26 | " |
| 31 | 27 | ||
| 32 | EXTRA_OECONF_append_xilinx-standalone_microblaze = " \ | 28 | EXTRA_OECONF_append_xilinx-standalone_microblaze = " \ |
| 33 | --disable-__cxa_atexit \ | ||
| 34 | --enable-target-optspace \ | 29 | --enable-target-optspace \ |
| 35 | --without-long-double-128 \ | 30 | --without-long-double-128 \ |
| 36 | " | 31 | " |
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend index e0f28915..e80b0b79 100644 --- a/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend +++ b/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend | |||
| @@ -1,3 +1,5 @@ | |||
| 1 | require gcc-configure-xilinx-standalone.inc | ||
| 2 | |||
| 1 | COMPATIBLE_HOST = "${HOST_SYS}" | 3 | COMPATIBLE_HOST = "${HOST_SYS}" |
| 2 | 4 | ||
| 3 | python do_multilib_install_xilinx-standalone_class-target () { | 5 | python do_multilib_install_xilinx-standalone_class-target () { |
