From 972dcfcdbfe75dcfeb777150c136576cf1a71e99 Mon Sep 17 00:00:00 2001 From: Tudor Florea Date: Fri, 9 Oct 2015 22:59:03 +0200 Subject: initial commit for Enea Linux 5.0 arm Signed-off-by: Tudor Florea --- .../tar/tar-1.17/avoid_heap_overflow.patch | 22 +++++++++++ .../recipes-extended/tar/tar-1.17/gcc43build.patch | 37 ++++++++++++++++++ .../tar/tar-1.17/m4extensions.patch | 30 +++++++++++++++ .../tar/tar-replacement-native_1.27.1.bb | 6 +++ meta/recipes-extended/tar/tar.inc | 45 ++++++++++++++++++++++ meta/recipes-extended/tar/tar/remove-gets.patch | 22 +++++++++++ meta/recipes-extended/tar/tar_1.17.bb | 14 +++++++ meta/recipes-extended/tar/tar_1.27.1.bb | 10 +++++ 8 files changed, 186 insertions(+) create mode 100644 meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch create mode 100644 meta/recipes-extended/tar/tar-1.17/gcc43build.patch create mode 100644 meta/recipes-extended/tar/tar-1.17/m4extensions.patch create mode 100644 meta/recipes-extended/tar/tar-replacement-native_1.27.1.bb create mode 100644 meta/recipes-extended/tar/tar.inc create mode 100644 meta/recipes-extended/tar/tar/remove-gets.patch create mode 100644 meta/recipes-extended/tar/tar_1.17.bb create mode 100644 meta/recipes-extended/tar/tar_1.27.1.bb (limited to 'meta/recipes-extended/tar') diff --git a/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch b/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch new file mode 100644 index 0000000000..da2ae3cb0f --- /dev/null +++ b/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch @@ -0,0 +1,22 @@ +Upstream-Status: Inappropriate [bugfix: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624] + +This patch avoids heap overflow reported by : +http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624 + +This is a clean patch for the GPLv2 tar recipe. + +Nitin A Kamble 2011/04/25 + +Index: tar-1.17/lib/rtapelib.c +=================================================================== +--- tar-1.17.orig/lib/rtapelib.c ++++ tar-1.17/lib/rtapelib.c +@@ -570,7 +570,7 @@ rmt_read__ (int handle, char *buffer, si + + sprintf (command_buffer, "R%lu\n", (unsigned long) length); + if (do_command (handle, command_buffer) == -1 +- || (status = get_status (handle)) == SAFE_READ_ERROR) ++ || ((status = get_status (handle)) == SAFE_READ_ERROR) || (status > length)) + return SAFE_READ_ERROR; + + for (counter = 0; counter < status; counter += rlen, buffer += rlen) diff --git a/meta/recipes-extended/tar/tar-1.17/gcc43build.patch b/meta/recipes-extended/tar/tar-1.17/gcc43build.patch new file mode 100644 index 0000000000..f8059a0a89 --- /dev/null +++ b/meta/recipes-extended/tar/tar-1.17/gcc43build.patch @@ -0,0 +1,37 @@ +Upstream-Status: Inappropriate [licensing] + +# Fix errors when built with gcc 4.3 +# Patch taken from Debian bug #452096 + +diff -urN tar-1.17.orig/lib/argp-fmtstream.h tar-1.17/lib/argp-fmtstream.h +--- tar-1.17.orig/lib/argp-fmtstream.h 2006-01-11 12:24:05.000000000 -0800 ++++ tar-1.17/lib/argp-fmtstream.h 2010-07-22 22:36:12.000000000 -0700 +@@ -198,7 +198,11 @@ + #endif + + #ifndef ARGP_FS_EI +-#define ARGP_FS_EI extern inline ++ #if defined __GNUC_STDC_INLINE__ ++ #define ARGP_FS_EI extern inline __attribute__((__gnu_inline__)) ++ #else ++ #define ARGP_FS_EI extern inline ++ #endif + #endif + + ARGP_FS_EI size_t +diff -urN tar-1.17.orig/lib/argp.h tar-1.17/lib/argp.h +--- tar-1.17.orig/lib/argp.h 2007-03-30 00:09:11.000000000 -0700 ++++ tar-1.17/lib/argp.h 2010-07-22 22:38:44.000000000 -0700 +@@ -580,7 +580,11 @@ + # endif + + # ifndef ARGP_EI +-# define ARGP_EI extern __inline__ ++# if defined __GNUC_STDC_INLINE__ ++# define ARGP_EI extern __inline__ __attribute__((__gnu_inline__)) ++# else ++# define ARGP_EI extern __inline__ ++# endif + # endif + + ARGP_EI void diff --git a/meta/recipes-extended/tar/tar-1.17/m4extensions.patch b/meta/recipes-extended/tar/tar-1.17/m4extensions.patch new file mode 100644 index 0000000000..30534c29ce --- /dev/null +++ b/meta/recipes-extended/tar/tar-1.17/m4extensions.patch @@ -0,0 +1,30 @@ +Upstream-Status: Inappropriate [licensing] + +# Define AC_USE_SYSTEM_EXTENSIONS only if it was previously undefined. +# This is needed to configure correctly with newer versions of autoconf. + +--- tar-1.17/m4/extensions.m4.orig 2010-07-22 22:21:35.000000000 -0700 ++++ tar-1.17/m4/extensions.m4 2010-07-22 22:23:41.000000000 -0700 +@@ -1,4 +1,4 @@ +-# serial 4 -*- Autoconf -*- ++# serial 5 -*- Autoconf -*- + # Enable extensions on systems that normally disable them. + + # Copyright (C) 2003, 2006 Free Software Foundation, Inc. +@@ -16,6 +16,7 @@ + # ------------------------ + # Enable extensions on systems that normally disable them, + # typically due to standards-conformance issues. ++m4_ifdef([AC_USE_SYSTEM_EXTENSIONS], [], [ + AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], + [ + AC_BEFORE([$0], [AC_COMPILE_IFELSE]) +@@ -48,7 +49,7 @@ + AC_DEFINE([__EXTENSIONS__]) + AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) + AC_DEFINE([_TANDEM_SOURCE]) +-]) ++])]) + + # gl_USE_SYSTEM_EXTENSIONS + # ------------------------ diff --git a/meta/recipes-extended/tar/tar-replacement-native_1.27.1.bb b/meta/recipes-extended/tar/tar-replacement-native_1.27.1.bb new file mode 100644 index 0000000000..071ede765b --- /dev/null +++ b/meta/recipes-extended/tar/tar-replacement-native_1.27.1.bb @@ -0,0 +1,6 @@ +require tar_${PV}.bb + +inherit native + +BPN = "tar" +EXTRAINSTALL = "" diff --git a/meta/recipes-extended/tar/tar.inc b/meta/recipes-extended/tar/tar.inc new file mode 100644 index 0000000000..51d49340a1 --- /dev/null +++ b/meta/recipes-extended/tar/tar.inc @@ -0,0 +1,45 @@ +SUMMARY = "GNU file archiving program" +DESCRIPTION = "GNU tar saves many files together into a single tape \ +or disk archive, and can restore individual files from the archive." +HOMEPAGE = "http://www.gnu.org/software/tar/" +SECTION = "base" + +SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2" + +inherit autotools gettext texinfo + +EXTRA_OECONF += "DEFAULT_RMT_DIR=${base_sbindir}" + +EXTRAINSTALL = "do_install_extra" +EXTRAINSTALL_class-nativesdk = "" + +do_install () { + autotools_do_install + ${EXTRAINSTALL} +} + +do_install_extra () { + install -d ${D}${base_bindir} + mv ${D}${bindir}/tar ${D}${base_bindir}/tar + rmdir ${D}${bindir}/ +} + +PACKAGES =+ "${PN}-rmt" + +PACKAGECONFIG[acl] = "--with-posix-acls, --without-posix-acls, acl," + +FILES_${PN}-rmt = "${base_sbindir}/rmt*" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" + +ALTERNATIVE_${PN} = "tar" +ALTERNATIVE_${PN}-rmt = "rmt" +ALTERNATIVE_${PN}_class-nativesdk = "" +ALTERNATIVE_${PN}-rmt_class-nativesdk = "" + +ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar" +ALTERNATIVE_LINK_NAME[rmt] = "${base_sbindir}/rmt" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-extended/tar/tar/remove-gets.patch b/meta/recipes-extended/tar/tar/remove-gets.patch new file mode 100644 index 0000000000..0b8be39eed --- /dev/null +++ b/meta/recipes-extended/tar/tar/remove-gets.patch @@ -0,0 +1,22 @@ +ISO C11 removes the specification of gets() from the C language, eglibc 2.16+ removed it + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +Index: tar-1.27/gnu/stdio.in.h +=================================================================== +--- tar-1.27.orig/gnu/stdio.in.h 2013-06-29 08:54:26.000000000 +0300 ++++ tar-1.27/gnu/stdio.in.h 2013-10-16 15:22:46.977204737 +0300 +@@ -710,10 +710,12 @@ + /* It is very rare that the developer ever has full control of stdin, + so any use of gets warrants an unconditional warning; besides, C11 + removed it. */ ++#if defined gets + #undef gets + #if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); + #endif ++#endif + + + #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@ diff --git a/meta/recipes-extended/tar/tar_1.17.bb b/meta/recipes-extended/tar/tar_1.17.bb new file mode 100644 index 0000000000..b9ca2063df --- /dev/null +++ b/meta/recipes-extended/tar/tar_1.17.bb @@ -0,0 +1,14 @@ +require tar.inc + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" + +PR = "r3" + +SRC_URI += "file://m4extensions.patch \ + file://gcc43build.patch \ + file://avoid_heap_overflow.patch \ + " + +SRC_URI[md5sum] = "c6c4f1c075dbf0f75c29737faa58f290" +SRC_URI[sha256sum] = "19f9021dda51a16295e4706e80870e71f87107675e51c176a491eba0fc4ca492" diff --git a/meta/recipes-extended/tar/tar_1.27.1.bb b/meta/recipes-extended/tar/tar_1.27.1.bb new file mode 100644 index 0000000000..439bb500b9 --- /dev/null +++ b/meta/recipes-extended/tar/tar_1.27.1.bb @@ -0,0 +1,10 @@ +require tar.inc + +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI += "file://remove-gets.patch \ + " + +SRC_URI[md5sum] = "490e074dd7e71f553df8357a7ef9bdcf" +SRC_URI[sha256sum] = "9b0fb3ce8512059337add0da5f8f0f7d7647f2201f5ece24581d620ea60337c6" -- cgit v1.2.3-54-g00ecf