aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>2018-03-26 14:11:19 -0700
committerManjukumar Matha <manjukumar.harthikote-matha@xilinx.com>2018-05-25 11:11:04 -0700
commit9f234e051aa2b3ddb259ead6ccc7970eb7aca756 (patch)
treef97729e02e48afb2fdd736d2fe0493c57d667cdf
parent58d49d31daa03d4d94706ae96fab6f740fbe114e (diff)
downloadmeta-xilinx-9f234e051aa2b3ddb259ead6ccc7970eb7aca756.tar.gz
meta-xilinx-9f234e051aa2b3ddb259ead6ccc7970eb7aca756.tar.bz2
meta-xilinx-9f234e051aa2b3ddb259ead6ccc7970eb7aca756.zip
newlib: Upgrade newlib and libgloss to version 3.0.0
Upgrade to major release 3.0.0 - License changes: Added Embedded brains, but license type stayed the same. - Newlib dropped support for Kernighan & Ritchie C - We can avoid building using full gcc and use gcc-initial instead. Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
-rw-r--r--meta-xilinx-bsp/recipes-core/newlib/libgloss_2.5.0.bb18
-rw-r--r--meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb27
-rw-r--r--meta-xilinx-bsp/recipes-core/newlib/newlib.inc33
-rw-r--r--meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb11
-rw-r--r--meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb19
5 files changed, 62 insertions, 46 deletions
diff --git a/meta-xilinx-bsp/recipes-core/newlib/libgloss_2.5.0.bb b/meta-xilinx-bsp/recipes-core/newlib/libgloss_2.5.0.bb
deleted file mode 100644
index 6fbafc1..0000000
--- a/meta-xilinx-bsp/recipes-core/newlib/libgloss_2.5.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-
-require newlib.inc
-
-DEPENDS += "newlib"
-
-do_configure() {
- ${S}/libgloss/configure ${CONFIGUREOPTS}
-}
-
-do_install_prepend() {
- # install doesn't create this itself
- install -d ${D}${prefix}/${TARGET_SYS}/lib
-}
-
-FILES_${PN} += "${libdir}/*.ld ${libdir}/*.specs"
-
-INHIBIT_PACKAGE_STRIP = "1"
-INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
diff --git a/meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb b/meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb
new file mode 100644
index 0000000..cff4a26
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb
@@ -0,0 +1,27 @@
+
+require newlib.inc
+
+DEPENDS += "newlib"
+
+do_configure() {
+ ${S}/libgloss/configure ${EXTRA_OECONF}
+}
+
+do_install_prepend() {
+ # install doesn't create this itself, avoid install error
+ install -d ${D}${prefix}/${TARGET_SYS}/lib
+}
+
+do_install_append() {
+ # Move libs to default directories so they can be picked up later
+ mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir}
+
+ # Remove original directory
+ rmdir ${D}${prefix}/${TARGET_SYS}
+}
+
+# Split packages correctly
+FILES_${PN} += "${libdir}/*.ld ${libdir}/*.specs"
+
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
diff --git a/meta-xilinx-bsp/recipes-core/newlib/newlib.inc b/meta-xilinx-bsp/recipes-core/newlib/newlib.inc
index 2fb2301..37ad6be 100644
--- a/meta-xilinx-bsp/recipes-core/newlib/newlib.inc
+++ b/meta-xilinx-bsp/recipes-core/newlib/newlib.inc
@@ -10,36 +10,39 @@ LIC_FILES_CHKSUM = " \
file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \
file://COPYING.LIBGLOSS;md5=73f5c98779aea7dba4a6c94a74ab0ae2 \
file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
- file://COPYING.NEWLIB;md5=bfdd6396bf3b02bd23ffbb9f7ddfbec6 \
+ file://COPYING.NEWLIB;md5=956a4b1487f7677cdcceeee8f05a21f0 \
file://newlib/libc/posix/COPYRIGHT;md5=103468ff1982be840fdf4ee9f8b51bbf \
file://newlib/libc/sys/linux/linuxthreads/LICENSE;md5=73640207fbc79b198c7ffd4ad4d97aa0 \
"
SRC_URI = "ftp://sourceware.org/pub/newlib/newlib-${PV}.tar.gz"
-SRC_URI[md5sum] = "767dc60aaf814d091997d91d588968b2"
-SRC_URI[sha256sum] = "5b76a9b97c9464209772ed25ce55181a7bb144a66e5669aaec945aa64da3189b"
+SRC_URI[md5sum] = "81ec873108b8593c586f91ca65963952"
+SRC_URI[sha256sum] = "c8566335ee74e5fcaeb8595b4ebd0400c4b043d6acb3263ecb1314f8f5501332"
INHIBIT_DEFAULT_DEPS = "1"
-DEPENDS = "virtual/${TARGET_PREFIX}gcc"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial"
+
+PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:"
+STAGINGCC = "${MLPREFIX}gcc-cross-initial-${TARGET_ARCH}"
S = "${WORKDIR}/newlib-${PV}"
B = "${WORKDIR}/build"
-# disable use of a link hash style
+# Disable use of a link hash style
TARGET_LINK_HASH_STYLE_microblaze = ""
# disable stdlib
TARGET_CC_ARCH_append = " -nostdlib"
-CONFIGUREOPTS = " \
- --build=${BUILD_SYS} \
+EXTRA_OECONF = " \
+ --build=${BUILD_SYS} \
+ --target=${TARGET_SYS} \
--host=${HOST_SYS} \
- --target=${TARGET_SYS} \
- --prefix=${prefix} \
- --exec-prefix=${exec_prefix} \
- --bindir=${bindir} \
- --libdir=${libdir} \
- --includedir=${includedir} \
+ --prefix=${prefix} \
+ --exec-prefix=${exec_prefix} \
+ --bindir=${bindir} \
+ --libdir=${libdir} \
+ --includedir=${includedir} \
--enable-languages=c \
--with-newlib \
--with-gnu-as \
@@ -51,9 +54,5 @@ do_configure[cleandirs] = "${B}"
do_install() {
oe_runmake install DESTDIR='${D}'
-
- # output of headers/libs in 'tooldir' subdirectories, move it up to the prefix dir.
- mv ${D}${prefix}/${TARGET_SYS}/* ${D}${prefix}/
- rmdir ${D}${prefix}/${TARGET_SYS}
}
diff --git a/meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb b/meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb
deleted file mode 100644
index dc30c6b..0000000
--- a/meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-
-require newlib.inc
-
-do_configure_prepend_microblaze() {
- # hack for microblaze, which needs xilinx.ld to literally do any linking (its hard coded in its LINK_SPEC)
- export CC="${CC} -L${S}/libgloss/microblaze"
-}
-
-do_configure() {
- ${S}/configure ${CONFIGUREOPTS}
-}
diff --git a/meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb b/meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb
new file mode 100644
index 0000000..3d31350
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb
@@ -0,0 +1,19 @@
+require newlib.inc
+
+do_configure_prepend_microblaze() {
+ # hack for microblaze, which needs xilinx.ld to literally do any linking (its hard coded in its LINK_SPEC)
+ export CC="${CC} -L${S}/libgloss/microblaze"
+}
+
+do_configure() {
+ ${S}/configure ${EXTRA_OECONF}
+}
+
+do_install_append() {
+ # Move include files and libs to default directories so they can be picked up later
+ mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir}
+ mv -v ${D}${prefix}/${TARGET_SYS}/include ${D}${includedir}
+
+ # Remove original directory
+ rmdir ${D}${prefix}/${TARGET_SYS}
+}