aboutsummaryrefslogtreecommitdiffstats
path: root/meta-xilinx-standalone/recipes-devtools
diff options
context:
space:
mode:
Diffstat (limited to 'meta-xilinx-standalone/recipes-devtools')
-rw-r--r--meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross-canadian_%.bbappend1
-rw-r--r--meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross_%.bbappend1
-rw-r--r--meta-xilinx-standalone/recipes-devtools/binutils/binutils-xilinx-standalone.inc26
-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_%.bbappend13
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend2
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend45
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_%.bbappend1
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc27
-rw-r--r--meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend29
-rw-r--r--meta-xilinx-standalone/recipes-devtools/qemu/qemuwrapper-cross_1.0.bbappend1
11 files changed, 153 insertions, 0 deletions
diff --git a/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross-canadian_%.bbappend b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross-canadian_%.bbappend
new file mode 100644
index 00000000..5ba6039b
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross-canadian_%.bbappend
@@ -0,0 +1 @@
+require binutils-xilinx-standalone.inc
diff --git a/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross_%.bbappend b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross_%.bbappend
new file mode 100644
index 00000000..5ba6039b
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-cross_%.bbappend
@@ -0,0 +1 @@
+require binutils-xilinx-standalone.inc
diff --git a/meta-xilinx-standalone/recipes-devtools/binutils/binutils-xilinx-standalone.inc b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-xilinx-standalone.inc
new file mode 100644
index 00000000..48db3cf3
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/binutils/binutils-xilinx-standalone.inc
@@ -0,0 +1,26 @@
+LDGOLD:xilinx-standalone = ""
+LDGOLD_ALTS:xilinx-standalone = ""
+
+EXTRA_OECONF:append:xilinx-standalone = " \
+ --disable-gprof \
+ --disable-shared \
+ --enable-lto \
+ --enable-static \
+"
+
+# CortexR5 and 32-bit arm are both "arm"
+EXTRA_OECONF:append:xilinx-standalone:arm = " \
+ --enable-interwork \
+"
+
+EXTRA_OECONF:append:xilinx-standalone:microblaze = " \
+ --disable-initfini-array \
+"
+
+# Workaround for:
+# ERROR: binutils-cross-canadian-aarch64-2.39-r0 do_package_qa: QA
+# Issue: non -staticdev package contains static .a library:
+# binutils-cross-canadian-aarch64 path
+# '/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-oesdk-linux/usr/lib/aarch64-xilinx-elf/bfd-plugins/libdep.a'
+# [staticdev]
+INSANE_SKIP:${PN} += "staticdev"
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..0320a780
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-configure-xilinx-standalone.inc
@@ -0,0 +1,7 @@
+# Mimic the file gcc-configure-common from the Yocto Project
+LINKER_HASH_STYLE:xilinx-standalone = ""
+SYMVERS_CONF:xilinx-standalone = ""
+
+EXTRA_OECONF:append:xilinx-standalone:microblaze = " --disable-initfini_array"
+
+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
new file mode 100644
index 00000000..449db177
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross-canadian_%.bbappend
@@ -0,0 +1,13 @@
+require gcc-configure-xilinx-standalone.inc
+require gcc-xilinx-standalone.inc
+
+# Temporary hack to build gcc cross canadian for tclibc-newlib as --with-sysroot=/not/exist
+# has been removed from TARGET_OS for elf and eabi in gcc-cross-canadian.inc
+
+python() {
+ if 'xilinx-standalone' in d.getVar("DISTROOVERRIDES").split(':'):
+ extraoeconfgcc = d.getVar('EXTRA_OECONF')
+ extraoeconfgcc += " --with-sysroot=/not/exist"
+ d.delVar('EXTRA_OECONF')
+ d.setVar('EXTRA_OECONF', extraoeconfgcc)
+}
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend
new file mode 100644
index 00000000..69782d71
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-cross_%.bbappend
@@ -0,0 +1,2 @@
+require gcc-configure-xilinx-standalone.inc
+require gcc-xilinx-standalone.inc
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend
new file mode 100644
index 00000000..3a7d1395
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-runtime_%.bbappend
@@ -0,0 +1,45 @@
+require gcc-configure-xilinx-standalone.inc
+
+COMPATIBLE_HOST = "${HOST_SYS}"
+
+EXTRA_OECONF:append:xilinx-standalone:class-target = " \
+ --disable-libstdcxx-pch \
+ --with-newlib \
+ --disable-threads \
+ --enable-plugins \
+ --with-gnu-as \
+ --disable-libitm \
+"
+
+EXTRA_OECONF:append:xilinx-standalone:aarch64:class-target = " \
+ --disable-multiarch \
+ --with-arch=armv8-a \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:armv7r:class-target = " \
+ --disable-tls \
+ --disable-decimal-float \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:armv8r:class-target = " \
+ --disable-tls \
+ --disable-decimal-float \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:microblaze:class-target = " \
+ --without-long-double-128 \
+ "
+
+# Changes local to gcc-runtime...
+
+# Dont build libitm, etc.
+RUNTIMETARGET:xilinx-standalone:class-target = "libstdc++-v3"
+
+do_install:append:xilinx-standalone:class-target() {
+ # Fixup what gcc-runtime normally would do, we don't want linux directories!
+ rm -rf ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux
+}
+
+FILES:${PN}-dbg:append:xilinx-standalone:class-target = "\
+ ${libdir}/libstdc++.a-gdb.py \
+"
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_%.bbappend
new file mode 100644
index 00000000..0d824324
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_%.bbappend
@@ -0,0 +1 @@
+COMPATIBLE_HOST = "${HOST_SYS}"
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc
new file mode 100644
index 00000000..2faf7a4b
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-xilinx-standalone.inc
@@ -0,0 +1,27 @@
+EXTRA_OECONF:append:xilinx-standalone = " \
+ --disable-libstdcxx-pch \
+ --with-newlib \
+ --disable-threads \
+ --enable-plugins \
+ --with-gnu-as \
+ --disable-libitm \
+"
+
+EXTRA_OECONF:append:xilinx-standalone:aarch64 = " \
+ --disable-multiarch \
+ --with-arch=armv8-a \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:armv7r = " \
+ --disable-tls \
+ --disable-decimal-float \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:armv8r = " \
+ --disable-tls \
+ --disable-decimal-float \
+ "
+
+EXTRA_OECONF:append:xilinx-standalone:microblaze = " \
+ --without-long-double-128 \
+ "
diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend
new file mode 100644
index 00000000..861b3f9c
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend
@@ -0,0 +1,29 @@
+require gcc-configure-xilinx-standalone.inc
+
+COMPATIBLE_HOST = "${HOST_SYS}"
+
+python do_multilib_install:xilinx-standalone:class-target () {
+ pass
+}
+
+standalone_fixup () {
+ (
+ cd ${D}${libdir}
+ for each in ${TARGET_SYS}/*/* ; do
+ ln -s $each $(basename $each)
+ done
+ )
+
+ # Apparently we can end up with an empty /lib occasionally
+ find ${D}/lib -type d | sort -r | xargs rmdir || :
+}
+
+FIXUP_FUNCTION = ""
+FIXUP_FUNCTION:xilinx-standalone:class-target = " standalone_fixup"
+
+do_install[postfuncs] .= "${FIXUP_FUNCTION}"
+
+FILES:${PN}-dev:append:xilinx-standalone:class-target = " \
+ ${libdir}/*.a \
+ ${libdir}/*.o \
+"
diff --git a/meta-xilinx-standalone/recipes-devtools/qemu/qemuwrapper-cross_1.0.bbappend b/meta-xilinx-standalone/recipes-devtools/qemu/qemuwrapper-cross_1.0.bbappend
new file mode 100644
index 00000000..0d824324
--- /dev/null
+++ b/meta-xilinx-standalone/recipes-devtools/qemu/qemuwrapper-cross_1.0.bbappend
@@ -0,0 +1 @@
+COMPATIBLE_HOST = "${HOST_SYS}"