nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, stdenv
3, fetchFromGitHub
4, cmake
5, pkg-config
6, unzip
7, SDL2
8, boost
9, freeimage
10, freetype
11, libpng
12, ois
13, pugixml
14, zziplib
15 # linux
16, freeglut
17, libGL
18, libGLU
19, libICE
20, libSM
21, libX11
22, libXaw
23, libXmu
24, libXrandr
25, libXrender
26, libXt
27, libXxf86vm
28, xorgproto
29 # darwin
30, Cocoa
31 # optional
32, withNvidiaCg ? false
33, nvidia_cg_toolkit
34, withSamples ? false
35}:
36
37stdenv.mkDerivation rec {
38 pname = "ogre";
39 version = "13.6.4";
40
41 src = fetchFromGitHub {
42 owner = "OGRECave";
43 repo = "ogre";
44 rev = "v${version}";
45 hash = "sha256-MSBWCO0s46t+ExWDdmqi16OxmcQXnduhgFt6I4BG1g8=";
46 };
47
48 nativeBuildInputs = [
49 cmake
50 pkg-config
51 unzip
52 ];
53
54 buildInputs = [
55 SDL2
56 boost
57 freeimage
58 freetype
59 libpng
60 ois
61 pugixml
62 zziplib
63 ] ++ lib.optionals stdenv.isLinux [
64 freeglut
65 libGL
66 libGLU
67 libICE
68 libSM
69 libX11
70 libXaw
71 libXmu
72 libXrandr
73 libXrender
74 libXt
75 libXxf86vm
76 xorgproto
77 ] ++ lib.optionals stdenv.isDarwin [
78 Cocoa
79 ] ++ lib.optionals withNvidiaCg [
80 nvidia_cg_toolkit
81 ];
82
83 cmakeFlags = [
84 "-DOGRE_BUILD_COMPONENT_OVERLAY_IMGUI=FALSE"
85 "-DOGRE_BUILD_DEPENDENCIES=OFF"
86 "-DOGRE_BUILD_SAMPLES=${toString withSamples}"
87 ] ++ lib.optionals stdenv.isDarwin [
88 "-DOGRE_BUILD_LIBS_AS_FRAMEWORKS=FALSE"
89 ];
90
91 meta = {
92 description = "3D Object-Oriented Graphics Rendering Engine";
93 homepage = "https://www.ogre3d.org/";
94 maintainers = with lib.maintainers; [ raskin wegank ];
95 platforms = lib.platforms.unix;
96 license = lib.licenses.mit;
97 };
98}