xorg: Changes to 'debian-unstable'
debian/changelog | 22 +
debian/local/Xsession.d/50x11-common_determine-startup | 3
debian/rules | 6
debian/x11-common.postinst.in | 10
xsf-docs/howtos/build-mesa.mdwn | 201 +++++++++++++++++
xsf-docs/howtos/configure-input.mdwn | 4
xsf-docs/howtos/report-bugs.mdwn | 7
xsf-docs/howtos/use-gdb.mdwn | 2
xsf-docs/index.mdwn | 2
xsf-docs/mdwn2html | 23 +
xsf-docs/reference/upstream-contacts.mdwn | 43 +++
xsf-docs/xsf.css | 12 -
12 files changed, 317 insertions(+), 18 deletions(-)
New commits:
commit b4bf4c7cc266f65900a56cec2f0fb43ee53ff702
Author: Cyril Brulebois <kibi@debian.org>
Date: Sun Feb 13 07:35:06 2011 +0100
Upload to unstable.
diff --git a/debian/changelog b/debian/changelog
index 32619c7..ddaafb7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg (1:7.6+3) UNRELEASED; urgency=low
+xorg (1:7.6+3) unstable; urgency=low
* Merge xsf-docs up to the 8fc70f1e37 commit:
- Add: howtos/build-mesa
@@ -18,7 +18,7 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
* Fix FTBFS on sparc{,64} by working around wkhtmltopdf's #613141:
remove the SVG file from the CSS on these architectures.
- -- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
+ -- Cyril Brulebois <kibi@debian.org> Sun, 13 Feb 2011 07:34:14 +0100
xorg (1:7.6+2) unstable; urgency=low
commit 22650398facb38e12a9c316d6a7c753e029b17a9
Author: Cyril Brulebois <kibi@debian.org>
Date: Sun Feb 13 07:34:03 2011 +0100
Fix FTBFS on sparc{,64} by working around wkhtmltopdf's #613141: remove the SVG file from the CSS on these architectures.
diff --git a/debian/changelog b/debian/changelog
index 925abb8..32619c7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -15,6 +15,8 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
back into place. There's no secret in there (Closes: #581338).
* 50x11-common_determine-startup: Take $SHELL into account, defaulting
to sh if SHELL is unset or null (Closes: #604010).
+ * Fix FTBFS on sparc{,64} by working around wkhtmltopdf's #613141:
+ remove the SVG file from the CSS on these architectures.
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
diff --git a/debian/rules b/debian/rules
index 5499952..86955a9 100755
--- a/debian/rules
+++ b/debian/rules
@@ -50,6 +50,10 @@ build-stamp: scripts-stamp
dh_testdir
# build Debian's X server wrapper
$(CC) -Wall -g -O2 -o debian/local/X debian/local/xserver-wrapper.c
+ifneq (,$(filter sparc sparc64,$(DEB_HOST_ARCH)))
+ # work around wkhtmltopdf's sigbus on sparc (#613141):
+ sed -i '/background-image.*svg/d' xsf-docs/xsf.css
+endif
# build XSF docs, under xvfb for wkhtmltodpf:
xvfb-run -- $(MAKE) -C xsf-docs
touch $@
commit 4d224de1fff0eb323732c0770d45b5520eaa80d1
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 12:56:43 2011 +0100
50x11-common_determine-startup: Take $SHELL into account, defaulting to sh if SHELL is unset or null (Closes: #604010).
diff --git a/debian/changelog b/debian/changelog
index 5beedab..925abb8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,8 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
to generate the Xwrapper.config file.
* Use “tempfile -m 644” to generate the temporary file which gets copied
back into place. There's no secret in there (Closes: #581338).
+ * 50x11-common_determine-startup: Take $SHELL into account, defaulting
+ to sh if SHELL is unset or null (Closes: #604010).
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
diff --git a/debian/local/Xsession.d/50x11-common_determine-startup b/debian/local/Xsession.d/50x11-common_determine-startup
index cd9e4d3..4e13505 100644
--- a/debian/local/Xsession.d/50x11-common_determine-startup
+++ b/debian/local/Xsession.d/50x11-common_determine-startup
@@ -13,7 +13,8 @@ if [ -z "$STARTUP" ]; then
if [ -x "$STARTUPFILE" ]; then
STARTUP="$STARTUPFILE"
else
- STARTUP="sh $STARTUPFILE"
+ shell=${SHELL:-sh}
+ STARTUP="$shell $STARTUPFILE"
fi
break
fi
commit 7ab31eaed95248fe5cf8bfb8985301aa1f0302d7
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 12:46:36 2011 +0100
Use “tempfile -m 644” to generate the temporary file which gets copied back into place. There's no secret in there (Closes: #581338).
diff --git a/debian/changelog b/debian/changelog
index c09470a..5beedab 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -11,6 +11,8 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
* As a consequence of this bug, users having installed x11-common using
version 1:7.6+1 or 1:7.6+2 want to run “dpkg-reconfigure x11-common”
to generate the Xwrapper.config file.
+ * Use “tempfile -m 644” to generate the temporary file which gets copied
+ back into place. There's no secret in there (Closes: #581338).
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
diff --git a/debian/x11-common.postinst.in b/debian/x11-common.postinst.in
index 6dc6041..acafc39 100644
--- a/debian/x11-common.postinst.in
+++ b/debian/x11-common.postinst.in
@@ -29,7 +29,7 @@ if [ -e "$XWRAPPER_CONFIG" ] || [ -z "$UPGRADE" ]; then
ALLOWED_USERS="$RET"
fi
if [ -n "$ALLOWED_USERS" ]; then
- NEW_XWRAPPER_CONFIG=$(tempfile)
+ NEW_XWRAPPER_CONFIG=$(tempfile -m 644)
if ! [ -e "$XWRAPPER_CONFIG" ]; then
cat >>"$NEW_XWRAPPER_CONFIG" << EOF
# Xwrapper.config (Debian X Window System server wrapper configuration file)
commit 0e8af9a822fa362f3f775e9d85274105db74ede3
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 12:44:19 2011 +0100
Document “dpkg-reconfigure x11-common” as workaround.
diff --git a/debian/changelog b/debian/changelog
index d4c6bcf..c09470a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,9 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
* Fix /etc/X11/Xwrapper.config handling:
- Don't forget to copy the new configuration file if there was none
previously. Thanks to Kyle Dassoff (Closes: #612979).
+ * As a consequence of this bug, users having installed x11-common using
+ version 1:7.6+1 or 1:7.6+2 want to run “dpkg-reconfigure x11-common”
+ to generate the Xwrapper.config file.
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
commit 73fcdebc34e0f9cfc7d012675ee7175813090aec
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 11:26:01 2011 +0100
Fix /etc/X11/Xwrapper.config handling (Closes: #612979).
diff --git a/debian/changelog b/debian/changelog
index c2c5a0b..d4c6bcf 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,9 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
- Add: reference/upstream-contacts
- Update: howtos/report-bugs
* rules: Get rid of DEFAULT_DCRESOLUTIONS, unused since 2009.
+ * Fix /etc/X11/Xwrapper.config handling:
+ - Don't forget to copy the new configuration file if there was none
+ previously. Thanks to Kyle Dassoff (Closes: #612979).
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
diff --git a/debian/x11-common.postinst.in b/debian/x11-common.postinst.in
index 323d56c..6dc6041 100644
--- a/debian/x11-common.postinst.in
+++ b/debian/x11-common.postinst.in
@@ -50,10 +50,10 @@ EOF
else
sed -e '/^allowed_users.*/d' < "$XWRAPPER_CONFIG" > "$NEW_XWRAPPER_CONFIG"
echo "allowed_users=$ALLOWED_USERS" >> "$NEW_XWRAPPER_CONFIG"
- if ! cmp -s "$XWRAPPER_CONFIG" "$NEW_XWRAPPER_CONFIG"; then
- cp "$NEW_XWRAPPER_CONFIG" "$XWRAPPER_CONFIG.dpkg-new"
- mv "$XWRAPPER_CONFIG.dpkg-new" "$XWRAPPER_CONFIG"
- fi
+ fi
+ if ! cmp -s "$XWRAPPER_CONFIG" "$NEW_XWRAPPER_CONFIG"; then
+ cp "$NEW_XWRAPPER_CONFIG" "$XWRAPPER_CONFIG.dpkg-new"
+ mv "$XWRAPPER_CONFIG.dpkg-new" "$XWRAPPER_CONFIG"
fi
rm -f "$NEW_XWRAPPER_CONFIG"
else
commit a1ccfebb82893a958b38ee7901d2511d2145a838
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 11:25:00 2011 +0100
rules: Get rid of DEFAULT_DCRESOLUTIONS, unused since 2009.
diff --git a/debian/changelog b/debian/changelog
index c3edc5c..c2c5a0b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ xorg (1:7.6+3) UNRELEASED; urgency=low
- Add: howtos/build-mesa
- Add: reference/upstream-contacts
- Update: howtos/report-bugs
+ * rules: Get rid of DEFAULT_DCRESOLUTIONS, unused since 2009.
-- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
diff --git a/debian/rules b/debian/rules
index 0d02fbe..5499952 100755
--- a/debian/rules
+++ b/debian/rules
@@ -41,8 +41,6 @@ clean: cleanscripts
SCRIPTS=$(shell ls debian/*.config.in debian/*.postinst.in debian/*.postrm.in debian/*.preinst.in debian/*.prerm.in)
-DEFAULT_DCRESOLUTIONS="1920x1440, 1920x1200, 1856x1392, 1792x1344, 1680x1050, 1600x1200, 1440x900, 1400x1050, 1280x1024, 1280x960, 1280x854, 1280x800, 1280x768, 1200x800, 1152x864, 1152x768, 1024x768, 800x600, 640x480"
-
scripts: scripts-stamp
scripts-stamp: genscripts
touch $@
commit b0afd70300e7de64534bb0f72a852f0e8bcc2f14
Author: Cyril Brulebois <kibi@debian.org>
Date: Sat Feb 12 11:24:38 2011 +0100
Document the merge.
diff --git a/debian/changelog b/debian/changelog
index 1d77da6..c3edc5c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+xorg (1:7.6+3) UNRELEASED; urgency=low
+
+ * Merge xsf-docs up to the 8fc70f1e37 commit:
+ - Add: howtos/build-mesa
+ - Add: reference/upstream-contacts
+ - Update: howtos/report-bugs
+
+ -- Cyril Brulebois <kibi@debian.org> Sat, 12 Feb 2011 11:19:54 +0100
+
xorg (1:7.6+2) unstable; urgency=low
* Merge xsf-docs documentation. That's an offline copy of the
commit 8fc70f1e37ebe8c726b8e023de42a36eb01593b8
Author: Cyril Brulebois <kibi@debian.org>
Date: Fri Feb 11 12:38:57 2011 +0100
upstream-contacts: Fix mesa address.
diff --git a/xsf-docs/reference/upstream-contacts.mdwn b/xsf-docs/reference/upstream-contacts.mdwn
index 2322a13..c8b3940 100644
--- a/xsf-docs/reference/upstream-contacts.mdwn
+++ b/xsf-docs/reference/upstream-contacts.mdwn
@@ -33,7 +33,7 @@ Driver-specific:
Other:
* DRM: `dri-devel@lists.freedesktop.org`
- * Mesa: `mesa3d-dev@lists.sourceforge.net`
+ * Mesa: `mesa-dev@lists.freedesktop.org`
* Pixman: `pixman@lists.freedesktop.org`
* Wayland: `wayland-devel@lists.freedesktop.org`
* XCB: `xcb@lists.freedesktop.org`
commit fb8afa26b07a7bba73a034de0cd23f57275b4fb4
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 22:40:21 2011 +0100
upstream-contacts: New document.
diff --git a/xsf-docs/reference/upstream-contacts.mdwn b/xsf-docs/reference/upstream-contacts.mdwn
index 0a3c93a..2322a13 100644
--- a/xsf-docs/reference/upstream-contacts.mdwn
+++ b/xsf-docs/reference/upstream-contacts.mdwn
@@ -35,6 +35,7 @@ Other:
* DRM: `dri-devel@lists.freedesktop.org`
* Mesa: `mesa3d-dev@lists.sourceforge.net`
* Pixman: `pixman@lists.freedesktop.org`
+ * Wayland: `wayland-devel@lists.freedesktop.org`
* XCB: `xcb@lists.freedesktop.org`
* XKeyboardConfig/xkb-data: `xkb@listserv.bat.ru` — source:
[XKeyboardConfig](http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Development)
commit 1235019427596b72a4574ac3737f8b5dcf50a260
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 22:39:24 2011 +0100
upstream-contacts: New document.
diff --git a/xsf-docs/index.mdwn b/xsf-docs/index.mdwn
index 75fc2d1..f5b1cba 100644
--- a/xsf-docs/index.mdwn
+++ b/xsf-docs/index.mdwn
@@ -19,6 +19,7 @@ metapackage (under `/usr/share/doc/xorg`), starting with `wheezy`.
## Reference documentation
* [Dependencies between server and drivers](reference/dependencies.html)
+ * [Upstream contacts](reference/upstream-contacts.html)
## Other documentation
diff --git a/xsf-docs/reference/upstream-contacts.mdwn b/xsf-docs/reference/upstream-contacts.mdwn
new file mode 100644
index 0000000..0a3c93a
--- /dev/null
+++ b/xsf-docs/reference/upstream-contacts.mdwn
@@ -0,0 +1,42 @@
+# Upstream contacts
+
+Cyril Brulebois <kibi@debian.org>
+
+
+## Getting announcements
+
+ * Almost everything: `xorg-announce@lists.freedesktop.org`
+ * Mesa: `mesa-announce@lists.freedesktop.org`
+
+*(Source: [XorgMailingLists](http://wiki.x.org/wiki/XorgMailingLists))*
+
+
+## Developer lists
+
+
+Almost everything:
+
+ * `xorg-devel@lists.freedesktop.org` — doc:
+ [SubmittingPatches](http://wiki.x.org/wiki/Development/Documentation/SubmittingPatches)
+ — module maintainers:
+ [MAINTAINERS](http://cgit.freedesktop.org/xorg/doc/xorg-docs/tree/MAINTAINERS)
+
+Driver-specific:
+
+ * ATI: `xorg-driver-ati@lists.x.org`
+ * Intel: `intel-gfx@lists.freedesktop.org` — doc:
+ [How to file a good bug report](http://intellinuxgraphics.org/how_to_report_bug.html)
+ * Nouveau: `nouveau@lists.freedesktop.org`
+ * VMMouse & VMWare: `thellstrom@vmware.com` — source:
+ [vmware wikipage](http://wiki.x.org/wiki/vmware)
+
+Other:
+
+ * DRM: `dri-devel@lists.freedesktop.org`
+ * Mesa: `mesa3d-dev@lists.sourceforge.net`
+ * Pixman: `pixman@lists.freedesktop.org`
+ * XCB: `xcb@lists.freedesktop.org`
+ * XKeyboardConfig/xkb-data: `xkb@listserv.bat.ru` — source:
+ [XKeyboardConfig](http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Development)
+
+*(Source: [XorgMailingLists](http://wiki.x.org/wiki/XorgMailingLists))*
commit a086b3d232b1a13015ba12bf03be0767ffb8fcf9
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 21:40:32 2011 +0100
Use the unprocessed title.
diff --git a/xsf-docs/mdwn2html b/xsf-docs/mdwn2html
index 95f3a16..64c1574 100755
--- a/xsf-docs/mdwn2html
+++ b/xsf-docs/mdwn2html
@@ -17,6 +17,9 @@ if ! which markdown >/dev/null; then
exit 1
fi
+# Remember the title, assume it has no formatting:
+title=$(head -1 $mdwn|sed -e 's/^#//')
+
# Add a link back to the index:
if [ "$mdwn" != "index.mdwn" ]; then
path=$(dirname $mdwn)/
@@ -34,7 +37,6 @@ fi
markdown $mdwn.tmp > $html.tmp
# Include html headers, include title:
-title=$(head -1 $html.tmp|sed -e 's,</\?h1>,,g')
sed "s#@@title@@#$title#" > $html <<EOF
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
commit 9dcd41f5739a898632787bef2eaa49a890604584
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 18:22:15 2011 +0100
Add a link to the index, from all pages.
diff --git a/xsf-docs/mdwn2html b/xsf-docs/mdwn2html
index 6d9d7e2..95f3a16 100755
--- a/xsf-docs/mdwn2html
+++ b/xsf-docs/mdwn2html
@@ -17,8 +17,21 @@ if ! which markdown >/dev/null; then
exit 1
fi
+# Add a link back to the index:
+if [ "$mdwn" != "index.mdwn" ]; then
+ path=$(dirname $mdwn)/
+ if [ "$path" = "./" ]; then
+ path_to_root=./
+ else
+ path_to_root=$(echo $path|sed 's,[^/],,g;s,/,../,g')
+ fi
+ sed "s,^# ,# [XSF](${path_to_root}index.html) / ," $mdwn > $mdwn.tmp
+else
+ cp $mdwn $mdwn.tmp
+fi
+
# Actual transformation:
-markdown $mdwn > $html.tmp
+markdown $mdwn.tmp > $html.tmp
# Include html headers, include title:
title=$(head -1 $html.tmp|sed -e 's,</\?h1>,,g')
@@ -44,5 +57,5 @@ cat >> $html <<EOF
</html>
EOF
-# Remove temporary file:
-rm -f $html.tmp
+# Remove temporary files:
+rm -f $mdwn.tmp $html.tmp
commit fe2f36ac4ca71c692dac216bfd72369edaed4fc6
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 15:03:32 2011 +0100
build-mesa: Mention disc space needs.
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
index 6649954..dc49cd9 100644
--- a/xsf-docs/howtos/build-mesa.mdwn
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -85,7 +85,9 @@ If you’re on `squeeze` you may need to install a few more packages:
newer `libdrm-dev` (**FIXME:** talk about picking it from `wheezy`? or
about a local installation?), as well as `libxmu-dev`, `libxi-dev`.
-Grab the upstream mesa sources:
+Make sure you have some disc space available, since the git repository
+is over 120MB, and since the mesa directory is over 500MB after a
+build. Once you’re ready, grab the upstream mesa sources:
$ git clone git://anongit.freedesktop.org/mesa/mesa mesa.git
$ cd mesa.git
commit f0bb89867fd858aeb026de55960dfd6464ef57b0
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 14:15:19 2011 +0100
build-mesa: Mention the need for newer libraries on squeeze.
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
index 7dac557..6649954 100644
--- a/xsf-docs/howtos/build-mesa.mdwn
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -81,6 +81,10 @@ and `git`:
$ sudo apt-get install build-essential git
$ sudo apt-get build-dep mesa
+If you’re on `squeeze` you may need to install a few more packages:
+newer `libdrm-dev` (**FIXME:** talk about picking it from `wheezy`? or
+about a local installation?), as well as `libxmu-dev`, `libxi-dev`.
+
Grab the upstream mesa sources:
$ git clone git://anongit.freedesktop.org/mesa/mesa mesa.git
commit 662580ccf81ad9817346fa68f2b60458fbab2f56
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 11:27:45 2011 +0100
Fix apostrophes.
diff --git a/xsf-docs/howtos/configure-input.mdwn b/xsf-docs/howtos/configure-input.mdwn
index e705d30..bd00f3e 100644
--- a/xsf-docs/howtos/configure-input.mdwn
+++ b/xsf-docs/howtos/configure-input.mdwn
@@ -104,7 +104,7 @@ Line by line walkthrough:
* To avoid specifying any device under `/dev/input` (`event$N` might
change, remember it’s about hotplug support!), we use an
`InputClass`.
- * We need an identifier, the actual name doesn‘t matter.
+ * We need an identifier, the actual name doesn’t matter.
* We match everything that looks like a touchpad. Meaning no generic
pointer, keyboard, or tablet.
* We specify the driver we want to use for the matched device(s).
@@ -144,7 +144,7 @@ Line by line walkthrough:
* To avoid specifying any device under `/dev/input` (`event$N` might
change, remember it’s about hotplug support!), we use an
`InputClass`.
- * We need an identifier, the actual name doesn‘t matter.
+ * We need an identifier, the actual name doesn’t matter.
* We match everything that looks like a touchpad. Meaning no generic
pointer, keyboard, or tablet.
* We specify the driver we want to use for the matched device(s).
diff --git a/xsf-docs/howtos/use-gdb.mdwn b/xsf-docs/howtos/use-gdb.mdwn
index 648c867..df7152d 100644
--- a/xsf-docs/howtos/use-gdb.mdwn
+++ b/xsf-docs/howtos/use-gdb.mdwn
@@ -15,7 +15,7 @@ with a single machine.
### One-machine approach
-From a console (let‘s assume it’s `vt1`), open a `root`
+From a console (let’s assume it’s `vt1`), open a `root`
terminal. Then, start a loop which will bring you back to this console
after a given delay (in the following example, every 60 seconds), just
in case. The ampersand (`&`) at the end makes it a background job.
commit 3ad130a6d78f2191a623f873ce84604a029c25d2
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 11:25:42 2011 +0100
build-mesa: Add a note about nouveau.
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
index 829c9cf..7dac557 100644
--- a/xsf-docs/howtos/build-mesa.mdwn
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -25,6 +25,17 @@ in which case the appropriate options to be passed to `./configure`
should be looked up in the `debian/rules` file of the Debian source
package.
+*Note:* Before reading further, be aware that `nouveau` is a bit
+ special.
+
+ * It’s considered experimental, and shipped in the
+ `libgl1-mesa-dri-experimental` package accordingly.
+ * It may fail to build (both API and ABI are still changing).
+ * We’re not shipping `nouveau_vieux_dri.so` yet (for cards from NV04
+ to NV2X; `nouveau_dri.so` is for NV30 and later). See the upstream
+ [FeatureMatrix](http://nouveau.freedesktop.org/wiki/FeatureMatrix)
+ page to determine a card’s series.
+
## Gathering information
@@ -94,9 +105,9 @@ Now, what are the parameters to replace “`…`” with? Basically, if
you determined an Intel driver (`i915` or `i965`), you want to use the
classic drivers and to disable the Gallium drivers. If you saw a
Radeon driver (`r300` or `r600`), you should prefer the Gallium
-drivers. *[Note: Nouveau is a bit special since it may fail to build
-(both API and ABI are still changing), and since we’re currently not
-shipping `nouveau_vieux.so`.]*
+drivers. If you’re using `nouveau`, make sure you read the note in the
+**Foreword**. The following assumes you’re using `nouveau_dri.so`.
+
Examples for common drivers:
commit 796951486a245084068fc4ee910054948922e9c7
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 01:04:34 2011 +0100
index: Link to build-mesa.
diff --git a/xsf-docs/index.mdwn b/xsf-docs/index.mdwn
index f9dcfcb..75fc2d1 100644
--- a/xsf-docs/index.mdwn
+++ b/xsf-docs/index.mdwn
@@ -14,6 +14,7 @@ metapackage (under `/usr/share/doc/xorg`), starting with `wheezy`.
* [How to use GDB](howtos/use-gdb.html)
* [How to configure input](howtos/configure-input.html)
* [How to configure outputs](howtos/use-xrandr.html)
+ * [How to build mesa locally](howtos/build-mesa.html)
## Reference documentation
commit 3cf5eec54f92eec79834acb3553a64b956746f91
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 01:03:02 2011 +0100
build-mesa: The end (hopefully).
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
index 76a8aa4..829c9cf 100644
--- a/xsf-docs/howtos/build-mesa.mdwn
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -177,3 +177,8 @@ are used.
libEGL debug: DRI2: dlopen(lib/i915_dri.so)
↪ Yes: No system directory, paths are relative to `lib/`.
+
+
+### The end.
+
+Now you should be ready to test upstream’s suggestions!
commit 1400b5a6a5fd5e9be514ef1563c68b2663582dd4
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 00:50:51 2011 +0100
build-mesa: Mention the lack of EGL-aware applications.
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
index c7cf609..76a8aa4 100644
--- a/xsf-docs/howtos/build-mesa.mdwn
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -168,8 +168,8 @@ are used.
*Did this work?*
- **FIXME:** Is there any EGL test application? If so, running the
- following should do:
+ **FIXME: We should be shipping EGL-aware applications through
+ `mesa-utils`.**
$ EGL_LOG_LEVEL=debug test_application 2>&1 >/dev/null | grep '\.so'
libEGL debug: added lib/egl/egl_gallium.so to module array
commit c1c85b15ff3c0b5a0c4778c1071ef6630f58c1dd
Author: Cyril Brulebois <kibi@debian.org>
Date: Thu Feb 10 00:48:21 2011 +0100
build-mesa: rename from debug-mesa.
It's mostly about building, not really debugging.
diff --git a/xsf-docs/howtos/build-mesa.mdwn b/xsf-docs/howtos/build-mesa.mdwn
new file mode 100644
index 0000000..c7cf609
--- /dev/null
+++ b/xsf-docs/howtos/build-mesa.mdwn
@@ -0,0 +1,179 @@
+# How to build mesa
+
+Cyril Brulebois <kibi@debian.org>
+
+
+## Foreword
+
+Mesa is a special package since many flavours are built, which means
+it takes quite some time to get all packages ready, as well as some
+disc space (over 2GB for the `build/` directory alone).
+
+Also, trying to figure out whether latest `master` is also affected,
+or backporting some bug fixes might lead to some painful I/O while
+generating the `.deb` files, and then installing/unpacking them. This
+is why this document was written: Helping users test other mesa
+releases, branches, bug fixes without having to build full packages,
+and without having to mess with their systems (*i.e.* no root access
+is needed once the build dependencies are installed).
+
+We’ll focus on the DRI (Direct Rendering Infrastructure) flavour
+(`libgl1-mesa-dri`), which is the most common.
+
+It might be possible to adapt the following steps to another flavour,
+in which case the appropriate options to be passed to `./configure`
+should be looked up in the `debian/rules` file of the Debian source
+package.
+
+
+## Gathering information
+
+Get started by installing `mesa-utils`, which contains `glxinfo`.
+
+ * *Is direct rendering enabled?*
+
+ $ glxinfo | grep ^direct
+ direct rendering: Yes
+
+ ↪ Yes.
+
+ * *Is this the classic or
+ [Gallium](http://en.wikipedia.org/wiki/Gallium3D) driver?*
+
+ $ glxinfo | grep 'renderer string'
+ OpenGL renderer string: Mesa DRI Intel(R) 945GM GEM 20100330 DEVELOPMENT
+
+ ↪ No “Gallium” here, therefore: “classic”.
+
+ * *Which driver is this, and where is it located?*
+
+ $ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$
+ libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so
+ libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so
+
+ ↪ `i915`, from the system directory: `/usr/lib/dri` (likely
+ installed through a Debian package).
+
+ * *How can I get more debugging information?*
+
+ export LIBGL_DEBUG=verbose
+ export MESA_DEBUG=1
+ export EGL_LOG_LEVEL=debug
+
+
+## Preparing mesa sources
+
+To get started, installing all build dependencies of the `mesa` source
+package should be sufficient, along with the essential build tools,
+and `git`:
+
+ $ sudo apt-get install build-essential git
+ $ sudo apt-get build-dep mesa
+
+Grab the upstream mesa sources:
+
+ $ git clone git://anongit.freedesktop.org/mesa/mesa mesa.git
+ $ cd mesa.git
+ $ autoreconf -vfi
+
+Here’s what the `./configure` call will look like:
+
+ $ ./configure --enable-driglx-direct \
+ --enable-gallium \
+ --enable-gles-overlay \
+ --enable-gles1 \
+ --enable-gles2 \
+ --enable-glx-tls \
+ --with-driver=dri \
+ --with-dri-driverdir=/usr/lib/dri \
+ --with-egl-platforms='drm x11' \
+ --with-state-trackers=egl,glx,dri,vega \
+ …
+
+Now, what are the parameters to replace “`…`” with? Basically, if
+you determined an Intel driver (`i915` or `i965`), you want to use the
+classic drivers and to disable the Gallium drivers. If you saw a
+Radeon driver (`r300` or `r600`), you should prefer the Gallium
+drivers. *[Note: Nouveau is a bit special since it may fail to build
+(both API and ABI are still changing), and since we’re currently not
+shipping `nouveau_vieux.so`.]*
+
+Examples for common drivers:
+
+ * For `i915`, you need:
+
+ --with-dri-drivers=i915
+
+ * For `i965`, you need:
+
+ --with-dri-drivers=i965
+
+ * For `nouveau`, you may want to try:
+
+ --with-dri-drivers=nouveau --enable-gallium-nouveau
+
+ * For `r300` (the options are named `radeon`), you need:
+
+ --with-dri-drivers=radeon --enable-gallium-radeon
+
+ * For `r600`, you need:
+
+ --with-dri-drivers=r600 --enable-gallium-r600
+
+Now, once you’ve run `./configure`, time for your favorite beverage:
+
+ $ make
+
+
+## Running the newly-built mesa libraries
+
+Shared libraries end up in the `lib/` directory. It contains the
+classic drivers, while Gallium drivers end up under `lib/gallium`. If
+you’re not an Intel user, overwrite the classic drivers with the
+Gallium ones:
+
+ $ mv lib/gallium/* lib/
+
+Now, 3 variables need to be set, so that the locally-built libraries
+are used.
+
+ * To begin with, libGL itself and its drivers:
+
+ $ export LIBGL_DRIVERS_PATH=lib
+
+ *Did this work?*
+
+ $ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$
+ libGL: OpenDriver: trying lib/tls/i915_dri.so
+ libGL: OpenDriver: trying lib/i915_dri.so
+
+ ↪ Yes: No system directory, paths are relative to `lib/`.
+
+ * Set `LD_LIBRARY_PATH` to make sure the locally-built libraries
+ (including those pulled through library dependencies) are used,
+ instead of system ones:
+
+ $ export LD_LIBRARY_PATH=lib
+
+ *Did this work?*
+
+ $ ldd lib/libGLESv2.so | grep glapi
+ libglapi.so.0 => lib/libglapi.so.0 (0x00007fee3192e000)
+
+ ↪ Yes: Path is relative to `lib`.
+
+ * Set the EGL search path:
+
+ $ export EGL_DRIVERS_PATH=lib/egl
+
+ *Did this work?*
+
+ **FIXME:** Is there any EGL test application? If so, running the
+ following should do:
+
+ $ EGL_LOG_LEVEL=debug test_application 2>&1 >/dev/null | grep '\.so'
+ libEGL debug: added lib/egl/egl_gallium.so to module array
+ libEGL debug: dlopen(lib/egl/egl_gallium.so)
+ libEGL debug: DRI2: dlopen(lib/i915_dri.so)
+
+ ↪ Yes: No system directory, paths are relative to `lib/`.
diff --git a/xsf-docs/howtos/debug-mesa.mdwn b/xsf-docs/howtos/debug-mesa.mdwn
deleted file mode 100644
index 6f46d79..0000000
--- a/xsf-docs/howtos/debug-mesa.mdwn
+++ /dev/null
@@ -1,179 +0,0 @@
-# How to debug mesa
-
-Cyril Brulebois <kibi@debian.org>
-
-
-## Foreword
-
-Mesa is a special package since many flavours are built, which means
-it takes quite some time to get all packages ready, as well as some
-disc space (over 2GB for the `build/` directory alone).
-
-Also, trying to figure out whether latest `master` is also affected,
-or backporting some bug fixes might lead to some painful I/O while
-generating the `.deb` files, and then installing/unpacking them. This
-is why this document was written: Helping users test other mesa
-releases, branches, bug fixes without having to build full packages,
-and without having to mess with their systems (*i.e.* no root access
-is needed once the build dependencies are installed).
-
-We’ll focus on the DRI (Direct Rendering Infrastructure) flavour
-(`libgl1-mesa-dri`), which is the most common.
-
-It might be possible to adapt the following steps to another flavour,
-in which case the appropriate options to be passed to `./configure`
-should be looked up in the `debian/rules` file of the Debian source
-package.
-
-
-## Gathering information
-
-Get started by installing `mesa-utils`, which contains `glxinfo`.
-
- * *Is direct rendering enabled?*
-
- $ glxinfo | grep ^direct
- direct rendering: Yes
-
- ↪ Yes.
-
- * *Is this the classic or
- [Gallium](http://en.wikipedia.org/wiki/Gallium3D) driver?*
-
- $ glxinfo | grep 'renderer string'
- OpenGL renderer string: Mesa DRI Intel(R) 945GM GEM 20100330 DEVELOPMENT
-
- ↪ No “Gallium” here, therefore: “classic”.
-
- * *Which driver is this, and where is it located?*
-
- $ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$
- libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so
- libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so
-
- ↪ `i915`, from the system directory: `/usr/lib/dri` (likely
- installed through a Debian package).
-
- * *How can I get more debugging information?*
-
- export LIBGL_DEBUG=verbose
- export MESA_DEBUG=1
- export EGL_LOG_LEVEL=debug
-
-
-## Preparing mesa sources
-
-To get started, installing all build dependencies of the `mesa` source
-package should be sufficient, along with the essential build tools,
-and `git`:
-
- $ sudo apt-get install build-essential git
- $ sudo apt-get build-dep mesa
-
-Grab the upstream mesa sources:
-
- $ git clone git://anongit.freedesktop.org/mesa/mesa mesa.git
- $ cd mesa.git
- $ autoreconf -vfi
-
-Here’s what the `./configure` call will look like:
-
- $ ./configure --enable-driglx-direct \
- --enable-gallium \
- --enable-gles-overlay \
- --enable-gles1 \
- --enable-gles2 \
- --enable-glx-tls \
- --with-driver=dri \
- --with-dri-driverdir=/usr/lib/dri \
- --with-egl-platforms='drm x11' \
- --with-state-trackers=egl,glx,dri,vega \
- …
-
-Now, what are the parameters to replace “`…`” with? Basically, if
-you determined an Intel driver (`i915` or `i965`), you want to use the
-classic drivers and to disable the Gallium drivers. If you saw a
-Radeon driver (`r300` or `r600`), you should prefer the Gallium
-drivers. *[Note: Nouveau is a bit special since it may fail to build
-(both API and ABI are still changing), and since we’re currently not
-shipping `nouveau_vieux.so`.]*
-
-Examples for common drivers:
-
- * For `i915`, you need:
-
- --with-dri-drivers=i915
-
- * For `i965`, you need:
-
- --with-dri-drivers=i965
-
- * For `nouveau`, you may want to try:
-
- --with-dri-drivers=nouveau --enable-gallium-nouveau
-
- * For `r300` (the options are named `radeon`), you need:
-
- --with-dri-drivers=radeon --enable-gallium-radeon
-
- * For `r600`, you need:
-
- --with-dri-drivers=r600 --enable-gallium-r600
-
-Now, once you’ve run `./configure`, time for your favorite beverage:
-
- $ make
-
-
-## Running the newly-built mesa libraries
-
-Shared libraries end up in the `lib/` directory. It contains the
-classic drivers, while Gallium drivers end up under `lib/gallium`. If
-you’re not an Intel user, overwrite the classic drivers with the
-Gallium ones:
-
- $ mv lib/gallium/* lib/
-
-Now, 3 variables need to be set, so that the locally-built libraries
-are used.
-
- * To begin with, libGL itself and its drivers:
-
- $ export LIBGL_DRIVERS_PATH=lib
-
- *Did this work?*
-
- $ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$
- libGL: OpenDriver: trying lib/tls/i915_dri.so
- libGL: OpenDriver: trying lib/i915_dri.so
-
- ↪ Yes: No system directory, paths are relative to `lib/`.
-
- * Set `LD_LIBRARY_PATH` to make sure the locally-built libraries
- (including those pulled through library dependencies) are used,
- instead of system ones:
-
- $ export LD_LIBRARY_PATH=lib
-
- *Did this work?*
-
- $ ldd lib/libGLESv2.so | grep glapi
- libglapi.so.0 => lib/libglapi.so.0 (0x00007fee3192e000)
-
- ↪ Yes: Path is relative to `lib`.
-
- * Set the EGL search path:
-
- $ export EGL_DRIVERS_PATH=lib/egl
-
- *Did this work?*
-
- **FIXME:** Is there any EGL test application? If so, running the
- following should do:
-
- $ EGL_LOG_LEVEL=debug test_application 2>&1 >/dev/null | grep '\.so'
- libEGL debug: added lib/egl/egl_gallium.so to module array
Reply to: