ChangeLog | 90 +++++ Xext/Makefile.am | 4 Xi/exevents.c | 2 configure.ac | 6 debian/changelog | 22 + debian/control | 28 + debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff | 180 ++++++++++ debian/patches/02_Add-libgcrypt-as-an-option-for-sha1.diff | 84 ---- debian/patches/16-xfree86-fix-build-with-xv-disabled.diff | 53 ++ debian/patches/series | 3 debian/rules | 128 ++++--- debian/xdmx-tools.install | 14 debian/xdmx.install | 4 debian/xnest.install | 4 debian/xserver-common.install | 4 debian/xserver-xephyr.install | 4 debian/xserver-xfbdev.install | 2 debian/xserver-xorg-core-udeb.install | 6 debian/xserver-xorg-core.install | 20 - debian/xserver-xorg-dev.install | 6 debian/xvfb.install | 8 dix/events.c | 91 +++-- hw/xfree86/dri2/dri2.c | 2 include/inputstr.h | 30 + 24 files changed, 597 insertions(+), 198 deletions(-)
New commits: commit f3790c2e1fe06b15d9993483f8bd90f90f005ba3 Author: Cyril Brulebois <k...@debian.org> Date: Mon Mar 15 01:49:57 2010 +0100 Link statically against libnettle.a Static vs. dynamic could be controlled by an option for extra flexibility, but the current patch should do the job for now. diff --git a/debian/changelog b/debian/changelog index 17abbf2..8d12681 100644 --- a/debian/changelog +++ b/debian/changelog @@ -30,7 +30,8 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low - libxfont-dev * Replace 02_Add-libgcrypt-as-an-option-for-sha1.diff with 02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff so that it's - also possible to link against libnettle. + also possible to link against libnettle. Link (unconditionally) + statically against libnettle.a to avoid an extra udeb for a few bytes. * Add nettle-dev to Build-Depends; and pass --with-sha1=libnettle for the udeb build (and --with-sha1=libgcrypt for the main build). diff --git a/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff b/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff index 8603a1a..77f548e 100644 --- a/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff +++ b/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff @@ -69,7 +69,7 @@ index c215b5c..e688f94 100644 +if test "x$with_sha1" = xlibnettle; then + AC_DEFINE([HAVE_SHA1_IN_LIBNETTLE], [1], + [Use libnettle SHA1 functions]) -+ SHA1_LIBS=-lnettle ++ SHA1_LIBS=/usr/lib/libnettle.a +fi +# We don't need all of the OpenSSL libraries, just libcrypto +AC_CHECK_LIB([crypto], [SHA1_Init], [HAVE_LIBCRYPTO=yes]) commit b2833df454c93a0b7bd8b336c4aa1bdcc8b493a1 Author: Cyril Brulebois <k...@debian.org> Date: Mon Mar 15 00:51:55 2010 +0100 Add nettle-dev to Build-Depends, pass --with-sha1=lib{gcrypt,nettle} for {main,udeb} builds. diff --git a/debian/changelog b/debian/changelog index 293ec98..17abbf2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -31,6 +31,8 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low * Replace 02_Add-libgcrypt-as-an-option-for-sha1.diff with 02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff so that it's also possible to link against libnettle. + * Add nettle-dev to Build-Depends; and pass --with-sha1=libnettle for + the udeb build (and --with-sha1=libgcrypt for the main build). -- Drew Parsons <dpars...@debian.org> Wed, 03 Mar 2010 23:33:54 +1100 diff --git a/debian/control b/debian/control index df2f6ad..eedfe5c 100644 --- a/debian/control +++ b/debian/control @@ -46,6 +46,7 @@ Build-Depends: libpixman-1-dev (>= 0.15.20), libpciaccess-dev (>= 0.11.0-2), libgcrypt-dev, + nettle-dev, libdbus-1-dev [kfreebsd-amd64 kfreebsd-i386], libhal-dev [kfreebsd-amd64 kfreebsd-i386], libudev-dev (>= 150-3) [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], diff --git a/debian/rules b/debian/rules index 4ea090b..e767aff 100755 --- a/debian/rules +++ b/debian/rules @@ -124,6 +124,7 @@ confflags_main = \ --enable-kdrive \ --enable-xephyr \ $(build_xfbdev) \ + --with-sha1=libgcrypt \ $(void) confflags_udeb = \ @@ -153,6 +154,7 @@ confflags_udeb = \ --disable-kdrive \ --disable-xephyr \ --disable-xfbdev \ + --with-sha1=libnettle \ $(void) $(STAMP_DIR)/autoreconf: $(STAMP_DIR)/patch commit c4facd885eae9d0a81132c005db41265dbd9bfca Author: Cyril Brulebois <k...@debian.org> Date: Mon Mar 15 00:41:23 2010 +0100 Add libnettle as an extra option for sha1. diff --git a/debian/changelog b/debian/changelog index f813c99..293ec98 100644 --- a/debian/changelog +++ b/debian/changelog @@ -28,6 +28,9 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low - libudev-dev - libxau-dev - libxfont-dev + * Replace 02_Add-libgcrypt-as-an-option-for-sha1.diff with + 02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff so that it's + also possible to link against libnettle. -- Drew Parsons <dpars...@debian.org> Wed, 03 Mar 2010 23:33:54 +1100 diff --git a/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff b/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff new file mode 100644 index 0000000..8603a1a --- /dev/null +++ b/debian/patches/02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff @@ -0,0 +1,180 @@ +From a6119f6cd7e47041044fcc9c15a6e3f9f189b3ed Mon Sep 17 00:00:00 2001 +From: Cyril Brulebois <k...@debian.org> +Date: Sun, 14 Mar 2010 22:01:47 +0100 +Subject: [PATCH] Add libgcrypt and libnettle as options for sha1. + +This is an adaptation of the following upstream commit: + d2a6a395435919aff8943285f9cbfe6569a9728f + +Support is also added for libnettle. + +Signed-off-by: Cyril Brulebois <k...@debian.org> +--- +diff --git a/configure.ac b/configure.ac +index c215b5c..e688f94 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1285,26 +1285,66 @@ MIEXT_SHADOW_INC='-I$(top_srcdir)/miext/shadow' + MIEXT_SHADOW_LIB='$(top_builddir)/miext/shadow/libshadow.la' + CORE_INCS='-I$(top_srcdir)/include -I$(top_builddir)/include' + +-# OpenSSL used for SHA1 hashing in render/glyph.c, but we don't need all of +-# the OpenSSL libraries, just libcrypto +-# Some systems have matching functionality in the smaller/simpler libmd +-# Builders who want to force a choice can set SHA1_LIB and SHA1_CFLAGS +-if test "x$SHA1_LIB" = "x" ; then +- AC_CHECK_LIB([md], [SHA1Init], [SHA1_LIB="-lmd" +- AC_DEFINE([HAVE_SHA1_IN_LIBMD], [1], +- [Use libmd SHA1 functions instead of OpenSSL libcrypto])]) +-fi +- +-if test "x$SHA1_LIB" = "x" ; then +- PKG_CHECK_EXISTS([OPENSSL], [openssl], [HAVE_OPENSSL_PKC=yes], +- [HAVE_OPENSSL_PKC=no]) +- if test "x$HAVE_OPENSSL_PKC" = xyes; then +- REQUIRED_LIBS="$REQUIRED_LIBS openssl" +- else +- AC_CHECK_LIB([crypto], [SHA1_Init], [SHA1_LIB="-lcrypto"], +- [AC_MSG_ERROR([OpenSSL must be installed in order to build the X server.])]) +- fi ++# SHA1 hashing ++AC_ARG_WITH([sha1], ++ [AS_HELP_STRING([--with-sha1=libmd|libgcrypt|libcrypto|libnettle], ++ [choose SHA1 implementation])]) ++AC_CHECK_LIB([md], [SHA1Init], [HAVE_LIBMD=yes]) ++if test "x$with_sha1" = x && test "x$HAVE_LIBMD" = xyes; then ++ with_sha1=libmd ++fi ++if test "x$with_sha1" = xlibmd && test "x$HAVE_LIBMD" != xyes; then ++ AC_MSG_ERROR([libmd requested but not found]) ++fi ++if test "x$with_sha1" = xlibmd; then ++ AC_DEFINE([HAVE_SHA1_IN_LIBMD], [1], ++ [Use libmd SHA1 functions]) ++ SHA1_LIBS=-lmd ++fi ++AC_CHECK_LIB([gcrypt], [gcry_md_open], [HAVE_LIBGCRYPT=yes]) ++if test "x$with_sha1" = x && test "x$HAVE_LIBGCRYPT" = xyes; then ++ with_sha1=libgcrypt ++fi ++if test "x$with_sha1" = xlibgcrypt; then ++ AC_DEFINE([HAVE_SHA1_IN_LIBGCRYPT], [1], ++ [Use libgcrypt SHA1 functions]) ++ SHA1_LIBS=-lgcrypt ++fi ++AC_CHECK_LIB([nettle], [nettle_sha1_init], [HAVE_LIBNETTLE=yes]) ++if test "x$with_sha1" = x && test "x$HAVE_LIBNETTLE" = xyes; then ++ with_sha1=libnettle ++fi ++if test "x$with_sha1" = xlibnettle; then ++ AC_DEFINE([HAVE_SHA1_IN_LIBNETTLE], [1], ++ [Use libnettle SHA1 functions]) ++ SHA1_LIBS=-lnettle ++fi ++# We don't need all of the OpenSSL libraries, just libcrypto ++AC_CHECK_LIB([crypto], [SHA1_Init], [HAVE_LIBCRYPTO=yes]) ++PKG_CHECK_MODULES([OPENSSL], [openssl], [HAVE_OPENSSL_PKC=yes], ++ [HAVE_OPENSSL_PKC=no]) ++if test "x$HAVE_LIBCRYPTO" = xyes || test "x$HAVE_OPENSSL_PKC" = xyes; then ++ if test "x$with_sha1" = x; then ++ with_sha1=libcrypto ++ fi ++else ++ if test "x$with_sha1" = xlibcrypto; then ++ AC_MSG_ERROR([OpenSSL libcrypto requested but not found]) ++ fi ++fi ++if test "x$with_sha1" = xlibcrypto; then ++ if test "x$HAVE_LIBCRYPTO" = xyes; then ++ SHA1_LIBS=-lcrypto ++ else ++ SHA1_LIBS="$OPENSSL_LIBS" ++ SHA1_CFLAGS="$OPENSSL_CFLAGS" ++ fi ++fi ++if test "x$with_sha1" = x; then ++ AC_MSG_ERROR([No suitable SHA1 implementation found]) + fi ++AC_SUBST(SHA1_LIBS) ++AC_SUBST(SHA1_CFLAGS) + + PKG_CHECK_MODULES([XSERVERCFLAGS], [$REQUIRED_MODULES $REQUIRED_LIBS]) + PKG_CHECK_MODULES([XSERVERLIBS], [$REQUIRED_LIBS]) +@@ -1326,7 +1366,7 @@ PKG_CHECK_MODULES([XSERVERLIBS], [$REQUIRED_LIBS]) + # + XSERVER_CFLAGS="${XSERVERCFLAGS_CFLAGS} ${SHA1_CFLAGS}" + XSERVER_LIBS="$DIX_LIB $CONFIG_LIB $MI_LIB $OS_LIB" +-XSERVER_SYS_LIBS="${XSERVERLIBS_LIBS} ${SYS_LIBS} ${LIBS} ${SHA1_LIB}" ++XSERVER_SYS_LIBS="${XSERVERLIBS_LIBS} ${SYS_LIBS} ${LIBS} ${SHA1_LIBS}" + AC_SUBST([XSERVER_LIBS]) + AC_SUBST([XSERVER_SYS_LIBS]) + +diff --git a/include/dix-config.h.in b/include/dix-config.h.in +index 6e450b6..782da4f 100644 +--- a/include/dix-config.h.in ++++ b/include/dix-config.h.in +@@ -163,6 +163,12 @@ + /* Define to use libmd SHA1 functions instead of OpenSSL libcrypto */ + #undef HAVE_SHA1_IN_LIBMD + ++/* Define to use libgcrypt SHA1 functions instead of OpenSSL libcrypto */ ++#undef HAVE_SHA1_IN_LIBGCRYPT ++ ++/* Define to use libnettle SHA1 functions instead of OpenSSL libcrypto */ ++#undef HAVE_SHA1_IN_LIBNETTLE ++ + /* Define to 1 if you have the `shmctl64' function. */ + #undef HAVE_SHMCTL64 + +diff --git a/render/glyph.c b/render/glyph.c +index 7fcdfd9..37e80ec 100644 +--- a/render/glyph.c ++++ b/render/glyph.c +@@ -28,6 +28,10 @@ + + #ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ + # include <sha1.h> ++#elif defined(HAVE_SHA1_IN_LIBGCRYPT) ++# include <gcrypt.h> ++#elif defined(HAVE_SHA1_IN_LIBNETTLE) ++# include <nettle/sha.h> + #else /* Use OpenSSL's libcrypto */ + # include <stddef.h> /* buggy openssl/sha.h wants size_t */ + # include <openssl/sha.h> +@@ -205,6 +209,33 @@ HashGlyph (xGlyphInfo *gi, + SHA1Update (&ctx, gi, sizeof (xGlyphInfo)); + SHA1Update (&ctx, bits, size); + SHA1Final (sha1, &ctx); ++#elif defined(HAVE_SHA1_IN_LIBGCRYPT) /* Use libgcrypt for SHA1 */ ++ static int init; ++ gcry_md_hd_t h; ++ gcry_error_t err; ++ ++ if (!init) { ++ if (!gcry_check_version(NULL)) ++ return BadAlloc; ++ gcry_control(GCRYCTL_DISABLE_SECMEM, 0); ++ gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0); ++ init = 1; ++ } ++ ++ err = gcry_md_open(&h, GCRY_MD_SHA1, 0); ++ if (err) ++ return BadAlloc; ++ gcry_md_write(h, gi, sizeof (xGlyphInfo)); ++ gcry_md_write(h, bits, size); ++ memcpy(sha1, gcry_md_read(h, GCRY_MD_SHA1), 20); ++ gcry_md_close(h); ++#elif HAVE_SHA1_IN_LIBNETTLE ++ struct sha1_ctx ctx; ++ ++ sha1_init(&ctx); ++ sha1_update(&ctx, sizeof (xGlyphInfo), gi); ++ sha1_update(&ctx, size, bits); ++ sha1_digest(&ctx, 20, sha1); + #else /* Use OpenSSL's libcrypto */ + SHA_CTX ctx; + int success; +-- +1.7.0 + diff --git a/debian/patches/02_Add-libgcrypt-as-an-option-for-sha1.diff b/debian/patches/02_Add-libgcrypt-as-an-option-for-sha1.diff deleted file mode 100644 index f975aef..0000000 --- a/debian/patches/02_Add-libgcrypt-as-an-option-for-sha1.diff +++ /dev/null @@ -1,84 +0,0 @@ -From 6c6bbefdcf8a41dc71f9cbeca7ce972e2661fade Mon Sep 17 00:00:00 2001 -From: Julien Cristau <jcris...@debian.org> -Date: Thu, 2 Apr 2009 02:34:49 +0200 -Subject: [PATCH] Add libgcrypt as an option for sha1 - -Included upstream in 1.7.99.x in a different way: -commit a60e676f1fd243c78859440b87652f523d3f2ec1 ---- - configure.ac | 6 ++++++ - include/dix-config.h.in | 3 +++ - render/glyph.c | 12 ++++++++++++ - 3 files changed, 21 insertions(+), 0 deletions(-) - -Index: xorg-server/configure.ac -=================================================================== ---- xorg-server.orig/configure.ac -+++ xorg-server/configure.ac -@@ -1299,6 +1299,12 @@ - [Use libmd SHA1 functions instead of OpenSSL libcrypto])]) - fi - -+if test "x$SHA1_LIB" = "x"; then -+ AC_CHECK_LIB([gcrypt], [gcry_md_open], [SHA1_LIB="-lgcrypt" -+ AC_DEFINE([HAVE_SHA1_IN_LIBGCRYPT], [1], -+ [Use libgcrypt SHA1 functions instead of OpenSSL libcrypto])]) -+fi -+ - if test "x$SHA1_LIB" = "x" ; then - PKG_CHECK_EXISTS([OPENSSL], [openssl], [HAVE_OPENSSL_PKC=yes], - [HAVE_OPENSSL_PKC=no]) -Index: xorg-server/include/dix-config.h.in -=================================================================== ---- xorg-server.orig/include/dix-config.h.in -+++ xorg-server/include/dix-config.h.in -@@ -163,6 +163,9 @@ - /* Define to use libmd SHA1 functions instead of OpenSSL libcrypto */ - #undef HAVE_SHA1_IN_LIBMD - -+/* Define to use libgcrypt SHA1 functions instead of OpenSSL libcrypto */ -+#undef HAVE_SHA1_IN_LIBGCRYPT -+ - /* Define to 1 if you have the `shmctl64' function. */ - #undef HAVE_SHMCTL64 - -Index: xorg-server/render/glyph.c -=================================================================== ---- xorg-server.orig/render/glyph.c -+++ xorg-server/render/glyph.c -@@ -28,6 +28,8 @@ - - #ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ - # include <sha1.h> -+#elif defined(HAVE_SHA1_IN_LIBGCRYPT) -+# include <gcrypt.h> - #else /* Use OpenSSL's libcrypto */ - # include <stddef.h> /* buggy openssl/sha.h wants size_t */ - # include <openssl/sha.h> -@@ -205,6 +207,26 @@ - SHA1Update (&ctx, gi, sizeof (xGlyphInfo)); - SHA1Update (&ctx, bits, size); - SHA1Final (sha1, &ctx); -+#elif defined(HAVE_SHA1_IN_LIBGCRYPT) /* Use libgcrypt for SHA1 */ -+ static int init; -+ gcry_md_hd_t h; -+ gcry_error_t err; -+ -+ if (!init) { -+ if (!gcry_check_version(NULL)) -+ return BadAlloc; -+ gcry_control(GCRYCTL_DISABLE_SECMEM, 0); -+ gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0); -+ init = 1; -+ } -+ -+ err = gcry_md_open(&h, GCRY_MD_SHA1, 0); -+ if (err) -+ return BadAlloc; -+ gcry_md_write(h, gi, sizeof (xGlyphInfo)); -+ gcry_md_write(h, bits, size); -+ memcpy(sha1, gcry_md_read(h, GCRY_MD_SHA1), 20); -+ gcry_md_close(h); - #else /* Use OpenSSL's libcrypto */ - SHA_CTX ctx; - int success; diff --git a/debian/patches/series b/debian/patches/series index 1ce856f..29afbca 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,7 +1,7 @@ ## Patches with a number < 100 are applied in debian. ## Ubuntu patches start with 100. 001_fedora_extramodes.patch -02_Add-libgcrypt-as-an-option-for-sha1.diff +02_Add-libgcrypt-and-libnettle-as-options-for-sha1.diff # 03 and 04 are backports from git master 03_fedora_glx_versioning.diff 04_fedora_glx14-swrast.diff commit dcc2d95371c1875ad37e2bbbaad8a3aeaa39f7ce Author: Cyril Brulebois <k...@debian.org> Date: Sun Mar 14 20:10:51 2010 +0100 Revert the libgcrypt*-dev change in Build-Depends. Static build is going to be used for sha1 functions. diff --git a/debian/changelog b/debian/changelog index ab53e44..f813c99 100644 --- a/debian/changelog +++ b/debian/changelog @@ -24,7 +24,6 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low * Version/Bump some B-D to make sure xserver-xorg-core-udeb gets its dependencies on the (recently-added) udebs rather than on the libraries: - - libgcrypt11-dev (switching from the virtual libgcrypt-dev package) - libpciaccess-dev - libudev-dev - libxau-dev diff --git a/debian/control b/debian/control index 712ac57..df2f6ad 100644 --- a/debian/control +++ b/debian/control @@ -45,7 +45,7 @@ Build-Depends: libxkbfile-dev (>= 1:0.99.1), libpixman-1-dev (>= 0.15.20), libpciaccess-dev (>= 0.11.0-2), - libgcrypt11-dev (>= 1.4.5-3), + libgcrypt-dev, libdbus-1-dev [kfreebsd-amd64 kfreebsd-i386], libhal-dev [kfreebsd-amd64 kfreebsd-i386], libudev-dev (>= 150-3) [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], commit a2b484fddc6ae6c48b78fc49b6de89a0769dd786 Author: Cyril Brulebois <k...@debian.org> Date: Sun Mar 14 19:49:22 2010 +0100 Use XC-Package-Type to save some memory. diff --git a/debian/control b/debian/control index 3813c68..712ac57 100644 --- a/debian/control +++ b/debian/control @@ -126,7 +126,7 @@ Description: Xorg X server - core server This package is built from the X.org xserver module. Package: xserver-xorg-core-udeb -Package-Type: udeb +XC-Package-Type: udeb Section: debian-installer Architecture: any Depends: commit 844725bcc542f2c9e3a26b70912e4aa31cb49879 Author: Cyril Brulebois <k...@debian.org> Date: Mon Feb 8 12:05:49 2010 +0000 Enable DGA for the udeb, needed for the fbdev driver. diff --git a/debian/rules b/debian/rules index 1cd482d..4ea090b 100755 --- a/debian/rules +++ b/debian/rules @@ -135,7 +135,7 @@ confflags_udeb = \ --disable-record \ --disable-xv \ --disable-xvmc \ - --disable-dga \ + --enable-dga \ --disable-screensaver \ --disable-xdmcp \ --disable-xdm-auth-1 \ commit 7f92ddf7a29f817d91078b32c57b0a9a0f85fa44 Author: Julien Cristau <jcris...@debian.org> Date: Mon Feb 8 02:10:06 2010 +0100 Strip some modules from the udeb diff --git a/debian/rules b/debian/rules index e9d92a4..1cd482d 100755 --- a/debian/rules +++ b/debian/rules @@ -218,6 +218,13 @@ install: build find debian/tmp/*/usr/lib/xorg -type f -name '*.la' | \ xargs rm -f + # remove modules not needed in d-i + rm -r debian/tmp/udeb/usr/lib/xorg/modules/multimedia + rm -f debian/tmp/udeb/usr/lib/xorg/modules/libxaa.so + rm -f debian/tmp/udeb/usr/lib/xorg/modules/libexa.so + rm -f debian/tmp/udeb/usr/lib/xorg/modules/libwfb.so + rm -f debian/tmp/udeb/usr/lib/xorg/modules/libxf8_16bpp.so + install -m 755 debian/local/xvfb-run debian/tmp/main/usr/bin install debian/local/xvfb-run.1 debian/tmp/main/usr/share/man/man1 commit 89225395696f8ba04acff392c0dd28a8c340f7db Author: Julien Cristau <jcris...@debian.org> Date: Mon Feb 8 02:05:48 2010 +0100 Add patch to fix Xorg build with XV disabled. diff --git a/debian/changelog b/debian/changelog index 0598ad7..ab53e44 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,7 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low [ Julien Cristau ] * config/udev: fix adding unnamed devices. * Build two flavours, one for the main package and one for the udeb. + * Add patch to fix Xorg build with XV disabled. [ Timo Aaltonen ] * Add 16-config-dont-filter-input-subsys.diff so for instance serial diff --git a/debian/patches/16-xfree86-fix-build-with-xv-disabled.diff b/debian/patches/16-xfree86-fix-build-with-xv-disabled.diff new file mode 100644 index 0000000..184301f --- /dev/null +++ b/debian/patches/16-xfree86-fix-build-with-xv-disabled.diff @@ -0,0 +1,53 @@ +From fe7575e929d65e8c798104ec2f72b879051694d3 Mon Sep 17 00:00:00 2001 +From: Julien Cristau <jcris...@debian.org> +Date: Mon, 8 Feb 2010 02:04:33 +0100 +Subject: [PATCH] xfree86: fix build with xv disabled + +--- + hw/xfree86/modes/xf86Crtc.c | 2 ++ + hw/xfree86/modes/xf86Crtc.h | 2 ++ + 2 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index 30b49af..62f8737 100644 +--- a/hw/xfree86/modes/xf86Crtc.c ++++ b/hw/xfree86/modes/xf86Crtc.c +@@ -3009,6 +3009,7 @@ xf86_crtc_box_area(BoxPtr box) + return (int) (box->x2 - box->x1) * (int) (box->y2 - box->y1); + } + ++#ifdef XV + /* + * Return the crtc covering 'box'. If two crtcs cover a portion of + * 'box', then prefer 'desired'. If 'desired' is NULL, then prefer the crtc +@@ -3097,6 +3098,7 @@ xf86_crtc_clip_video_helper(ScrnInfoPtr pScrn, + + return ret; + } ++#endif + + xf86_crtc_notify_proc_ptr + xf86_wrap_crtc_notify (ScreenPtr screen, xf86_crtc_notify_proc_ptr new) +diff --git a/hw/xfree86/modes/xf86Crtc.h b/hw/xfree86/modes/xf86Crtc.h +index 9baa956..2fb32c1 100644 +--- a/hw/xfree86/modes/xf86Crtc.h ++++ b/hw/xfree86/modes/xf86Crtc.h +@@ -908,6 +908,7 @@ xf86_hide_cursors (ScrnInfoPtr scrn); + extern _X_EXPORT void + xf86_cursors_fini (ScreenPtr screen); + ++#ifdef XV + /* + * For overlay video, compute the relevant CRTC and + * clip video to that. +@@ -926,6 +927,7 @@ xf86_crtc_clip_video_helper(ScrnInfoPtr pScrn, + RegionPtr reg, + INT32 width, + INT32 height); ++#endif + + extern _X_EXPORT xf86_crtc_notify_proc_ptr + xf86_wrap_crtc_notify (ScreenPtr pScreen, xf86_crtc_notify_proc_ptr new); +-- +1.6.6.1 + diff --git a/debian/patches/series b/debian/patches/series index f38fd97..1ce856f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -13,3 +13,4 @@ 14-config-add-example-udev-rules.diff 15-config-udev-look-for-xkb-rules-model-layout-variant-.diff 16-config-dont-filter-input-subsys.diff +16-xfree86-fix-build-with-xv-disabled.diff commit 957b82c13d6ca022679d0a3c23bbf580cb94d209 Author: Julien Cristau <jcris...@debian.org> Date: Mon Feb 8 01:11:09 2010 +0100 Build two flavours, one for the main package and one for the udeb. diff --git a/debian/changelog b/debian/changelog index f82b1cf..0598ad7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low [ Julien Cristau ] * config/udev: fix adding unnamed devices. + * Build two flavours, one for the main package and one for the udeb. [ Timo Aaltonen ] * Add 16-config-dont-filter-input-subsys.diff so for instance serial diff --git a/debian/rules b/debian/rules index 15b7a8a..e9d92a4 100755 --- a/debian/rules +++ b/debian/rules @@ -76,31 +76,13 @@ confflags += \ --with-int10=x86emu \ --with-os-vendor="$(VENDOR)" \ --with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \ - --with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \ --with-xkb-path=/usr/share/X11/xkb \ --with-xkb-output=/var/lib/xkb \ --disable-builddocs \ --disable-install-libxf86config \ --disable-null-root-cursor \ - --enable-aiglx \ - --enable-glx-tls \ - --enable-registry \ - --enable-composite \ --enable-mitshm \ --enable-xres \ - --enable-record \ - --enable-xv \ - --enable-xvmc \ - --enable-dga \ - --enable-screensaver \ - --enable-xdmcp \ - --enable-xdm-auth-1 \ - --enable-glx \ - $(dri) \ - --enable-xinerama \ - --enable-xf86vidmode \ - --enable-xace \ - $(selinux) \ --disable-xcsecurity \ --disable-xcalibrate \ --disable-tslib \ @@ -109,28 +91,79 @@ confflags += \ --disable-xf86bigfont \ --enable-dpms \ $(config_backend) \ - --enable-xfree86-utils \ --enable-xorg \ - --enable-dmx \ - --enable-xvfb \ - --enable-xnest \ --disable-xquartz \ --disable-xwin \ - --enable-kdrive \ - --enable-xephyr \ --disable-xsdl \ --disable-xfake \ - $(build_xfbdev) \ --disable-install-setuid -configure: $(STAMP_DIR)/patch +confflags_main = \ + --with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \ + --enable-aiglx \ + --enable-glx-tls \ + --enable-registry \ + --enable-composite \ + --enable-record \ + --enable-xv \ + --enable-xvmc \ + --enable-dga \ + --enable-screensaver \ + --enable-xdmcp \ + --enable-xdm-auth-1 \ + --enable-glx \ + $(dri) \ + --enable-xinerama \ + --enable-xf86vidmode \ + --enable-xace \ + $(selinux) \ + --enable-xfree86-utils \ + --enable-dmx \ + --enable-xvfb \ + --enable-xnest \ + --enable-kdrive \ + --enable-xephyr \ + $(build_xfbdev) \ + $(void) + +confflags_udeb = \ + --with-default-font-path="built-ins" \ + --disable-aiglx \ + --disable-glx-tls \ + --disable-registry \ + --disable-composite \ + --disable-record \ + --disable-xv \ + --disable-xvmc \ + --disable-dga \ + --disable-screensaver \ + --disable-xdmcp \ + --disable-xdm-auth-1 \ + --disable-glx \ + --disable-dri \ + --disable-dri2 \ + --disable-xinerama \ + --disable-xf86vidmode \ + --disable-xace \ + --disable-xselinux \ + --disable-xfree86-utils \ + --disable-dmx \ + --disable-xvfb \ + --disable-xnest \ + --disable-kdrive \ + --disable-xephyr \ + --disable-xfbdev \ + $(void) + +$(STAMP_DIR)/autoreconf: $(STAMP_DIR)/patch dh_testdir autoreconf -vfi + >$@ -build/config.status: configure +$(STAMP_DIR)/configure-%: $(STAMP_DIR)/autoreconf dh_testdir - mkdir -p build - cd build && \ + mkdir -p build-$* + cd build-$* && \ ../configure \ --prefix=/usr \ --mandir=\$${prefix}/share/man \ @@ -138,29 +171,32 @@ build/config.status: configure --sysconfdir=/etc \ --localstatedir=/var \ $(confflags) \ + $(confflags_$*) \ CFLAGS="$(CFLAGS)" \ CPPFLAGS="$(CPPFLAGS)" + >$@ -build: build-stamp tests-stamp -build-stamp: build/config.status +$(STAMP_DIR)/build-%: $(STAMP_DIR)/configure-% dh_testdir - cd build && $(MAKE) + cd build-$* && $(MAKE) >$@ -tests-stamp: build-stamp - cd build && $(MAKE) check +$(STAMP_DIR)/tests-%: $(STAMP_DIR)/build-% + cd build-$* && $(MAKE) check >$@ +build: $(STAMP_DIR)/build-main $(STAMP_DIR)/build-udeb +build: $(STAMP_DIR)/tests-main $(STAMP_DIR)/tests-udeb + clean: xsfclean dh_testdir dh_testroot - rm -f build-stamp tests-stamp rm -f config.cache config.log config.status rm -f */config.cache */config.log */config.status rm -f conftest* */conftest* rm -rf autom4te.cache */autom4te.cache - rm -rf build + rm -rf build-* rm -f compile config.guess config.sub configure depcomp install-sh rm -f ltmain.sh missing INSTALL aclocal.m4 ylwrap rm -f include/do-not-use-config.h.in @@ -175,14 +211,15 @@ install: build dh_clean -k dh_installdirs - cd build && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install + cd build-main && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp/main install + cd build-udeb && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp/udeb install # oh, yuck. - find $(CURDIR)/debian/tmp/usr/lib/xorg -type f -name '*.la' | \ + find debian/tmp/*/usr/lib/xorg -type f -name '*.la' | \ xargs rm -f - install -m 755 debian/local/xvfb-run debian/tmp/usr/bin - install debian/local/xvfb-run.1 debian/tmp/usr/share/man/man1 + install -m 755 debian/local/xvfb-run debian/tmp/main/usr/bin + install debian/local/xvfb-run.1 debian/tmp/main/usr/share/man/man1 # stub to start building deb files, used by binary-indep and binary-arch binary-initial: diff --git a/debian/xdmx-tools.install b/debian/xdmx-tools.install index b189c40..dc868c2 100644 --- a/debian/xdmx-tools.install +++ b/debian/xdmx-tools.install @@ -1,7 +1,7 @@ -usr/bin/dmx* -usr/bin/vdltodmx -usr/bin/xdmx -usr/bin/xdmxconfig -usr/share/man/man1/vdltodmx.1 -usr/share/man/man1/dmxtodmx.1 -usr/share/man/man1/xdmxconfig.1 +main/usr/bin/dmx* usr/bin +main/usr/bin/vdltodmx usr/bin +main/usr/bin/xdmx usr/bin +main/usr/bin/xdmxconfig usr/bin +main/usr/share/man/man1/vdltodmx.1 usr/share/man/man1 +main/usr/share/man/man1/dmxtodmx.1 usr/share/man/man1 +main/usr/share/man/man1/xdmxconfig.1 usr/share/man/man1 diff --git a/debian/xdmx.install b/debian/xdmx.install index e212e19..c6a37eb 100644 --- a/debian/xdmx.install +++ b/debian/xdmx.install @@ -1,2 +1,2 @@ -usr/bin/Xdmx -usr/share/man/man1/Xdmx.1 +main/usr/bin/Xdmx usr/bin +main/usr/share/man/man1/Xdmx.1 usr/share/man/man1 diff --git a/debian/xnest.install b/debian/xnest.install index c04b581..b11a15e 100644 --- a/debian/xnest.install +++ b/debian/xnest.install @@ -1,2 +1,2 @@ -usr/bin/Xnest -usr/share/man/man1/Xnest.1 +main/usr/bin/Xnest usr/bin +main/usr/share/man/man1/Xnest.1 usr/share/man/man1 diff --git a/debian/xserver-common.install b/debian/xserver-common.install index 46a7630..232cc98 100644 --- a/debian/xserver-common.install +++ b/debian/xserver-common.install @@ -1,2 +1,2 @@ -usr/lib/xorg/protocol.txt -usr/share/man/man1/Xserver.1 +main/usr/lib/xorg/protocol.txt usr/lib/xorg +main/usr/share/man/man1/Xserver.1 usr/share/man/man1 diff --git a/debian/xserver-xephyr.install b/debian/xserver-xephyr.install index 24fe4ac..c0939e6 100644 --- a/debian/xserver-xephyr.install +++ b/debian/xserver-xephyr.install @@ -1,2 +1,2 @@ -usr/bin/Xephyr -usr/share/man/man1/Xephyr.1 +main/usr/bin/Xephyr usr/bin +main/usr/share/man/man1/Xephyr.1 usr/share/man/man1 diff --git a/debian/xserver-xfbdev.install b/debian/xserver-xfbdev.install index c7faa98..32abbb7 100644 --- a/debian/xserver-xfbdev.install +++ b/debian/xserver-xfbdev.install @@ -1 +1 @@ -usr/bin/Xfbdev +main/usr/bin/Xfbdev usr/bin diff --git a/debian/xserver-xorg-core-udeb.install b/debian/xserver-xorg-core-udeb.install index dbebab5..92130ee 100644 --- a/debian/xserver-xorg-core-udeb.install +++ b/debian/xserver-xorg-core-udeb.install @@ -1,6 +1,6 @@ # from xserver-common: -usr/lib/xorg/protocol.txt +udeb/usr/lib/xorg/protocol.txt usr/lib/xorg # from xserver-xorg-core: -usr/lib/xorg/modules -usr/bin/Xorg +udeb/usr/lib/xorg/modules usr/lib/xorg +udeb/usr/bin/Xorg usr/bin diff --git a/debian/xserver-xorg-core.install b/debian/xserver-xorg-core.install index e34d93d..48c1c93 100644 --- a/debian/xserver-xorg-core.install +++ b/debian/xserver-xorg-core.install @@ -1,10 +1,10 @@ -usr/lib/xorg/modules/ -usr/bin/Xorg -usr/share/man/man1/Xorg.1 -usr/share/man/man4/exa.4 -usr/share/man/man4/fbdevhw.4 -usr/share/man/man5/xorg.conf.5 -usr/bin/cvt -usr/bin/gtf -usr/share/man/man1/cvt.1 -usr/share/man/man1/gtf.1 +main/usr/lib/xorg/modules usr/lib/xorg +main/usr/bin/Xorg usr/bin +main/usr/share/man/man1/Xorg.1 usr/share/man/man1 +main/usr/share/man/man4/exa.4 usr/share/man/man4 +main/usr/share/man/man4/fbdevhw.4 usr/share/man/man4 +main/usr/share/man/man5/xorg.conf.5 usr/share/man/man5 +main/usr/bin/cvt usr/bin +main/usr/bin/gtf usr/bin +main/usr/share/man/man1/cvt.1 usr/share/man/man1 +main/usr/share/man/man1/gtf.1 usr/share/man/man1 diff --git a/debian/xserver-xorg-dev.install b/debian/xserver-xorg-dev.install index 391cef2..36df50e 100644 --- a/debian/xserver-xorg-dev.install +++ b/debian/xserver-xorg-dev.install @@ -1,3 +1,3 @@ -usr/include/xorg/* -usr/lib/pkgconfig/xorg-server.pc -usr/share/aclocal/* +main/usr/include/xorg usr/include +main/usr/lib/pkgconfig/xorg-server.pc usr/lib/pkgconfig +main/usr/share/aclocal usr/share diff --git a/debian/xvfb.install b/debian/xvfb.install index 7a2095e..9fb2663 100644 --- a/debian/xvfb.install +++ b/debian/xvfb.install @@ -1,4 +1,4 @@ -usr/bin/Xvfb -usr/bin/xvfb-run -usr/share/man/man1/xvfb-run.1 -usr/share/man/man1/Xvfb.1 +main/usr/bin/Xvfb usr/bin +main/usr/bin/xvfb-run usr/bin +main/usr/share/man/man1/xvfb-run.1 usr/share/man/man1 +main/usr/share/man/man1/Xvfb.1 usr/share/man/man1 commit 5c05f611022681fb5f4eb62145c5b9ca7c1a70e0 Author: Cyril Brulebois <k...@debian.org> Date: Sun Feb 7 01:21:10 2010 +0000 Version/Bump some B-D to make sure xserver-xorg-core-udeb gets its dependencies on udebs. diff --git a/debian/changelog b/debian/changelog index d02e27f..f82b1cf 100644 --- a/debian/changelog +++ b/debian/changelog @@ -19,6 +19,14 @@ xorg-server (2:1.7.5.902-1) UNRELEASED; urgency=low [ Cyril Brulebois ] * Add udeb needed for the graphical installer: xserver-xorg-core-udeb. + * Version/Bump some B-D to make sure xserver-xorg-core-udeb gets its + dependencies on the (recently-added) udebs rather than on the + libraries: + - libgcrypt11-dev (switching from the virtual libgcrypt-dev package) + - libpciaccess-dev + - libudev-dev + - libxau-dev + - libxfont-dev -- Drew Parsons <dpars...@debian.org> Wed, 03 Mar 2010 23:33:54 +1100 diff --git a/debian/control b/debian/control index 4480fb7..3813c68 100644 --- a/debian/control +++ b/debian/control @@ -37,22 +37,22 @@ Build-Depends: x11proto-xf86dga-dev (>= 2.0.99.1), x11proto-xf86vidmode-dev (>= 2.2.99.1), xtrans-dev (>= 1.2.2), - libxau-dev (>= 1:0.99.1), + libxau-dev (>= 1:1.0.5-2), x11proto-input-dev (>= 1.9.99.902), x11proto-dri2-dev (>= 2.1), libxdmcp-dev (>= 1:0.99.1), - libxfont-dev, + libxfont-dev (>= 1:1.4.1-2), libxkbfile-dev (>= 1:0.99.1), libpixman-1-dev (>= 0.15.20), - libpciaccess-dev (>= 0.10.7), - libgcrypt-dev, + libpciaccess-dev (>= 0.11.0-2), + libgcrypt11-dev (>= 1.4.5-3), libdbus-1-dev [kfreebsd-amd64 kfreebsd-i386], libhal-dev [kfreebsd-amd64 kfreebsd-i386], - libudev-dev [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], + libudev-dev (>= 150-3) [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], libselinux1-dev (>= 2.0.80) [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], libaudit-dev [alpha amd64 arm armeb armel avr32 hppa i386 ia64 lpia m32r m68k mips mipsel powerpc ppc64 s390 s390x sh3 sh3eb sh4 sh4eb sparc], x11proto-xf86dri-dev (>= 2.1.0), - libdrm-dev (>= 2.4.3) [!hurd-i386], + libdrm-dev (>= 2.4.3) [!hurd-i386], x11proto-gl-dev (>= 1.4.9), mesa-common-dev (>= 7.5), -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1nqylw-0001km...@alioth.debian.org