about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/vaapi-vdpau
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:36 +0000
committerAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:47 +0000
commit36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch)
treeb3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/development/libraries/vaapi-vdpau
parent4e31070265257dc67d120c27e0f75c2344fdfa9a (diff)
parentabf060725d7614bd3b9f96764262dfbc2f9c2199 (diff)
downloadnixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs
git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a
git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/vaapi-vdpau')
-rw-r--r--nixpkgs/pkgs/development/libraries/vaapi-vdpau/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/vaapi-vdpau/glext85.patch20
2 files changed, 57 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/vaapi-vdpau/default.nix b/nixpkgs/pkgs/development/libraries/vaapi-vdpau/default.nix
new file mode 100644
index 000000000000..07ca9d2e62e1
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/vaapi-vdpau/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, libvdpau, libGLU_combined, libva, pkgconfig }:
+let
+  libvdpau08patch = (fetchurl { url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch?revision=1.1";
+                                name = "libva-vdpau-driver-0.7.4-libvdpau-0.8.patch";
+                                sha256 = "1n2cys59wyv8ylx9i5m3s6856mgx24hzcp45w1ahdfbzdv9wrfbl";
+                              });
+in
+stdenv.mkDerivation rec {
+  name = "libva-vdpau-driver-0.7.4";
+  
+  src = fetchurl {
+    url = "https://www.freedesktop.org/software/vaapi/releases/libva-vdpau-driver/${name}.tar.bz2";
+    sha256 = "1fcvgshzyc50yb8qqm6v6wn23ghimay23ci0p8sm8gxcy211jp0m";
+  };
+
+  patches = [ ./glext85.patch
+              (fetchurl { url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch?revision=1.1";
+                          name = "libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch";
+                          sha256 = "166svcav6axkrlb3i4rbf6dkwjnqdf69xw339az1f5yabj72pqqs";
+                        }) ];
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libvdpau libGLU_combined libva ];
+
+  preConfigure = ''
+    patch -p0 < ${libvdpau08patch}  # use -p0 instead of -p1
+    sed -i -e "s,LIBVA_DRIVERS_PATH=.*,LIBVA_DRIVERS_PATH=$out/lib/dri," configure
+  '';
+
+
+  meta = {
+    homepage = https://cgit.freedesktop.org/vaapi/vdpau-driver/;
+    license = stdenv.lib.licenses.gpl2Plus;
+    description = "VDPAU driver for the VAAPI library";
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/vaapi-vdpau/glext85.patch b/nixpkgs/pkgs/development/libraries/vaapi-vdpau/glext85.patch
new file mode 100644
index 000000000000..073b8cf11904
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/vaapi-vdpau/glext85.patch
@@ -0,0 +1,20 @@
+http://www.mail-archive.com/libva@lists.freedesktop.org/msg01457.html
+
+diff --git a/src/utils_glx.h b/src/utils_glx.h
+index 19d03e4..f270fba 100644
+--- a/src/utils_glx.h
++++ b/src/utils_glx.h
+@@ -42,6 +42,13 @@ typedef void (*PFNGLVDPAUMAPSURFACESNVPROC)(GLsizei numSurfaces, const GLvdpauSu
+ typedef void (*PFNGLVDPAUUNMAPSURFACESNVPROC)(GLsizei numSurface, const GLvdpauSurfaceNV *surfaces);
+ #endif
+ 
++#if GL_GLEXT_VERSION >= 85
++/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the GL_VERSION_1_3_DEPRECATED
++   block and is not defined if GL_VERSION_1_3 is defined in <GL/gl.h>
++   Redefine the type here as an interim solution */
++typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
++#endif
++
+ /* GLX_EXT_texture_from_pixmap */
+ #if GLX_GLXEXT_VERSION < 18
+ typedef void (*PFNGLXBINDTEXIMAGEEXTPROC)(Display *, GLXDrawable, int, const int *);