depot/third_party/nixpkgs/pkgs/by-name/li/libnest2d/package.nix

46 lines
1.1 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
cmake,
clipper,
nlopt,
boost,
}:
stdenv.mkDerivation {
version = "4.12.0";
pname = "libnest2d";
# This revision is waiting to be merged upstream
# Once it has been merged, this should be switched to it
# Upstream PR: https://github.com/tamasmeszaros/libnest2d/pull/18
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "libnest2d";
rev = "31391fd173249ad9b906390058e13b09238fadc8";
sha256 = "1hzqi4z55x76rss3xk7hfqhy9hcaq2jaav5jqxa1aqmbvarr2gla";
};
postPatch = ''
substituteInPlace {,examples/}CMakeLists.txt \
--replace "set(CMAKE_CXX_STANDARD 11)" "set(CMAKE_CXX_STANDARD 14)"
'';
propagatedBuildInputs = [
clipper
nlopt
boost
];
nativeBuildInputs = [ cmake ];
CLIPPER_PATH = "${clipper.out}";
cmakeFlags = [ "-DLIBNEST2D_HEADER_ONLY=OFF" ];
meta = with lib; {
description = "2D irregular bin packaging and nesting library written in modern C++";
homepage = "https://github.com/Ultimaker/libnest2d";
license = licenses.lgpl3;
platforms = platforms.all;
};
}