55fd683572
svn path=/nixpkgs/trunk/; revision=10898
53 lines
1.5 KiB
Nix
53 lines
1.5 KiB
Nix
{stdenv, fetchurl, pkgconfig, x11, xlibs, libdrm}:
|
|
|
|
let
|
|
|
|
target =
|
|
if stdenv.system == "i686-linux" then "linux-dri-x86" else
|
|
if stdenv.system == "x86_64-linux" then "linux-dri-x86-64" else
|
|
abort "unsupported platform for Mesa"; # !!! change to throw, remove all the mesa asserts in all-packages.nix
|
|
|
|
# Missing file in 7.0.2. Can be removed for >= 7.0.3.
|
|
missingPC = fetchurl {
|
|
url = "http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/media-libs/mesa/files/7.0.2-glw.pc.in?rev=1.1";
|
|
sha256 = "1z4d50pllwi8g6n567dk3zxq4qmam79n72wr55mdqx0jrdj4fj0v";
|
|
};
|
|
|
|
in
|
|
|
|
stdenv.mkDerivation {
|
|
name = "mesa-7.0.2";
|
|
|
|
src = fetchurl {
|
|
url = mirror://sourceforge/mesa3d/MesaLib-7.0.2.tar.bz2;
|
|
md5 = "93e6ed7924ff069a4f883b4fce5349dc";
|
|
};
|
|
/* (fetchurl {
|
|
url = http://nix.cs.uu.nl/dist/tarballs/MesaGLUT-6.4.tar.bz2;
|
|
md5 = "1a8c4d4fc699233f5fdb902b8753099e";
|
|
})
|
|
(fetchurl {
|
|
url = http://nix.cs.uu.nl/dist/tarballs/MesaDemos-6.4.tar.bz2;
|
|
md5 = "1a8c4d4fc699233f5fdb902b8753099e";
|
|
}) */
|
|
|
|
buildFlags = "${target}";
|
|
|
|
preBuild = "
|
|
makeFlagsArray=(INSTALL_DIR=$out DRI_DRIVER_INSTALL_DIR=$out/lib/modules/dri SHELL=$SHELL)
|
|
cp ${missingPC} src/glw/glw.pc.in
|
|
";
|
|
|
|
buildInputs = [
|
|
pkgconfig x11 xlibs.makedepend libdrm xlibs.glproto xlibs.libXmu
|
|
xlibs.libXi xlibs.libXxf86vm xlibs.libXfixes xlibs.libXdamage
|
|
];
|
|
|
|
passthru = {inherit libdrm;};
|
|
|
|
meta = {
|
|
description = "An open source implementation of OpenGL";
|
|
homepage = http://www.mesa3d.org/;
|
|
};
|
|
}
|