Summary: | use.local.desc contains global flags | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Ulrich Müller <ulm> |
Component: | Eclasses | Assignee: | Doug Goldstein (RETIRED) <cardoe> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | antarus, jer, maekke, pva, qa, tcunha |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 282919 | ||
Attachments: |
global USE flags currently in use.local.desc
repoman patch |
Description
Ulrich Müller
2008-08-25 19:42:38 UTC
Created attachment 163774 [details]
global USE flags currently in use.local.desc
I'd say this problem existed long before GLEP 56 was conceived. To wit: $ euses -cs perl perl - Adds support/bindings for the Perl language app-office/gnumeric:perl - Enable perl plugin loader. media-tv/mythtv:perl - Builds the perl bindings for MythTV. Allows you to write scripts in Perl to control your MythTV setup or communicate with it. net-analyzer/symon:perl - Enables a generic perl symux client It may be more of a QA issue than a problem with GLEP 56 conversion specifically. Another randomly picked example: $ euses -cs doc doc - Adds extra documentation (API, Javadoc, etc) app-crypt/mit-krb5:doc - Creates and installs the API and implementation documentation. This is only useful if you want to develop software which depends on kerberos. app-misc/beagle:doc - Builds programmer documentation for Beagle using app-doc/monodoc. media-libs/swfdec:doc - Build documentation net-print/hplip:doc - Build documentation sys-apps/hal:doc - Generates documentation that describes HAL's fdi format. Global use flags in use.local.desc are not illegal; the local description is just a more descriptive application of the global flag to a given package. Am I wrong here? (In reply to comment #4) > Am I wrong here? no. but this bug is seems to be a dupe of bug #202967. I'm not sure, but the devmanual says: "All USE flags must be described in either use.desc or use.local.desc in the profiles/ directory." From the "either ... or" I would conclude that a flag must not be listed in both. (In reply to comment #4) > Global use flags in use.local.desc are not illegal; the local description is > just a more descriptive application of the global flag to a given package. > > Am I wrong here? > Yes, you're wrong. I originally proposed using use.local.desc to override global USE flag descriptions and started to add them. Halcy0n reverted those commits and told me that it was against QA and it was wrong. This back and forth discussion is what resulted in GLEP 56, which explicitly makes it valid in metadata.xml I will add an option to the script --use_desc_file which will be a path to the use.desc file; by default it will use the default location in repo_path/profiles/use.desc. It will not output flags that are global flags. I expect to have this fixed tonight. -Alec (In reply to comment #8) > I expect to have this fixed tonight. Any news here? Filtering use flags without fixing tree in advance is not good idea, since we loose useful descriptions, e.g.: local:perl:media-video/ffprobe: Installs tools written in perl to produce plots based on video frame bitrate and size local:perl:net-analyzer/symon: Enables a generic perl symux client local:perl:sys-apps/util-linux: install the chkdupexe helper script If this is policy then we repoman check (and then developers will have to fix this). Patch for this check follows. QA, if you agree that we should enforce this policy, please, CC portage team. Created attachment 207343 [details, diff]
repoman patch
Since nobody stepped in to ban this completely and I really think this kind of things are useful all we need is to update devmanual to document this possibility... Also see bug 309963 where it is suggested to drop 'either global or local'. Closing as WORKSFORME as I don't see anything to do here. Please, reopen if I'm wrong. |