On Tue, 15 Jul 2008 22:34:33 +0100 Ciaran McCreesh <[EMAIL PROTECTED]> wrote:
> On Tue, 15 Jul 2008 23:23:26 +0200 > Marius Mauch <[EMAIL PROTECTED]> wrote: > > Right, just I'd expect the parsing of SRC_URI (with conditionals) to > > be a bit tricky in bash, not something I'm going to work on. An > > eclass-based solution would have a few benefits though wrt the > > metadata cache. > > Well... You don't really have to parse it. > > for p in $SRC_URI ; do > if [[ "${p}" == "(" ]] || [[ "${p}" == ")" ]] || \ > [[ "${p%\?}" != "${p}" ]] ; then > UNPACK_DEPENDS="${UNPACK_DEPENDS} $p " > elif [[ "${p%.zip}" != "${p}" ]] ; then > UNPACK_DEPENDS="${UNPACK_DEPENDS} app-arch/unzip " > elif [[ "${p%.bz2}" != "${p}" ]] ; then > UNPACK_DEPENDS="${UNPACK_DEPENDS} app-arch/bzip2 " > fi > done > > Granted, it'll generate invalid output if SRC_URI is invalid (for > example, if SRC_URI has mismatched parens, the output will too), but I > can't think of any situation where breaking DEPEND if SRC_URI is > already broken is a problem. Interesting idea. Unfortunately our depstring parser doesn't like empty parentheses (as they are usually problem indicators), so it doesn't work out. Marius -- gentoo-dev@lists.gentoo.org mailing list