ChangeLog |162271 ---------- Xext/geext.c | 22 Xext/security.c | 2 Xext/shape.c | 1 Xext/shm.c | 12 Xext/sleepuntil.c | 17 Xext/sync.c | 45 Xext/vidmode.c | 2 Xext/xace.c | 45 Xext/xace.h | 12 Xext/xf86bigfont.c | 10 Xext/xres.c | 96 Xext/xselinux_hooks.c | 18 Xext/xvdisp.c | 3 Xi/exevents.c | 8 Xi/extinit.c | 17 Xi/stubs.c | 14 Xi/xiproperty.c | 8 Xi/xiquerypointer.c | 4 composite/compalloc.c | 4 composite/compext.c | 29 config/config.c | 6 config/dbus-core.c | 18 config/hal.c | 4 config/udev.c | 57 config/wscons.c | 2 configure.ac | 173 damageext/damageext.c | 23 debian/changelog | 53 debian/control | 24 debian/local/xvfb-run.1 | 2 debian/patches/02_kbsd-input-devd.diff | 60 debian/patches/03_static-nettle.diff | 8 debian/patches/05_Revert-Unload-submodules.diff | 8 debian/patches/105_nvidia_autodetect.patch | 2 debian/patches/111_armel-drv-fallbacks.patch | 70 debian/patches/168_glibc_trace_to_stderr.patch | 8 debian/patches/190_cache-xkbcomp_output_for_fast_start_up.patch | 469 debian/patches/191-Xorg-add-an-extra-module-path.patch | 6 debian/patches/208_switch_on_release.diff | 28 debian/patches/226_fall_back_to_autoconfiguration.patch | 20 debian/patches/228_autobind_gpu.patch | 14 debian/patches/232-xf86compatoutput-valgrind.patch | 16 debian/patches/config-add-no-removal.patch | 33 debian/patches/disable-rotation-transform-gpuscreens.patch | 4 debian/patches/fix-detach-gpu.patch | 93 debian/patches/modesetting-unifdef-slave-support.diff | 27 debian/patches/no-nv.patch | 2 debian/patches/randr-adjust-masters-last-set-time.diff | 39 debian/patches/randr-do-not-check-the-screen-size.diff | 8 debian/patches/series | 8 debian/patches/xf86-ignore-conflicting-rr-caps.patch | 2 debian/patches/xf86-inactive-gpuscreen.patch | 29 debian/patches/xi2-resize-touch.patch | 2 debian/patches/xmir-desktop-file-hint-flag.patch | 7 debian/patches/xmir.patch | 72 debian/rules | 6 debian/serverminver | 6 debian/watch | 2 debian/xserver-xorg-core.bug.script | 4 debian/xserver-xorg-legacy.config | 2 debian/xserver-xorg-legacy.postinst | 2 debian/xserver-xorg-legacy.postrm | 2 dix/devices.c | 81 dix/dispatch.c | 227 dix/dixfonts.c | 326 dix/dixutils.c | 45 dix/events.c | 17 dix/getevents.c | 29 dix/inpututils.c | 17 dix/main.c | 36 dix/pixmap.c | 7 dix/privates.c | 9 dix/property.c | 14 dix/ptrveloc.c | 42 dix/resource.c | 41 dix/selection.c | 3 dix/touch.c | 92 doc/Xinput.xml | 8 doc/Xserver-spec.xml | 59 dri3/dri3_request.c | 8 dri3/dri3int.h | 26 exa/exa.c | 10 fb/fbimage.c | 2 glamor/Makefile.am | 4 glamor/glamor.c | 85 glamor/glamor.h | 40 glamor/glamor_composite_glyphs.c | 3 glamor/glamor_copy.c | 45 glamor/glamor_core.c | 168 glamor/glamor_egl.c | 129 glamor/glamor_egl.h | 79 glamor/glamor_egl_stubs.c | 5 glamor/glamor_fbo.c | 238 glamor/glamor_font.c | 6 glamor/glamor_gradient.c | 8 glamor/glamor_largepixmap.c | 2 glamor/glamor_picture.c | 1003 glamor/glamor_priv.h | 55 glamor/glamor_program.c | 3 glamor/glamor_render.c | 86 glamor/glamor_spans.c | 2 glamor/glamor_sync.c | 3 glamor/glamor_utils.h | 559 glx/Makefile.am | 10 glx/createcontext.c | 8 glx/extension_string.c | 5 glx/extension_string.h | 1 glx/glxcmds.c | 45 glx/glxcontext.h | 5 glx/glxdrawable.h | 3 glx/glxdri2.c | 182 glx/glxdricommon.c | 62 glx/glxdricommon.h | 3 glx/glxdriswrast.c | 98 glx/glxext.c | 22 glx/glxscreens.c | 44 glx/glxscreens.h | 17 glx/single2.c | 4 glx/single2swap.c | 4 glx/singlepix.c | 1 glx/singlepixswap.c | 1 hw/dmx/dmxfont.c | 9 hw/dmx/dmxinput.c | 5 hw/dmx/dmxinput.h | 18 hw/dmx/dmxscrinit.c | 4 hw/dmx/dmxsync.c | 4 hw/dmx/doc/dmx.xml | 11 hw/dmx/input/Makefile.am | 2 hw/dmx/input/dmxcommon.c | 17 hw/dmx/input/dmxevents.c | 29 hw/dmx/input/dmxinputinit.c | 13 hw/dmx/input/dmxsigio.c | 234 hw/dmx/input/dmxsigio.h | 43 hw/dmx/input/lnx-keyboard.c | 7 hw/dmx/input/lnx-ms.c | 21 hw/dmx/input/lnx-ps2.c | 14 hw/dmx/input/usb-common.c | 2 hw/dmx/input/usb-keyboard.c | 2 hw/kdrive/ephyr/Makefile.am | 14 hw/kdrive/ephyr/ephyr.c | 216 hw/kdrive/ephyr/ephyr.h | 6 hw/kdrive/ephyr/ephyr_glamor_glx.c | 8 hw/kdrive/ephyr/ephyrdri.c | 356 hw/kdrive/ephyr/ephyrdri.h | 70 hw/kdrive/ephyr/ephyrdriext.c | 1376 hw/kdrive/ephyr/ephyrdriext.h | 40 hw/kdrive/ephyr/ephyrglxext.c | 854 hw/kdrive/ephyr/ephyrglxext.h | 34 hw/kdrive/ephyr/ephyrhostglx.c | 490 hw/kdrive/ephyr/ephyrhostglx.h | 75 hw/kdrive/ephyr/ephyrinit.c | 65 hw/kdrive/ephyr/ephyrvideo.c | 2 hw/kdrive/ephyr/hostx.c | 275 hw/kdrive/ephyr/hostx.h | 30 hw/kdrive/ephyr/os.c | 1 hw/kdrive/fake/mouse.c | 1 hw/kdrive/linux/evdev.c | 20 hw/kdrive/linux/linux.c | 80 hw/kdrive/linux/mouse.c | 34 hw/kdrive/linux/ms.c | 13 hw/kdrive/linux/ps2.c | 13 hw/kdrive/linux/tslib.c | 1 hw/kdrive/src/Makefile.am | 8 hw/kdrive/src/kdrive.c | 96 hw/kdrive/src/kdrive.h | 6 hw/kdrive/src/kinfo.c | 4 hw/kdrive/src/kinput.c | 390 hw/vfb/InitOutput.c | 4 hw/xfree86/common/xf86.h | 13 hw/xfree86/common/xf86AutoConfig.c | 13 hw/xfree86/common/xf86Bus.c | 3 hw/xfree86/common/xf86Config.c | 35 hw/xfree86/common/xf86Cursor.c | 8 hw/xfree86/common/xf86Events.c | 114 hw/xfree86/common/xf86Globals.c | 3 hw/xfree86/common/xf86Helper.c | 94 hw/xfree86/common/xf86Init.c | 266 hw/xfree86/common/xf86Module.h | 9 hw/xfree86/common/xf86PM.c | 8 hw/xfree86/common/xf86Priv.h | 6 hw/xfree86/common/xf86Privstr.h | 17 hw/xfree86/common/xf86VGAarbiter.c | 12 hw/xfree86/common/xf86VGAarbiterPriv.h | 6 hw/xfree86/common/xf86Xinput.c | 159 hw/xfree86/common/xf86cmap.c | 62 hw/xfree86/common/xf86platformBus.c | 28 hw/xfree86/common/xf86str.h | 2 hw/xfree86/ddc/ddc.c | 2 hw/xfree86/ddc/ddcProperty.c | 55 hw/xfree86/ddc/edid.h | 1 hw/xfree86/dixmods/Makefile.am | 2 hw/xfree86/dixmods/glxmodule.c | 10 hw/xfree86/doc/Makefile.am | 1 hw/xfree86/doc/README.DRIcomp | 551 hw/xfree86/doc/ddxDesign.xml | 18 hw/xfree86/dri/dri.c | 171 hw/xfree86/dri/dri.h | 16 hw/xfree86/dri2/dri2.c | 8 hw/xfree86/dri2/pci_ids/radeonsi_pci_ids.h | 12 hw/xfree86/drivers/modesetting/Makefile.am | 1 hw/xfree86/drivers/modesetting/dri2.c | 323 hw/xfree86/drivers/modesetting/driver.c | 547 hw/xfree86/drivers/modesetting/driver.h | 26 hw/xfree86/drivers/modesetting/drmmode_display.c | 573 hw/xfree86/drivers/modesetting/drmmode_display.h | 55 hw/xfree86/drivers/modesetting/pageflip.c | 344 hw/xfree86/drivers/modesetting/present.c | 335 hw/xfree86/drivers/modesetting/vblank.c | 74 hw/xfree86/i2c/xf86i2c.c | 8 hw/xfree86/loader/loader.c | 1 hw/xfree86/loader/loadmod.c | 38 hw/xfree86/loader/os.c | 2 hw/xfree86/man/xorg.conf.man | 35 hw/xfree86/modes/xf86Crtc.c | 113 hw/xfree86/modes/xf86Crtc.h | 53 hw/xfree86/modes/xf86Cursors.c | 165 hw/xfree86/modes/xf86RandR12.c | 338 hw/xfree86/modes/xf86RandR12.h | 5 hw/xfree86/modes/xf86Rotate.c | 9 hw/xfree86/os-support/bsd/bsd_init.c | 2 hw/xfree86/os-support/bus/Sbus.c | 4 hw/xfree86/os-support/linux/lnx_init.c | 2 hw/xfree86/os-support/shared/VTsw_usl.c | 2 hw/xfree86/os-support/shared/posix_tty.c | 33 hw/xfree86/os-support/shared/sigio.c | 121 hw/xfree86/os-support/shared/sigiostubs.c | 23 hw/xfree86/os-support/solaris/sun_bell.c | 4 hw/xfree86/os-support/xf86_OSlib.h | 22 hw/xfree86/os-support/xf86_OSproc.h | 4 hw/xfree86/parser/DRI.c | 2 hw/xfree86/parser/Device.c | 3 hw/xfree86/parser/Extensions.c | 2 hw/xfree86/parser/Files.c | 2 hw/xfree86/parser/Flags.c | 2 hw/xfree86/parser/Input.c | 3 hw/xfree86/parser/InputClass.c | 95 hw/xfree86/parser/Layout.c | 4 hw/xfree86/parser/Module.c | 4 hw/xfree86/parser/Monitor.c | 8 hw/xfree86/parser/OutputClass.c | 3 hw/xfree86/parser/Pointer.c | 4 hw/xfree86/parser/Screen.c | 4 hw/xfree86/parser/Vendor.c | 4 hw/xfree86/parser/Video.c | 4 hw/xfree86/parser/configProcs.h | 6 hw/xfree86/parser/read.c | 2 hw/xfree86/parser/scan.c | 42 hw/xfree86/parser/write.c | 36 hw/xfree86/parser/xf86Parser.h | 2 hw/xfree86/parser/xf86tokens.h | 13 hw/xfree86/ramdac/xf86Cursor.c | 23 hw/xfree86/ramdac/xf86Cursor.h | 1 hw/xfree86/ramdac/xf86CursorPriv.h | 1 hw/xfree86/ramdac/xf86HWCurs.c | 125 hw/xfree86/sdksyms.sh | 1 hw/xfree86/utils/gtf/gtf.c | 2 hw/xfree86/vbe/vbe.c | 2 hw/xfree86/xorg-wrapper.c | 2 hw/xnest/Font.c | 7 hw/xnest/Handlers.c | 4 hw/xnest/Handlers.h | 5 hw/xnest/Init.c | 12 hw/xquartz/GL/glcontextmodes.c | 1 hw/xquartz/GL/indirect.c | 40 hw/xquartz/GL/visualConfigs.c | 1 hw/xquartz/X11Application.h | 3 hw/xquartz/X11Application.m | 64 hw/xquartz/darwin.c | 18 hw/xquartz/darwinEvents.c | 125 hw/xquartz/darwinXinput.c | 15 hw/xquartz/pbproxy/Makefile.am | 5 hw/xquartz/pbproxy/app-main.m | 3 hw/xquartz/pbproxy/main.m | 18 hw/xquartz/quartzCocoa.m | 8 hw/xquartz/quartzCommon.h | 5 hw/xquartz/quartzStartup.c | 9 hw/xwayland/.gitignore | 4 hw/xwayland/Makefile.am | 30 hw/xwayland/xwayland-cursor.c | 16 hw/xwayland/xwayland-glamor.c | 15 hw/xwayland/xwayland-input.c | 919 hw/xwayland/xwayland-output.c | 14 hw/xwayland/xwayland-shm.c | 46 hw/xwayland/xwayland.c | 176 hw/xwayland/xwayland.h | 53 hw/xwin/InitInput.c | 14 hw/xwin/InitOutput.c | 112 hw/xwin/Makefile.am | 16 hw/xwin/dri/Makefile.am | 9 hw/xwin/dri/windowsdri.c | 274 hw/xwin/dri/windowsdri.h | 30 hw/xwin/glx/Makefile.am | 7 hw/xwin/glx/dri_helpers.c | 120 hw/xwin/glx/dri_helpers.h | 38 hw/xwin/glx/indirect.c | 494 hw/xwin/glx/indirect.h | 95 hw/xwin/glx/winpriv.c | 7 hw/xwin/glx/winpriv.h | 1 hw/xwin/man/XWin.man | 10 hw/xwin/win.h | 39 hw/xwin/winallpriv.c | 7 hw/xwin/winauth.c | 25 hw/xwin/winblock.c | 5 hw/xwin/winconfig.c | 5 hw/xwin/wincreatewnd.c | 6 hw/xwin/winengine.c | 2 hw/xwin/winerror.c | 2 hw/xwin/winglobals.c | 1 hw/xwin/winglobals.h | 1 hw/xwin/winkeybd.c | 2 hw/xwin/winmsg.c | 33 hw/xwin/winmsg.h | 17 hw/xwin/winmultiwindowicons.c | 151 hw/xwin/winmultiwindowicons.h | 4 hw/xwin/winmultiwindowwindow.c | 56 hw/xwin/winmultiwindowwm.c | 1442 hw/xwin/winmultiwindowwndproc.c | 2 hw/xwin/winprefs.c | 30 hw/xwin/winprefs.h | 9 hw/xwin/winprocarg.c | 21 hw/xwin/winscrinit.c | 10 hw/xwin/winshadddnl.c | 6 hw/xwin/winshadgdi.c | 12 hw/xwin/wintaskbar.c | 2 hw/xwin/winvalargs.c | 19 hw/xwin/winwakeup.c | 3 hw/xwin/winwin32rootless.c | 68 hw/xwin/winwin32rootlesswindow.c | 15 hw/xwin/winwin32rootlesswndproc.c | 239 hw/xwin/winwindow.h | 26 hw/xwin/winwindowswm.c | 2 hw/xwin/winwndproc.c | 52 include/Makefile.am | 3 include/dix-config.h.in | 18 include/dix.h | 34 include/dixfont.h | 18 include/dixfontstr.h | 1 include/dixfontstubs.h | 43 include/dixstruct.h | 41 include/eventstr.h | 10 include/globals.h | 2 include/input.h | 25 include/inpututils.h | 4 include/misc.h | 3 include/os.h | 43 include/pixmap.h | 3 include/privates.h | 3 include/property.h | 9 include/protocol-versions.h | 5 include/scrnintstr.h | 73 include/xkbsrv.h | 6 include/xorg-config.h.in | 6 include/xserver_poll.h | 55 m4/ax_pthread.m4 | 337 mi/mieq.c | 163 mi/miglblt.c | 6 mi/mipointer.c | 48 mi/mipointer.h | 6 mi/mipointrst.h | 14 mi/misprite.c | 8 miext/damage/damage.c | 125 miext/rootless/rootlessScreen.c | 4 miext/shadow/shadow.c | 20 miext/shadow/shadow.h | 1 os/Makefile.am | 10 os/WaitFor.c | 434 os/access.c | 25 os/backtrace.c | 2 os/connection.c | 558 os/inputthread.c | 551 os/io.c | 143 os/osdep.h | 71 os/osinit.c | 26 os/ospoll.c | 477 os/ospoll.h | 142 os/rpcauth.c | 2 os/utils.c | 161 os/xdmauth.c | 2 os/xdmcp.c | 159 os/xserver_poll.c | 277 present/present.c | 18 present/present_event.c | 29 present/present_fake.c | 3 present/present_priv.h | 6 present/present_request.c | 2 present/present_screen.c | 6 randr/randr.c | 56 randr/randrstr.h | 25 randr/rrcrtc.c | 279 randr/rrmonitor.c | 17 randr/rroutput.c | 10 randr/rrprovider.c | 107 randr/rrscreen.c | 15 render/animcur.c | 57 render/render.c | 13 test/.gitignore | 2 test/Makefile.am | 44 test/ddxstubs.c | 16 test/os.c | 166 test/scripts/run-piglit.sh | 80 test/scripts/xephyr-glamor-piglit.sh | 16 test/scripts/xinit-piglit-session.sh | 44 test/scripts/xvfb-piglit.sh | 7 test/simple-xinit.c | 229 test/touch.c | 31 test/xi2/protocol-xiquerypointer.c | 1 xfixes/cursor.c | 1 xfixes/select.c | 1 xfixes/xfixes.c | 21 xkb/maprules.c | 2 xkb/xkbAccessX.c | 11 xkb/xkbActions.c | 176 xkb/xkbInit.c | 2 414 files changed, 12290 insertions(+), 177121 deletions(-)
New commits: commit 0e2ffa01ad2ae15ad65ccf82c68657157bb2fd91 Author: Timo Aaltonen <tjaal...@debian.org> Date: Tue Nov 8 16:14:27 2016 +0200 xmir.patch: Don't check for aiglx enable flag, dropped upstream. diff --git a/debian/changelog b/debian/changelog index 30de86b..5941a97 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,7 @@ xorg-server (2:1.18.99.902-1ubuntu1) UNRELEASED; urgency=medium to confflags. * 232-xf86compatoutput-valgrind.patch: This was added upstream already, no need to carry a duplicate check. + * xmir.patch: Don't check for aiglx enable flag, dropped upstream. -- Timo Aaltonen <tjaal...@debian.org> Tue, 08 Nov 2016 12:48:29 +0200 diff --git a/debian/patches/xmir.patch b/debian/patches/xmir.patch index e06948a..1d9aa40 100644 --- a/debian/patches/xmir.patch +++ b/debian/patches/xmir.patch @@ -134,7 +134,7 @@ Contributions from: +Xmir --- /dev/null +++ b/hw/xmir/Makefile.am -@@ -0,0 +1,61 @@ +@@ -0,0 +1,60 @@ +bin_PROGRAMS = Xmir + +if DRI2 @@ -187,12 +187,11 @@ Contributions from: +Xmir_LDADD += dri2/libdri2.la +endif + -+if AIGLX_DRI_LOADER +aiglx_lib = $(top_builddir)/glx/libglxdri.la ++ +if NO_UNDEFINED +aiglx_lib += $(LIBDRM_LIBS) $(PIXMAN_LIBS) +endif -+endif + +relink: + $(AM_V_at)rm -f Xmir$(EXEEXT) && $(MAKE) Xmir$(EXEEXT) commit 39ec4a042170454f637cc258c25dc914ca7cfb8f Author: Timo Aaltonen <tjaal...@debian.org> Date: Tue Nov 8 14:13:26 2016 +0200 232-xf86compatoutput-valgrind.patch: This was added upstream already, no need to carry a duplicate check. diff --git a/debian/changelog b/debian/changelog index ccce204..30de86b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,8 @@ xorg-server (2:1.18.99.902-1ubuntu1) UNRELEASED; urgency=medium anymore. * rules: Drop the workaround that adds lt_cv_prog_compiler_static_works=no to confflags. + * 232-xf86compatoutput-valgrind.patch: This was added upstream + already, no need to carry a duplicate check. -- Timo Aaltonen <tjaal...@debian.org> Tue, 08 Nov 2016 12:48:29 +0200 diff --git a/debian/patches/232-xf86compatoutput-valgrind.patch b/debian/patches/232-xf86compatoutput-valgrind.patch deleted file mode 100644 index 53c3971..0000000 --- a/debian/patches/232-xf86compatoutput-valgrind.patch +++ /dev/null @@ -1,14 +0,0 @@ -Description: Silence a valgrind error -Author: Maarten Lankhorst <maarten.lankho...@ubuntu.com> - ---- a/hw/xfree86/modes/xf86Crtc.h -+++ b/hw/xfree86/modes/xf86Crtc.h -@@ -761,6 +761,8 @@ static _X_INLINE xf86OutputPtr - xf86CompatOutput(ScrnInfoPtr pScrn) - { - xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn); -+ if (config->compat_output < 0) -+ return NULL; - - if (config->compat_output < 0) - return NULL; diff --git a/debian/patches/series b/debian/patches/series index 3f4b147..a111a0e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -17,7 +17,6 @@ 226_fall_back_to_autoconfiguration.patch ## send upstream -232-xf86compatoutput-valgrind.patch xfree86-no-xv-for-gpuscreens.patch no-nv.patch commit 8e05031b43ecafaa44886f1a1da67a2c989c912a Author: Timo Aaltonen <tjaal...@debian.org> Date: Tue Nov 8 14:08:16 2016 +0200 rules: Drop the workaround that adds lt_cv_prog_compiler_static_works=no to confflags. diff --git a/debian/changelog b/debian/changelog index 9c3055f..ccce204 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,6 +10,8 @@ xorg-server (2:1.18.99.902-1ubuntu1) UNRELEASED; urgency=medium the package as it wasn't used. * 111_armel-drv-fallbacks.patch: Dropped, we don't ship these drivers anymore. + * rules: Drop the workaround that adds lt_cv_prog_compiler_static_works=no + to confflags. -- Timo Aaltonen <tjaal...@debian.org> Tue, 08 Nov 2016 12:48:29 +0200 diff --git a/debian/rules b/debian/rules index 69cc1aa..e926305 100755 --- a/debian/rules +++ b/debian/rules @@ -118,9 +118,6 @@ SUPPORT = For technical support please see http://www.ubuntu.com/support SOURCE_NAME := xorg-server SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}') -# Add a workaround for LP: #1266492 -confflags += lt_cv_prog_compiler_static_works=no - # disable-static is so we don't get libfoo.a for modules. now if only we could # kill the .las. confflags += \ commit 955ec076adcbe4376c2ad2de0dad1e6e82e39260 Author: Timo Aaltonen <tjaal...@debian.org> Date: Tue Nov 8 13:49:34 2016 +0200 111_armel-drv-fallbacks.patch: Dropped, we don't ship these drivers anymore. diff --git a/debian/changelog b/debian/changelog index ac26cc4..9c3055f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ xorg-server (2:1.18.99.902-1ubuntu1) UNRELEASED; urgency=medium fix-detach-gpu.patch: Dropped, more or less obsolete * 190_cache-xkbcomp_output_for_fast_start_up.patch: Cleaned up from the package as it wasn't used. + * 111_armel-drv-fallbacks.patch: Dropped, we don't ship these drivers + anymore. -- Timo Aaltonen <tjaal...@debian.org> Tue, 08 Nov 2016 12:48:29 +0200 diff --git a/debian/patches/111_armel-drv-fallbacks.patch b/debian/patches/111_armel-drv-fallbacks.patch deleted file mode 100644 index 85a304b..0000000 --- a/debian/patches/111_armel-drv-fallbacks.patch +++ /dev/null @@ -1,70 +0,0 @@ -Description: Add support for armel driver fallbacks. -Bug-Ubuntu: https://launchpad.net/bugs/550701 - -Index: xorg-server-1.17.2/hw/xfree86/common/xf86AutoConfig.c -=================================================================== ---- xorg-server-1.17.2.orig/hw/xfree86/common/xf86AutoConfig.c -+++ xorg-server-1.17.2/hw/xfree86/common/xf86AutoConfig.c -@@ -45,6 +45,12 @@ - #include "xf86sbusBus.h" - #endif - -+#if defined(__arm__) && defined(__linux__) -+#include "loaderProcs.h" -+#include <sys/types.h> /* For opendir in test_sysfs_device */ -+#include <dirent.h> /* For opendir in test_sysfs_device */ -+#endif -+ - #ifdef __sun - #include <sys/visual_io.h> - #include <ctype.h> -@@ -200,6 +206,27 @@ xf86AutoConfig(void) - return ret == CONFIG_OK; - } - -+#if defined(__arm__) && defined(__linux__) -+static int -+test_sysfs_device(char *device_name, char *driver_name) -+{ -+ DIR *dir = opendir("/sys/devices/platform"); -+ struct dirent *current_dir; -+ int len = strlen(device_name); -+ -+ while (current_dir = readdir(dir)) { -+ if (strlen(current_dir->d_name) >= len && -+ strncmp(device_name, current_dir->d_name, len) == 0) -+ break; -+ } -+ closedir(dir); -+ if (!current_dir) -+ return 0; -+ -+ return 1; -+} -+#endif /* defined(__arm__) && defined(__linux__) */ -+ - static void - listPossibleVideoDrivers(char *matches[], int nmatches) - { -@@ -278,6 +305,21 @@ listPossibleVideoDrivers(char *matches[] - i += xf86PciMatchDriver(&matches[i], nmatches - i); - #endif - -+#if defined(__linux__) && defined(__arm__) -+ if (i < (nmatches - 1)) { -+ if (test_sysfs_device("mxc_gpu", "imx")) -+ matches[i++] = xnfstrdup("imx"); -+ else if (test_sysfs_device("dovefb", "dovefb")) -+ matches[i++] = xnfstrdup("dovefb"); -+ else if (test_sysfs_device("omapdrm", "omap")) -+ matches[i++] = xnfstrdup("omap"); -+ else if (test_sysfs_device("omapfb", "omapfb")) -+ matches[i++] = xnfstrdup("omapfb"); -+ else if (test_sysfs_device("omap", "pvr")) -+ matches[i++] = xnfstrdup("pvr"); -+ } -+#endif /* defined(__linux__) && defined(__arm__) */ -+ - #if defined(__linux__) - matches[i++] = xnfstrdup("modesetting"); - #endif diff --git a/debian/patches/series b/debian/patches/series index 6df1aa8..3f4b147 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -22,7 +22,6 @@ xfree86-no-xv-for-gpuscreens.patch no-nv.patch ## waiting for review by upstream -111_armel-drv-fallbacks.patch 122_xext_fix_card32_overflow_in_xauth.patch # https://bugs.freedesktop.org/show_bug.cgi?id=27134 # http://lists.x.org/archives/xorg-devel/2010-April/007777.html commit f7d0b4a280d233096fceb70377472129073df829 Author: Timo Aaltonen <tjaal...@debian.org> Date: Tue Nov 8 13:00:12 2016 +0200 190_cache-xkbcomp_output_for_fast_start_up.patch: Cleaned up from the package as it wasn't used. diff --git a/debian/changelog b/debian/changelog index fa8af61..ac26cc4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,8 @@ xorg-server (2:1.18.99.902-1ubuntu1) UNRELEASED; urgency=medium modesetting-unifdef-slave-support.diff: Dropped, upstream - config-add-no-removal.patch, xf86-inactive-gpuscreen.patch, fix-detach-gpu.patch: Dropped, more or less obsolete + * 190_cache-xkbcomp_output_for_fast_start_up.patch: Cleaned up from + the package as it wasn't used. -- Timo Aaltonen <tjaal...@debian.org> Tue, 08 Nov 2016 12:48:29 +0200 diff --git a/debian/patches/190_cache-xkbcomp_output_for_fast_start_up.patch b/debian/patches/190_cache-xkbcomp_output_for_fast_start_up.patch deleted file mode 100644 index be34def..0000000 --- a/debian/patches/190_cache-xkbcomp_output_for_fast_start_up.patch +++ /dev/null @@ -1,469 +0,0 @@ -Description: Causes the X Keyboard Compiler (xkbcomp) to create a cache file of the keyboard settings. - This will make the 2nd and later boots slightly faster. - TESTERS: Watch for issues relating to keyboard customizations not taking effect properly following boot. -Author: Bryce Harrington <br...@ubuntu.com> -Last-Update: 2013-09-19 - ---- a/configure.ac -+++ b/configure.ac -@@ -519,9 +519,9 @@ AC_MSG_RESULT([$FONTPATH]) - AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]), - [ XKBPATH="$withval" ], - [ XKBPATH="${datadir}/X11/xkb" ]) --AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]), -+AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${localstatedir}/cache/xkb)]), - [ XKBOUTPUT="$withval" ], -- [ XKBOUTPUT="compiled" ]) -+ [ XKBOUTPUT="${localstatedir}/cache/xkb" ]) - AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES], - [Keyboard ruleset (default: base/evdev)]), - [ XKB_DFLT_RULES="$withval" ], -@@ -1450,7 +1450,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, XKB_BIN - dnl Make sure XKM_OUTPUT_DIR is an absolute path - XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` - if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then -- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT" -+ AC_MSG_ERROR([xkb-output must be an absolute path.]) - fi - - dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed ---- a/xkb/README.compiled -+++ b/xkb/README.compiled -@@ -4,10 +4,10 @@ current keymap and/or any scratch keymap - or some other tool might destroy or replace the files in this directory, - so it is not a safe place to store compiled keymaps for long periods of - time. The default keymap for any server is usually stored in: -- X<num>-default.xkm --where <num> is the display number of the server in question, which makes --it possible for several servers *on the same host* to share the same --directory. -+ server-<SHA1>.xkm -+ -+where <SHA1> is the SHA1 hash of keymap source, so that compiled -+keymap of different keymap sources are stored in different files. - - Unless the X server is modified, sharing this directory between servers on - different hosts could cause problems. ---- a/xkb/ddxLoad.c -+++ b/xkb/ddxLoad.c -@@ -30,6 +30,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. - - #include <xkb-config.h> - -+#ifdef HAVE_SHA1_IN_LIBGCRYPT /* Use libgcrypt for SHA1 */ -+#include <gcrypt.h> -+#else /* Use OpenSSL's libcrypto */ -+#warning "xkbcomp caching support disabled" -+#endif -+ - #include <stdio.h> - #include <ctype.h> - #include <X11/X.h> -@@ -43,20 +49,9 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. - #define XKBSRV_NEED_FILE_FUNCS - #include <xkbsrv.h> - #include <X11/extensions/XI.h> -+#include <errno.h> - #include "xkb.h" - -- /* -- * If XKM_OUTPUT_DIR specifies a path without a leading slash, it is -- * relative to the top-level XKB configuration directory. -- * Making the server write to a subdirectory of that directory -- * requires some work in the general case (install procedure -- * has to create links to /var or somesuch on many machines), -- * so we just compile into /usr/tmp for now. -- */ --#ifndef XKM_OUTPUT_DIR --#define XKM_OUTPUT_DIR "compiled/" --#endif -- - #define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\"" - #define ERROR_PREFIX "\"> \"" - #define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\"" -@@ -69,28 +64,73 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. - #endif - - static unsigned --LoadXKM(unsigned want, unsigned need, const char *keymap, XkbDescPtr *xkbRtrn); -+LoadXKM(unsigned want, unsigned need, const char *keymap, XkbDescPtr *xkbRtrn, Bool is_private_directory); - - static void --OutputDirectory(char *outdir, size_t size) -+OutputDirectory(char *outdir, size_t size, Bool *is_private_directory) - { - #ifndef WIN32 - /* Can we write an xkm and then open it too? */ - if (access(XKM_OUTPUT_DIR, W_OK | X_OK) == 0 && - (strlen(XKM_OUTPUT_DIR) < size)) { - (void) strcpy(outdir, XKM_OUTPUT_DIR); -+ if (is_private_directory) -+ *is_private_directory = TRUE; - } - else - #else - if (strlen(Win32TempDir()) + 1 < size) { - (void) strcpy(outdir, Win32TempDir()); - (void) strcat(outdir, "\\"); -+ if (is_private_directory) -+ *is_private_directory = FALSE; - } - else - #endif - if (strlen("/tmp/") < size) { - (void) strcpy(outdir, "/tmp/"); -+ if (is_private_directory) -+ *is_private_directory = FALSE; -+ } -+} -+ -+#ifndef SHA_DIGEST_LENGTH -+#define SHA_DIGEST_LENGTH 20 -+#endif -+ -+static Bool -+Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH * 2 + 1], const char *input) -+{ -+ int i; -+ unsigned char sha1[SHA_DIGEST_LENGTH]; -+ -+#ifdef 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, input, strlen(input)); -+ memcpy(sha1, gcry_md_read(h, GCRY_MD_SHA1), 20); -+ gcry_md_close(h); -+#endif -+ -+ /* convert sha1 to sha1_asc */ -+ for (i = 0; i < SHA_DIGEST_LENGTH; ++i) { -+ sprintf(sha1Asc + i * 2, "%02X", sha1[i]); - } -+ -+ return Success; - } - - /** -@@ -103,10 +143,13 @@ typedef void (*xkbcomp_buffer_callback)( - * return a strdup'd copy of the file name we've written to. - */ - static char * --RunXkbComp(xkbcomp_buffer_callback callback, void *userdata) -+RunXkbComp(xkbcomp_buffer_callback callback, void *userdata, Bool *is_private_directory) - { - FILE *out; -- char *buf = NULL, keymap[PATH_MAX], xkm_output_dir[PATH_MAX]; -+ char *buf = NULL, xkmfile[PATH_MAX], xkm_output_dir[PATH_MAX]; -+ char *tmpXkmFile = NULL; -+ char *canonicalXkmFileName = NULL; -+ char sha1Asc[SHA_DIGEST_LENGTH * 2 + 1], xkbKeyMapBuf[100 * 1024]; - - const char *emptystring = ""; - char *xkbbasedirflag = NULL; -@@ -117,14 +160,64 @@ RunXkbComp(xkbcomp_buffer_callback callb - /* WIN32 has no popen. The input must be stored in a file which is - used as input for xkbcomp. xkbcomp does not read from stdin. */ - char tmpname[PATH_MAX]; -- const char *xkmfile = tmpname; -+ const char *xkbfile = tmpname; - #else -- const char *xkmfile = "-"; -+ const char *xkbfile = "-"; - #endif - -- snprintf(keymap, sizeof(keymap), "server-%s", display); -+ /* Write keymap source (xkbfile) to memory buffer `xkbKeyMapBuf', -+ of which SHA1 is generated and used as result xkm file name */ -+ memset(xkbKeyMapBuf, 0, sizeof(xkbKeyMapBuf)); -+ out = fmemopen(xkbKeyMapBuf, sizeof(xkbKeyMapBuf), "w"); -+ if (NULL == out) { -+ ErrorF("[xkb] Open xkbKeyMapBuf for writing failed\n"); -+ return NULL; -+ } -+ callback(out, userdata); -+ if (fclose(out) != 0) { -+ ErrorF -+ ("[xkb] callback error, perhaps xkbKeyMapBuf is too small\n"); -+ return NULL; -+ } -+#ifdef DEBUG -+ if (xkbDebugFlags) { -+ ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); -+ fputs(xkbKeyMapBuf, stderr); -+ } -+#endif - -- OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir)); -+ DebugF("[xkb] computing SHA1 of keymap\n"); -+ if (Success == Sha1Asc(sha1Asc, xkbKeyMapBuf)) { -+ snprintf(xkmfile, sizeof(xkmfile), "server-%s", sha1Asc); -+ } -+ else { -+ ErrorF("[xkb] Computing SHA1 of keymap failed, " -+ "using display name instead as xkm file name\n"); -+ snprintf(xkmfile, sizeof(xkmfile), "server-%s", display); -+ } -+ -+ OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir), is_private_directory); -+ /* set nameRtrn, fail if it's too small */ -+ if (strlen(xkmfile) + 1 > sizeof(xkmfile)) { -+ ErrorF("[xkb] nameRtrn too small to hold xkmfile name\n"); -+ return NULL; -+ } -+ -+ /* if the xkm file already exists, reuse it */ -+ if (asprintf(&canonicalXkmFileName, "%s%s.xkm", xkm_output_dir, xkmfile) == -1) -+ canonicalXkmFileName = NULL; -+ else if (*is_private_directory && -+ (access(canonicalXkmFileName, R_OK) == 0)) { -+ /* yes, we can reuse the old xkm file */ -+ LogMessage(X_INFO, "XKB: reuse xkmfile %s\n", canonicalXkmFileName); -+ return canonicalXkmFileName; -+ } -+ -+ LogMessage(X_INFO, "XKB: generating xkmfile %s\n", canonicalXkmFileName); -+ -+ /* continue to call xkbcomp to compile the keymap. to avoid race -+ condition, we compile it to a tmpfile then rename it to -+ xkmfile */ - - #ifdef WIN32 - strcpy(tmpname, Win32TempDir()); -@@ -148,15 +241,20 @@ RunXkbComp(xkbcomp_buffer_callback callb - } - } - -+ if ((tmpXkmFile = tempnam(xkm_output_dir, NULL)) == NULL) { -+ ErrorF("[xkb] Can't generate temp xkm file name"); -+ goto err; -+ } -+ - if (asprintf(&buf, - "\"%s%sxkbcomp\" -w %d %s -xkm \"%s\" " -- "-em1 %s -emp %s -eml %s \"%s%s.xkm\"", -+ "-em1 %s -emp %s -eml %s \"%s\"", - xkbbindir, xkbbindirsep, - ((xkbDebugFlags < 2) ? 1 : - ((xkbDebugFlags > 10) ? 10 : (int) xkbDebugFlags)), -- xkbbasedirflag ? xkbbasedirflag : "", xkmfile, -+ xkbbasedirflag ? xkbbasedirflag : "", xkbfile, - PRE_ERROR_MSG, ERROR_PREFIX, POST_ERROR_MSG1, -- xkm_output_dir, keymap) == -1) -+ tmpXkmFile) == -1) - buf = NULL; - - free(xkbbasedirflag); -@@ -164,9 +262,14 @@ RunXkbComp(xkbcomp_buffer_callback callb - if (!buf) { - LogMessage(X_ERROR, - "XKB: Could not invoke xkbcomp: not enough memory\n"); -- return NULL; -+ goto err; - } - -+ /* there's a potential race condition between calling tempnam() -+ and invoking xkbcomp to write the result file (potential temp -+ file name conflicts), but since xkbcomp is a standalone -+ program, we have to live with this */ -+ - #ifndef WIN32 - out = Popen(buf, "w"); - #else -@@ -175,7 +278,10 @@ RunXkbComp(xkbcomp_buffer_callback callb - - if (out != NULL) { - /* Now write to xkbcomp */ -- (*callback)(out, userdata); -+ if (EOF == fputs(xkbKeyMapBuf, out)) { -+ ErrorF("[xkb] Sending keymap to xkbcomp failed\n"); -+ goto err; -+ } - - #ifndef WIN32 - if (Pclose(out) == 0) -@@ -183,16 +289,31 @@ RunXkbComp(xkbcomp_buffer_callback callb - if (fclose(out) == 0 && System(buf) >= 0) - #endif - { -+ /* xkbcomp success */ - if (xkbDebugFlags) - DebugF("[xkb] xkb executes: %s\n", buf); -+ -+ /* if canonicalXkmFileName already exists now, we simply -+ overwrite it, this is OK */ -+ if (rename(tmpXkmFile, canonicalXkmFileName) < 0) { -+ ErrorF("[xkb] Can't rename %s to %s, error: %s\n", -+ tmpXkmFile, canonicalXkmFileName, strerror(errno)); -+ -+ /* in case of error, don't unlink tmpXkmFile, leave i -+ for debugging */ -+ -+ goto err; -+ } -+ - free(buf); -+ free(tmpXkmFile);