turnon: 1.6.1 -> 1.6.2 (#364647)
[NixPkgs.git] / pkgs / development / libraries / irrlicht / default.nix
blob20250668eba6105b8cbeafa207e574f7b7909d89
2   lib,
3   stdenv,
4   fetchzip,
5   libGLU,
6   libGL,
7   libXrandr,
8   libX11,
9   libXxf86vm,
10   zlib,
13 let
14   common = import ./common.nix { inherit fetchzip; };
17 stdenv.mkDerivation rec {
18   pname = common.pname;
19   version = common.version;
21   src = common.src;
23   postPatch =
24     ''
25       sed -ie '/sys\/sysctl.h/d' source/Irrlicht/COSOperator.cpp
26     ''
27     + lib.optionalString stdenv.hostPlatform.isAarch64 ''
28       substituteInPlace source/Irrlicht/Makefile \
29         --replace "-DIRRLICHT_EXPORTS=1" "-DIRRLICHT_EXPORTS=1 -DPNG_ARM_NEON_OPT=0"
30     '';
32   preConfigure = ''
33     cd source/Irrlicht
34   '';
36   preBuild = ''
37     makeFlagsArray+=(sharedlib NDEBUG=1 LDFLAGS="-lX11 -lGL -lXxf86vm")
38   '';
40   enableParallelBuilding = true;
42   preInstall = ''
43     sed -i s,/usr/local/lib,$out/lib, Makefile
44     mkdir -p $out/lib
45   '';
47   buildInputs = [
48     libGLU
49     libGL
50     libXrandr
51     libX11
52     libXxf86vm
53   ] ++ lib.optional stdenv.hostPlatform.isAarch64 zlib;
55   meta = {
56     homepage = "https://irrlicht.sourceforge.io/";
57     license = lib.licenses.zlib;
58     description = "Open source high performance realtime 3D engine written in C++";
59     platforms = lib.platforms.linux ++ lib.platforms.darwin;
60   };