From 15b694e5f0209c76ca08d7313bb8e66b4e5fde62 Mon Sep 17 00:00:00 2001 From: Stephane Desneux Date: Tue, 9 Apr 2013 19:31:39 +0200 Subject: [PATCH] updated global and local conf samples; added yreport in yoctorc --- meta-tizen-ivi/conf/global.conf | 4 +- meta-tizen-ivi/conf/local.conf.sample | 19 +++++++++ yoctorc | 76 +++++++++++++++++++++++++++++++++-- 3 files changed, 94 insertions(+), 5 deletions(-) diff --git a/meta-tizen-ivi/conf/global.conf b/meta-tizen-ivi/conf/global.conf index 4d8832a..fe05ffd 100644 --- a/meta-tizen-ivi/conf/global.conf +++ b/meta-tizen-ivi/conf/global.conf @@ -177,9 +177,9 @@ USER_CLASSES ?= "buildstats image-mklibs image-prelink" # Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none # Note: currently, Konsole support only works for KDE 3.x due to the way # newer Konsole versions behave -OE_TERMINAL = "screen" +OE_TERMINAL ?= "screen" # By default disable interactive patch resolution (tasks will just fail instead): -PATCHRESOLVE = "noop" +PATCHRESOLVE ?= "noop" # # Disk Space Monitoring during the build diff --git a/meta-tizen-ivi/conf/local.conf.sample b/meta-tizen-ivi/conf/local.conf.sample index 8592e2e..b455cff 100644 --- a/meta-tizen-ivi/conf/local.conf.sample +++ b/meta-tizen-ivi/conf/local.conf.sample @@ -61,6 +61,25 @@ SSTATE_DIR ?= "${TOPDIR}/../../sstate-cache" # this doesn't mean anything to you. CONF_VERSION = "1" +# +# Interactive shell configuration +# +# Under certain circumstances the system may need input from you and to do this it +# can launch an interactive shell. It needs to do this since the build is +# multithreaded and needs to be able to handle the case where more than one parallel +# process may require the user's attention. The default is iterate over the available +# terminal types to find one that works. +# +# Examples of the occasions this may happen are when resolving patches which cannot +# be applied, to use the devshell or the kernel menuconfig +# +# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none +# Note: currently, Konsole support only works for KDE 3.x due to the way +# newer Konsole versions behave +OE_TERMINAL = "gnome" +# By default disable interactive patch resolution (tasks will just fail instead): +PATCHRESOLVE = "noop" + ################################################# # remove work files when build succeeds diff --git a/yoctorc b/yoctorc index fd06bf2..f3df62c 100644 --- a/yoctorc +++ b/yoctorc @@ -95,7 +95,7 @@ function ybb () { ycheck || return 1 pkg=${1:-$YOCTO_LAST_PKG} - [[ -z "pkg" ]] && { echo "Usage: ytmp " >&2; return 1; } + [[ -z "pkg" ]] && { echo "Usage: ybb " >&2; return 1; } ycd $pkg bb } @@ -103,7 +103,7 @@ function ysrc () { ycheck || return 1 pkg=${1:-$YOCTO_LAST_PKG} - [[ -z "pkg" ]] && { echo "Usage: ytmp " >&2; return 1; } + [[ -z "pkg" ]] && { echo "Usage: ysrc " >&2; return 1; } ycd $pkg src } @@ -119,10 +119,31 @@ function ydep () { ycheck || return 1 pkg=${1:-$YOCTO_LAST_PKG} - [[ -z "pkg" ]] && { echo "Usage: ytmp " >&2; return 1; } + [[ -z "pkg" ]] && { echo "Usage: ydep " >&2; return 1; } + + pushd $YOCTO_BUILDDIR >/dev/null || return bitbake -g -u depexp $pkg & + popd >/dev/null +} + +function yshell () { + ycheck || return 1 + + pkg=${1:-$YOCTO_LAST_PKG} + [[ -z "pkg" ]] && { echo "Usage: yshell " >&2; return 1; } + pushd $YOCTO_BUILDDIR >/dev/null || return + bitbake -c devshell $pkg + popd >/dev/null +} + +function bbake() { + ycheck || return 1 + pushd $YOCTO_BUILDDIR >/dev/null || return + bitbake "$@" + popd >/dev/null } + function yed() { ycheck || return 1 @@ -234,6 +255,55 @@ function yumount_work() { popd >/dev/null } +function yreport() { + ycheck || return 1 + + pushd $YOCTO_BUILDDIR >/dev/null || return + + workdir=$(ls -d tmp-* 2>/dev/null) + [[ -z "$workdir" ]] && { echo "Unable to find work dir"; return 1; } + + pushd $workdir/stamps >/dev/null || return 2 + + echo "Architecture;Package;Version;State" + for arch in $(ls -d * 2>/dev/null); do + pushd $arch >/dev/null || return 3 + for pkg in $(ls -d * 2>/dev/null); do + data=$(ls -tr $pkg | grep -v ".sigdata." | tail -1 | awk '{ x=$0; gsub(/\.do_.+$/,"",x); y=substr($0,length(x)+5); gsub(/\..+$/,"",y); printf("%s;%s",x,y); }') + + ver=$(cut -f1 -d';' <<<$data) + step=$(cut -f2 -d';' <<<$data) + + state=$(egrep "^$step:" </dev/null + done + + popd >/dev/null + popd >/dev/null +} + if [[ "$PS1" ]]; then echo "Sourced ~/.yoctorc" fi -- 2.7.4