diff --git a/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch b/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch new file mode 100644 index 000000000000..93407d5f9ff6 --- /dev/null +++ b/pkgs/development/libraries/clipper2/0001-fix-pc-paths.patch @@ -0,0 +1,14 @@ +diff --git a/Clipper2.pc.cmakein b/Clipper2.pc.cmakein +index 5632c93..0a5d6ba 100644 +--- a/Clipper2.pc.cmakein ++++ b/Clipper2.pc.cmakein +@@ -1,7 +1,7 @@ + prefix=@CMAKE_INSTALL_PREFIX@ + exec_prefix=${prefix} +-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@ +-includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ ++libdir=@CMAKE_INSTALL_FULL_LIBDIR@ ++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ + + Name: Clipper2@PCFILE_LIB_SUFFIX@ + Description: A Polygon Clipping and Offsetting library in C++ diff --git a/pkgs/development/libraries/clipper2/default.nix b/pkgs/development/libraries/clipper2/default.nix new file mode 100644 index 000000000000..7d9437da7a53 --- /dev/null +++ b/pkgs/development/libraries/clipper2/default.nix @@ -0,0 +1,45 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +}: + +stdenv.mkDerivation rec { + pname = "clipper2"; + version = "1.2.2"; + + src = fetchFromGitHub { + owner = "AngusJohnson"; + repo = "Clipper2"; + rev = "Clipper2_${version}"; + sha256 = "sha256-u/4GG1A2PAlk8VEWgJX8+EnZ5hpGhu1QbvHwct58sF4="; + }; + + sourceRoot = "source/CPP"; + + nativeBuildInputs = [ + cmake + ]; + + cmakeFlags = [ + "-DCLIPPER2_EXAMPLES=OFF" + "-DCLIPPER2_TESTS=OFF" + "-DBUILD_SHARED_LIBS=ON" + ]; + + patches = [ + ./0001-fix-pc-paths.patch + ]; + + meta = { + description = "Polygon Clipping and Offsetting - C++ Only"; + longDescription = '' + The Clipper2 library performs intersection, union, difference and XOR boolean operations on both simple and + complex polygons. It also performs polygon offsetting. + ''; + homepage = "https://github.com/AngusJohnson/Clipper2"; + license = lib.licenses.boost; + maintainers = [ lib.maintainers.cadkin ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 973c3712aff6..c86573e54051 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20129,6 +20129,8 @@ with pkgs; clipper = callPackage ../development/libraries/clipper { }; + clipper2 = callPackage ../development/libraries/clipper2 { }; + cln = callPackage ../development/libraries/cln { }; clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix {