commit xorg-x11-server for openSUSE:Factory
Hello community, here is the log from the commit of package xorg-x11-server for openSUSE:Factory checked in at Tue Apr 13 21:08:36 CEST 2010. -------- --- xorg-x11-server/xorg-x11-server.changes 2010-04-08 11:50:14.000000000 +0200 +++ /mounts/work_src_done/STABLE/xorg-x11-server/xorg-x11-server.changes 2010-04-10 20:59:42.000000000 +0200 @@ -1,0 +2,34 @@ +Sat Apr 10 20:54:18 CEST 2010 - sndirsch@suse.de + +- specfile cleanup +- removed no longer useful xlog2xconf.sh + +------------------------------------------------------------------- +Sat Apr 10 12:26:46 CEST 2010 - sndirsch@suse.de + +- adjusted moblin-xserver-no-root-2.patch, renamed it to + xorg-server-nohwaccess.diff and enable it by default +- rename moblin-xorg-x11-nonroot-vesa.patch to + xorg-x11-nonroot-vesa.patch +- removed obsolete patch 'xserver-boottime.patch' + +------------------------------------------------------------------- +Thu Apr 8 13:42:43 UTC 2010 - eich@novell.com + +- Adapted and fixed 'noroot-background' patch originally coming from + the Moblin project and enable by default. + +------------------------------------------------------------------- +Thu Apr 8 12:20:38 UTC 2010 - eich@suse.de + +- On ia64 the Xserver brings its own PIO functions (inb, outb, ...). + These are supposed to overrule the ones provided by glibc. + Unfortunately this doesn't seem to work under all circumstances. + Therefore use inX/outX_ia64 and set appropriate defines. + +------------------------------------------------------------------- +Thu Apr 8 11:50:30 UTC 2010 - eich@suse.de + +- Fix SIG11 on VT switch when using SW cursor with RandR (bnc #592614). + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- moblin-xorg-x11-nonroot-vesa.patch moblin-xserver-no-root-2.patch xlog2xconf.sh xserver-1.5.0-bg-none-root.patch xserver-boottime.patch New: ---- pio_ia64.diff sw_cursor_on_randr.patch xorg-server-nohwaccess.diff xorg-x11-nonroot-vesa.patch xserver-bg-none-root.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-server.spec ++++++ --- /var/tmp/diff_new_pack.aFzTE1/_old 2010-04-13 21:08:10.000000000 +0200 +++ /var/tmp/diff_new_pack.aFzTE1/_new 2010-04-13 21:08:10.000000000 +0200 @@ -21,8 +21,6 @@ Name: xorg-x11-server %define dirsuffix 1.8.0 -%define fglrx_driver_hack 0 -### FIXME %define vnc 1 BuildRequires: Mesa-devel bison flex fontconfig-devel freetype2-devel ghostscript-library libdrm-devel libopenssl-devel pkgconfig xorg-x11 xorg-x11-devel xorg-x11-fonts-devel xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libXext-devel xorg-x11-libXfixes-devel xorg-x11-libXmu-devel xorg-x11-libXp-devel xorg-x11-libXpm-devel xorg-x11-libXprintUtil-devel xorg-x11-libXrender-devel xorg-x11-libXt-devel xorg-x11-libXv-devel xorg-x11-libfontenc-devel xorg-x11-libxkbfile-devel xorg-x11-proto-devel xorg-x11-xtrans-devel ### udev support (broken on openSUSE 11.2, see also bnc #589997) @@ -33,9 +31,8 @@ BuildRequires: libjpeg-devel %endif Url: http://xorg.freedesktop.org/ -%define EXPERIMENTAL 0 Version: 7.5_%{dirsuffix} -Release: 3 +Release: 4 License: GPLv2+ ; MIT License (or similar) BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/X11/Servers/XF86_4 @@ -43,27 +40,20 @@ PreReq: %fillup_prereq %endif Requires: pkgconfig xorg-x11-fonts-core xorg-x11 -%if %suse_version > 1010 %ifnarch s390 s390x Provides: VIDEO_ABI_VERSION = 7 Provides: INPUT_ABI_VERSION = 9 Requires: libpixman-1-0 >= 0.15.2 %endif -%endif Provides: xorg-x11-server-glx Obsoletes: xorg-x11-server-glx Summary: X.Org Server Source: xorg-server-%{dirsuffix}.tar.bz2 -%ifnarch s390 s390x Source1: sysconfig.displaymanager.template -%endif Source3: README.updates Source4: xorgcfg.tar.bz2 -%if %suse_version > 1010 Source5: modprobe.nvidia -%endif Source7: xorg-docs-1.4.tar.bz2 -Source8: xlog2xconf.sh Patch1: fpic.diff Patch2: p_default-module-path.diff Patch6: pu_fixes.diff @@ -107,20 +97,11 @@ Patch143: autoconfig_fallback_fbdev_first.diff Patch145: driver-autoconfig.diff Patch147: xserver-1.6.1-nouveau.patch -# Moblin Patch162: cache-xkbcomp-output-for-fast-start-up.patch -%if %moblin -Patch163: xserver-1.5.0-bg-none-root.patch -%endif +Patch163: xserver-bg-none-root.patch Patch164: xorg-detect-psb.patch -%if %moblin -Patch168: moblin-xserver-no-root-2.patch -%endif -Patch169: moblin-xorg-x11-nonroot-vesa.patch -%if %moblin -Patch170: xserver-boottime.patch -Patch171: moblin-use_preferred_mode_for_all_outputs.diff -%endif +Patch168: xorg-server-nohwaccess.diff +Patch169: xorg-x11-nonroot-vesa.patch Patch200: bug534768-prefer_local_symbols.patch Patch202: 0001-Check-harder-for-primary-PCI-device.patch Patch203: 0001-Fix-segfault-when-killing-X-with-ctrl-alt-backspace.patch @@ -129,6 +110,11 @@ Patch206: fix_fglrx_screendepth_issue.patch Patch207: xorg-server-option_libxf86config.diff Patch208: xorg-evdev-conf.diff +Patch209: sw_cursor_on_randr.patch +Patch210: pio_ia64.diff +%if %moblin +Patch300: moblin-use_preferred_mode_for_all_outputs.diff +%endif %description This package contains the X.Org Server. @@ -234,19 +220,10 @@ %patch145 -p0 %patch147 -p1 %patch162 -p1 -%if %moblin %patch163 -p1 -%endif %patch164 -p1 -%if %moblin %patch168 -p1 -%endif %patch169 -p1 -%if %moblin -%patch170 -p1 -%patch171 -p1 -%endif -# %patch200 -p1 %patch202 -p1 %patch203 -p1 @@ -255,76 +232,52 @@ %patch206 -p0 %patch207 -p0 %patch208 -p0 +%patch209 -p1 +%patch210 -p1 +%if %moblin +%patch300 -p1 +%endif %build pushd xorg-docs-* autoreconf -fi -export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" -%configure -make +%configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +%{__make} %{?jobs:-j%jobs} popd autoreconf -fi -# DRI2 disabled for Xserver 1.5 as libdrm 2.3.1 doesn't have the -# drmBO functionality. -./configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ -%if %fglrx_driver_hack - --with-release-major=7 \ - --with-release-minor=2 \ - --with-release-patch=0 \ - --with-release-snap=0 \ - --with-release-date="%(date)" \ - --with-release-version=7.2.0.0 \ -%endif -%if %vnc - --enable-vnc \ - --disable-xcliplist \ -%endif - --prefix=/usr \ +%configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ --sysconfdir=/etc \ - --libdir=%{_libdir} \ - --mandir=%{_mandir} \ --enable-builddocs \ --enable-install-libxf86config \ -%ifarch %EXPERIMENTAL - --enable-glx-tls \ - --enable-multibuffer \ -%endif -%ifarch s390 s390x - --disable-aiglx \ -%else - --enable-aiglx \ -%endif - --enable-lbx \ --enable-xdmcp \ --enable-xdm-auth-1 \ --enable-dri \ --enable-dri2 \ -%ifarch s390 s390x - --disable-xorg \ -%else - --enable-xorg \ -%endif --disable-dmx \ --enable-xnest \ --enable-kdrive \ --enable-xephyr \ - --disable-xsdl \ - --enable-xprint \ - --disable-kbd_mode \ - --disable-xprint \ --enable-record \ --enable-xcsecurity \ +%ifarch s390 s390x + --disable-xorg \ + --disable-aiglx \ +%else + --enable-xorg \ %if %suse_version > 1120 --enable-config-udev \ %endif +%endif +%if %vnc + --disable-xcliplist \ +%endif --with-log-dir="/var/log" \ --with-os-name="openSUSE" \ --with-os-vendor="SUSE LINUX" \ --with-fontrootdir="/usr/share/fonts" \ --with-xkb-path="/usr/share/X11/xkb" \ --with-xkb-output="/var/lib/xkb/compiled" -#make %{?jobs:-j %jobs} -make V=1 +make %{?jobs:-j %jobs} make -C hw/kdrive %{?jobs:-j %jobs} %install @@ -337,36 +290,16 @@ xargs rm install -m 644 hw/xfree86/parser/{xf86Parser.h,xf86Optrec.h} \ $RPM_BUILD_ROOT/usr/include/xorg -# add compatibility symlinks for SUSE <= 10.1 -%if %suse_version <= 1010 -mkdir -p $RPM_BUILD_ROOT/usr/X11R6/bin -ln -snf ../../bin/X $RPM_BUILD_ROOT/usr/X11R6/bin/X -ln -snf ../../bin/Xorg $RPM_BUILD_ROOT/usr/X11R6/bin/Xorg -%endif chmod u+s $RPM_BUILD_ROOT/usr/bin/Xorg mkdir -p $RPM_BUILD_ROOT/var/lib/X11 ln -snf ../../../usr/bin/Xorg $RPM_BUILD_ROOT/var/lib/X11/X ln -snf ../../var/lib/X11/X $RPM_BUILD_ROOT/usr/bin/X mkdir -p $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/updates/{fonts,input,linux,drivers,multimedia,extensions} install -m 644 $RPM_SOURCE_DIR/README.updates $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/updates -%if %suse_version <= 1010 -mkdir -p $RPM_BUILD_ROOT/etc/permissions.d -cat > $RPM_BUILD_ROOT/etc/permissions.d/xorg-x11-server.easy << EOF -/usr/bin/Xorg root:root 4711 -EOF -cat > $RPM_BUILD_ROOT/etc/permissions.d/xorg-x11-server.paranoid << EOF -/usr/bin/Xorg root:root 0711 -EOF -cat > $RPM_BUILD_ROOT/etc/permissions.d/xorg-x11-server.secure << EOF -/usr/bin/Xorg root:root 0711 -EOF -%endif -%else -rm -f $RPM_BUILD_ROOT/usr/share/aclocal/*.m4 -%endif -%if %suse_version > 1010 mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d install -m 644 $RPM_SOURCE_DIR/modprobe.nvidia $RPM_BUILD_ROOT/etc/modprobe.d/50-nvidia.conf +%else +rm -f $RPM_BUILD_ROOT/usr/share/aclocal/*.m4 %endif %if %vnc mkdir -p $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services @@ -377,10 +310,10 @@ EOF %endif %ifarch s390 s390x -rm $RPM_BUILD_ROOT/usr/%{_lib}/pkgconfig/*.pc +rm $RPM_BUILD_ROOT/etc/X11/10-evdev.conf make -C hw/xfree86/parser mkdir -p $RPM_BUILD_ROOT/usr/include/xorg \ - $RPM_BUILD_ROOT//usr/%{_lib} + $RPM_BUILD_ROOT/usr/%{_lib} install -m 644 hw/xfree86/parser/{xf86Parser.h,xf86Optrec.h} \ $RPM_BUILD_ROOT/usr/include/xorg install -m 644 hw/xfree86/parser/libxf86config.a \ @@ -391,7 +324,6 @@ install -m 644 %_sourcedir/sysconfig.displaymanager.template \ %buildroot/var/adm/fillup-templates/sysconfig.displaymanager-%name %endif -install -m 755 %_sourcedir/xlog2xconf.sh %buildroot/usr/bin/xlog2xconf %clean rm -rf "$RPM_BUILD_ROOT" @@ -400,66 +332,11 @@ %verify_permissions -e /usr/bin/Xorg %endif -%pre -test -L usr/lib/X11 && rm usr/lib/X11 -rm -rf etc/X11/xserver/ -exit 0 - %post %ifnarch s390 s390x %{fillup_only -an displaymanager} %run_permissions -rm -f var/log/XFree86.*.log* -# SaX2 writes xorg.conf since SuSE 9.3 -# - create backup of XF86Config -# - copy XF86Config to xorg.conf -# - set XF86Config symlink to xorg.conf -pushd etc/X11 &> /dev/null - # get rid of symlinks - for file in xorg.conf XF86Config; do - if [ -L $file ]; then - symlink=$file - while test -L $symlink; do - tmp=$(readlink $symlink) - rm -f $symlink - symlink=$tmp - done - mv $symlink $file - fi - done - if [ ! -f xorg.conf -a -f XF86Config ]; then - cp XF86Config xorg.conf - fi - if [ -f xorg.conf ]; then - #test -f XF86Config && old XF86Config - ln -snf xorg.conf XF86Config - fi -popd &> /dev/null if [ -f etc/X11/xorg.conf ]; then - # SuSE 10.1 --> SuSE 10.2: X11 fonts have moved to /usr/share/fonts - # SuSE 10.1 --> SuSE 10.2: radeonold --> radeon - # openSUSE 11.0 --> openSUSE 11.1: i810 --> intel (Bug #448458) - if grep -q -e /usr/X11R6/lib/X11/fonts/ \ - -e /usr/X11/lib/X11/fonts/ \ - -e /usr/lib/X11/fonts/ \ - etc/X11/xorg.conf; then - sed -i.post_xorg-x11-server \ - -e 's+/usr/X11R6/lib/X11/fonts/+/usr/share/fonts/+g' \ - -e 's+/usr/X11/lib/X11/fonts/+/usr/share/fonts/+g' \ - -e 's+/usr/lib/X11/fonts/+/usr/share/fonts/+g' \ - etc/X11/xorg.conf - fi - if grep -q \"radeonold\" etc/X11/xorg.conf; then - # only switch to radeon if radeonold is no longer available (Bug #355009) - if test ! -f /usr/%{_lib}/xorg/modules/drivers/radeonold_drv.so; then - sed -i.post_xorg-x11-server -e 's/\"radeonold\"/\"radeon\"/g' \ - etc/X11/xorg.conf - fi - fi - if grep -q \"i810\" etc/X11/xorg.conf; then - sed -i.post_xorg-x11-server -e 's/\"i810\"/\"intel\"/g' \ - etc/X11/xorg.conf - fi # Document how to restore previous input driver behaviour in xorg.conf files created # on openSUSE <= 11.1 if ! grep -q "will be disabled unless 'Option \"AutoAddDevices\" \"off\"'" etc/X11/xorg.conf; then @@ -478,97 +355,49 @@ fi fi %endif -# Installation of init script seems to be disabled by default -# Create symbolic run level links for xprint start script -if false; then - %{fillup_and_insserv -p xprint} -fi -exit 0 - -%preun -# Installation of init script seems to be disabled by default -if false; then - %stop_on_removal xprint -fi -exit 0 - -%postun -# installation of init script seems to be disabled by default -# Rearrange run level symlinks after removing the xprint init script -if false; then - %{insserv_cleanup} -fi -exit 0 - -%pre sdk -test -L usr/include/X11 && rm usr/include/X11 exit 0 %files %defattr(-,root,root) -%if %suse_version > 1010 -%dir /etc/modprobe.d -/etc/modprobe.d/50-nvidia.conf -%endif -#%ifarch ppc64 x86_64 -#%dir /usr/%{_lib}/X11 -#%endif -%dir /usr/%{_lib}/xorg %ifnarch s390 s390x +%if %suse_version > 1120 +%dir /etc/X11/xorg.conf.d +%endif +%dir /etc/modprobe.d %dir /var/lib/X11 %endif %dir /var/lib/xkb %dir /var/lib/xkb/compiled -%ifnarch s390 s390x -%if %suse_version <= 1010 -/etc/permissions.d/%name.* -%endif -%if %suse_version <= 1010 -/usr/X11R6/bin/X -/usr/X11R6/bin/Xorg -%endif -/usr/bin/X -%endif -%ifnarch s390 s390x -%verify(not mode) /usr/bin/Xorg -/usr/bin/xlog2xconf -%endif -%ifnarch s390 s390x -/usr/bin/cvt -%endif -%ifnarch s390 s390x -/usr/bin/gtf -%endif -%ifnarch s390 s390x -#/usr/%{_lib}/X11/* -/usr/%{_lib}/xorg/modules/ -%{_mandir}/man4/* -%endif +%dir /usr/%{_lib}/xorg /usr/%{_lib}/xorg/protocol.txt %{_mandir}/man1/* +%exclude %{_mandir}/man1/Xephyr.1* %exclude %{_mandir}/man1/Xnest.1* %exclude %{_mandir}/man1/Xvfb.1* -%ifnarch s390 s390x -%{_mandir}/man5/* -%endif %{_mandir}/man7/* -%ifnarch s390 s390x -/var/lib/X11/X -%endif /var/lib/xkb/compiled/README.compiled %ifnarch s390 s390x -/var/adm/fillup-templates/sysconfig.displaymanager-%name -%endif %if %suse_version > 1120 -%dir /etc/X11/xorg.conf.d /etc/X11/xorg.conf.d/10-evdev.conf %endif +/etc/modprobe.d/50-nvidia.conf +%verify(not mode) /usr/bin/Xorg +/usr/bin/X +/usr/bin/cvt +/usr/bin/gtf +/usr/%{_lib}/xorg/modules/ +%{_mandir}/man4/* +%{_mandir}/man5/* +/var/adm/fillup-templates/sysconfig.displaymanager-%name +/var/lib/X11/X +%endif %files extra %defattr(-,root,root) /usr/bin/Xephyr /usr/bin/Xnest /usr/bin/Xvfb +%{_mandir}/man1/Xephyr.1* %{_mandir}/man1/Xnest.1* %{_mandir}/man1/Xvfb.1* ++++++ pio_ia64.diff ++++++ Index: xorg-server-1.8.0/hw/xfree86/common/compiler.h =================================================================== --- xorg-server-1.8.0.orig/hw/xfree86/common/compiler.h +++ xorg-server-1.8.0/hw/xfree86/common/compiler.h @@ -409,12 +409,18 @@ extern _X_EXPORT unsigned int inl(unsign # undef inb # undef inw # undef inl -extern _X_EXPORT void outb(unsigned long port, unsigned char val); -extern _X_EXPORT void outw(unsigned long port, unsigned short val); -extern _X_EXPORT void outl(unsigned long port, unsigned int val); -extern _X_EXPORT unsigned int inb(unsigned long port); -extern _X_EXPORT unsigned int inw(unsigned long port); -extern _X_EXPORT unsigned int inl(unsigned long port); +#define outb(p,v) outb_ia64(p,v) +#define outw(p,v) outw_ia64(p,v) +#define outl(p,v) outl_ia64(p,v) +#define inb(p) inb_ia64(p) +#define inw(p) inw_ia64(p) +#define inl(p) inl_ia64(p) +extern _X_EXPORT void outb_ia64(unsigned long port, unsigned char val); +extern _X_EXPORT void outw_ia64(unsigned long port, unsigned short val); +extern _X_EXPORT void outl_ia64(unsigned long port, unsigned int val); +extern _X_EXPORT unsigned int inb_ia64(unsigned long port); +extern _X_EXPORT unsigned int inw_ia64(unsigned long port); +extern _X_EXPORT unsigned int inl_ia64(unsigned long port); # elif (defined(linux) || defined(__FreeBSD__)) && defined(__amd64__) Index: xorg-server-1.8.0/hw/xfree86/os-support/shared/ia64Pci.c =================================================================== --- xorg-server-1.8.0.orig/hw/xfree86/os-support/shared/ia64Pci.c +++ xorg-server-1.8.0/hw/xfree86/os-support/shared/ia64Pci.c @@ -60,7 +60,7 @@ static int ia64_port_to_fd(unsigned long return (port >> 24) & 0xffffffff; } -void outb(unsigned long port, unsigned char val) +void outb_ia64(unsigned long port, unsigned char val) { int fd = ia64_port_to_fd(port); @@ -80,7 +80,7 @@ void outb(unsigned long port, unsigned c return; } -void outw(unsigned long port, unsigned short val) +void outw_ia64(unsigned long port, unsigned short val) { int fd = ia64_port_to_fd(port); @@ -100,7 +100,7 @@ void outw(unsigned long port, unsigned s return; } -void outl(unsigned long port, unsigned int val) +void outl_ia64(unsigned long port, unsigned int val) { int fd = ia64_port_to_fd(port); @@ -120,7 +120,7 @@ void outl(unsigned long port, unsigned i return; } -unsigned int inb(unsigned long port) +unsigned int inb_ia64(unsigned long port) { int fd = ia64_port_to_fd(port); unsigned char val; @@ -142,7 +142,7 @@ unsigned int inb(unsigned long port) return val; } -unsigned int inw(unsigned long port) +unsigned int inw_ia64(unsigned long port) { int fd = ia64_port_to_fd(port); unsigned short val; @@ -164,7 +164,7 @@ unsigned int inw(unsigned long port) return val; } -unsigned int inl(unsigned long port) +unsigned int inl_ia64(unsigned long port) { int fd = ia64_port_to_fd(port); unsigned int val; ++++++ sw_cursor_on_randr.patch ++++++ Index: xorg-server-1.8.0/hw/xfree86/modes/xf86Cursors.c =================================================================== --- xorg-server-1.8.0.orig/hw/xfree86/modes/xf86Cursors.c +++ xorg-server-1.8.0/hw/xfree86/modes/xf86Cursors.c @@ -611,7 +611,7 @@ xf86_reload_cursors (ScreenPtr screen) cursor_screen_priv = dixLookupPrivate(&screen->devPrivates, xf86CursorScreenKey); /* return if HW cursor is inactive, to avoid displaying two cursors */ - if (!cursor_screen_priv->isUp) + if (!cursor_screen_priv || !cursor_screen_priv->isUp) return; scrn = xf86Screens[screen->myNum]; ++++++ xorg-server-nohwaccess.diff ++++++ Index: xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_init.c =================================================================== --- xorg-server-1.6.3.orig/hw/xfree86/os-support/linux/lnx_init.c +++ xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_init.c @@ -49,6 +49,7 @@ static Bool KeepTty = FALSE; static int VTnum = -1; static Bool VTSwitch = TRUE; static Bool ShareVTs = FALSE; +Bool NoHwAccess = FALSE; static int activeVT = -1; static int vtPermSave[4]; @@ -434,6 +439,11 @@ xf86ProcessArgument(int argc, char *argv ShareVTs = TRUE; return(1); } + if (!strcmp(argv[i], "-nohwaccess")) + { + NoHwAccess = TRUE; + return(1); + } if ((argv[i][0] == 'v') && (argv[i][1] == 't')) { if (sscanf(argv[i], "vt%2d", &VTnum) == 0) @@ -455,4 +465,5 @@ xf86UseMsg() ErrorF("don't detach controlling tty (for debugging only)\n"); ErrorF("-novtswitch don't immediately switch to new VT\n"); ErrorF("-sharevts share VTs with another X server\n"); + ErrorF("-nohwaccess don't access hardware ports directly\n"); } Index: xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_video.c =================================================================== --- xorg-server-1.6.3.orig/hw/xfree86/os-support/linux/lnx_video.c +++ xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_video.c @@ -51,6 +51,7 @@ #define MAP_FAILED ((void *)-1) #endif +extern Bool NoHwAccess; static Bool ExtendedEnabled = FALSE; #ifdef __ia64__ @@ -509,6 +510,9 @@ xf86EnableIO(void) int fd; unsigned int ioBase_phys; #endif + /* Fake it... */ + if (NoHwAccess) + return TRUE; if (ExtendedEnabled) return TRUE; ++++++ xorg-x11-nonroot-vesa.patch ++++++ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86AutoConfig.c ================================================================================ --- xorg-server-1.7.99/hw/xfree86/common/xf86AutoConfig.c +++ xorg-server-1.7.99/hw/xfree86/common/xf86AutoConfig.c @@ -535,7 +535,8 @@ #if !defined(__linux__) && defined(__sparc__) matches[i++] = xnfstrdup("wsfb"); #else - matches[i++] = xnfstrdup("vesa"); + if (geteuid() == 0) + matches[i++] = xnfstrdup("vesa"); #endif } } ++++++ xserver-bg-none-root.patch ++++++
From a3e15680da24cb8259f6a83dee0c930dab024290 Mon Sep 17 00:00:00 2001 From: Kristian
Date: Fri, 15 Aug 2008 15:15:14 +1000 Subject: [PATCH] Add nr for background=none root
--- dix/globals.c | 1 + dix/window.c | 22 ++++++++++++---------- hw/xfree86/common/xf86Init.c | 11 +++++++++++ hw/xfree86/common/xf86str.h | 5 ++++- include/opaque.h | 1 + os/utils.c | 3 +++ 6 files changed, 32 insertions(+), 11 deletions(-) Index: xorg-server-1.8.0/dix/globals.c =================================================================== --- xorg-server-1.8.0.orig/dix/globals.c +++ xorg-server-1.8.0/dix/globals.c @@ -124,6 +124,7 @@ FontPtr defaultFont; /* not declared i CursorPtr rootCursor; Bool party_like_its_1989 = FALSE; Bool whiteRoot = FALSE; +Bool bgNoneRoot = FALSE; int cursorScreenDevPriv[MAXSCREENS]; Index: xorg-server-1.8.0/dix/window.c =================================================================== --- xorg-server-1.8.0.orig/dix/window.c +++ xorg-server-1.8.0/dix/window.c @@ -465,23 +465,24 @@ InitRootWindow(WindowPtr pWin) pWin->cursorIsNone = FALSE; pWin->optional->cursor = rootCursor; rootCursor->refcnt++; - + pWin->backingStore = defaultBackingStore; + pWin->forcedBS = (defaultBackingStore != NotUseful); if (party_like_its_1989) { MakeRootTile(pWin); backFlag |= CWBackPixmap; + pScreen->ChangeWindowAttributes(pWin, backFlag); + } else if (bgNoneRoot) { + /* nothing, handled in xf86CreateRootWindow */ } else { if (whiteRoot) pWin->background.pixel = pScreen->whitePixel; else pWin->background.pixel = pScreen->blackPixel; backFlag |= CWBackPixel; - } - pWin->backingStore = defaultBackingStore; - pWin->forcedBS = (defaultBackingStore != NotUseful); - /* We SHOULD check for an error value here XXX */ - (*pScreen->ChangeWindowAttributes)(pWin, backFlag); + pScreen->ChangeWindowAttributes(pWin, backFlag); + } MapWindow(pWin, serverClient); } Index: xorg-server-1.8.0/hw/xfree86/common/xf86Init.c =================================================================== --- xorg-server-1.8.0.orig/hw/xfree86/common/xf86Init.c +++ xorg-server-1.8.0/hw/xfree86/common/xf86Init.c @@ -77,6 +77,7 @@ #ifdef RENDER #include "picturestr.h" #endif +#include "xace.h" #include "xf86VGAarbiter.h" #include "globals.h" @@ -256,6 +257,7 @@ xf86CreateRootWindow(WindowPtr pWin) int ret = TRUE; int err = Success; ScreenPtr pScreen = pWin->drawable.pScreen; + ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; RootWinPropPtr pProp; CreateWindowProcPtr CreateWindow = (CreateWindowProcPtr) dixLookupPrivate(&pScreen->devPrivates, xf86CreateRootWindowKey); @@ -306,6 +308,16 @@ xf86CreateRootWindow(WindowPtr pWin) ret = FALSE; } } + if (bgNoneRoot) { + if (pScrn->canDoBGNoneRoot) { + pWin->backgroundState = XaceBackgroundNoneState(pWin); + pWin->background.pixel = pScreen->whitePixel; + pScreen->ChangeWindowAttributes(pWin, CWBackPixmap | CWBorderPixel | CWCursor | CWBackingStore); + } else { + pWin->background.pixel = pScreen->blackPixel; + pScreen->ChangeWindowAttributes(pWin, CWBackPixel | CWBorderPixel | CWCursor | CWBackingStore); + } + } DebugF("xf86CreateRootWindow() returns %d\n", ret); return (ret); Index: xorg-server-1.8.0/hw/xfree86/common/xf86str.h =================================================================== --- xorg-server-1.8.0.orig/hw/xfree86/common/xf86str.h +++ xorg-server-1.8.0/hw/xfree86/common/xf86str.h @@ -503,7 +503,7 @@ typedef struct _confdrirec { } confDRIRec, *confDRIPtr; /* These values should be adjusted when new fields are added to ScrnInfoRec */ -#define NUM_RESERVED_INTS 16 +#define NUM_RESERVED_INTS 15 #define NUM_RESERVED_POINTERS 14 #define NUM_RESERVED_FUNCS 11 @@ -775,6 +775,9 @@ typedef struct _ScrnInfoRec { ClockRangePtr clockRanges; int adjustFlags; + /* -nr support */ + int canDoBGNoneRoot; + /* * These can be used when the minor ABI version is incremented. * The NUM_* parameters must be reduced appropriately to keep the Index: xorg-server-1.8.0/include/opaque.h =================================================================== --- xorg-server-1.8.0.orig/include/opaque.h +++ xorg-server-1.8.0/include/opaque.h @@ -71,6 +71,7 @@ extern _X_EXPORT Bool defeatAccessContro extern _X_EXPORT long maxBigRequestSize; extern _X_EXPORT Bool party_like_its_1989; extern _X_EXPORT Bool whiteRoot; +extern _X_EXPORT Bool bgNoneRoot; extern _X_EXPORT Bool CoreDump; Index: xorg-server-1.8.0/os/utils.c =================================================================== --- xorg-server-1.8.0.orig/os/utils.c +++ xorg-server-1.8.0/os/utils.c @@ -511,6 +511,7 @@ void UseMsg(void) #endif ErrorF("-nolisten string don't listen on protocol\n"); ErrorF("-noreset don't reset after last client exists\n"); + ErrorF("-nr create root window with no background\n"); ErrorF("-reset reset after last client exists\n"); ErrorF("-p # screen-saver pattern duration (minutes)\n"); ErrorF("-pn accept failure to listen on all ports\n"); @@ -852,6 +853,8 @@ ProcessCommandLine(int argc, char *argv[ defaultBackingStore = WhenMapped; else if ( strcmp( argv[i], "-wr") == 0) whiteRoot = TRUE; + else if ( strcmp( argv[i], "-nr") == 0) + bgNoneRoot = TRUE; else if ( strcmp( argv[i], "-maxbigreqsize") == 0) { if(++i < argc) { long reqSizeArg = atol(argv[i]); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de