diff options
| author | Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> | 2018-03-26 14:11:19 -0700 |
|---|---|---|
| committer | Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> | 2018-05-25 11:11:04 -0700 |
| commit | 9f234e051aa2b3ddb259ead6ccc7970eb7aca756 (patch) | |
| tree | f97729e02e48afb2fdd736d2fe0493c57d667cdf | |
| parent | 58d49d31daa03d4d94706ae96fab6f740fbe114e (diff) | |
| download | meta-xilinx-9f234e051aa2b3ddb259ead6ccc7970eb7aca756.tar.gz | |
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.bb | 18 | ||||
| -rw-r--r-- | meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb | 27 | ||||
| -rw-r--r-- | meta-xilinx-bsp/recipes-core/newlib/newlib.inc | 33 | ||||
| -rw-r--r-- | meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb | 11 | ||||
| -rw-r--r-- | meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb | 19 |
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 6fbafc1d..00000000 --- a/meta-xilinx-bsp/recipes-core/newlib/libgloss_2.5.0.bb +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | |||
| 2 | require newlib.inc | ||
| 3 | |||
| 4 | DEPENDS += "newlib" | ||
| 5 | |||
| 6 | do_configure() { | ||
| 7 | ${S}/libgloss/configure ${CONFIGUREOPTS} | ||
| 8 | } | ||
| 9 | |||
| 10 | do_install_prepend() { | ||
| 11 | # install doesn't create this itself | ||
| 12 | install -d ${D}${prefix}/${TARGET_SYS}/lib | ||
| 13 | } | ||
| 14 | |||
| 15 | FILES_${PN} += "${libdir}/*.ld ${libdir}/*.specs" | ||
| 16 | |||
| 17 | INHIBIT_PACKAGE_STRIP = "1" | ||
| 18 | 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 00000000..cff4a265 --- /dev/null +++ b/meta-xilinx-bsp/recipes-core/newlib/libgloss_3.0.0.bb | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | |||
| 2 | require newlib.inc | ||
| 3 | |||
| 4 | DEPENDS += "newlib" | ||
| 5 | |||
| 6 | do_configure() { | ||
| 7 | ${S}/libgloss/configure ${EXTRA_OECONF} | ||
| 8 | } | ||
| 9 | |||
| 10 | do_install_prepend() { | ||
| 11 | # install doesn't create this itself, avoid install error | ||
| 12 | install -d ${D}${prefix}/${TARGET_SYS}/lib | ||
| 13 | } | ||
| 14 | |||
| 15 | do_install_append() { | ||
| 16 | # Move libs to default directories so they can be picked up later | ||
| 17 | mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir} | ||
| 18 | |||
| 19 | # Remove original directory | ||
| 20 | rmdir ${D}${prefix}/${TARGET_SYS} | ||
| 21 | } | ||
| 22 | |||
| 23 | # Split packages correctly | ||
| 24 | FILES_${PN} += "${libdir}/*.ld ${libdir}/*.specs" | ||
| 25 | |||
| 26 | INHIBIT_PACKAGE_STRIP = "1" | ||
| 27 | 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 2fb2301d..37ad6be1 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 = " \ | |||
| 10 | file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \ | 10 | file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \ |
| 11 | file://COPYING.LIBGLOSS;md5=73f5c98779aea7dba4a6c94a74ab0ae2 \ | 11 | file://COPYING.LIBGLOSS;md5=73f5c98779aea7dba4a6c94a74ab0ae2 \ |
| 12 | file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ | 12 | file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ |
| 13 | file://COPYING.NEWLIB;md5=bfdd6396bf3b02bd23ffbb9f7ddfbec6 \ | 13 | file://COPYING.NEWLIB;md5=956a4b1487f7677cdcceeee8f05a21f0 \ |
| 14 | file://newlib/libc/posix/COPYRIGHT;md5=103468ff1982be840fdf4ee9f8b51bbf \ | 14 | file://newlib/libc/posix/COPYRIGHT;md5=103468ff1982be840fdf4ee9f8b51bbf \ |
| 15 | file://newlib/libc/sys/linux/linuxthreads/LICENSE;md5=73640207fbc79b198c7ffd4ad4d97aa0 \ | 15 | file://newlib/libc/sys/linux/linuxthreads/LICENSE;md5=73640207fbc79b198c7ffd4ad4d97aa0 \ |
| 16 | " | 16 | " |
| 17 | 17 | ||
| 18 | SRC_URI = "ftp://sourceware.org/pub/newlib/newlib-${PV}.tar.gz" | 18 | SRC_URI = "ftp://sourceware.org/pub/newlib/newlib-${PV}.tar.gz" |
| 19 | SRC_URI[md5sum] = "767dc60aaf814d091997d91d588968b2" | 19 | SRC_URI[md5sum] = "81ec873108b8593c586f91ca65963952" |
| 20 | SRC_URI[sha256sum] = "5b76a9b97c9464209772ed25ce55181a7bb144a66e5669aaec945aa64da3189b" | 20 | SRC_URI[sha256sum] = "c8566335ee74e5fcaeb8595b4ebd0400c4b043d6acb3263ecb1314f8f5501332" |
| 21 | 21 | ||
| 22 | INHIBIT_DEFAULT_DEPS = "1" | 22 | INHIBIT_DEFAULT_DEPS = "1" |
| 23 | DEPENDS = "virtual/${TARGET_PREFIX}gcc" | 23 | DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial" |
| 24 | |||
| 25 | PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:" | ||
| 26 | STAGINGCC = "${MLPREFIX}gcc-cross-initial-${TARGET_ARCH}" | ||
| 24 | 27 | ||
| 25 | S = "${WORKDIR}/newlib-${PV}" | 28 | S = "${WORKDIR}/newlib-${PV}" |
| 26 | B = "${WORKDIR}/build" | 29 | B = "${WORKDIR}/build" |
| 27 | 30 | ||
| 28 | # disable use of a link hash style | 31 | # Disable use of a link hash style |
| 29 | TARGET_LINK_HASH_STYLE_microblaze = "" | 32 | TARGET_LINK_HASH_STYLE_microblaze = "" |
| 30 | 33 | ||
| 31 | # disable stdlib | 34 | # disable stdlib |
| 32 | TARGET_CC_ARCH_append = " -nostdlib" | 35 | TARGET_CC_ARCH_append = " -nostdlib" |
| 33 | 36 | ||
| 34 | CONFIGUREOPTS = " \ | 37 | EXTRA_OECONF = " \ |
| 35 | --build=${BUILD_SYS} \ | 38 | --build=${BUILD_SYS} \ |
| 39 | --target=${TARGET_SYS} \ | ||
| 36 | --host=${HOST_SYS} \ | 40 | --host=${HOST_SYS} \ |
| 37 | --target=${TARGET_SYS} \ | 41 | --prefix=${prefix} \ |
| 38 | --prefix=${prefix} \ | 42 | --exec-prefix=${exec_prefix} \ |
| 39 | --exec-prefix=${exec_prefix} \ | 43 | --bindir=${bindir} \ |
| 40 | --bindir=${bindir} \ | 44 | --libdir=${libdir} \ |
| 41 | --libdir=${libdir} \ | 45 | --includedir=${includedir} \ |
| 42 | --includedir=${includedir} \ | ||
| 43 | --enable-languages=c \ | 46 | --enable-languages=c \ |
| 44 | --with-newlib \ | 47 | --with-newlib \ |
| 45 | --with-gnu-as \ | 48 | --with-gnu-as \ |
| @@ -51,9 +54,5 @@ do_configure[cleandirs] = "${B}" | |||
| 51 | 54 | ||
| 52 | do_install() { | 55 | do_install() { |
| 53 | oe_runmake install DESTDIR='${D}' | 56 | oe_runmake install DESTDIR='${D}' |
| 54 | |||
| 55 | # output of headers/libs in 'tooldir' subdirectories, move it up to the prefix dir. | ||
| 56 | mv ${D}${prefix}/${TARGET_SYS}/* ${D}${prefix}/ | ||
| 57 | rmdir ${D}${prefix}/${TARGET_SYS} | ||
| 58 | } | 57 | } |
| 59 | 58 | ||
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 dc30c6b2..00000000 --- a/meta-xilinx-bsp/recipes-core/newlib/newlib_2.5.0.bb +++ /dev/null | |||
| @@ -1,11 +0,0 @@ | |||
| 1 | |||
| 2 | require newlib.inc | ||
| 3 | |||
| 4 | do_configure_prepend_microblaze() { | ||
| 5 | # hack for microblaze, which needs xilinx.ld to literally do any linking (its hard coded in its LINK_SPEC) | ||
| 6 | export CC="${CC} -L${S}/libgloss/microblaze" | ||
| 7 | } | ||
| 8 | |||
| 9 | do_configure() { | ||
| 10 | ${S}/configure ${CONFIGUREOPTS} | ||
| 11 | } | ||
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 00000000..3d313503 --- /dev/null +++ b/meta-xilinx-bsp/recipes-core/newlib/newlib_3.0.0.bb | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | require newlib.inc | ||
| 2 | |||
| 3 | do_configure_prepend_microblaze() { | ||
| 4 | # hack for microblaze, which needs xilinx.ld to literally do any linking (its hard coded in its LINK_SPEC) | ||
| 5 | export CC="${CC} -L${S}/libgloss/microblaze" | ||
| 6 | } | ||
| 7 | |||
| 8 | do_configure() { | ||
| 9 | ${S}/configure ${EXTRA_OECONF} | ||
| 10 | } | ||
| 11 | |||
| 12 | do_install_append() { | ||
| 13 | # Move include files and libs to default directories so they can be picked up later | ||
| 14 | mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir} | ||
| 15 | mv -v ${D}${prefix}/${TARGET_SYS}/include ${D}${includedir} | ||
| 16 | |||
| 17 | # Remove original directory | ||
| 18 | rmdir ${D}${prefix}/${TARGET_SYS} | ||
| 19 | } | ||
