On Wed, May 02, 2012 at 11:23:48AM -0400, Matt Turner wrote: > Jim? Sorry, I am behind on my gentoo-dev reading, thanks Matt for bringing this thread to my attention. Here are the two main concerns I've gathered from the rest of the thread:
On Wed, Apr 25, 2012 at 11:04:08PM -0600, Ryan Hill wrote: > Arg, no. Please just print the warning if the host doesn't do SSE2. > There's no reason to have a USE flag here (and _really_ no reason to > make it fatal), especially for an instruction set that every system > has supported for over a decade. It's true that probably "most" people have sse2. And this change won't affect all those people that have sse2. It only affects people that don't have sse2. The run-time failure case (flash just doesn't work) is tricky to diagnose, so I want the user to be aware of this at install time. Thus I feel the check should (1) be fatal and (2) provide instructions that 10.3 can still be used. The reason there's a USE flag is so that binary packagers can forcibly skip the 'die' if they know they're building for an sse2 SYSTEM. This is only needed if you're running on a machine without sse2, packaging for a machine with sse2. On Thu, Apr 26, 2012 at 05:06:45PM -0300, Alexis Ballier wrote: > wouldnt adding a sse2 useflag and putting it in REQUIRED_USE solve the > problem ? > > afaik portage wont even try to upgrade if people have -sse2 This is an interesting idea, as it could automatically downgrade users to 10.3 without requiring any masking. I like that. However, the problem I have with this approach is that it doesn't address people who do have sse2 instructions available but have not set the USE flag. I noticed that our amd64 profile does set USE=sse2 automatically. That's good. But x86 users would still have to set this manually. And people without the flag will be forcibly downgraded to 10.3 for no good reason. And as Ryan accurately points out, most people *do* have sse2 instructions available. I prefer checking /proc/cpuinfo because that way I'm *sure* that the user's system has the required instruction set. The only way I think that this decision can really be made would be to have some sort of usage statistics on how many x86 setups there are where the CPU has sse2 available but the user has not set USE=sse2. Any idea how we can know how many this is? Hmmm... I suppose the other thing I could do is put the /proc/cpuinfo check into the 10.3 ebuild, and warn users if they're installing 10.3 and *should* be setting USE=sse2 to get 11.2 instead.... Maybe that's the best solution! Thanks for the suggestions, I'll try to get at this change soon. -- Jim Ramsay