forked from pool/xorg-x11-server
Stefan Dirsch
11c2d2bd16
* If you aren't using the Record extension (and you aren't), you can work around the bug by moving the code which accesses the (non-existant) request buffer inside the loop looking at the recording contexts (of which there should be none). (bnc #728964, fdo #36930) OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=359
424 lines
13 KiB
RPMSpec
424 lines
13 KiB
RPMSpec
#
|
|
# spec file for package xorg-x11-server
|
|
#
|
|
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
# norootforbuild
|
|
|
|
|
|
Name: xorg-x11-server
|
|
%define dirsuffix 1.10.4
|
|
%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)
|
|
%if %suse_version > 1120
|
|
BuildRequires: libudev-devel
|
|
%endif
|
|
%if %vnc
|
|
BuildRequires: libjpeg-devel
|
|
%endif
|
|
Url: http://xorg.freedesktop.org/
|
|
Version: 7.6_%{dirsuffix}
|
|
Release: 1
|
|
License: GPLv2+ ; MIT License (or similar)
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
Group: System/X11/Servers/XF86_4
|
|
%ifnarch s390 s390x
|
|
PreReq: %fillup_prereq
|
|
%endif
|
|
Requires: pkgconfig xorg-x11-fonts-core xorg-x11
|
|
%ifnarch s390 s390x
|
|
Provides: VIDEO_ABI_VERSION = 10
|
|
Provides: INPUT_ABI_VERSION = 12
|
|
Requires: libpixman-1-0 >= 0.15.2
|
|
%endif
|
|
Provides: xorg-x11-server-glx xorg-x11-Xvfb
|
|
Obsoletes: xorg-x11-server-glx xorg-x11-Xvfb
|
|
Summary: X.Org Server
|
|
Source: xorg-server-%{dirsuffix}.tar.bz2
|
|
Source1: sysconfig.displaymanager.template
|
|
Source3: README.updates
|
|
Source4: xorgcfg.tar.bz2
|
|
Source5: modprobe.nvidia
|
|
Source7: xorg-docs-1.6.tar.bz2
|
|
Source8: xorg-backtrace
|
|
Patch2: p_default-module-path.diff
|
|
Patch6: pu_fixes.diff
|
|
Patch13: u_OS-acpi-Reconnect-to-acpid-when-it-gets-restarted.patch
|
|
Patch16: p_xnest-ignore-getimage-errors.diff
|
|
%if %vnc
|
|
Patch17: N-VNC-Add-support-for-VNC.patch
|
|
Patch18: N-VNC-Readd-timeout-when-vnc-viewer-connection-breaks.patch
|
|
Patch19: N-VNC-Fix-crash-when-no-depth-translation-is-required.patch
|
|
Patch20: N-VNC-Don-t-let-VNC-access-the-framebuffer-directly-an.patch
|
|
Patch21: N-VNC-Enable-use-of-all-keyboard-layouts-independent-o.patch
|
|
Patch22: N-VNC-Fix-crash-due-to-unset-input-device-names.patch
|
|
Patch23: Xvnc-pthread.diff
|
|
%endif
|
|
Patch45: bug-197858_dpms.diff
|
|
Patch77: fbdevhw.diff
|
|
Patch79: edid_data_sanity_check.diff
|
|
Patch101: zap_warning_xserver.diff
|
|
Patch103: confine_to_shape.diff
|
|
Patch106: randr1_1-sig11.diff
|
|
Patch112: fix-dpi-values.diff
|
|
Patch123: vidmode-sig11.diff
|
|
Patch125: 0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch
|
|
Patch127: dpms_screensaver.diff
|
|
Patch128: pci-legacy-mem-fallback.diff
|
|
Patch129: bug474071-fix1.diff
|
|
Patch143: autoconfig_fallback_fbdev_first.diff
|
|
Patch145: driver-autoconfig.diff
|
|
Patch162: cache-xkbcomp-output-for-fast-start-up.patch
|
|
Patch163: xserver-bg-none-root.patch
|
|
Patch164: xorg-detect-psb.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
|
|
Patch206: fix_fglrx_screendepth_issue.patch
|
|
Patch210: pio_ia64.diff
|
|
Patch211: 0001-Prevent-XSync-Alarms-from-senslessly-calling-CheckTr.patch
|
|
Patch213: xorg-server-xdmcp.patch
|
|
Patch220: Use-external-tool-for-creating-backtraces-on-crashes.patch
|
|
Patch222: sync-fix.patch
|
|
Patch223: U_Don-t-call-deleted-Block-WakeupHandler.patch
|
|
Patch224: u_record-fix-sig11.patch
|
|
|
|
%description
|
|
This package contains the X.Org Server.
|
|
|
|
|
|
|
|
%package extra
|
|
License: GPLv2+ ; MIT License (or similar)
|
|
Summary: Additional Xservers (Xdmx, Xephyr, Xnest)
|
|
Group: System/X11/Servers/XF86_4
|
|
Provides: xorg-x11-Xnest
|
|
Obsoletes: xorg-x11-Xnest
|
|
Requires: xorg-x11-fonts-core xorg-x11 Mesa
|
|
Requires: xkeyboard-config
|
|
AutoReqProv: on
|
|
|
|
%description extra
|
|
This package contains additional Xservers (Xdmx, Xephyr, Xnest).
|
|
|
|
|
|
|
|
%package sdk
|
|
License: GPLv2+ ; MIT License (or similar)
|
|
Summary: X.Org Server SDK
|
|
Group: System/Libraries
|
|
Provides: xorg-x11-sdk
|
|
Obsoletes: xorg-x11-sdk
|
|
Requires: xorg-x11-proto-devel xorg-x11-xtrans-devel xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libX11-devel xorg-x11-libXext-devel xorg-x11-libXp-devel xorg-x11-libXpm-devel xorg-x11-libXrender-devel xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libXt-devel xorg-x11-libXmu-devel xorg-x11-libXfixes-devel xorg-x11-libxkbfile-devel xorg-x11-libfontenc-devel xorg-x11-libXv-devel xorg-x11-libXprintUtil-devel xorg-x11-devel freetype2-devel fontconfig-devel libdrm-devel xorg-x11-server
|
|
AutoReqProv: on
|
|
|
|
%description sdk
|
|
This package contains the X.Org Server SDK.
|
|
|
|
|
|
|
|
%if %vnc
|
|
|
|
%package -n xorg-x11-Xvnc
|
|
License: GPLv2+ ; MIT License (or similar)
|
|
Summary: VNC Server for the X Window System
|
|
Group: System/X11/Servers/XF86_4
|
|
Requires: xorg-x11-fonts-core xorg-x11 xkeyboard-config
|
|
Provides: vnc:/usr/X11R6/bin/Xvnc XFree86-Xvnc
|
|
Obsoletes: XFree86-Xvnc
|
|
%ifarch ia64
|
|
Provides: vnc-x86
|
|
Obsoletes: vnc-x86
|
|
%endif
|
|
AutoReqProv: on
|
|
|
|
%description -n xorg-x11-Xvnc
|
|
An X Window System server for Virtual Network Computing (VNC).
|
|
|
|
|
|
|
|
%endif
|
|
|
|
%prep
|
|
%setup -q -n xorg-server-%{dirsuffix} -a4 -a7
|
|
%patch2
|
|
%patch6
|
|
%patch13 -p1
|
|
%patch16 -p2
|
|
%if %vnc
|
|
%patch17 -p1
|
|
%patch18 -p1
|
|
%patch19 -p1
|
|
%patch20 -p1
|
|
%patch21 -p1
|
|
%patch22 -p1
|
|
%patch23 -p1
|
|
%endif
|
|
%patch45 -p0
|
|
pushd xorg-docs-*
|
|
popd
|
|
%patch77
|
|
%patch79 -p1
|
|
%patch101 -p1
|
|
%patch103
|
|
%patch106 -p1
|
|
%patch112 -p0
|
|
%patch123 -p0
|
|
### disabled for now
|
|
#%patch125 -p1
|
|
%patch127 -p1
|
|
%patch128
|
|
pushd hw/xfree86/os-support/bus
|
|
%patch129 -p0
|
|
popd
|
|
%patch143 -p0
|
|
%patch145 -p0
|
|
### disabled for now
|
|
#%patch162 -p1
|
|
### disabled for now
|
|
#%patch163 -p1
|
|
%patch164 -p1
|
|
%patch200 -p1
|
|
%patch202 -p1
|
|
%patch203 -p1
|
|
%patch206 -p0
|
|
%patch210 -p1
|
|
### disabled for now
|
|
#%patch211 -p1
|
|
%patch213 -p1
|
|
# Disable backtrace generation patch for now
|
|
#%patch220 -p1
|
|
%patch222 -p1
|
|
%patch223 -p2
|
|
%patch224 -p1
|
|
|
|
%build
|
|
pushd xorg-docs-*
|
|
autoreconf -fi
|
|
%configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
|
%{__make} %{?jobs:-j%jobs}
|
|
popd
|
|
autoreconf -fi
|
|
%configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \
|
|
--sysconfdir=/etc \
|
|
--enable-builddocs \
|
|
--enable-install-libxf86config \
|
|
--enable-xdmcp \
|
|
--enable-xdm-auth-1 \
|
|
--enable-dri \
|
|
--enable-dri2 \
|
|
--enable-dmx \
|
|
--enable-xnest \
|
|
--enable-kdrive \
|
|
--enable-kdrive-evdev \
|
|
--enable-xephyr \
|
|
--disable-xfake \
|
|
--disable-xfbdev \
|
|
--enable-record \
|
|
--enable-xcsecurity \
|
|
--with-sha1=libcrypto \
|
|
%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" \
|
|
--with-default-font-path="/usr/share/fonts/misc:unscaled,\
|
|
/usr/share/fonts/Type1/,/usr/share/fonts/100dpi:unscaled,\
|
|
/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/URW/,\
|
|
/usr/share/fonts/cyrillic:unscaled,\
|
|
/usr/share/fonts/truetype/,built-ins"
|
|
make %{?jobs:-j %jobs}
|
|
make -C hw/kdrive %{?jobs:-j %jobs}
|
|
|
|
%install
|
|
make -C xorg-docs-* install DESTDIR=$RPM_BUILD_ROOT
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
make -C hw/kdrive install DESTDIR=$RPM_BUILD_ROOT
|
|
%ifnarch s390 s390x
|
|
# remove .la files
|
|
find $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/ -name "*.la" | \
|
|
xargs rm
|
|
install -m 644 hw/xfree86/parser/{xf86Parser.h,xf86Optrec.h} \
|
|
$RPM_BUILD_ROOT/usr/include/xorg
|
|
# bnc #632737
|
|
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
|
|
%if %suse_version > 1120
|
|
%ifnarch s390 s390x
|
|
mkdir -p $RPM_BUILD_ROOT/etc/X11/xorg.conf.d
|
|
cp $RPM_BUILD_ROOT/%{_datadir}/X11/xorg.conf.d/10-evdev.conf $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/
|
|
%endif
|
|
%endif
|
|
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
|
|
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
|
|
cat > $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services/%{name} << EOF
|
|
## Name: VNC Server
|
|
## Description: Opens ports for VNC Server
|
|
TCP="5801 5901"
|
|
EOF
|
|
%endif
|
|
%ifarch s390 s390x
|
|
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}
|
|
install -m 644 hw/xfree86/parser/{xf86Parser.h,xf86Optrec.h} \
|
|
$RPM_BUILD_ROOT/usr/include/xorg
|
|
install -m 644 hw/xfree86/parser/libxf86config.a \
|
|
$RPM_BUILD_ROOT//usr/%{_lib}
|
|
%endif
|
|
%ifnarch s390 s390x
|
|
mkdir -p %buildroot/var/adm/fillup-templates
|
|
install -m 644 %_sourcedir/sysconfig.displaymanager.template \
|
|
%buildroot/var/adm/fillup-templates/sysconfig.displaymanager-%name
|
|
%endif
|
|
install -m 755 $RPM_SOURCE_DIR/xorg-backtrace $RPM_BUILD_ROOT/usr/bin/xorg-backtrace
|
|
|
|
%clean
|
|
rm -rf "$RPM_BUILD_ROOT"
|
|
%ifnarch s390 s390x
|
|
%verifyscript
|
|
%verify_permissions -e /usr/bin/Xorg
|
|
%endif
|
|
|
|
%post
|
|
%ifnarch s390 s390x
|
|
%{fillup_only -an displaymanager}
|
|
%run_permissions
|
|
if [ -f etc/X11/xorg.conf ]; then
|
|
# 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
|
|
if ! grep -q "\"AutoAddDevices\" \"off\"" etc/X11/xorg.conf; then
|
|
sed -i '
|
|
/Section "ServerFlags"/{
|
|
h
|
|
g
|
|
a\
|
|
# Uncomment the following option to reenable kbd/mouse driver input sections. \
|
|
# Otherwise evdev driver is used. \
|
|
#Option "AutoAddDevices" "off"
|
|
}
|
|
' etc/X11/xorg.conf
|
|
fi
|
|
fi
|
|
fi
|
|
%endif
|
|
exit 0
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%ifnarch s390 s390x
|
|
%if %suse_version > 1120
|
|
%dir /etc/X11/xorg.conf.d
|
|
%config(noreplace) /etc/X11/xorg.conf.d/10-evdev.conf
|
|
%dir %{_datadir}/X11/xorg.conf.d
|
|
%{_datadir}/X11/xorg.conf.d/10-evdev.conf
|
|
%endif
|
|
%dir /etc/modprobe.d
|
|
%dir /var/lib/X11
|
|
%endif
|
|
%dir /var/lib/xkb
|
|
%dir /var/lib/xkb/compiled
|
|
%dir /usr/%{_lib}/xorg
|
|
/usr/%{_lib}/xorg/protocol.txt
|
|
%{_mandir}/man1/*
|
|
%{_mandir}/man7/*
|
|
%doc %{_datadir}/doc/xorg-docs/
|
|
%exclude %{_mandir}/man1/Xdmx.1*
|
|
%exclude %{_mandir}/man1/Xephyr.1*
|
|
%exclude %{_mandir}/man1/Xnest.1*
|
|
%exclude %{_mandir}/man7/Standards.7*
|
|
%exclude %{_mandir}/man7/Consortium.7*
|
|
%exclude %{_mandir}/man7/XProjectTeam.7*
|
|
%exclude %{_mandir}/man7/XOrgFoundation.7*
|
|
/var/lib/xkb/compiled/README.compiled
|
|
%ifnarch s390 s390x
|
|
/etc/modprobe.d/50-nvidia.conf
|
|
%verify(not mode) /usr/bin/Xorg
|
|
/usr/bin/X
|
|
/usr/bin/Xvfb
|
|
/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
|
|
/usr/bin/xorg-backtrace
|
|
|
|
%files extra
|
|
%defattr(-,root,root)
|
|
/usr/bin/Xephyr
|
|
/usr/bin/Xnest
|
|
/usr/bin/Xdmx
|
|
/usr/bin/dmxaddinput
|
|
/usr/bin/dmxaddscreen
|
|
/usr/bin/dmxinfo
|
|
/usr/bin/dmxreconfig
|
|
/usr/bin/dmxresize
|
|
/usr/bin/dmxrminput
|
|
/usr/bin/dmxrmscreen
|
|
/usr/bin/dmxtodmx
|
|
/usr/bin/dmxwininfo
|
|
/usr/bin/vdltodmx
|
|
/usr/bin/xdmxconfig
|
|
%{_mandir}/man1/Xdmx.1*
|
|
%{_mandir}/man1/Xephyr.1*
|
|
%{_mandir}/man1/Xnest.1*
|
|
|
|
%files sdk
|
|
%defattr(-,root,root)
|
|
/usr/include/xorg/
|
|
/usr/%{_lib}/*.a
|
|
%ifnarch s390 s390x
|
|
%exclude /usr/%{_lib}/libxf86config.la
|
|
/usr/%{_lib}/pkgconfig/*.pc
|
|
/usr/share/aclocal/*.m4
|
|
%endif
|
|
%if %vnc
|
|
|
|
%files -n xorg-x11-Xvnc
|
|
%defattr(-, root, root)
|
|
/etc/sysconfig/SuSEfirewall2.d/services/%{name}
|
|
/usr/bin/Xvnc
|
|
%endif
|
|
|
|
%changelog
|