luxcorerender: 2.0 -> 2.4 (#101413)

This commit is contained in:
Jonas Meurer 2021-02-06 18:44:49 +01:00 committed by GitHub
parent 75156546fc
commit c7fef40d4c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 41 additions and 55 deletions

View file

@ -1,64 +1,58 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost165, pkg-config, python36
, tbb, openimageio, libjpeg, libpng, zlib, libtiff, ilmbase
, freetype, openexr, libXdmcp, libxkbcommon, epoxy, at-spi2-core
, dbus, doxygen, qt5, c-blosc, libGLU, gnome3, dconf, gtk3, pcre
, bison, flex, libpthreadstubs, libX11
, embree2, makeWrapper, gsettings-desktop-schemas, glib
, withOpenCL ? true , opencl-headers, ocl-icd, opencl-clhpp, rocm-opencl-runtime
}:
{ lib, config, stdenv, fetchFromGitHub, symlinkJoin, wrapGAppsHook, cmake, boost172
, pkg-config, flex, bison, libpng, libtiff, zlib, python3, embree, openexr
, openimagedenoise, openimageio, tbb, c-blosc, gtk3, pcre, doxygen
# OpenCL Support
, withOpenCL ? true, ocl-icd
# Cuda Support
, withCuda ? config.cudaSupport or false, cudatoolkit }:
let
python = python36;
boostWithPython = boost172.override {
enablePython = true;
enableNumpy = true;
python = python3;
};
boost_static = boost165.override {
inherit python;
enableStatic = true;
enablePython = true;
};
# Requires a version number like "<MAJOR><MINOR>"
pythonVersion = (lib.versions.major python3.version)
+ (lib.versions.minor python3.version);
version = "2.0";
sha256 = "15nn39ybsfjf3cw3xgkbarvxn4a9ymfd579ankm7yjxkw5gcif38";
in stdenv.mkDerivation {
in stdenv.mkDerivation rec {
pname = "luxcorerender";
inherit version;
version = "2.4";
src = fetchFromGitHub {
owner = "LuxCoreRender";
repo = "LuxCore";
rev = "luxcorerender_v${version}";
inherit sha256;
sha256 = "0xvivw79719fa1q762b76nyvzawfd3hmp8y5j04bax8a7f8mfa9k";
};
nativeBuildInputs = [ cmake flex bison doxygen makeWrapper pkg-config ];
buildInputs = [
embree2 zlib boost_static libjpeg
libtiff libpng ilmbase freetype openexr openimageio
tbb qt5.full c-blosc libGLU pcre
libX11 libpthreadstubs python libXdmcp libxkbcommon
epoxy at-spi2-core dbus
# needed for GSETTINGS_SCHEMAS_PATH
gsettings-desktop-schemas glib gtk3
# needed for XDG_ICON_DIRS
gnome3.adwaita-icon-theme
(lib.getLib dconf)
] ++ lib.optionals withOpenCL [ opencl-headers ocl-icd opencl-clhpp rocm-opencl-runtime ];
nativeBuildInputs = [ pkg-config cmake flex bison doxygen wrapGAppsHook ];
cmakeFlags = [
"-DOpenEXR_Iex_INCLUDE_DIR=${openexr.dev}/include/OpenEXR"
"-DOpenEXR_IlmThread_INCLUDE_DIR=${ilmbase.dev}/include/OpenEXR"
"-DOpenEXR_Imath_INCLUDE_DIR=${openexr.dev}/include/OpenEXR"
"-DOpenEXR_half_INCLUDE_DIR=${ilmbase.dev}/include"
"-DPYTHON_LIBRARY=${python}/lib/libpython3.so"
"-DPYTHON_INCLUDE_DIR=${python}/include/python${python.pythonVersion}"
"-DEMBREE_INCLUDE_PATH=${embree2}/include"
"-DEMBREE_LIBRARY=${embree2}/lib/libembree.so"
"-DBoost_PYTHON_LIBRARY_RELEASE=${boost_static}/lib/libboost_python3-mt.so"
] ++ lib.optional withOpenCL
"-DOPENCL_INCLUDE_DIR=${opencl-headers}/include";
buildInputs = [
libpng
libtiff
zlib
boostWithPython.dev
python3
embree
openexr
openimagedenoise
tbb
c-blosc
gtk3
pcre
openimageio.dev
openimageio.out
] ++ lib.optionals withOpenCL [ ocl-icd ]
++ lib.optionals withCuda [ cudatoolkit ];
cmakeFlags = [ "-DPYTHON_V=${pythonVersion}" ]
++ lib.optional (!withOpenCL) "-DLUXRAYS_DISABLE_OPENCL=1"
++ lib.optional (!withCuda) "-DLUXRAYS_DISABLE_CUDA=1";
preConfigure = ''
NIX_CFLAGS_COMPILE+=" -isystem ${python}/include/python${python.pythonVersion}"
NIX_LDFLAGS+=" -lpython3"
'';
@ -69,13 +63,6 @@ in stdenv.mkDerivation {
cp -va lib/* $out/lib
'';
preFixup = ''
wrapProgram "$out/bin/luxcoreui" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : '${gnome3.adwaita-icon-theme}/share' \
--prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules"
'';
meta = with lib; {
description = "Open source, physically based, unbiased rendering engine";
homepage = "https://luxcorerender.org/";
@ -85,7 +72,6 @@ in stdenv.mkDerivation {
};
}
# TODO (might not be necessary):
#
# luxcoreui still gives warnings like: "failed to commit changes to

View file

@ -6052,7 +6052,7 @@ in
lzip = callPackage ../tools/compression/lzip { };
luxcorerender = callPackage ../tools/graphics/luxcorerender { qt5 = qt514; };
luxcorerender = callPackage ../tools/graphics/luxcorerender { };
xz = callPackage ../tools/compression/xz { };
lzma = xz; # TODO: move to aliases.nix