Dan Armak wrote: [Thu Jun 30 2005, 05:11:10PM EDT] > Instead of 'exit 1', qt_min_version should use die. I use that in > deprange and it does work inside $DEPEND.
Well, it's more visible, but it doesn't stop the emerge. I just put DEPEND="$(die)" into an ebuild to test. Here is what happens. It also gives you an idea of why putting functions into DEPEND is bad: they get evaluated A LOT. (jump down for more message content) ---------------------------------------------------------------------- $ sudo emerge keychain Performing Global Updates: /opt/agriffis/portage/profiles/updates/3Q-2004 (Could take a couple of minutes if you have a lot of binary packages.) .='update pass' *='binary update' @='/var/db move' s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*' .................................................................................................................................................................................................. Calculating dependencies !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. ...done! >>> emerge (1 of 1) net-misc/keychain-2.5.4.1 to / !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> md5 src_uri ;-) keychain-2.5.4.1.tar.bz2 !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> Unpacking source... >>> Unpacking keychain-2.5.4.1.tar.bz2 to /var/tmp/portage/keychain-2.5.4.1/work >>> Source unpacked. !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> Test phase [not enabled]: net-misc/keychain-2.5.4.1 !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> Install keychain-2.5.4.1 into /var/tmp/portage/keychain-2.5.4.1/image/ >>> category net-misc man: prepallstrip: strip: ia64-unknown-linux-gnu-strip --strip-unneeded strip: ia64-unknown-linux-gnu-strip --strip-unneeded >>> Completed installing keychain-2.5.4.1 into >>> /var/tmp/portage/keychain-2.5.4.1/image/ >>> Merging net-misc/keychain-2.5.4.1 to / !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. --- /usr/ --- /usr/bin/ >>> /usr/bin/keychain --- /usr/share/ --- /usr/share/doc/ --- /usr/share/doc/keychain-2.5.4.1/ >>> /usr/share/doc/keychain-2.5.4.1/README.gz >>> /usr/share/doc/keychain-2.5.4.1/ChangeLog.gz >>> /usr/share/doc/keychain-2.5.4.1/keychain.pod.gz --- /usr/share/man/ --- /usr/share/man/man1/ >>> /usr/share/man/man1/keychain.1.gz >>> Safely unmerging already-installed instance... !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. --- !mtime obj /usr/share/man/man1/keychain.1.gz --- !mtime obj /usr/share/doc/keychain-2.5.4.1/keychain.pod.gz --- !mtime obj /usr/share/doc/keychain-2.5.4.1/README.gz --- !mtime obj /usr/share/doc/keychain-2.5.4.1/ChangeLog.gz --- !mtime obj /usr/bin/keychain --- !empty dir /usr/share/man/man1 --- !empty dir /usr/share/man --- !empty dir /usr/share/doc/keychain-2.5.4.1 --- !empty dir /usr/share/doc --- !empty dir /usr/share --- !empty dir /usr/bin --- !empty dir /usr !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> original instance of package unmerged safely. !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. * Please see the Keychain Guide at * http://www.gentoo.org/doc/en/keychain-guide.xml * for help getting keychain running >>> Regenerating /etc/ld.so.cache... >>> net-misc/keychain-2.5.4.1 merged. !!! ERROR: net-misc/keychain-2.5.4.1 failed. !!! Function , Line 15, Exitcode 0 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. >>> clean: No packages selected for removal. >>> Auto-cleaning packages ... >>> No outdated packages were found on your system. * GNU info directory index is up-to-date. * IMPORTANT: 60 config files in /etc need updating. * IMPORTANT: 24 config files in /usr/lib/X11/xkb need updating. * Type emerge --help config to learn how to update config files. ---------------------------------------------------------------------- For the curious, here is the current list of qt deps in portage: $ egrep -hro '[<>=]*x11-libs/qt-[-0-9r.*]+' --include='*.e*' . | sort -u =x11-libs/qt-2* =x11-libs/qt-3* =x11-libs/qt-3.1* =x11-libs/qt-3.3* >=x11-libs/qt-2.2.0 >=x11-libs/qt-2.2.4 >=x11-libs/qt-2.3 >=x11-libs/qt-2.3.0 >=x11-libs/qt-3 >=x11-libs/qt-3.0 >=x11-libs/qt-3.0.0 >=x11-libs/qt-3.0.1 >=x11-libs/qt-3.0.3 >=x11-libs/qt-3.0.5 >=x11-libs/qt-3.1 >=x11-libs/qt-3.1.0 >=x11-libs/qt-3.1.0-r1 >=x11-libs/qt-3.1.0-r3 >=x11-libs/qt-3.1.1 >=x11-libs/qt-3.1.2 >=x11-libs/qt-3.1.2-r3 >=x11-libs/qt-3.2 >=x11-libs/qt-3.2.0 >=x11-libs/qt-3.2.1-r2 >=x11-libs/qt-3.2.3 >=x11-libs/qt-3.3 >=x11-libs/qt-3.3.0 >=x11-libs/qt-3.3.0-r1 >=x11-libs/qt-3.3.1 >=x11-libs/qt-3.3.2 >=x11-libs/qt-3.3.3 >=x11-libs/qt-3.3.3-r1 >=x11-libs/qt-3.3.4 I agree with vapier, btw, I'd rather not see qt split into separate packages just to work around a lack in portage (which I think we all expect will be fixed eventually). I'm not completely against using a function to do what you're doing, but I want to make sure you understand that it's only superficially better than using a set of variables in qt.eclass. Thanks for taking the time to solve this kind of problem and being willing to discuss it. Regards, Aron P.S. I committed a couple bash syntax and whitespace fixes to qt.eclass plus changed the error message from echo to die. -- Aron Griffis Gentoo Linux Developer
pgpXbTVahoJbz.pgp
Description: PGP signature