summary refs log tree commit diff
path: root/pkgs/tools/X11/virtualgl
diff options
context:
space:
mode:
authorNikolay Amiantov <ab@fmap.me>2015-12-05 00:33:02 +0300
committerNikolay Amiantov <ab@fmap.me>2015-12-05 00:54:09 +0300
commit3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc (patch)
tree95e3b074c32af3543098cff675a0e238150bcada /pkgs/tools/X11/virtualgl
parent56ffc2ecd2d37c29dfa56af7841fa31837702502 (diff)
downloadnixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar.gz
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar.bz2
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar.lz
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar.xz
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.tar.zst
nixpkgs-3b1ab88428d8d41bb3a567eb0e6178b24fcfddbc.zip
virtualgl: 2.3.2 -> 2.4.1, fix multilib
Diffstat (limited to 'pkgs/tools/X11/virtualgl')
-rw-r--r--pkgs/tools/X11/virtualgl/default.nix45
-rw-r--r--pkgs/tools/X11/virtualgl/fixturbopath.patch16
-rw-r--r--pkgs/tools/X11/virtualgl/lib.nix29
-rw-r--r--pkgs/tools/X11/virtualgl/xshm.patch13
4 files changed, 46 insertions, 57 deletions
diff --git a/pkgs/tools/X11/virtualgl/default.nix b/pkgs/tools/X11/virtualgl/default.nix
index ceeadbaafaa..7203229c47b 100644
--- a/pkgs/tools/X11/virtualgl/default.nix
+++ b/pkgs/tools/X11/virtualgl/default.nix
@@ -1,33 +1,22 @@
-{ stdenv, fetchurl, mesa, libX11, openssl, libXext
-, libjpeg_turbo, cmake }:
+{ lib, buildEnv
+, virtualglLib
+, virtualglLib_i686 ? null
+}:
 
-let
-  version = "2.3.2";
-in
-stdenv.mkDerivation {
-  name = "virtualgl-${version}";
-  src = fetchurl {
-    url = "mirror://sourceforge/virtualgl/VirtualGL-${version}.tar.gz";
-    sha256 = "062lrhd8yr13ch4wpgzxdabqs92j4q7fcl3a0c3sdlav4arspqmy";
-  };
+buildEnv {
+  name = "virtualgl-${lib.getVersion virtualglLib}";
 
-  patches = [ ./xshm.patch ./fixturbopath.patch ];
+  paths = [ virtualglLib ];
 
-  prePatch = ''
-    sed -i s,LD_PRELOAD=lib,LD_PRELOAD=$out/lib/lib, server/vglrun
+  postBuild = lib.optionalString (virtualglLib_i686 != null) ''
+    rm $out/fakelib
+    # workaround for #4621
+    rm $out/bin
+    mkdir $out/bin
+    for i in ${virtualglLib}/bin/*; do
+      ln -s $i $out/bin
+    done
+    ln -s ${virtualglLib}/bin/.vglrun.vars64 $out/bin
+    ln -s ${virtualglLib_i686}/bin/.vglrun.vars32 $out/bin
   '';
-
-  cmakeFlags = [ "-DTJPEG_LIBRARY=${libjpeg_turbo}/lib/libturbojpeg.so" ];
-
-  preInstall = ''
-    export makeFlags="prefix=$out"
-  '';
-
-  buildInputs = [ cmake mesa libX11 openssl libXext libjpeg_turbo ];
-
-  meta = {
-    homepage = http://www.virtualgl.org/;
-    description = "X11 GL rendering in a remote computer with full 3D hw acceleration";
-    license = stdenv.lib.licenses.free; # many parts under different free licenses
-  };
 }
diff --git a/pkgs/tools/X11/virtualgl/fixturbopath.patch b/pkgs/tools/X11/virtualgl/fixturbopath.patch
deleted file mode 100644
index 2177555e33a..00000000000
--- a/pkgs/tools/X11/virtualgl/fixturbopath.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- VirtualGL-2.3/cmakescripts/FindTurboJPEG.cmake.orig 2012-02-02 17:33:49.496283001 +0100
-+++ VirtualGL-2.3/cmakescripts/FindTurboJPEG.cmake      2012-02-02 17:44:18.772483239 +0100
-@@ -40,8 +40,11 @@
-        endif()
- endif()
- 
--set(TJPEG_LIBRARY ${DEFAULT_TJPEG_LIBRARY} CACHE PATH
--  "TurboJPEG library path (default: ${DEFAULT_TJPEG_LIBRARY})")
-+if(NOT TJPEG_LIBRARY)
-+       message(STATUS "TJPEG_LIBRARY environment variable not set")
-+       set(TJPEG_LIBRARY ${DEFAULT_TJPEG_LIBRARY} CACHE PATH
-+               "TurboJPEG library path (default: ${DEFAULT_TJPEG_LIBRARY})")
-+endif()
- 
- if(WIN32)
-        set(CMAKE_REQUIRED_DEFINITIONS -MT)
diff --git a/pkgs/tools/X11/virtualgl/lib.nix b/pkgs/tools/X11/virtualgl/lib.nix
new file mode 100644
index 00000000000..5c4456f6348
--- /dev/null
+++ b/pkgs/tools/X11/virtualgl/lib.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, cmake, mesa, libX11, libXv, libjpeg_turbo, fltk }:
+
+let
+  version = "2.4.1";
+in
+stdenv.mkDerivation {
+  name = "virtualgl-lib-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/virtualgl/VirtualGL-${version}.tar.gz";
+    sha256 = "0bngb4hrl0kn19qb3sa6mg6dbaahfk09gx2ng18l00xm6pmwd298";
+  };
+
+  cmakeFlags = [ "-DVGL_SYSTEMFLTK=1" "-DTJPEG_LIBRARY=${libjpeg_turbo}/lib/libturbojpeg.so" ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ libjpeg_turbo mesa fltk libX11 libXv ];
+
+  meta = with stdenv.lib; {
+    homepage = http://www.virtualgl.org/;
+    description = "X11 GL rendering in a remote computer with full 3D hw acceleration";
+    license = licenses.free; # many parts under different free licenses
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ abbradar ];
+  };
+}
diff --git a/pkgs/tools/X11/virtualgl/xshm.patch b/pkgs/tools/X11/virtualgl/xshm.patch
deleted file mode 100644
index 2ca81b559ea..00000000000
--- a/pkgs/tools/X11/virtualgl/xshm.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/util/fbx.c b/util/fbx.c
-index 06ea835..0d89842 100644
---- a/util/fbx.c
-+++ b/util/fbx.c
-@@ -15,6 +15,8 @@
- // This library abstracts fast frame buffer access
- #include <string.h>
- #include <stdlib.h>
-+#include <X11/Xmd.h>
-+#include <X11/extensions/shmproto.h>
- #include "fbx.h"
- 
- #define MINWIDTH  160