From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?B?5a6L5paH5q2m?= Subject: Re: [PATCH] gnu: mesa: Add libva input. Date: Tue, 28 Apr 2015 22:20:42 +0800 Message-ID: <87383kbah1.fsf@gmail.com> References: <87zj5se6o0.fsf@taylan.uni.cx> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51141) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yn6Mt-0004q7-EA for guix-devel@gnu.org; Tue, 28 Apr 2015 10:20:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yn6Mp-0001et-Fl for guix-devel@gnu.org; Tue, 28 Apr 2015 10:20:11 -0400 Received: from mail-pa0-x244.google.com ([2607:f8b0:400e:c03::244]:35521) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yn6Mp-0001dD-8l for guix-devel@gnu.org; Tue, 28 Apr 2015 10:20:07 -0400 Received: by pabli10 with SMTP id li10so45325158pab.2 for ; Tue, 28 Apr 2015 07:20:06 -0700 (PDT) In-Reply-To: <87zj5se6o0.fsf@taylan.uni.cx> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: =?utf-8?Q?Taylan_Ulrich_Bay=C4=B1rl=C4=B1=2FKammer?= , guix-devel@gnu.org "Taylan Ulrich Bay=C4=B1rl=C4=B1/Kammer" writes: > From 8bb21df5e4769797ba915a83643da57168f8dc9d Mon Sep 17 00:00:00 2001 > From: =3D?UTF-8?q?Taylan=3D20Ulrich=3D20Bay=3DC4=3DB1rl=3DC4=3DB1/Kammer?= =3D > > 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 @@ >=20=20 > (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)) >=20=20 > (define-public glu > @@ -159,6 +161,12 @@ Polygon meshes, and Extruded polygon meshes") > also known as DXTn or DXTC) for Mesa.") > (license l:expat))) >=20=20 > +(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) > --=20 > 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?