about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-11-09 21:07:02 +0000
committerAlyssa Ross <hi@alyssa.is>2021-11-21 13:50:06 +0000
commit82ccc7f17b5f70c36568918c386992fa4706faff (patch)
tree7150c617ec5a77a55fd579c2cb8b42e443d4664b
parentee1c5afbb56c6ba8d3e0afc1eb5a1672cc4f609d (diff)
libgphoto2: fix cross
Depends on libtool at runtime for libltdl.
-rw-r--r--pkgs/development/libraries/libgphoto2/default.nix19
1 files changed, 14 insertions, 5 deletions
diff --git a/pkgs/development/libraries/libgphoto2/default.nix b/pkgs/development/libraries/libgphoto2/default.nix
index 3e3fa1a725bff..666135f91bb98 100644
--- a/pkgs/development/libraries/libgphoto2/default.nix
+++ b/pkgs/development/libraries/libgphoto2/default.nix
@@ -1,7 +1,9 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gettext
+{ lib, stdenv, fetchFromGitHub, buildPackages
+, autoreconfHook, pkg-config, gettext
 , libusb1
 , libtool
 , libexif
+, libgphoto2
 , libjpeg
 }:
 
@@ -16,17 +18,17 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-c7fBl6GBLAU+RL5WFC4PL+n/nEHZUfqIJ9qq1+qNNCg=";
   };
 
-  patches = [];
+  depsBuildBuild = [ pkg-config ];
 
   nativeBuildInputs = [
     autoreconfHook
-    pkg-config
     gettext
     libtool
   ];
 
   buildInputs = [
     libjpeg
+    libtool # for libltdl
     libusb1
   ];
 
@@ -35,9 +37,16 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  postInstall = ''
+  postInstall = let
+    executablePrefix = if stdenv.buildPlatform == stdenv.hostPlatform then
+      "$out"
+    else
+      buildPackages.libgphoto2;
+  in ''
     mkdir -p $out/lib/udev/rules.d
-    $out/lib/libgphoto2/print-camera-list udev-rules version 175 group camera >$out/lib/udev/rules.d/40-gphoto2.rules
+    ${executablePrefix}/lib/libgphoto2/print-camera-list \
+        udev-rules version 175 group camera \
+        >$out/lib/udev/rules.d/40-gphoto2.rules
   '';
 
   meta = {