xorg-x11-server/pre_checkin.sh
Stefan Dirsch 540300e204 - Update to version 21.1.0
* The meson support is now fully mature. While autotools support
    will still be kept for this release series, it will be dropped
    afterwards.
  * Glamor support for Xvfb.
  * Variable refresh rate support in the modesetting driver.
  * XInput 2.4 support which adds touchpad gestures.
  * DMX DDX has been removed.
  * X server now correctly reports display DPI in more cases. This
    may affect rendering of client applications that have their own
    workarounds for hi-DPI screens.
  * A large number of small features and various bug fixes.
- updated xorg-server-provides
- supersedes patches
  * U_Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch
  * U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch
  * U_glamor_egl-Reject-OpenGL-2.1-early-on.patch
  * u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
- refreshed patches
  * N_fix-dpi-values.diff
  * N_zap_warning_xserver.diff
  * u_modesetting-Fix-dirty-updates-for-sw-rotation.patch
  * u_randr-Do-not-crash-if-slave-screen-does-not-have-pro.patch
  * u_vesa-Add-VBEDPMSGetCapabilities-VBEDPMSGet.patch
- disabled n_xserver-optimus-autoconfig-hack.patch, which I believe is 
  superseded by:
  commit 078277e4d92f05a90c4715d61b89b9d9d38d68ea
  Author: Dave Airlie <airlied@redhat.com>
  Date:   Fri Aug 17 09:49:24 2012 +1000
    xf86: autobind GPUs to the screen
- added pkgconfig(libxcvt)
- cvt binary moved to libxcvt0 package

OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=804
2021-10-27 16:05:03 +00:00

58 lines
2.1 KiB
Bash

#!/bin/sh
# pre_checking.sh
# Licensed under the same condition as the xorg-server.
# This script updates the .spec file (based on .spec.in) and inject versioned ABI Symbols from the X-Server,
# stored in a template file xorg-server-provides. The content of this file is verified during build, as the
# same script runs then again, extracting ABI versions from the source to be built. This ensures we can't
# publish a package with wrong ABI Versions being provided as part of the RPM Metadata.
# Driver-, Input and extension-packages are supposed to use the provided macros to ensure correct Requires.
# extract ABI Versions... this function is copied from configure.ac
extract_abi() {
grep ^.define.*${1}_VERSION ${xorg_src}/hw/xfree86/common/xf86Module.h | tr '(),' ' .' | awk '{ print $4$5 }'
}
if [ "$1" == "--tar" ]; then
tmpdir=$(mktemp -d)
tar xf "$2" -C ${tmpdir}
xorg_src=${tmpdir}/*
elif [ "$1" == "--verify" ]; then
xorg_src="$2"
prv_ext=".build"
else
echo "Wrong usage of this script"
echo "$0 can be started in two ways:"
echo "1: $0 --tar {xserver-xxxx.tar.xz}"
echo "2: $0 --verify {source-folder}"
echo "Variant 1 creates the file xorg-server-provides to be included in the src rpm"
echo "Variant 2 is being called during build to ensure the ABI provides match the expectations."
echo ""
echo ""
echo "Trying to guess the right tarball"
sh $0 --tar xorg-server-*.tar.xz
echo "... Please verify if the result makes sense"
exit 2
fi
abi_ansic=`extract_abi ANSIC`
abi_videodrv=`extract_abi VIDEODRV`
abi_xinput=`extract_abi XINPUT`
abi_extension=`extract_abi EXTENSION`
A="Provides: X11_ABI_XINPUT = ${abi_xinput}\nProvides: X11_ABI_VIDEODRV = ${abi_videodrv}\nProvides: X11_ABI_ANSIC = ${abi_ansic}\nProvides: X11_ABI_EXTENSION = ${abi_extension}"
echo -e $A > xorg-server-provides${prv_ext}
if [ "$1" == "--tar" ]; then
if [ -d ${tmpdir} ]; then
rm -rf ${tmpdir}
fi
elif [ "$1" == "--verify" ]; then
diff "$3" xorg-server-provides${prv_ext}
if [ $? -gt 0 ]; then
echo "The ABI verification failed... please run $0 before checking in"
exit 1
fi
fi