summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorMichael Alyn Miller <malyn@strangeGizmo.com>2015-01-25 20:39:46 -0800
committerMichael Alyn Miller <malyn@strangeGizmo.com>2015-01-25 20:43:36 -0800
commit1751ee35aa300655286c5961d20d70b229c460ac (patch)
tree8c82f35c2087963b239086b25a3fb804749d1666 /pkgs/applications
parent24b5eb61eb944036b5716788ead1b204fba08719 (diff)
downloadnixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar.gz
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar.bz2
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar.lz
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar.xz
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.tar.zst
nixpkgs-1751ee35aa300655286c5961d20d70b229c460ac.zip
freerdp: Use absolute path when calling dlopen
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/networking/remote/freerdp/dlopen-absolute-paths.diff25
-rw-r--r--pkgs/applications/networking/remote/freerdp/unstable.nix8
2 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/applications/networking/remote/freerdp/dlopen-absolute-paths.diff b/pkgs/applications/networking/remote/freerdp/dlopen-absolute-paths.diff
new file mode 100644
index 00000000000..2037ad6acb9
--- /dev/null
+++ b/pkgs/applications/networking/remote/freerdp/dlopen-absolute-paths.diff
@@ -0,0 +1,25 @@
+*** FreeRDP-1.2.0-beta1+android7-src/winpr/libwinpr/smartcard/smartcard_pcsc.c.orig	2015-01-25 19:10:03.971628580 -0800
+--- FreeRDP-1.2.0-beta1+android7-src/winpr/libwinpr/smartcard/smartcard_pcsc.c	2015-01-25 19:55:05.453980544 -0800
+***************
+*** 2807,2816 ****
+  #ifdef __MACOSX__
+  	g_PCSCModule = LoadLibraryA("/System/Library/Frameworks/PCSC.framework/PCSC");
+  #else
+! 	g_PCSCModule = LoadLibraryA("libpcsclite.so.1");
+  
+  	if (!g_PCSCModule)
+! 		g_PCSCModule = LoadLibraryA("libpcsclite.so");
+  #endif
+  
+  	if (!g_PCSCModule)
+--- 2807,2816 ----
+  #ifdef __MACOSX__
+  	g_PCSCModule = LoadLibraryA("/System/Library/Frameworks/PCSC.framework/PCSC");
+  #else
+! 	g_PCSCModule = LoadLibraryA("@pcsclite@/lib/libpcsclite.so.1");
+  
+  	if (!g_PCSCModule)
+! 		g_PCSCModule = LoadLibraryA("@pcsclite@/lib/libpcsclite.so");
+  #endif
+  
+  	if (!g_PCSCModule)
diff --git a/pkgs/applications/networking/remote/freerdp/unstable.nix b/pkgs/applications/networking/remote/freerdp/unstable.nix
index 00e5a4f93ee..a1528dd1255 100644
--- a/pkgs/applications/networking/remote/freerdp/unstable.nix
+++ b/pkgs/applications/networking/remote/freerdp/unstable.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, openssl, zlib, libX11, libXcursor
 , libXdamage, libXext, glib, alsaLib, ffmpeg, libxkbfile, libXinerama, libXv
+, substituteAll
 , pulseaudio ? null, cups ? null, pcsclite ? null
 }:
 
@@ -13,6 +14,13 @@ stdenv.mkDerivation rec {
     sha256 = "08nn18jydblrif1qs92pakzd3ww7inr0i378ssn1bjp09lm1bkk0";
   };
 
+  patches = [
+  ] ++ stdenv.lib.optional (pcsclite != null)
+      (substituteAll {
+        src = ./dlopen-absolute-paths.diff;
+        inherit pcsclite;
+      });
+
   buildInputs = [
     cmake pkgconfig openssl zlib libX11 libXcursor libXdamage libXext glib
     alsaLib ffmpeg libxkbfile libXinerama libXv cups pulseaudio pcsclite