slic3r-prusa3d: 1.40.1 -> 1.41.0

This commit is contained in:
André-Patrick Bubel 2018-10-02 09:23:14 +02:00
parent 2125e07024
commit 0dd86a350d
No known key found for this signature in database
GPG key ID: 28925CBA8869FF29

View file

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, makeWrapper, which, cmake, perl, perlPackages,
boost, tbb, wxGTK30, pkgconfig, gtk3, fetchurl, gtk2, libGLU,
glew, eigen, curl }:
glew, eigen, curl, gtest, nlopt, pcre, xorg }:
let
AlienWxWidgets = perlPackages.buildPerlPackage rec {
name = "Alien-wxWidgets-0.69";
@ -33,22 +33,28 @@ let
in
stdenv.mkDerivation rec {
name = "slic3r-prusa-edition-${version}";
version = "1.40.1";
version = "1.41.0";
enableParallelBuilding = true;
buildInputs = [
nativeBuildInputs = [
cmake
curl
perl
makeWrapper
];
buildInputs = [
curl
eigen
glew
pcre
perl
tbb
which
Wx
WxGLCanvas
] ++ (with perlPackages; [
xorg.libXdmcp
xorg.libpthreadstubs
] ++ checkInputs ++ (with perlPackages; [
boost
ClassXSAccessor
EncodeLocale
@ -72,16 +78,24 @@ stdenv.mkDerivation rec {
XMLSAX
]);
checkInputs = [ gtest ];
# The build system uses custom logic - defined in
# xs/src/libnest2d/cmake_modules/FindNLopt.cmake in the package source -
# for finding the nlopt library, which doesn't pick up the package in the nix store.
# We need to set the path via the NLOPT environment variable instead.
NLOPT = "${nlopt}";
prePatch = ''
# In nix ioctls.h isn't available from the standard kernel-headers package
# on other distributions. As the copy in glibc seems to be identical to the
# one in the kernel, we use that one instead.
sed -i 's|"/usr/include/asm-generic/ioctls.h"|<asm-generic/ioctls.h>|g' xs/src/libslic3r/GCodeSender.cpp
# PERL_VENDORARCH and PERL_VENDORLIB aren't detected correctly by the build
# PERL_VENDORARCH and PERL_VENDORLIB aren't set correctly by the build
# system, so we have to override them. Setting them as environment variables
# doesn't work though, so patching the paths directly in the CMakeLists.txt
# seems to be the easisest way.
# doesn't work though, so substituting the paths directly in CMakeLists.txt
# seems to be the easiest way.
sed -i "s|\''${PERL_VENDORARCH}|$out/lib/slic3r-prusa3d|g" xs/CMakeLists.txt
sed -i "s|\''${PERL_VENDORLIB}|$out/lib/slic3r-prusa3d|g" xs/CMakeLists.txt
'';
@ -100,7 +114,7 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "prusa3d";
repo = "Slic3r";
sha256 = "022mdz8824wg68qwgd49gnplw7wn84hqw113xh8l25v3j1jb9zmc";
sha256 = "1al60hrqbhl05dnsr99hzbmxmn26fyx19sc5zxv816x3q6px9n2d";
rev = "version_${version}";
};
@ -108,7 +122,7 @@ stdenv.mkDerivation rec {
description = "G-code generator for 3D printer";
homepage = https://github.com/prusa3d/Slic3r;
license = licenses.agpl3;
platforms = platforms.linux;
platforms = subtractLists ["aarch64-linux"] platforms.linux;
maintainers = with maintainers; [ tweber ];
};
}