The mythtv ebuild strips out my sensible CFLAGS: -march=native -O2 -pipe and replaces them with: -pipe -march=native -fomit-frame-pointer -O3 -g This is simply nonsensical. I don't want -O3, as it takes much longer to build, makes the compiled executable larger and only rarely makes it faster. I don't want -g, as I'm not planning on debugging MythTV (I'll rebuild with -g if I want to). Is there a good reason why MythTV replaces my CFLAGS with *more insane* ones? Reproducible: Always Steps to Reproduce:
which version?
Sometimes it doesn't matter, what you want, e.g. when the upstream developers do not accept bug reports with custom compiler flags. Be it, because their coding is so fragile or they're just pissed by bug reports of users, who do not understand a bit of the toolchain they're using. There's always the possibility to maintain your own ebuild in a local overlay or hacking the ebuild on the fly via Portage bashrc; But don't annoy the maintainers of affected ebuilds with your bug reports then! I agree that the filtering is pretty draconian, so I'm assigning, but don't be surprised getting the bug closes as WONTFIX. (In reply to comment #1) > which version? > A quick grep shows, all.
This is comes up over and over again. The ebuild is not replacing this, this is upstream. Do a little bit of research into audio/video codec applications (basically, mplayer, xine, and ffmpeg). You will see they all do similar things. MythTV actually relies very heavily on ffmpeg and much of its internals are ffmpeg. Since a bunch of ffmpeg is hand written assembly, they rely on specific optimizations to make it work. Additionally, without some optimizations code will run so slow that you won't be able to watch any video.