summary refs log tree commit diff
path: root/pkgs/development/libraries/opencv
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2018-05-10 15:08:47 +0200
committerGitHub <noreply@github.com>2018-05-10 15:08:47 +0200
commit16517b81cddbe2d4f6364cfc38a42457fd4e767e (patch)
treead6ac4cbe5a0939c9d75ec17014cbf367ea76443 /pkgs/development/libraries/opencv
parent3e8a0c067ae8e11e0a9fb0745add6c9be2c06788 (diff)
parent9938bb6c8259a6772e937b0f01318bc816f67ebe (diff)
downloadnixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar.gz
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar.bz2
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar.lz
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar.xz
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.tar.zst
nixpkgs-16517b81cddbe2d4f6364cfc38a42457fd4e767e.zip
Merge pull request #40286 from LumiGuide/opencv.pc
opencv3: fix $out/lib/pkgconfig/opencv.pc
Diffstat (limited to 'pkgs/development/libraries/opencv')
-rw-r--r--pkgs/development/libraries/opencv/3.x.nix15
1 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
index efb9a7cdbe4..1d3a9629fd0 100644
--- a/pkgs/development/libraries/opencv/3.x.nix
+++ b/pkgs/development/libraries/opencv/3.x.nix
@@ -254,6 +254,21 @@ stdenv.mkDerivation rec {
     make doxygen
   '';
 
+  # By default $out/lib/pkgconfig/opencv.pc looks something like this:
+  #
+  #   prefix=/nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1
+  #   exec_prefix=${prefix}
+  #   libdir=${exec_prefix}//nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1/lib
+  #   ...
+  #   Libs: -L${exec_prefix}//nix/store/10pzq1a8fkh8q4sysj8n6mv0w0nl0miq-opencv-3.4.1/lib ...
+  #
+  # Note that ${exec_prefix} is set to $out but that $out is also appended to
+  # ${exec_prefix}. This causes linker errors in downstream packages so we strip
+  # of $out after the ${exec_prefix} prefix:
+  postInstall = ''
+    sed -i "s|\''${exec_prefix}/$out|\''${exec_prefix}|" "$out/lib/pkgconfig/opencv.pc"
+  '';
+
   hardeningDisable = [ "bindnow" "relro" ];
 
   passthru = lib.optionalAttrs enablePython { pythonPath = []; };