Summary: | new emerge option to only use binary packages matching system config (USE, CHOST) | ||
---|---|---|---|
Product: | Portage Development | Reporter: | mario |
Component: | Enhancement/Feature Requests | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | enhancement | CC: | devnull, leon+gentoo |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
mario
2006-07-11 03:51:40 UTC
Actually, all then necessary information is stored in the binary package and portage will skip binary packages and build from source when the USE flags don't match if emerge's --newuse option is specified. It does not check the CFLAGS, though it would be possible. The --newuse thing isn't even documented, so I think we should at least do that. Oh, ich looked through the tbz2 file, but could not find any informations about use/arch settings. Only the program files. But there was an error message about garbled data, maybe it's in there :) Is there some easy way to extract the information stored in the binary package? I looked through binary package with hexdump, but I've not found USE-flags. The USE flags and other metadata are stored in an xpak segment that's appended to the end of the tbz2 file. Something like this will extract the metadata from $filename to $tempdir: python -c "import xpak; xpak.tbz2('${filename}').unpackinfo('${tempdir}')" USE are handled by the new --binpkg-respect-use option in portage-2.1.7.x, or --newuse in older versions. CHOST is handled byg ACCEPT_CHOSTS (see `man make.conf`). ARCH might not be needed, because CHOST masking is probably close enough. |