On Tue, 8 Jan 2008 20:23:58 +0200
Alan McKinnon <alan.mckinnon@gmail.com> wrote:
> On Tuesday 08 January 2008, Daniel Iliev wrote:
> > On Tue, 8 Jan 2008 15:11:09 +0200
--snip--
> Am I correct in saying you plan to emerge mplayer with a few extra
> params and not much else customizing? In that case the mods you will
> make are simple and need to be done just once. Then paste the same
> changes into a new ebuild each time you want to upgrade
>
Actually the changes I want to make are not so few. The whole story is
that several days ago a friend of mine pointed me to a very cool
front-end for mplayer: http://smplayer.sourceforge.net/
Unfortunately it can't be found in portage yet.
Since it works with the "plain" mplayer I decided to get rid of the GUI
part (gmplayer). The USE flag "-gtk" disables the GUI, but smplayer
couldn't work with the produced mplayer. When I compiled mplayer
manually with "--disable-gui", smplayer worked just fine.
Additionally I started playing around with the src and found that on my
system mplayer can hold any optimisation I force upon it and there are
no problems.

I have best results when it's compiled with "--enable-sse2" and no
other mxx, 3dnow etc. stuff. This way mplayer produces:
"CPUflags: MMX: 0 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 1"
in the output.
Additionally I forced some gcc options on the source like this:
find . -type f -exec sed -i 's/ -O. //g; {} +
find . -type f -exec sed -i 's/-mtune=w*//g' {} +
find . -type f -exec sed -i 's/-mcpu=w*//g' {} +
find . -type f -exec sed -i 's/march=w*/march=athlon64 -msse3
-mfpmath=sse -O3 -pipe -fomit-frame-pointer/g' {} +
// Yes, it's brutal and it's a miracle that it works but what do I have
to loose? The worst case scenario is that I end up with broken src and
have to extract it again

//
Now mplayer uses up to 20% less CPU which in my case is not
meaningless.
The only problem is to make portage forget about this package until the
next version is released. I thought package.provided is for this
purpose, but it doesn't work here as I expected.
> > Yes, I'm aware of EXTRA_ECONF and I use it via /etc/portage/bashrc.
> > ( explained w/ example by Mr. Bo Andresen: http://tinyurl.com/39c74x
> > ) It never caused problems here.
>
> Interesting. I must find out more :-)
It's very handy. For example I don't need the innodb engine of mysql,
so my /etc/portage/bashrc reads:
==
case "$CATEGORY/$PN" in
dev-db/mysql)
EXTRA_ECONF="--enable-local-infile --without-innodb"
;;
esac
==
Unfortunately I couldn't manage to use it for solving the current
problem.
--
Best regards,
Daniel
--
gentoo-user@lists.gentoo.org mailing list