Chromium Code Reviews| Index: cros_workon |
| diff --git a/cros_workon b/cros_workon |
| index 6f7aeaaf60bc0c2933a6b9fa15c6541a43711853..e327a0d7f8c9a5a73e5546cb399d2d9302fbcf93 100755 |
| --- a/cros_workon |
| +++ b/cros_workon |
| @@ -45,12 +45,32 @@ KEYWORDS_FILE=${KEYWORDS_DIR}/cros-workon |
| sudo mkdir -p "${KEYWORDS_DIR}" || die "mkdir -p ${KEYWORDS_DIR}" |
| sudo touch "${KEYWORDS_FILE}" || die "touch ${KEYWORDS_FILE}" |
| +# Canonicalize package name to category/package. |
| +canonicalize_name () { |
| + equery-${FLAGS_board} which $1 | \ |
|
sosa
2010/07/01 17:44:07
If only equery list could do this with an option i
|
| + awk -F '/' '{ print $(NF-2) "/" $(NF-1) }' |
| +} |
| + |
| +# Canonicalize a list of names |
|
sosa
2010/07/01 17:44:07
Period at end.
|
| +canonicalize_names () { |
| + local atoms=$1 |
| + local names |
|
sosa
2010/07/01 17:44:07
Prefer if you explicitly set names to ""
|
| + |
| + for atom in ${atoms}; do |
| + local name=$(canonicalize_name "${atom}") |
| + [ -n "${name}" ] || return 1 |
| + names+=" ${name}" |
| + done |
| + echo ${names} |
| +} |
| + |
| # Display ebuilds currently part of the live branch and open for development. |
| show_live_ebuilds () { |
| cat "${KEYWORDS_FILE}" |
| } |
| ATOM_LIST=$@ |
| +ATOM_LIST=$(canonicalize_names "${ATOM_LIST}") || die "Invalid package name" |
| [ -n "${ATOM_LIST}" ] || ATOM_LIST=$(show_live_ebuilds) |
| # Move a stable ebuild to the live development catgeory. The ebuild |