diff options
author | Mike Frysinger <vapier@chromium.org> | 2018-01-10 00:48:35 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2018-01-10 00:48:42 -0500 |
commit | 0b6c782b7853ff796d16200301ced0b34e16c594 (patch) | |
tree | 5c048b2cc9195784f4af8c444a011f591db4f6b9 /sys-apps | |
parent | app-admin/perl-cleaner: mark 2.25 m68k/s390/sh (diff) | |
download | gentoo-0b6c782b7853ff796d16200301ced0b34e16c594.tar.gz gentoo-0b6c782b7853ff796d16200301ced0b34e16c594.tar.bz2 gentoo-0b6c782b7853ff796d16200301ced0b34e16c594.zip |
sys-apps/dtc: change dtdiff to use /bin/sh
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/dtc/dtc-1.4.4-r1.ebuild | 56 | ||||
-rw-r--r-- | sys-apps/dtc/dtc-9999.ebuild | 8 | ||||
-rw-r--r-- | sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch | 48 |
3 files changed, 111 insertions, 1 deletions
diff --git a/sys-apps/dtc/dtc-1.4.4-r1.ebuild b/sys-apps/dtc/dtc-1.4.4-r1.ebuild new file mode 100644 index 000000000000..7521eebe76e8 --- /dev/null +++ b/sys-apps/dtc/dtc-1.4.4-r1.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit multilib toolchain-funcs eutils + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/dtc/dtc.git" + inherit git-r3 +else + SRC_URI="mirror://kernel/software/utils/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +fi + +DESCRIPTION="Open Firmware device tree compiler" +HOMEPAGE="https://devicetree.org/ https://git.kernel.org/cgit/utils/dtc/dtc.git/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="static-libs" + +DEPEND=" + sys-devel/bison + sys-devel/flex +" +DOCS=" + Documentation/dt-object-internal.txt + Documentation/dts-format.txt + Documentation/manual.txt +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.4.4-posix-shell.patch +) + +src_prepare() { + default + + sed -i \ + -e '/^CFLAGS =/s:=:+=:' \ + -e '/^CPPFLAGS =/s:=:+=:' \ + -e 's:-Werror::' \ + -e 's:-g -Os::' \ + -e "/^PREFIX =/s:=.*:= ${EPREFIX}/usr:" \ + -e "/^LIBDIR =/s:=.*:= \$(PREFIX)/$(get_libdir):" \ + Makefile || die + + tc-export AR CC + export V=1 +} + +src_install() { + default + + use static-libs || find "${ED}" -name '*.a' -delete +} diff --git a/sys-apps/dtc/dtc-9999.ebuild b/sys-apps/dtc/dtc-9999.ebuild index 1dc3915445fb..7521eebe76e8 100644 --- a/sys-apps/dtc/dtc-9999.ebuild +++ b/sys-apps/dtc/dtc-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -24,9 +24,15 @@ DEPEND=" sys-devel/flex " DOCS=" + Documentation/dt-object-internal.txt + Documentation/dts-format.txt Documentation/manual.txt " +PATCHES=( + "${FILESDIR}"/${PN}-1.4.4-posix-shell.patch +) + src_prepare() { default diff --git a/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch b/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch new file mode 100644 index 000000000000..b9b0175c0bd3 --- /dev/null +++ b/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch @@ -0,0 +1,48 @@ +From 4d9522764985462741c7bb4af1ab231b9251476b Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@chromium.org> +Date: Wed, 10 Jan 2018 00:41:43 -0500 +Subject: [PATCH] dtdiff: change to POSIX shell + +This changes from the bash-specific process substitution feature to +reading with pipes. It relies on /dev/fd or /proc/self/fd existing. + +URL: https://crbug.com/756559 +Signed-off-by: Mike Frysinger <vapier@chromium.org> +--- + dtdiff | 19 +++++++++++++------ + 1 file changed, 13 insertions(+), 6 deletions(-) + +diff --git a/dtdiff b/dtdiff +index 5fa772b0ab62..4d1b71756c2f 100644 +--- a/dtdiff ++++ b/dtdiff +@@ -1,8 +1,4 @@ +-#! /bin/bash +- +-# This script uses the bash <(...) extension. +-# If you want to change this to work with a generic /bin/sh, make sure +-# you fix that. ++#! /bin/sh + + + DTC=dtc +@@ -35,4 +31,15 @@ if [ $# != 2 ]; then + exit 1 + fi + +-diff -u <(source_and_sort "$1") <(source_and_sort "$2") ++for dir in /dev/fd /proc/self/fd; do ++ if [ -d "${dir}" ]; then ++ break ++ fi ++done ++ ++source_and_sort "$1" | ( ++ # Duplicate current stdin from the first file to fd 3 so we can change fd 0 ++ # to the second file. ++ exec 3<&0 ++ source_and_sort "$2" | diff -u "${dir}/3" "${dir}/0" ++) +-- +2.15.1 + |