| Summary: | app-portage/portage-utils-0.4: qdepends errors on "|| ( )" | ||
|---|---|---|---|
| Product: | Portage Development | Reporter: | Johannes Rauh <jarauh> |
| Component: | Tools | Assignee: | Portage Utils Team <portage-utils> |
| Status: | RESOLVED OBSOLETE | ||
| Severity: | normal | ||
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
i wonder if portage should even be emitting "|| ( )" into the vdb. after all, you cant use just "|| ( )" in an ebuild or portage will barf on it. imo, anything that is in the *DEPEND files should be able to be placed literally into an ebuild and have it not throw errors. err, nm. i remembered wrong. portage rejects '|| ()' but accepts '|| ( )'. so i guess i'll have to update the DEPEND tree parser accordingly. (In reply to comment #1) > i wonder if portage should even be emitting "|| ( )" into the vdb. The use_reduce() function that handles that was recently rewritten and it handles that correctly now (there's a test for this specific case in pym/portage/tests/dep/test_use_reduce.py). It's already released in >=portage-2.2_rc68 and it will also be released in portage-2.1.9. i'll be lazy here and since portage elides '|| ( )' from the output, this shouldn't come up anymore |
qdepends aborts with the following error message, (almost) regardless of what options I give to qdepends: depends: dep_grow_tree(): Group lacks a parent depends: dep_grow_tree(): DEPEND: >=sys-libs/zlib-1.1.4 >=media-libs/tiff-3.9.1 sci-libs/libgeotiff dev-libs/expat net-misc/curl media-libs/jpeg media-libs/giflib media-libs/libpng dev-lang/perl virtual/python dev-python/numpy || ( ) media-libs/jasper virtual/mysql >=dev-db/sqlite-3 >=dev-lang/swig-1.3.32 >=dev-lang/swig-1.3.32 || ( =sys-devel/automake-1.11* =sys-devel/automake-1.10* ) >=sys-devel/autoconf-2.61 >=sys-devel/libtool-2.2.6b dev-lang/perl[-build] >=app-admin/eselect-python-20091230 The issue seems to be related to the ebuild sci-libs/gdal/gdal-1.7.1-r1.ebuild. The RDEPEND-declaration contains the lines: " || ( netcdf? ( sci-libs/netcdf ) hdf? ( sci-libs/hdf ) )" Since I have neither the 'netcdf' nor the 'hdf' use flag enabled, the file /var/db/pkg/sci-libs/gdal-1.7.1-r1/DEPEND contains the empty group "|| ( )", which seems to irritate qdepends' parser. Reproducible: Always Steps to Reproduce: 1. deactivate use flags netcdf and hdf and emerge sci-libs/gdal-1.7.1-r1. 2. qdepends -Q gdal