Skip to content

Commit

Permalink
ogre1_9: init at 1.9.1
Browse files Browse the repository at this point in the history
Introduce version of Ogre removed from Nixpkgs.
Required by lopsided98#161
Taken from NixOS/nixpkgs@40f52d9
  • Loading branch information
jtojnar committed May 7, 2023
1 parent 650b597 commit 8ccaa46
Show file tree
Hide file tree
Showing 2 changed files with 95 additions and 0 deletions.
2 changes: 2 additions & 0 deletions pkgs/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,8 @@ in {
utils = self.ignition.utils1;
};

ogre1_9 = self.callPackage ./ogre/1.9.x.nix { };

openni2 = self.callPackage ./openni2 { };

opensplice_6_9 = self.callPackage ./opensplice { };
Expand Down
93 changes: 93 additions & 0 deletions pkgs/ogre/1.9.x.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
{ fetchFromGitHub
, stdenv
, lib
, cmake
, libGLU
, libGL
, freetype
, freeimage
, zziplib
, xorgproto
, libXrandr
, libXaw
, freeglut
, libXt
, libpng
, boost
, ois
, libX11
, libXmu
, libSM
, pkg-config
, libXxf86vm
, libICE
, libXrender
, withNvidiaCg ? false
, nvidia_cg_toolkit
, withSamples ? false
}:

stdenv.mkDerivation rec {
pname = "ogre";
version = "1.9.1";

src = fetchFromGitHub {
owner = "OGRECave";
repo = "ogre";
rev = "v${version}";
sha256 = "11lfgzqaps3728dswrq3cbwk7aicigyz08q4hfyy6ikc6m35r4wg";
};

# fix for ARM. sys/sysctl.h has moved in later glibcs, and
# https://github.com/OGRECave/ogre-next/issues/132 suggests it isn't
# needed anyway.
postPatch = ''
substituteInPlace OgreMain/src/OgrePlatformInformation.cpp \
--replace '#include <sys/sysctl.h>' ""
'';

cmakeFlags = [
"-DOGRE_BUILD_SAMPLES=${toString withSamples}"
]
++ map (x: "-DOGRE_BUILD_PLUGIN_${x}=on")
([ "BSP" "OCTREE" "PCZ" "PFX" ] ++ lib.optional withNvidiaCg "CG")
++ map (x: "-DOGRE_BUILD_RENDERSYSTEM_${x}=on") [ "GL" ];

nativeBuildInputs = [
cmake
pkg-config
];

buildInputs = [
libGLU
libGL
freetype
freeimage
zziplib
xorgproto
libXrandr
libXaw
freeglut
libXt
libpng
boost
ois
libX11
libXmu
libSM
libXxf86vm
libICE
libXrender
]
++ lib.optionals withNvidiaCg [
nvidia_cg_toolkit
];

meta = {
description = "A 3D engine";
homepage = "https://www.ogre3d.org/";
maintainers = [ lib.maintainers.raskin ];
platforms = lib.platforms.linux;
license = lib.licenses.mit;
};
}

0 comments on commit 8ccaa46

Please sign in to comment.