forked from pool/xorg-x11-server
This commit is contained in:
parent
008c66fbe7
commit
1edb41d659
46
ia64Pci.h
Normal file
46
ia64Pci.h
Normal file
@ -0,0 +1,46 @@
|
||||
/*
|
||||
* Copyright 2004, Egbert Eich
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* EGBERT EICH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON-
|
||||
* NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Except as contained in this notice, the name of Egbert Eich shall not
|
||||
* be used in advertising or otherwise to promote the sale, use or other deal-
|
||||
*ings in this Software without prior written authorization from Egbert Eich.
|
||||
*
|
||||
*/
|
||||
#ifdef HAVE_XORG_CONFIG_H
|
||||
#include <xorg-config.h>
|
||||
#endif
|
||||
|
||||
#ifndef _IA64_PCI_H
|
||||
# define _IA64_PCI_H
|
||||
|
||||
#include "Pci.h"
|
||||
|
||||
typedef enum {
|
||||
NONE_CHIPSET,
|
||||
I460GX_CHIPSET,
|
||||
E8870_CHIPSET,
|
||||
ZX1_CHIPSET,
|
||||
ALTIX_CHIPSET
|
||||
} IA64Chipset;
|
||||
|
||||
# ifdef OS_PROBE_PCI_CHIPSET
|
||||
extern IA64Chipset OS_PROBE_PCI_CHIPSET(scanpciWrapperOpt flags);
|
||||
# endif
|
||||
#endif
|
@ -1,7 +1,7 @@
|
||||
--- hw/xfree86/os-support/bus/linuxPci.c
|
||||
+++ hw/xfree86/os-support/bus/linuxPci.c
|
||||
@@ -550,7 +550,7 @@ xf86GetPciDomain(PCITAG Tag)
|
||||
return result;
|
||||
--- hw/xfree86/os-support/bus/linuxPci.c.orig 2007-08-23 21:04:53.000000000 +0200
|
||||
+++ hw/xfree86/os-support/bus/linuxPci.c 2007-10-03 13:31:32.647167750 +0200
|
||||
@@ -547,7 +547,7 @@ xf86GetPciDomain(PCITAG Tag)
|
||||
return result + 1;
|
||||
|
||||
if (!pPCI || pPCI->fakeDevice)
|
||||
- return 1; /* Domain 0 is reserved */
|
||||
@ -9,7 +9,7 @@
|
||||
|
||||
if ((fd = linuxPciOpenFile(pPCI ? pPCI->tag : 0,FALSE)) < 0)
|
||||
return 0;
|
||||
@@ -558,7 +558,7 @@ xf86GetPciDomain(PCITAG Tag)
|
||||
@@ -555,7 +555,7 @@ xf86GetPciDomain(PCITAG Tag)
|
||||
if ((result = ioctl(fd, PCIIOC_CONTROLLER, 0)) < 0)
|
||||
return 0;
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
}
|
||||
|
||||
static pointer
|
||||
@@ -628,7 +628,7 @@ linuxMapPci(int ScreenNum, int Flags, PC
|
||||
@@ -626,7 +626,7 @@ linuxMapPci(int ScreenNum, int Flags, PC
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
static pointer DomainMmappedIO[MAX_DOMAINS];
|
||||
|
||||
static int
|
||||
@@ -649,11 +649,10 @@ linuxOpenLegacy(PCITAG Tag, char *name)
|
||||
@@ -647,11 +647,10 @@ linuxOpenLegacy(PCITAG Tag, char *name)
|
||||
domain = xf86GetPciDomain(Tag);
|
||||
bus = PCI_BUS_NO_DOMAIN(PCI_BUS_FROM_TAG(Tag));
|
||||
|
||||
@ -41,15 +41,15 @@
|
||||
fd = open(path, O_RDWR);
|
||||
if (fd >= 0) {
|
||||
xfree(path);
|
||||
@@ -685,7 +684,6 @@ _X_EXPORT pointer
|
||||
@@ -683,7 +682,6 @@ _X_EXPORT pointer
|
||||
xf86MapDomainMemory(int ScreenNum, int Flags, PCITAG Tag,
|
||||
ADDRESS Base, unsigned long Size)
|
||||
{
|
||||
- int domain = xf86GetPciDomain(Tag);
|
||||
int fd;
|
||||
int fd = -1;
|
||||
pointer addr;
|
||||
|
||||
@@ -733,7 +731,7 @@ xf86MapDomainIO(int ScreenNum, int Flags
|
||||
@@ -731,7 +729,7 @@ xf86MapDomainIO(int ScreenNum, int Flags
|
||||
int domain = xf86GetPciDomain(Tag);
|
||||
int fd;
|
||||
|
||||
|
@ -1,3 +1,22 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 3 14:55:42 CEST 2007 - sndirsch@suse.de
|
||||
|
||||
- xserver-1.3.0-xkb-and-loathing.patch
|
||||
* Ignore (not just block) SIGALRM around calls to Popen()/Pclose().
|
||||
Fixes a hang in openoffice when opening menus. (Bug #245711)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 3 14:12:03 CEST 2007 - sndirsch@suse.de
|
||||
|
||||
- added missing ia64Pci.h; required for IA64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 3 13:41:42 CEST 2007 - sndirsch@suse.de
|
||||
|
||||
- recreated p_pci-off-by-one.diff.ia64; the default fuzz factor of
|
||||
patch (2) resulted in a hunk applied to the wrong function and
|
||||
therefore broke the build :-(
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Sep 29 00:51:38 CEST 2007 - sndirsch@suse.de
|
||||
|
||||
|
@ -21,7 +21,7 @@ BuildRequires: libjpeg-devel
|
||||
Url: http://xorg.freedesktop.org/
|
||||
%define EXPERIMENTAL 0
|
||||
Version: 7.3
|
||||
Release: 1
|
||||
Release: 2
|
||||
License: X11/MIT
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Group: System/X11/Servers/XF86_4
|
||||
@ -46,6 +46,7 @@ Source6: 0018-vnc-support.txt.mbox
|
||||
%endif
|
||||
Source7: xorg-docs-1.4.tar.bz2
|
||||
Source8: xorg.conf.man-070818.tar
|
||||
Source9: ia64Pci.h
|
||||
Patch: 64bit.diff
|
||||
Patch1: fpic.diff
|
||||
Patch2: p_default-module-path.diff
|
||||
@ -86,6 +87,7 @@ Patch72: randr12-8d230319040f0a7f72231da2bf5ec97dc3612e21.diff
|
||||
Patch77: fbdevhw.diff
|
||||
Patch79: edit_data_sanity_check.diff
|
||||
Patch80: pixman.diff
|
||||
Patch81: xserver-1.3.0-xkb-and-loathing.patch
|
||||
Patch334: p_pci-domain.diff
|
||||
|
||||
%description
|
||||
@ -141,6 +143,8 @@ An X Window System server for Virtual Network Computing (VNC).
|
||||
%endif
|
||||
%prep
|
||||
%setup -q -n xorg-server-%{dirsuffix} -b1 -a4 -a7 -a8
|
||||
test -s hw/xfree86/os-support/shared/ia64Pci.h || \
|
||||
cp $RPM_SOURCE_DIR/ia64Pci.h hw/xfree86/os-support/shared/ia64Pci.h
|
||||
# make legal department happy (Bug #204110)
|
||||
test -f ../Mesa-7.0.1/src/mesa/drivers/directfb/idirectfbgl_mesa.c && exit 1
|
||||
test -f ../Mesa-7.0.1/progs/ggi/asc-view.c && exit 1
|
||||
@ -199,6 +203,7 @@ popd
|
||||
%patch77
|
||||
%patch79 -p1
|
||||
%patch80
|
||||
%patch81 -p1
|
||||
|
||||
%build
|
||||
pushd xorg-docs-*
|
||||
@ -529,6 +534,16 @@ exit 0
|
||||
/usr/bin/Xvnc
|
||||
%endif
|
||||
%changelog
|
||||
* Wed Oct 03 2007 - sndirsch@suse.de
|
||||
- xserver-1.3.0-xkb-and-loathing.patch
|
||||
* Ignore (not just block) SIGALRM around calls to Popen()/Pclose().
|
||||
Fixes a hang in openoffice when opening menus. (Bug #245711)
|
||||
* Wed Oct 03 2007 - sndirsch@suse.de
|
||||
- added missing ia64Pci.h; required for IA64
|
||||
* Wed Oct 03 2007 - sndirsch@suse.de
|
||||
- recreated p_pci-off-by-one.diff.ia64; the default fuzz factor of
|
||||
patch (2) resulted in a hunk applied to the wrong function and
|
||||
therefore broke the build :-(
|
||||
* Sat Sep 29 2007 - sndirsch@suse.de
|
||||
- xorg-server 1.4
|
||||
* Welcome to X.Org X Server 1.4, now with hotplugging input to go
|
||||
|
36
xserver-1.3.0-xkb-and-loathing.patch
Normal file
36
xserver-1.3.0-xkb-and-loathing.patch
Normal file
@ -0,0 +1,36 @@
|
||||
--- xorg-server-1.3.0.0/os/utils.c.jx 2007-04-25 13:28:05.000000000 -0400
|
||||
+++ xorg-server-1.3.0.0/os/utils.c 2007-04-30 14:33:04.000000000 -0400
|
||||
@@ -1725,6 +1725,8 @@
|
||||
int pid;
|
||||
} *pidlist;
|
||||
|
||||
+static sighandler_t old_alarm = NULL; /* XXX horrible awful hack */
|
||||
+
|
||||
pointer
|
||||
Popen(char *command, char *type)
|
||||
{
|
||||
@@ -1746,11 +1748,15 @@
|
||||
return NULL;
|
||||
}
|
||||
|
||||
+ /* Ignore the smart scheduler while this is going on */
|
||||
+ old_alarm = signal(SIGALRM, SIG_IGN);
|
||||
+
|
||||
switch (pid = fork()) {
|
||||
case -1: /* error */
|
||||
close(pdes[0]);
|
||||
close(pdes[1]);
|
||||
xfree(cur);
|
||||
+ signal(SIGALRM, old_alarm);
|
||||
return NULL;
|
||||
case 0: /* child */
|
||||
if (setgid(getgid()) == -1)
|
||||
@@ -1926,6 +1932,8 @@
|
||||
/* allow EINTR again */
|
||||
OsReleaseSignals ();
|
||||
|
||||
+ signal(SIGALRM, old_alarm);
|
||||
+
|
||||
return pid == -1 ? -1 : pstat;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user