summary refs log tree commit diff
path: root/pkgs/applications/version-management/p4v/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/version-management/p4v/default.nix')
-rw-r--r--pkgs/applications/version-management/p4v/default.nix29
1 files changed, 18 insertions, 11 deletions
diff --git a/pkgs/applications/version-management/p4v/default.nix b/pkgs/applications/version-management/p4v/default.nix
index 148f122f7c8..01ea365b76c 100644
--- a/pkgs/applications/version-management/p4v/default.nix
+++ b/pkgs/applications/version-management/p4v/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, lib, qtbase, qtmultimedia, qtscript, qtsensors, qtwebkit, openssl_1_0_2, xkeyboard_config, wrapQtAppsHook }:
+{ stdenv, fetchurl, lib, qtbase, qtmultimedia, qtscript, qtsensors, qtwebengine, qtwebkit, openssl, xkeyboard_config, patchelfUnstable, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "p4v";
-  version = "2017.3.1601999";
+  version = "2020.1.1966006";
 
   src = fetchurl {
-    url = "https://cdist2.perforce.com/perforce/r17.3/bin.linux26x86_64/p4v.tgz";
-    sha256 = "9ded42683141e1808535ec3e87d3149f890315c192d6e97212794fd54862b9a4";
+    url = "https://cdist2.perforce.com/perforce/r20.1/bin.linux26x86_64/p4v.tgz";
+    sha256 = "0zc70d7jgdrd2jli338n1h05hgb7jmmv8hvq205wh78vvllrlv10";
   };
 
   dontBuild = true;
-  nativeBuildInputs = [ wrapQtAppsHook ];
+  nativeBuildInputs = [ patchelfUnstable wrapQtAppsHook ];
 
   ldLibraryPath = lib.makeLibraryPath [
       stdenv.cc.cc.lib
@@ -18,26 +18,33 @@ stdenv.mkDerivation rec {
       qtmultimedia
       qtscript
       qtsensors
+      qtwebengine
       qtwebkit
-      openssl_1_0_2
+      openssl
   ];
 
   dontWrapQtApps = true;
   installPhase = ''
     mkdir $out
     cp -r bin $out
-    mkdir -p $out/lib/p4v
-    cp -r lib/p4v/P4VResources $out/lib/p4v
+    mkdir -p $out/lib
+    cp -r lib/P4VResources $out/lib
 
     for f in $out/bin/*.bin ; do
-      patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $f
-
+      patchelf --set-rpath $ldLibraryPath --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $f
+      # combining this with above breaks rpath (patchelf bug?)
+      patchelf --add-needed libstdc++.so $f \
+               --clear-symbol-version _ZNSt20bad_array_new_lengthD1Ev \
+               --clear-symbol-version _ZTVSt20bad_array_new_length \
+               --clear-symbol-version _ZTISt20bad_array_new_length \
+               $f
       wrapQtApp $f \
-        --suffix LD_LIBRARY_PATH : ${ldLibraryPath} \
         --suffix QT_XKB_CONFIG_ROOT : ${xkeyboard_config}/share/X11/xkb
     done
   '';
 
+  dontFixup = true;
+
   meta = {
     description = "Perforce Visual Client";
     homepage = "https://www.perforce.com";