From 22c42a26b6fd0b6e4a985d63e021fd3bea2fff49 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 22 Dec 2010 14:50:13 +0000 Subject: [PATCH] Adding OGRE - object-oriented graphical engine svn path=/nixpkgs/trunk/; revision=25240 --- .../builder-defs/builder-defs.nix | 8 +++ pkgs/development/libraries/ogre/default.nix | 57 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 67 insertions(+) create mode 100644 pkgs/development/libraries/ogre/default.nix diff --git a/pkgs/build-support/builder-defs/builder-defs.nix b/pkgs/build-support/builder-defs/builder-defs.nix index 72a7dd03f8d..c3f7d384845 100644 --- a/pkgs/build-support/builder-defs/builder-defs.nix +++ b/pkgs/build-support/builder-defs/builder-defs.nix @@ -384,6 +384,14 @@ let inherit (builtins) head tail trace; in echo '${toString (attrByPath ["propagatedBuildInputs"] [] args)}' >\$out/nix-support/propagated-build-inputs ") ["minInit" "defEnsureDir"]; + cmakeFlags = ""; + + doCmake = fullDepEntry ('' + mkdir build + cd build + cmake -D CMAKE_INSTALL_PREFIX="$out" ${toString cmakeFlags} .. + '') ["minInit" "addInputs" "doUnpack"]; + /*debug = x:(trace x x); debugX = x:(trace (toXML x) x);*/ diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix new file mode 100644 index 00000000000..107fc026119 --- /dev/null +++ b/pkgs/development/libraries/ogre/default.nix @@ -0,0 +1,57 @@ +x@{builderDefsPackage + , mesa, cmake, automake, libtool, autoconf + , freetype, freeimage, zziplib, randrproto, libXrandr + , libXaw, freeglut, libXt, libpng, boost, ois + , xproto, libX11, libXmu, libSM, pkgconfig + , libXxf86vm, xf86vidmodeproto, libICE + , renderproto, libXrender + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="ogre"; + majorVersion="1"; + minorVersion="7"; + patchLevel="2"; + version="${majorVersion}.${minorVersion}.${patchLevel}"; + name="${baseName}-${version}"; + project="${baseName}"; + url="mirror://sourceforge/project/${project}/${baseName}/${majorVersion}.${minorVersion}/${baseName}_src_v${majorVersion}-${minorVersion}-${patchLevel}.tar.bz2"; + hash="10q8jx842s4aws9py6q67rb4dh5vli5vvg54jl8manjb4f388jh5"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["doCmake" "doMakeInstall"]; + + meta = { + description = "A 3D engine"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = "MIT"; + }; + passthru = { + updateInfo = { + downloadPage = "http://www.ogre3d.org/download/source"; + }; + }; +}) x + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 65cbb55e09c..2eda702e5c7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3721,6 +3721,8 @@ let ode = builderDefsPackage (import ../development/libraries/ode) { }; + + ogre = callPackage ../development/libraries/ogre {}; openal = callPackage ../development/libraries/openal { };