* mesa in xorg.scm @ 2013-12-26 12:50 John Darrington 2013-12-27 22:05 ` Ludovic Courtès 0 siblings, 1 reply; 7+ messages in thread From: John Darrington @ 2013-12-26 12:50 UTC (permalink / raw) To: guix-devel [-- Attachment #1: Type: text/plain, Size: 392 bytes --] I wondered why mesa is defined in the module xorg.scm since it really doesn't have much to do with X, other than X is one graphics system it supports. Wouldn't the module gl.scm be a better location? J' -- PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: mesa in xorg.scm 2013-12-26 12:50 mesa in xorg.scm John Darrington @ 2013-12-27 22:05 ` Ludovic Courtès 2013-12-28 7:50 ` Andreas Enge 2013-12-28 8:10 ` [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm John Darrington 0 siblings, 2 replies; 7+ messages in thread From: Ludovic Courtès @ 2013-12-27 22:05 UTC (permalink / raw) To: John Darrington; +Cc: guix-devel John Darrington <john@darrington.wattle.id.au> skribis: > I wondered why mesa is defined in the module xorg.scm since it really doesn't have > much to do with X, other than X is one graphics system it supports. > > Wouldn't the module gl.scm be a better location? Probably yes, although several Xorg components (mostly drivers, uh?) seem to depend on it. Feel free to post a patch, and perhaps you could check whether those drivers really depend on MESA, which sounds a bit strange to me. Ludo’. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: mesa in xorg.scm 2013-12-27 22:05 ` Ludovic Courtès @ 2013-12-28 7:50 ` Andreas Enge 2013-12-28 8:10 ` [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm John Darrington 1 sibling, 0 replies; 7+ messages in thread From: Andreas Enge @ 2013-12-28 7:50 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel On Fri, Dec 27, 2013 at 11:05:22PM +0100, Ludovic Courtès wrote: > John Darrington <john@darrington.wattle.id.au> skribis: > > I wondered why mesa is defined in the module xorg.scm since it really doesn't have > > much to do with X, other than X is one graphics system it supports. > > > > Wouldn't the module gl.scm be a better location? > > Probably yes, although several Xorg components (mostly drivers, uh?) > seem to depend on it. Indeed, when I started packaging x.org, I put all of its files, as well as the dependencies we had not yet packaged, into xorg.scm. But I have nothing against moving packages around. Andreas ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm 2013-12-27 22:05 ` Ludovic Courtès 2013-12-28 7:50 ` Andreas Enge @ 2013-12-28 8:10 ` John Darrington 2013-12-28 8:10 ` John Darrington 1 sibling, 1 reply; 7+ messages in thread From: John Darrington @ 2013-12-28 8:10 UTC (permalink / raw) To: guix-devel The driver dependencies on mesa are probably correct. The history is interesting: X11 of course predates OpenGL. X11 provides a 2D graphics system. OpenGL provides a 3D system. Early OpenGL implementations for *nix like systems used the X11 primitives for their implementation. This was found to be slow. Later versions bypassed X11 and rendered directly at the hardware level. Then, a number of X driver developers realised that much of the work they were doing had already been done by OpenGL implementations (such as Mesa). So rather than doing it themselves, they decided simply to use Mesa. In other words, whereas Mesa used to be a layer on top of X11, the situation has reversed itself. Today, X11 is an abstraction on top of Mesa. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm 2013-12-28 8:10 ` [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm John Darrington @ 2013-12-28 8:10 ` John Darrington 2013-12-30 15:56 ` Ludovic Courtès 0 siblings, 1 reply; 7+ messages in thread From: John Darrington @ 2013-12-28 8:10 UTC (permalink / raw) To: guix-devel; +Cc: John Darrington * gnu/packages/xorg.scm: Remove variable mesa gnu/packages/gl.scm: Add variable mesa --- gnu/packages/gl.scm | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ gnu/packages/xorg.scm | 59 +--------------------------------------------- 2 files changed, 63 insertions(+), 58 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index f54d689..0da4ddf 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -23,7 +23,12 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix packages) + #:use-module (gnu packages bison) + #:use-module (gnu packages flex) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages xorg) + #:use-module (gnu packages xml) #:use-module (gnu packages fontutils)) (define-public glu @@ -110,3 +115,60 @@ the X-Consortium license.") rendering modes are: Bitmaps, Anti-aliased pixmaps, Texture maps, Outlines, Polygon meshes, and Extruded polygon meshes") (license l:x11))) + +(define-public mesa + (package + (name "mesa") + ;; In newer versions (9.0.5, 9.1 and 9.2 tested), "make" results in an + ;; infinite configure loop, see + ;; https://bugs.freedesktop.org/show_bug.cgi?id=58812 + (version "8.0.5") + (source + (origin + (method url-fetch) + (uri (string-append + "ftp://ftp.freedesktop.org/pub/mesa/older-versions/8.x/" + version + "/MesaLib-" version + ".tar.bz2")) + (sha256 + (base32 + "0pjs8x51c0i6mawgd4w03lxpyx5fnx7rc8plr8jfsscf9yiqs6si")))) + (build-system gnu-build-system) + (propagated-inputs + `(("glproto" ,glproto) + ("libdrm" ,libdrm-2.4.33) + ("libxdamage" ,libxdamage) + ("libxxf86vm" ,libxxf86vm))) + (inputs + `(("dri2proto" ,dri2proto) + ("expat" ,expat) + ("libx11" ,libx11) + ("libxfixes" ,libxfixes) + ("libxml2" ,libxml2) + ("makedepend" ,makedepend))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("flex" ,flex) + ("bison" ,bison) + ("python" ,python-2))) ; incompatible with Python 3 (print syntax) + (arguments + `(#:configure-flags + `("--with-gallium-drivers=r600,svga,swrast") ; drop r300 from the default list as it requires llvm + #:phases + (alist-cons-after + 'unpack 'remove-symlink + (lambda* (#:key #:allow-other-keys) + ;; remove dangling symlink to /usr/include/wine/windows + (delete-file "src/gallium/state_trackers/d3d1x/w32api")) + %standard-phases))) + (home-page "http://mesa3d.org/") + (synopsis "Mesa, an OpenGL implementation") + (description "Mesa is a free implementation of the OpenGL specification - +a system for rendering interactive 3D graphics. A variety of device drivers +allows Mesa to be used in many different environments ranging from software +emulation to complete hardware acceleration for modern GPUs.") + (license l:x11))) + + + diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index d45e41a..dfdd82c 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -28,6 +28,7 @@ #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gettext) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) #:use-module (gnu packages gperf) @@ -4267,64 +4268,6 @@ tracking.") (license license:x11))) -;; package outside the x.org system proper of height 3 - -(define-public mesa - (package - (name "mesa") - ;; In newer versions (9.0.5, 9.1 and 9.2 tested), "make" results in an - ;; infinite configure loop, see - ;; https://bugs.freedesktop.org/show_bug.cgi?id=58812 - (version "8.0.5") - (source - (origin - (method url-fetch) - (uri (string-append - "ftp://ftp.freedesktop.org/pub/mesa/older-versions/8.x/" - version - "/MesaLib-" version - ".tar.bz2")) - (sha256 - (base32 - "0pjs8x51c0i6mawgd4w03lxpyx5fnx7rc8plr8jfsscf9yiqs6si")))) - (build-system gnu-build-system) - (propagated-inputs - `(("glproto" ,glproto) - ("libdrm" ,libdrm-2.4.33) - ("libxdamage" ,libxdamage) - ("libxxf86vm" ,libxxf86vm))) - (inputs - `(("dri2proto" ,dri2proto) - ("expat" ,expat) - ("libx11" ,libx11) - ("libxfixes" ,libxfixes) - ("libxml2" ,libxml2) - ("makedepend" ,makedepend))) - (native-inputs - `(("pkg-config" ,pkg-config) - ("flex" ,flex) - ("bison" ,bison) - ("python" ,python-2))) ; incompatible with Python 3 (print syntax) - (arguments - `(#:configure-flags - `("--with-gallium-drivers=r600,svga,swrast") ; drop r300 from the default list as it requires llvm - #:phases - (alist-cons-after - 'unpack 'remove-symlink - (lambda* (#:key #:allow-other-keys) - ;; remove dangling symlink to /usr/include/wine/windows - (delete-file "src/gallium/state_trackers/d3d1x/w32api")) - %standard-phases))) - (home-page "http://mesa3d.org/") - (synopsis "Mesa, an OpenGL implementation") - (description "Mesa is a free implementation of the OpenGL specification - -a system for rendering interactive 3D graphics. A variety of device drivers -allows Mesa to be used in many different environments ranging from software -emulation to complete hardware acceleration for modern GPUs.") - (license license:x11))) - - - ;; packages of height 3 in the propagated-inputs tree (define-public libxcb -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm 2013-12-28 8:10 ` John Darrington @ 2013-12-30 15:56 ` Ludovic Courtès 2013-12-30 16:58 ` John Darrington 0 siblings, 1 reply; 7+ messages in thread From: Ludovic Courtès @ 2013-12-30 15:56 UTC (permalink / raw) To: John Darrington; +Cc: guix-devel Thanks for the explanations! John Darrington <jmd@gnu.org> skribis: > * gnu/packages/xorg.scm: Remove variable mesa > gnu/packages/gl.scm: Add variable mesa Pushed. Several modules that expected ‘mesa’ to be in (gnu packages xorg) had to be adjusted. A simple way to find about unbound variables like this is to run ‘make clean-go && make’ via Emacs M-x compile and to iterate over the warnings. Thanks, Ludo’. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm 2013-12-30 15:56 ` Ludovic Courtès @ 2013-12-30 16:58 ` John Darrington 0 siblings, 0 replies; 7+ messages in thread From: John Darrington @ 2013-12-30 16:58 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel, John Darrington [-- Attachment #1: Type: text/plain, Size: 479 bytes --] On Mon, Dec 30, 2013 at 04:56:18PM +0100, Ludovic Courtès wrote: A simple way to find about unbound variables like this is to run ‘make clean-go && make’ via Emacs M-x compile and to iterate over the warnings. Thanks. I didn't know about that. J' -- PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2013-12-30 16:59 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-12-26 12:50 mesa in xorg.scm John Darrington 2013-12-27 22:05 ` Ludovic Courtès 2013-12-28 7:50 ` Andreas Enge 2013-12-28 8:10 ` [PATCH] gnu: mesa: Move out of xorg.scm and into gl.scm John Darrington 2013-12-28 8:10 ` John Darrington 2013-12-30 15:56 ` Ludovic Courtès 2013-12-30 16:58 ` John Darrington
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.