From mboxrd@z Thu Jan 1 00:00:00 1970 From: taylanbayirli@gmail.com (Taylan Ulrich =?utf-8?Q?Bay=C4=B1rl=C4=B1?= =?utf-8?Q?=2FKammer?=) Subject: Re: [PATCH] gnu: mesa: Add libva input. Date: Wed, 29 Apr 2015 23:52:30 +0200 Message-ID: <871tj2eh5t.fsf@taylan.uni.cx> References: <87zj5se6o0.fsf@taylan.uni.cx> <87383kbah1.fsf@gmail.com> <87r3r4dmwq.fsf@taylan.uni.cx> <20150429211211.GB9266@debian> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39325) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YnZuE-0006Q8-IL for guix-devel@gnu.org; Wed, 29 Apr 2015 17:52:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YnZuD-0000qi-6v for guix-devel@gnu.org; Wed, 29 Apr 2015 17:52:34 -0400 Received: from mail-wi0-x232.google.com ([2a00:1450:400c:c05::232]:37061) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YnZuD-0000qe-09 for guix-devel@gnu.org; Wed, 29 Apr 2015 17:52:33 -0400 Received: by widdi4 with SMTP id di4so81445303wid.0 for ; Wed, 29 Apr 2015 14:52:32 -0700 (PDT) In-Reply-To: <20150429211211.GB9266@debian> (Andreas Enge's message of "Wed, 29 Apr 2015 23:12:11 +0200") 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: Andreas Enge Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Andreas Enge writes: > On Tue, Apr 28, 2015 at 10:21:25PM +0200, Taylan Ulrich Bay=C4=B1rl=C4=B1= /Kammer wrote: >> notably I put the libva-without-mesa package into video.scm >> because I was getting circular import problems: >> +(define-public libva-no-mesa > > Is there no other solution that does not expose the package to the public? > After all, it is not supposed to be installed explicitly by a user if I > understood you correctly. Right. I don't know what I did wrong before, but it actually seems to work fine to put it in gl.scm. New patch: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0003-gnu-mesa-Add-libva-input.patch >From 88befe34eb2d92fe81ac2a897934b9aad0b9a22d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?= Date: Tue, 28 Apr 2015 15:08:47 +0200 Subject: [PATCH 3/4] 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 | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index a40749e..8159073 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -21,11 +21,13 @@ (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) #:use-module (guix build-system gnu) #:use-module (guix packages) + #:use-module (guix utils) #:use-module (gnu packages autotools) #:use-module (gnu packages bison) #:use-module (gnu packages flex) @@ -37,6 +39,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 +162,18 @@ Polygon meshes, and Extruded polygon meshes") also known as DXTn or DXTC) for Mesa.") (license l:expat))) +(define libva-no-mesa + (package + (inherit libva) + (name "libva-no-mesa") + (inputs (alist-delete "mesa" (package-inputs libva))) + (arguments + (strip-keyword-arguments + '(#:make-flags) + (substitute-keyword-arguments (package-arguments libva) + ((#:configure-flags flags) + '(list "--disable-glx" "--disable-egl"))))))) + (define-public mesa (package (name "mesa") @@ -188,8 +203,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-no-mesa) ("libxml2" ,libxml2) ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support ("libxvmc" ,libxvmc) -- 2.2.1 --=-=-=--