Gentoo Archives: gentoo-embedded

From: Joakim Tjernlund <joakim.tjernlund@×××××××××.se>
To: gentoo-embedded@l.g.o
Cc: Joakim Tjernlund <joakim.tjernlund@×××××××××.se>
Subject: [gentoo-embedded] [PATCH] Add cross-ebuild
Date: Tue, 21 Jul 2015 08:12:17
Message-Id: 1437466326-26703-1-git-send-email-joakim.tjernlund@transmode.se
1 This avoids having to type:
2 CROSS_CMD=ebuild CHOST-emerge
3
4 Signed-off-by: Joakim Tjernlund <joakim.tjernlund@×××××××××.se>
5 ---
6 crossdev | 2 +-
7 wrappers/Makefile | 2 +-
8 wrappers/cross-ebuild | 12 ++++++++++++
9 wrappers/emerge-wrapper | 2 +-
10 4 files changed, 15 insertions(+), 3 deletions(-)
11 create mode 100755 wrappers/cross-ebuild
12
13 diff --git a/crossdev b/crossdev
14 index b501ad8..09598db 100755
15 --- a/crossdev
16 +++ b/crossdev
17 @@ -434,7 +434,7 @@ uninstall() {
18
19 # clean out files from crossdev itself
20 [[ -e /var/db/pkg/cross-${CTARGET} ]] && rmdir /var/db/pkg/cross-${CTARGET}
21 - rm -f /usr/bin/${CTARGET}-{emerge,fix-root,pkg-config} /usr/bin/emerge-${CTARGET}
22 + rm -f /usr/bin/${CTARGET}-{ebuild,emerge,fix-root,pkg-config} /usr/bin/emerge-${CTARGET}
23
24 for f in make.{conf,globals,profile} ; do
25 f="/usr/${CTARGET}/etc/${f}"
26 diff --git a/wrappers/Makefile b/wrappers/Makefile
27 index 144ecc1..97de34e 100644
28 --- a/wrappers/Makefile
29 +++ b/wrappers/Makefile
30 @@ -4,7 +4,7 @@
31 include ../settings.mk
32
33 PORTDIR ?= $(shell portageq envvar PORTDIR)
34 -FNAMES = cross-emerge cross-fix-root cross-pkg-config emerge-wrapper
35 +FNAMES = cross-ebuild cross-emerge cross-fix-root cross-pkg-config emerge-wrapper
36 SITE = $(PREFIX)/share/crossdev/include/site
37 TOPDIR =
38
39 diff --git a/wrappers/cross-ebuild b/wrappers/cross-ebuild
40 new file mode 100755
41 index 0000000..c14dc91
42 --- /dev/null
43 +++ b/wrappers/cross-ebuild
44 @@ -0,0 +1,12 @@
45 +#!/bin/sh
46 +# Copyright 2015 Gentoo Foundation
47 +# Distributed under the terms of the GNU General Public License v2
48 +
49 +if [ -z "${CHOST}" ] ; then
50 + CHOST=${0##*/}
51 + CHOST=${CHOST%-ebuild}
52 + CHOST=${CHOST#ebuild-}
53 +fi
54 +export CHOST
55 +
56 +CROSS_CMD=ebuild cross-emerge "$@"
57 diff --git a/wrappers/emerge-wrapper b/wrappers/emerge-wrapper
58 index e375025..8db0ac4 100755
59 --- a/wrappers/emerge-wrapper
60 +++ b/wrappers/emerge-wrapper
61 @@ -81,7 +81,7 @@ cross_wrap_bin()
62
63 pushd "${0%/*}" >/dev/null
64 local wrapper
65 - for wrapper in emerge fix-root pkg-config ; do
66 + for wrapper in ebuild emerge fix-root pkg-config ; do
67 ln -sf cross-${wrapper} ${CHOST}-${wrapper}
68 done
69 # some people like their tab completion
70 --
71 2.3.6