106c67b9db
svn path=/nixpkgs/trunk/; revision=12180
49 lines
1.6 KiB
Nix
49 lines
1.6 KiB
Nix
args: with args;
|
|
stdenv.mkDerivation {
|
|
name = "blender-2.46";
|
|
|
|
src = fetchurl {
|
|
url = http://download.blender.org/source/blender-2.46.tar.gz;
|
|
sha256 = "1l95lcrp5snmvzabw46qpnkxmqls3fc24b2qjkghfasvaq7km7rr";
|
|
};
|
|
|
|
phases="unpackPhase buildPhase";
|
|
|
|
inherit scons SDL freetype openal python openexr mesa;
|
|
|
|
buildInputs = [python scons
|
|
gettext libjpeg libpng zlib freetype /* fmod smpeg */ freealut openal x11 mesa inputproto libtiff libXi ];
|
|
|
|
# patch SConstruct so that we can pass on additional include. Either blender
|
|
# or openEXR is broken. I think OpenEXR should use include "" isntead of <> to
|
|
# include files beeing in the same directory
|
|
buildPhase = "
|
|
cat >> user-config.py << EOF
|
|
WITH_BF_OPENAL = 'true'
|
|
WITH_BF_GAMEENGINE='true'
|
|
WITH_BF_BULLET = 'true'
|
|
WITH_BF_INTERNATIONAL = 'true'
|
|
WITH_BF_OPENEXR = 'true'
|
|
EOF
|
|
|
|
sed -i -e \"s=##### END SETUP ##########=env['CPPFLAGS'].append(os.getenv('CPPFLAGS').split(':'))\\n##### END SETUP ##########=\" SConstruct\n"
|
|
+ " CPPFLAGS=-I$openexr/include/OpenEXR"
|
|
+ " scons PREFIX=\$out/nix-support"
|
|
+ " BF_SDL=\$SDL"
|
|
+ " BF_SDL_LIBPATH=\$SDL/lib"
|
|
+ " BF_FREETYPE=\$freetype"
|
|
+ " BF_OPENAL=\$openal"
|
|
+ " BF_PYTHON=\$python"
|
|
+ " BF_OPENEXR_INC=\$openexr/include"
|
|
+ " BF_OPENEXR_LIBPATH=\$openexr/lib"
|
|
+ " BF_INSTALLDIR=\$out/nix-support/dontLinkThatMuch \n"
|
|
+ " ensureDir \$out/bin\n"
|
|
+ " ln -s \$out/nix-support/dontLinkThatMuch/blender \$out/bin/blender"
|
|
;
|
|
|
|
meta = {
|
|
description = "3D Creation/Animation/Publishing System";
|
|
homepage = http://www.blender.org;
|
|
license = "GPL-2 BL";
|
|
};
|
|
}
|