forked from pool/xorg-x11-server
Accepting request 36767 from X11:XOrg
Copy from X11:XOrg/xorg-x11-server based on submit request 36767 from user sndirsch OBS-URL: https://build.opensuse.org/request/show/36767 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=160
This commit is contained in:
commit
b2d2b1e674
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ef0b2e7bca72fcfad725526cc5c78bbff541fdd193e6c723de91004a41c16f36
|
||||
size 5091687
|
11
xorg-server-1.8.0.diff
Normal file
11
xorg-server-1.8.0.diff
Normal file
@ -0,0 +1,11 @@
|
||||
--- config/Makefile.am.orig 2010-04-02 11:56:16.000000000 +0200
|
||||
+++ config/Makefile.am 2010-04-02 11:56:49.000000000 +0200
|
||||
@@ -9,7 +9,7 @@
|
||||
libconfig_la_SOURCES += udev.c
|
||||
libconfig_la_LIBADD = $(UDEV_LIBS)
|
||||
|
||||
-xorgconfddir = $(prefix)/etc/X11/$(XF86CONFIGDIR)
|
||||
+xorgconfddir = $(sysconfdir)/X11/$(XF86CONFIGDIR)
|
||||
xorgconfd_DATA = 10-evdev.conf
|
||||
|
||||
else
|
3
xorg-server-1.8.0.tar.bz2
Normal file
3
xorg-server-1.8.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:423a8092e28affb83aa736695408e01fd4641040727f34ed6bcfae9c06018b77
|
||||
size 5097035
|
@ -1,123 +0,0 @@
|
||||
commit 4da6cffa8b6169595ea447cc53dfab857c04db04
|
||||
Author: h_root <root@hilbert.suse.de>
|
||||
Date: Thu Mar 25 18:32:04 2010 +0100
|
||||
|
||||
when doing driver autoconfiguration with some parts of the config
|
||||
file present but no driver set (e.g. only input configuration)
|
||||
fix the case that we may have multiple drivers to try.
|
||||
|
||||
create a screen section for each driver and let them be tried
|
||||
in a row
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86AutoConfig.c b/hw/xfree86/common/xf86AutoConfig.c
|
||||
index 7f4ada8..56f7deb 100644
|
||||
--- a/hw/xfree86/common/xf86AutoConfig.c
|
||||
+++ b/hw/xfree86/common/xf86AutoConfig.c
|
||||
@@ -546,10 +546,41 @@ chooseVideoDriver(void)
|
||||
return chosen_driver;
|
||||
}
|
||||
|
||||
+
|
||||
+/* copy a screen section and enter the desired driver
|
||||
+ * and insert it at i in the list of screens */
|
||||
+static Bool
|
||||
+copyScreen(confScreenPtr oscreen, GDevPtr odev, int i, char *driver)
|
||||
+{
|
||||
+ GDevPtr cptr = NULL;
|
||||
+
|
||||
+ xf86ConfigLayout.screens[i].screen = xnfcalloc(1, sizeof(confScreenRec));
|
||||
+ if(!xf86ConfigLayout.screens[i].screen)
|
||||
+ return FALSE;
|
||||
+ memcpy(xf86ConfigLayout.screens[i].screen, oscreen, sizeof(confScreenRec));
|
||||
+
|
||||
+ cptr = xcalloc(1, sizeof(GDevRec));
|
||||
+ if (!cptr)
|
||||
+ return FALSE;
|
||||
+ memcpy(cptr, odev, sizeof(GDevRec));
|
||||
+
|
||||
+ cptr->identifier = Xprintf("Autoconfigured Video Device %s", driver);
|
||||
+ cptr->driver = driver;
|
||||
+
|
||||
+ /* now associate the new driver entry with the new screen entry */
|
||||
+ xf86ConfigLayout.screens[i].screen->device = cptr;
|
||||
+ cptr->myScreenSection = xf86ConfigLayout.screens[i].screen;
|
||||
+
|
||||
+ return TRUE;
|
||||
+}
|
||||
+
|
||||
GDevPtr
|
||||
autoConfigDevice(GDevPtr preconf_device)
|
||||
{
|
||||
GDevPtr ptr = NULL;
|
||||
+ char *matches[20]; /* If we have more than 20 drivers we're in trouble */
|
||||
+ int num_matches = 0, num_screens = 0, i;
|
||||
+ screenLayoutPtr slp;
|
||||
|
||||
if (!xf86configptr) {
|
||||
return NULL;
|
||||
@@ -573,14 +604,59 @@ autoConfigDevice(GDevPtr preconf_device)
|
||||
ptr->driver = NULL;
|
||||
}
|
||||
if (!ptr->driver) {
|
||||
- ptr->driver = chooseVideoDriver();
|
||||
- }
|
||||
+ /* get all possible video drivers and count them */
|
||||
+ listPossibleVideoDrivers(matches, 20);
|
||||
+ for (; matches[num_matches]; num_matches++) {
|
||||
+ xf86Msg(X_DEFAULT, "Matched %s as autoconfigured driver %d\n",
|
||||
+ matches[num_matches], num_matches);
|
||||
+ }
|
||||
+
|
||||
+ slp = xf86ConfigLayout.screens;
|
||||
+ if (slp) {
|
||||
+ /* count the number of screens and make space for
|
||||
+ * a new screen for each additional possible driver
|
||||
+ * minus one for the already existing first one
|
||||
+ * plus one for the terminating NULL */
|
||||
+ for (; slp[num_screens].screen; num_screens++);
|
||||
+ xf86ConfigLayout.screens = xnfcalloc(num_screens + num_matches,
|
||||
+ sizeof(screenLayoutRec));
|
||||
+ xf86ConfigLayout.screens[0] = slp[0];
|
||||
+
|
||||
+ /* do the first match and set that for the original first screen */
|
||||
+ ptr->driver = matches[0];
|
||||
+ if (!xf86ConfigLayout.screens[0].screen->device) {
|
||||
+ xf86ConfigLayout.screens[0].screen->device = ptr;
|
||||
+ ptr->myScreenSection = xf86ConfigLayout.screens[0].screen;
|
||||
+ }
|
||||
+
|
||||
+ /* for each other driver found, copy the first screen, insert it
|
||||
+ * into the list of screens and set the driver */
|
||||
+ i = 0;
|
||||
+ while (i++ < num_matches) {
|
||||
+ if (!copyScreen(slp[0].screen, ptr, i, matches[i]))
|
||||
+ return NULL;
|
||||
+ }
|
||||
|
||||
- /* TODO Handle multiple screen sections */
|
||||
- if (xf86ConfigLayout.screens && !xf86ConfigLayout.screens->screen->device) {
|
||||
- xf86ConfigLayout.screens->screen->device = ptr;
|
||||
- ptr->myScreenSection = xf86ConfigLayout.screens->screen;
|
||||
+ /* shift the rest of the original screen list
|
||||
+ * to the end of the current screen list
|
||||
+ *
|
||||
+ * TODO Handle rest of multiple screen sections */
|
||||
+ for (i = 1; i < num_screens; i++) {
|
||||
+ xf86ConfigLayout.screens[i+num_matches] = slp[i];
|
||||
+ }
|
||||
+ xf86ConfigLayout.screens[num_screens+num_matches-1].screen = NULL;
|
||||
+ xfree(slp);
|
||||
+ } else {
|
||||
+ /* layout does not have any screens, not much to do */
|
||||
+ ptr->driver = matches[0];
|
||||
+ for (i = 1; matches[i] ; i++) {
|
||||
+ if (matches[i] != matches[0]) {
|
||||
+ xfree(matches[i]);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
+
|
||||
xf86Msg(X_DEFAULT, "Assigned the driver to the xf86ConfigLayout\n");
|
||||
|
||||
return ptr;
|
@ -134,8 +134,7 @@ Index: xorg-server-1.6.3.901/Makefile.am
|
||||
if XQUARTZ
|
||||
XQUARTZ_SUBDIRS = xquartz
|
||||
endif
|
||||
@@ -32,10 +36,11 @@
|
||||
$(XVFB_SUBDIRS) \
|
||||
@@ -33,8 +37,9 @@
|
||||
$(XNEST_SUBDIRS) \
|
||||
$(DMX_SUBDIRS) \
|
||||
+ $(VNC_SUBDIRS) \
|
||||
@ -146,7 +145,6 @@ Index: xorg-server-1.6.3.901/Makefile.am
|
||||
+DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive vnc
|
||||
|
||||
relink:
|
||||
for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink ; done
|
||||
--- xorg-server-1.7.99/hw/dmx/Makefile.am
|
||||
+++ xorg-server-1.7.99/hw/dmx/Makefile.am
|
||||
@@ -1,6 +1,6 @@
|
||||
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 2 11:33:28 CEST 2010 - sndirsch@suse.de
|
||||
|
||||
- update to 1.8
|
||||
- obsoletes xorg-server-walk_drivers.diff
|
||||
- adjusted xorg-server-xf4vnc.patch
|
||||
- xorg-server-1.8.0.diff
|
||||
* install evdev config file to the right directory
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 26 02:45:15 CET 2010 - sndirsch@suse.de
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package xorg-x11-server (Version 7.5_1.7.99.902)
|
||||
# spec file for package xorg-x11-server (Version 7.5_1.8.0)
|
||||
#
|
||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@ -20,7 +20,7 @@
|
||||
%define moblin 0
|
||||
|
||||
Name: xorg-x11-server
|
||||
%define dirsuffix 1.7.99.902
|
||||
%define dirsuffix 1.8.0
|
||||
%define fglrx_driver_hack 0
|
||||
### FIXME
|
||||
%define vnc 1
|
||||
@ -35,7 +35,7 @@ BuildRequires: libjpeg-devel
|
||||
Url: http://xorg.freedesktop.org/
|
||||
%define EXPERIMENTAL 0
|
||||
Version: 7.5_%{dirsuffix}
|
||||
Release: 2
|
||||
Release: 1
|
||||
License: GPLv2+ ; MIT License (or similar)
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Group: System/X11/Servers/XF86_4
|
||||
@ -106,7 +106,6 @@ Patch129: bug474071-fix1.diff
|
||||
Patch132: fixed-SYNC-extension-trigger-BlockHandler-test.diff
|
||||
Patch143: autoconfig_fallback_fbdev_first.diff
|
||||
Patch145: driver-autoconfig.diff
|
||||
Patch146: xorg-server-walk_drivers.diff
|
||||
Patch147: xserver-1.6.1-nouveau.patch
|
||||
# Moblin
|
||||
Patch162: cache-xkbcomp-output-for-fast-start-up.patch
|
||||
@ -126,6 +125,7 @@ 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
|
||||
Patch204: missing_font_paths.diff
|
||||
Patch205: xorg-server-1.8.0.diff
|
||||
|
||||
%description
|
||||
This package contains the X.Org Server.
|
||||
@ -229,7 +229,6 @@ popd
|
||||
%patch132 -p1
|
||||
%patch143 -p0
|
||||
%patch145 -p0
|
||||
%patch146 -p1
|
||||
%patch147 -p1
|
||||
%patch162 -p1
|
||||
%if %moblin
|
||||
@ -249,6 +248,7 @@ popd
|
||||
%patch202 -p1
|
||||
%patch203 -p1
|
||||
%patch204 -p0
|
||||
%patch205 -p0
|
||||
|
||||
%build
|
||||
pushd xorg-docs-*
|
||||
@ -553,6 +553,10 @@ exit 0
|
||||
%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
|
||||
|
||||
%files extra
|
||||
%defattr(-,root,root)
|
||||
|
Loading…
Reference in New Issue
Block a user