Sync from SUSE:SLFO:Main libX11 revision db7be126bdb0ed31f7643a99e6495375

This commit is contained in:
Adrian Schröter 2024-05-03 14:22:07 +02:00
commit 681f34da6d
8 changed files with 1405 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

10
baselibs.conf Normal file
View File

@ -0,0 +1,10 @@
libX11-6
provides "xorg-x11-libX11-<targettype> = 7.6_<version>"
obsoletes "xorg-x11-libX11-<targettype> < 7.6_<version>"
libX11-xcb1
libX11-devel
requires -libX11-<targettype>
requires "libX11-6-<targettype> = <version>"
requires "libX11-xcb1-<targettype> = <version>"
provides "xorg-x11-libX11-devel-<targettype> = 7.6_<version>"
obsoletes "xorg-x11-libX11-devel-<targettype> < 7.6_<version>"

12
en-locales.diff Normal file
View File

@ -0,0 +1,12 @@
Index: nls/locale.alias.pre
===================================================================
--- nls/locale.alias.pre.orig
+++ nls/locale.alias.pre
@@ -316,6 +316,7 @@ en_CA.iso88591: en_CA.ISO8859-1
en_CA.ISO-8859-1: en_CA.ISO8859-1
en_CA.ISO_8859-1: en_CA.ISO8859-1
en_CA.utf8: en_CA.UTF-8
+en_DK.utf8: en_DK.UTF-8
en_DL.utf8: en_DL.UTF-8
en_GB: en_GB.ISO8859-1
en_GB.88591: en_GB.ISO8859-1

BIN
libX11-1.8.7.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

1133
libX11.changes Normal file

File diff suppressed because it is too large Load Diff

187
libX11.spec Normal file
View File

@ -0,0 +1,187 @@
#
# spec file for package libX11
#
# Copyright (c) 2023 SUSE LLC
#
# 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 https://bugs.opensuse.org/
#
Name: libX11
Version: 1.8.7
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.xz
Source1: baselibs.conf
# PATCH-FEATURE-UPSTREAM p_xlib_skip_ext_env.diff fdo#48588 bnc#167317 -- Add support for disabling extensions through environment variables
Patch1: p_xlib_skip_ext_env.diff
# PATCH-FIX-UPSTREAM en-locales.diff fdo#48596 bnc#388711 -- Add missing data for more en locales
Patch2: en-locales.diff
Patch3: u_no-longer-crash-in-XVisualIDFromVisual.patch
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) >= 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
BuildArch: noarch
%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}
Conflicts: xorgproto-devel < 2019.2
Provides: xorgproto-devel:%{_includedir}/X11/extensions/XKBgeom.h
%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
%patch1
%patch2
%patch3 -p1
%build
%configure \
--disable-silent-rules \
--docdir=%{_docdir}/%{name} \
--disable-static
make %{?_smp_mflags}
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
# Some files are empty/missing for some UTF-8 locales
pushd "%{buildroot}%{_datadir}/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
%{_libdir}/libX11.so.6*
%files -n libX11-xcb1
%{_libdir}/libX11-xcb.so.1*
%files data
%{_datadir}/X11
%files devel
%{_includedir}/X11/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_docdir}/%{name}
%{_mandir}/man?/*
%changelog

25
p_xlib_skip_ext_env.diff Normal file
View File

@ -0,0 +1,25 @@
Index: src/QuExt.c
===================================================================
--- src/QuExt.c.orig
+++ src/QuExt.c
@@ -45,6 +45,20 @@ XQueryExtension(
if (name != NULL && strlen(name) >= USHRT_MAX)
return false;
+ if (name && strlen (name) < 256)
+ {
+ char var[256 + 15];
+ int i;
+
+ strcpy (var, "XLIB_SKIP_EXT_");
+ for (i = 0; name[i]; i++)
+ var[i + 14] = name[i] == '-' ? '_' : name[i];
+
+ var[i + 14] = 0;
+ if (getenv (var))
+ return False;
+ }
+
LockDisplay(dpy);
GetReq(QueryExtension, req);
req->nbytes = name ? (CARD16) strlen(name) : 0;

View File

@ -0,0 +1,12 @@
diff -u -p -r libX11-1.7.2.orig/src/Misc.c libX11-1.7.2/src/Misc.c
--- libX11-1.7.2.orig/src/Misc.c 2021-11-15 14:58:41.579310000 +0100
+++ libX11-1.7.2/src/Misc.c 2021-11-15 15:01:27.897244000 +0100
@@ -57,6 +57,8 @@ XDisplayKeycodes(
VisualID XVisualIDFromVisual(Visual *visual)
{
+ if (!visual)
+ return (VisualID)0;
return visual->visualid;
}