Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 stdenv, 4 callPackage, 5 fetchFromGitHub, 6 testers, 7 8 cmake, 9}: 10 11stdenv.mkDerivation (finalAttrs: { 12 pname = "geos"; 13 version = "3.13.1"; 14 15 src = fetchFromGitHub { 16 owner = "libgeos"; 17 repo = "geos"; 18 tag = finalAttrs.version; 19 hash = "sha256-zPVP01AMIBKMnKi6Sq++CIaVZb5JA1v8/QAdGzKdL8Y="; 20 }; 21 22 nativeBuildInputs = [ cmake ]; 23 24 # https://github.com/libgeos/geos/issues/930 25 cmakeFlags = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [ 26 "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;unit-geom-Envelope" 27 ]; 28 29 doCheck = true; 30 31 passthru.tests = { 32 pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; 33 geos = callPackage ./tests.nix { geos = finalAttrs.finalPackage; }; 34 }; 35 36 meta = with lib; { 37 description = "C/C++ library for computational geometry with a focus on algorithms used in geographic information systems (GIS) software"; 38 homepage = "https://libgeos.org"; 39 license = licenses.lgpl21Only; 40 mainProgram = "geosop"; 41 teams = [ teams.geospatial ]; 42 pkgConfigModules = [ "geos" ]; 43 changelog = "https://github.com/libgeos/geos/releases/tag/${finalAttrs.finalPackage.version}"; 44 }; 45})