[arch-dev-public] Building mplayer

Damir Perisa damir.perisa at solnet.ch
Tue Jan 22 12:20:36 EST 2008


Tuesday 22 January 2008, Thomas Bächler wrote:
 | I have been maintaining mplayer for a while now. Unfortunately,
 | during my absence mplayer had to be rebuilt by someone else. The
 | x86_64 version (built by Eric) is fine, but the i686 (built by
 | someone who doesn't know what the "Packager" option in
 | makepkg.conf is for) version is missing features (bug #9288).
 |
 | The mplayer build system sucks. Seriously, it is the worst idea
 | people have ever had, but the guys who are currently maintaining
 | it are proud of it (I had the pleasure of arguing with one of them
 | about autotools vs. mplayer during a two hour car trip last
 | summer).
 |
 | Here is the thing:
 | In autotools, you can use --enable-FOO to force configure to
 | enable a feature. However, configure still checks if all libraries
 | and headers are present and will add the needed options to gcc, or
 | abort if a check fails.
 |
 | In mplayer, --enable-FOO forces the build system to enable a
 | feature, but also skips all checks and doesn't add any options to
 | the compiler, thus making 'make' fail unless you modify Makefiles
 | by hand. This is not only unintuitive but also completely
 | inconsistent with the way autotools work. The only way to properly
 | enable a feature in mplayer is to put no --enable or --disable
 | flag in and hope that configure's autodetection detects it
 | properly. And of course you have to check if everything went fine
 | after configure finished by reading the output summary. I don't
 | have to tell you that this is very distributior-unfriendly.
 |
 | Since there is no way to force mplayer's configure to abort if
 | something we want is missing, we must have the necessary
 | makedepends listed - which we don't, as they are not easy to
 | determine. The only way to properly build mplayer is to watch
 | everything it does carefully and abort if something is wrong.
 |
 | For a while, a "we need clean build chroots so that our packages
 | are not corrupted" attitude has spread, and this is exactly what
 | broke mplayer (I have no idea which makedepend may be missing
 | though).
 |
 | So please, unless you know exactly what you are doing and have
 | much time to check everything, don't build mplayer!

or any other package you are not familiar with. or please do NOT take 
any dependencies out just to have a clean list that coresponds to 
namcap output. amen ;)

- D


-- 
.·´¯`·.¸.·´¯`·.¸¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸¸.·´
            °        °           °
             °      °            °
     ><((((º>      °              °
                    °            °
                   °            <º)))><
                  <º)))><




More information about the arch-dev-public mailing list