diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix b/infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix index 8bd861540688..7436641a2fe6 100644 --- a/infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix +++ b/infra/libkookie/nixpkgs/pkgs/development/libraries/pugixml/default.nix @@ -1,34 +1,41 @@ -{ stdenv, fetchFromGitHub, fetchpatch, cmake, shared ? false }: +{ stdenv, lib, fetchFromGitHub, cmake, check, validatePkgConfig, shared ? false }: stdenv.mkDerivation rec { pname = "pugixml"; - version = "1.9"; + version = "1.11"; src = fetchFromGitHub { owner = "zeux"; repo = "pugixml"; rev = "v${version}"; - sha256 = "0iraznwm78pyyzc9snvd3dyz8gddvmxsm1b3kpw7wixkvcawdviv"; + sha256 = "0q620bfd9lnph68jhqn7iv9bqmks7qk90riq6f6nr4kqc4xnravd"; }; - patches = [ - # To be removed after a version newer than 1.9 is released - (fetchpatch { - url = "https://github.com/zeux/pugixml/pull/193.patch"; - sha256 = "0s4anqlr2ppfibxyl29nrqbcprrg89k7il6303dm91s6620ydmka"; - }) + outputs = if shared then [ "out" "dev" ] else [ "out" ]; + + nativeBuildInputs = [ cmake validatePkgConfig ]; + + cmakeFlags = [ + "-DBUILD_TESTS=ON" + "-DBUILD_SHARED_LIBS=${if shared then "ON" else "OFF"}" ]; - nativeBuildInputs = [ cmake ]; + checkInputs = [ check ]; - cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if shared then "ON" else "OFF"}" ]; + # Hack to be able to run the test, broken because we use + # CMAKE_SKIP_BUILD_RPATH to avoid cmake resetting rpath on install + preCheck = if stdenv.isDarwin then '' + export DYLD_LIBRARY_PATH="$(pwd)''${DYLD_LIBRARY_PATH:+:}$DYLD_LIBRARY_PATH" + '' else '' + export LD_LIBRARY_PATH="$(pwd)''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" + ''; preConfigure = '' # Enable long long support (required for filezilla) sed -ire '/PUGIXML_HAS_LONG_LONG/ s/^\/\///' src/pugiconfig.hpp ''; - meta = with stdenv.lib; { + meta = with lib; { description = "Light-weight, simple and fast XML parser for C++ with XPath support"; homepage = "https://pugixml.org"; license = licenses.mit; |