summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@xilinx.com>2020-05-14 13:00:14 -0700
committerMark Hatle <mark.hatle@xilinx.com>2020-05-14 13:03:43 -0700
commit1d5b70a2dbf329630c12f9c6170e4897b4689253 (patch)
tree118fbae8be40c026cc3bba02bfeb7ac5e1ac3a4b
parent3f1eacbf958ab13efa2c8533a54f7de1657e1f7b (diff)
downloadmeta-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>
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-configure-xilinx-standalone.inc7
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend1
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend1
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend7
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc5
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend2
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
2LINKER_HASH_STYLE_xilinx-standalone = ""
3SYMVERS_CONF_xilinx-standalone = ""
4
5EXTRA_OECONF_append_xilinx-standalone_microblaze = " --disable-initfini_array"
6
7EXTRA_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 @@
1require gcc-configure-xilinx-standalone.inc
1require gcc-xilinx-standalone.inc 2require 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 @@
1require gcc-configure-xilinx-standalone.inc
1require gcc-xilinx-standalone.inc 2require 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 @@
1COMPATIBLE_HOST = "${HOST_SYS}" 1require gcc-configure-xilinx-standalone.inc
2 2
3# Copy of gcc-xilinx-standalone.inc, but with _class-target added 3COMPATIBLE_HOST = "${HOST_SYS}"
4LINKER_HASH_STYLE_xilinx-standalone_class-target = ""
5SYMVERS_CONF_xilinx-standalone_class-target = ""
6 4
7EXTRA_OECONF_append_xilinx-standalone_class-target = " \ 5EXTRA_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
35EXTRA_OECONF_append_xilinx-standalone_microblaze_class-target = " \ 33EXTRA_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
2LINKER_HASH_STYLE_xilinx-standalone = ""
3SYMVERS_CONF_xilinx-standalone = ""
4
5EXTRA_OECONF_append_xilinx-standalone = " \ 1EXTRA_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
32EXTRA_OECONF_append_xilinx-standalone_microblaze = " \ 28EXTRA_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 @@
1require gcc-configure-xilinx-standalone.inc
2
1COMPATIBLE_HOST = "${HOST_SYS}" 3COMPATIBLE_HOST = "${HOST_SYS}"
2 4
3python do_multilib_install_xilinx-standalone_class-target () { 5python do_multilib_install_xilinx-standalone_class-target () {