# # spec file for package libX11 # # Copyright (c) 2018 SUSE LINUX 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/ # Name: libX11 Version: 1.6.5 Release: 0 Summary: Core X11 protocol client library License: MIT Group: Development/Libraries/C and C++ Url: http://xorg.freedesktop.org/ #Git-Clone: git://anongit.freedesktop.org/xorg/lib/libX11 #Git-Web: http://cgit.freedesktop.org/xorg/lib/libX11/ Source: http://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}.tar.bz2 Source1: baselibs.conf # PATCH-FIX-UPSTREAM p_khmer-compose.diff fdo#48595 bnc#143348 -- required compose entries for Khmer Patch7: p_khmer-compose.diff # PATCH-FEATURE-UPSTREAM p_xlib_skip_ext_env.diff fdo#48588 bnc#167317 -- Add support for disabling extensions through environment variables Patch9: p_xlib_skip_ext_env.diff # PATCH-FIX-UPSTREAM en-locales.diff fdo#48596 bnc#388711 -- Add missing data for more en locales Patch15: en-locales.diff # PATCH-FIX-UPSTREAM u_Use-flexible-array-member-instead-of-fake-size.patch -- Fix build error with gcc8. Patch16: u_Use-flexible-array-member-instead-of-fake-size.patch # CVE-2018-14599 Patch1102062: u_off-by-one-write-in-XListExtensions.patch # CVE-2018-14600 Patch1102068: u_out-of-boundary-write-in-XListExtensions.patch # CVE-2018-14598 Patch1102073: u_crash-on-invalid-reply-in-XListExtensions.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf >= 2.60 BuildRequires: automake BuildRequires: fdupes BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: pkgconfig(inputproto) BuildRequires: pkgconfig(kbproto) BuildRequires: pkgconfig(xcb) >= 1.1.92 BuildRequires: pkgconfig(xextproto) BuildRequires: pkgconfig(xf86bigfontproto) BuildRequires: pkgconfig(xorg-macros) >= 1.11 BuildRequires: pkgconfig(xproto) BuildRequires: pkgconfig(xproto) >= 7.0.13 BuildRequires: pkgconfig(xtrans) %description The X Window System is a network-transparent window system that was designed at MIT. X display servers run on computers with either monochrome or color bitmap display hardware. The server distributes user input to and accepts output requests from various client programs located either on the same machine or elsewhere in the network. Xlib is a C subroutine library that application programs (clients) use to interface with the window system by means of a stream connection. %package -n libX11-6 Summary: Core X11 protocol client library Group: System/Libraries Requires: %name-data >= %version # O/P added for 12.2. Ideally remove before 12.2 release. Provides: xorg-x11-libX11 = 7.6_%version-%release Obsoletes: xorg-x11-libX11 < 7.6_%version-%release %description -n libX11-6 The X Window System is a network-transparent window system that was designed at MIT. X display servers run on computers with either monochrome or color bitmap display hardware. The server distributes user input to and accepts output requests from various client programs located either on the same machine or elsewhere in the network. Xlib is a C subroutine library that application programs (clients) use to interface with the window system by means of a stream connection. %package -n libX11-xcb1 Summary: XCB X11 protocol client library Group: System/Libraries Requires: %name-data >= %version %description -n libX11-xcb1 The X Window System is a network-transparent window system that was designed at MIT. X display servers run on computers with either monochrome or color bitmap display hardware. The server distributes user input to and accepts output requests from various client programs located either on the same machine or elsewhere in the network. Xlib is a C subroutine library that application programs (clients) use to interface with the window system by means of a stream connection. %package data Summary: Shared data for the Core X11 protocol library Group: System/Libraries %if 0%{?suse_version} >= 1130 BuildArch: noarch %endif %description data The X Window System is a network-transparent window system that was designed at MIT. X display servers run on computers with either monochrome or color bitmap display hardware. The server distributes user input to and accepts output requests from various client programs located either on the same machine or elsewhere in the network. Xlib is a C subroutine library that application programs (clients) use to interface with the window system by means of a stream connection. %package devel Summary: Development files for the Core X11 protocol library Group: Development/Libraries/C and C++ Requires: libX11-6 = %version Requires: libX11-xcb1 = %version # O/P added for 12.2 Provides: xorg-x11-libX11-devel = 7.6_%version-%release Obsoletes: xorg-x11-libX11-devel < 7.6_%version-%release %description devel The X Window System is a network-transparent window system that was designed at MIT. X display servers run on computers with either monochrome or color bitmap display hardware. The server distributes user input to and accepts output requests from various client programs located either on the same machine or elsewhere in the network. Xlib is a C subroutine library that application programs (clients) use to interface with the window system by means of a stream connection. This package contains the development headers for the library found in libX11-6 and libX11-xcb1. %prep %setup -q # make legal department happy (Bug #153744) test -f nls/ja.U90/XLC_LOCALE.pre && exit 1 test -f nls/ja.S90/XLC_LOCALE.pre && exit 1 # %patch7 -p0 %patch9 -p0 %patch15 -p0 %patch16 -p1 %patch1102062 -p1 %patch1102068 -p1 %patch1102073 -p1 %build # Got patches which change auto*files autoreconf -fi %configure --docdir=%_docdir/%name --disable-static # "--enable-loadable-i18n" is currently broken #--datadir=/usr/share make %{?_smp_mflags} %install make install DESTDIR="%buildroot" rm -f "%buildroot/%_libdir"/*.la # Some files are empty/missing for some UTF-8 locales pushd "%buildroot/usr/share/X11/locale" for i in *.UTF-8; do echo "$i" if [ "$i" == "en_US.UTF-8" ]; then continue fi touch "$i/Compose" "$i/XI18N_OBJS" test -s "$i/Compose" || ln -fns ../en_US.UTF-8/Compose "$i" test -s "$i/XI18N_OBJS" || ln -fns ../en_US.UTF-8/XI18N_OBJS "$i" test -s "$i/XLC_LOCALE" || ln -fns ../en_US.UTF-8/XLC_LOCALE "$i" done popd %fdupes %buildroot/%_mandir %post -n libX11-6 -p /sbin/ldconfig %postun -n libX11-6 -p /sbin/ldconfig %post -n libX11-xcb1 -p /sbin/ldconfig %postun -n libX11-xcb1 -p /sbin/ldconfig %files -n libX11-6 %defattr(-,root,root) %_libdir/libX11.so.6* %files -n libX11-xcb1 %defattr(-,root,root) %_libdir/libX11-xcb.so.1* %files data %defattr(-,root,root) %_datadir/X11 %files devel %defattr(-,root,root) %_includedir/X11/* %_libdir/*.so %_libdir/pkgconfig/*.pc %_docdir/%name %_mandir/man?/* %changelog