ripgrep: link PCRE2 dynamically

The pcre2 crate which is used by ripgrep uses pkg-config to find the
path of the PCRE2 dynamic library. If the pkg-config or the library is
not found, PCRE2 will be built/linked statically.

This change adds pkg-config to the nativeBuildInputs of ripgrep, so
that the PCRE2 library is detected and dynamically linked.
This commit is contained in:
Daniël de Kok 2021-02-15 08:18:29 +01:00
parent 2b37fe7a77
commit 797b60f0d7

View file

@ -4,6 +4,7 @@
, rustPlatform
, asciidoctor
, installShellFiles
, pkg-config
, Security
, withPCRE2 ? true
, pcre2 ? null
@ -24,9 +25,10 @@ rustPlatform.buildRustPackage rec {
cargoBuildFlags = lib.optional withPCRE2 "--features pcre2";
nativeBuildInputs = [ asciidoctor installShellFiles ];
nativeBuildInputs = [ asciidoctor installShellFiles ]
++ lib.optional withPCRE2 pkg-config;
buildInputs = (lib.optional withPCRE2 pcre2)
++ (lib.optional stdenv.isDarwin Security);
++ (lib.optional stdenv.isDarwin Security);
preFixup = ''
installManPage $releaseDir/build/ripgrep-*/out/rg.1