<snip> elog "emerge -va1 \$(qfile -qC" /usr/lib/gtk-2.0/2.[^1]* ")" </snip> The above doesn't work at all, only produces an error: emerge: error: no such option: -[ Here's a working command: emerge -av1 $(qfile -qC /usr/lib/gtk-2.0/2.[^1]*)
Thanks for noticing this, after 5 months of it being so :) Quite embarassing in hindsight. Fixed now
OK, ended up like this: <snip> elog "You need to rebuild ebuilds that installed into" /usr/lib/gtk-2.0/2.[^1]* </snip> Obviously not what's intended... ;)
Jakub: What's wrong with that? I just tested it on a box with a /usr/lib/gtk-2.0/2.4.0 dir, and it correctly printed that dir. Obviously on a box with only /usr/lib/gtk-2.0/2.10.x, it will print the glob, but the if protection should work correctly, yes?
(In reply to comment #3) > Jakub: What's wrong with that? I just tested it on a box with a > /usr/lib/gtk-2.0/2.4.0 dir, and it correctly printed that dir. Obviously on a > box with only /usr/lib/gtk-2.0/2.10.x, it will print the glob, but the if > protection should work correctly, yes? Uhm? Like, it's supposed to be quoted within the elog statement (or just drop it from there altogether, it's plain redundant), so that it doesn't try to execute the regex or whatnot instead? What are you trying to do there?
Well, I didn't write it, but I believe it's trying to print the directory. If you quote it, it doesn't expand. It's not running the command, it's on a qlog line, it's just parameter expanding it (file globbing in this case) and passing it to qlog. The original command was being run, I admit, because of the $(), but this is not being run, as far as I can tell.
Closing.