guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: mesa: Add libva input.


From: 宋文武
Subject: Re: [PATCH] gnu: mesa: Add libva input.
Date: Tue, 28 Apr 2015 22:20:42 +0800
User-agent: Notmuch/0.18.1 (http://notmuchmail.org) Emacs/24.5.1 (x86_64-unknown-linux-gnu)

"Taylan Ulrich Bayırlı/Kammer" <address@hidden> writes:

> From 8bb21df5e4769797ba915a83643da57168f8dc9d Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?=
>  <address@hidden>
> Date: Tue, 28 Apr 2015 15:08:47 +0200
> Subject: [PATCH 2/3] gnu: mesa: Add libva input.
>
> There is a circular dependency between Mesa and libVA, so we use a
> libva-for-mesa package that builds libVA without GLX and EGL support, and use
> that for building Mesa.
>
> * gnu/packages/gl.scm (libva-for-mesa): New variable.
> (mesa): Add as input.
> ---
>  gnu/packages/gl.scm | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
> index a40749e..69dd8b7 100644
> --- a/gnu/packages/gl.scm
> +++ b/gnu/packages/gl.scm
> @@ -21,6 +21,7 @@
>  
>  (define-module (gnu packages gl)
>    #:use-module (ice-9 match)
> +  #:use-module (guix build utils)
>    #:use-module ((guix licenses) #:prefix l:)
>    #:use-module (guix packages)
>    #:use-module (guix download)
> @@ -37,6 +38,7 @@
>    #:use-module (gnu packages xml)
>    #:use-module (gnu packages fontutils)
>    #:use-module (gnu packages guile)
> +  #:use-module (gnu packages video)
>    #:use-module (gnu packages xdisorg))
>  
>  (define-public glu
> @@ -159,6 +161,12 @@ Polygon meshes, and Extruded polygon meshes")
>  also known as DXTn or DXTC) for Mesa.")
>      (license l:expat)))
>  
> +(define libva-for-mesa
> +  (package
> +    (inherit libva)
> +    (inputs (alist-delete "mesa" (package-inputs libva)))
> +    (arguments '(#:configure-flags '("--disable-glx" "--disable-egl")))))
> +
>  (define-public mesa
>    (package
>      (name "mesa")
> @@ -188,8 +196,7 @@ also known as DXTn or DXTC) for Mesa.")
>          ("dri3proto" ,dri3proto)
>          ("presentproto" ,presentproto)
>          ("expat" ,expat)
> -        ;; TODO: Solve circular dependency with libva.
> -        ;; ("libva" ,libva)
> +        ("libva" ,libva-for-mesa)
>          ("libxml2" ,libxml2)
>          ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
>          ("libxvmc" ,libxvmc)
> -- 
> 2.2.1
Look good to me, but how does it work?
According to archlinux, it will build 'gallium_drv_video.so',
described as VA-API implementation for gallium.
IIUC, libva may dlopen this gallium_drv_video.so?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]