Gentoo Archives: gentoo-commits

From: Mike Frysinger <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/crossdev:master commit in: /
Date: Wed, 29 Feb 2012 16:22:45
Message-Id: 1330449636.c0d8915eefa7f334f3912440016f50bd0b32995e.vapier@gentoo
1 commit: c0d8915eefa7f334f3912440016f50bd0b32995e
2 Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 28 17:20:36 2012 +0000
4 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 28 17:20:36 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/crossdev.git;a=commit;h=c0d8915e
7
8 crossdev: output config in a shell-evalable style
9
10 Should simplify scripts trying to parse this as now they can do:
11 eval $(crossdev --show-target-cfg ...); echo $foo
12
13 Rather than manually parsing like:
14 foo=$(crossdev --show-target-cfg ... | awk '$1 == "foo" { print $NF }')
15
16 Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>
17
18 ---
19 crossdev | 23 ++++++++++++++++-------
20 1 files changed, 16 insertions(+), 7 deletions(-)
21
22 diff --git a/crossdev b/crossdev
23 index 50a523e..68389d5 100755
24 --- a/crossdev
25 +++ b/crossdev
26 @@ -537,7 +537,7 @@ for with in HEADERS ; do
27 done
28
29 show_target_cfg() {
30 - local pkgs
31 + local pkgs crosspkgs=()
32
33 pkgs=(
34 binutils B
35 @@ -547,18 +547,27 @@ show_target_cfg() {
36 )
37 ex_gdb && pkgs+=( gdb D )
38
39 - echo "arch ${TARCH}"
40 - echo "target ${CTARGET}"
41 - echo "category cross-${CTARGET}"
42 + echo "arch=${TARCH}"
43 + echo "target=${CTARGET}"
44 + echo "category=cross-${CTARGET}"
45 while [[ ${#pkgs[@]} -gt 0 ]] ; do
46 - local vcat="${pkgs[1]}CAT"
47 - local vpkg="${pkgs[1]}PKG"
48 + local pkg=${pkgs[0]}
49 + local v=${pkgs[1]}
50 + local vcat="${v}CAT"
51 + local vpkg="${v}PKG"
52 + local ocat="${pkg}_category"
53 + local opkg="${pkg}_pn"
54
55 if [[ ${!vpkg} != "[none]" ]] ; then
56 - echo "${pkgs[0]} ${!vcat} ${!vpkg}"
57 + echo "${ocat}=${!vcat}"
58 + echo "${opkg}=${!vpkg}"
59 + else
60 + printf '%s=\n' "${ocat}" "${opkg}"
61 fi
62 + crosspkgs+=( ${pkg} )
63 pkgs=( ${pkgs[@]:2} )
64 done
65 + echo "crosspkgs='${crosspkgs[*]}'"
66
67 exit 0
68 }