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

Bug#561058: libgl1-mesa-dri: libdrm dependency needs updating



Package: libgl1-mesa-dri
Version: 7.7~rc2-1
Severity: minor
Tags: patch


First, I would like to thank the Debian X Strike Force for this release
of Mesa, which includes r600 support.  Over the past 6 weeks I have been
experimenting with building my own DEBs of Mesa from upstream, because
until recently the version of Mesa in Debian unstable was not including
r600 support.  (I have a Radeon RV770 GPU, so I've been playing around
with getting accelerated 2D/3D working in X.)

Now, please forgive my reporting of this bug against 'libgl1-mesa-dri':
I really wanted to file against the 'mesa' source package itself.  (I
couldn't find any information about filing bugs against source packages,
except for a couple of items in the BTS -- #560230 and #540430 -- which
seem unresolved.)


The first time I built custom DEBs of Mesa 7.7-rc1 (a few weeks ago), I
had version 2.4.14 of 'libdrm2' installed.  I am new to building DEBs,
and had stolen the 'debian' directory from the Debianized sources of
mesa-7.6-1 to give myself a head start.  The build failed in the
configure script because Mesa 7.7 had increased its libdrm dependency to
2.4.15.  I built my own DEBs of libdrm 2.4.15 (also stealing the
'debian' directory from 2.4.14) first, then made the following change to
'debian/control' in the Mesa sources:

diff -r a/debian/control b/debian/control
8c8
<  libdrm-dev (>= 2.4.3) [!hurd-i386], libx11-dev, xutils-dev,
---
>  libdrm-dev (>= 2.4.15) [!hurd-i386], libx11-dev, xutils-dev,

The build succeeded with the new version of libdrm, so this change seems
appropriate.


I also faced a problem with whitespace that caused the build to jump to
my home directory looking for the next Makefile, luckily causing the
build to fail.  (Note to self:  never keep a Makefile in the home
directory!)  There was a change in the Mesa sources from 7.6 to
7.7-devel that subtly caused your '03_optional-progs-and-install.patch'
to stop working for me, though I see you haven't changed it... which
probably means you are not seeing the same problem I did.  Well, FYI,
the following diff shows my changes to your patch versus your original
version:

diff -r mesa-7.7-rc2-dw/debian/patches/03_optional-progs-and-install.patch mesa-7.7~rc2-debian/debian/patches/03_optional-progs-and-install.patch
48,54c48,52
< +	@if test -n "$(SUBDIRS)" ; then \
< +		for dir in $(SUBDIRS) ; do \
< +			if [ -d $$dir ] ; then \
< +				(cd $$dir ; $(MAKE) install) ; \
< +			fi \
< +		done \
< +	fi
---
> +	@for dir in $(SUBDIRS) ; do \
> +		if [ -d $$dir ] ; then \
> +			(cd $$dir ; $(MAKE) install) ; \
> +		fi \
> +	done

This solves the issue I was having on my system, and makes the code in
the "install" target of 'progs/Makefile' more similar to the surrounding
code.

Since your 7.7-rc2 incorporates more recent changes than the 7.7-rc2 I
had built, I have now switched to the Debian XSF version.  Thanks!


One last issue to mention -- probably nothing to worry about, since I am
a noob to Mesa and to building DEBs.  I noticed that after the "install"
target of 'debian/rules' is run, there are two copies of a file called
'gl.pc':  one is in 'debian/tmp/usr/lib/glx/pkgconfig' and the other is
in 'debian/tmp/usr/lib/pkgconfig'.  Only one ends up being packaged --
the one build by the software rasterization config -- while the version
created by the "dri" config is left unused.

Now I don't truly understand what gl.pc is for but, as far as I have
been able to gather, it is is used by 'pkg-config' to determine
dependency information about libraries installed on the build system.
Won't 'pkg-config' get confused if I want to build software against a
DRI version of libGL.so, but the installed gl.pc contains dependency
information about a (completely different) software rasterizing version
of libGL.so?

I have to plead ignorance here, and I am literally just seeking to
satisfy my curiosity about this.  The man page for 'pkg-config'
indicates that more than one *.pc file can be used in a system for very
similar libraries, so I was just wondering if it would be better to use
both copies of gl.pc somehow.


Thanks again to the XSF for your efforts!
Dave W.


-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (350, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-0git091206.desktop.vesa (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages libgl1-mesa-dri depends on:
ii  libc6             2.10.2-2               GNU C Library: Shared libraries
ii  libdrm-intel1     2.4.15-0upstream091008 Userspace interface to intel-speci
ii  libdrm2           2.4.15-0upstream091008 Userspace interface to kernel DRM 
ii  libexpat1         2.0.1-6                XML parsing C library - runtime li

libgl1-mesa-dri recommends no packages.

Versions of packages libgl1-mesa-dri suggests:
pn  libglide3                     <none>     (no description available)

-- no debconf information



Reply to: