1#!/bin/bash 2 3set -e 4set -o xtrace 5 6 7EPHEMERAL=" 8 autoconf 9 automake 10 bzip2 11 git 12 libtool 13 pkgconfig(epoxy) 14 pkgconfig(gbm) 15 unzip 16 wget 17 xz 18 " 19 20dnf install -y --setopt=install_weak_deps=False \ 21 bison \ 22 ccache \ 23 clang-devel \ 24 flex \ 25 gcc \ 26 gcc-c++ \ 27 gettext \ 28 kernel-headers \ 29 llvm-devel \ 30 meson \ 31 "pkgconfig(dri2proto)" \ 32 "pkgconfig(expat)" \ 33 "pkgconfig(glproto)" \ 34 "pkgconfig(libclc)" \ 35 "pkgconfig(libelf)" \ 36 "pkgconfig(libglvnd)" \ 37 "pkgconfig(libomxil-bellagio)" \ 38 "pkgconfig(libselinux)" \ 39 "pkgconfig(libva)" \ 40 "pkgconfig(pciaccess)" \ 41 "pkgconfig(vdpau)" \ 42 "pkgconfig(vulkan)" \ 43 "pkgconfig(wayland-egl-backend)" \ 44 "pkgconfig(wayland-protocols)" \ 45 "pkgconfig(wayland-scanner)" \ 46 "pkgconfig(x11)" \ 47 "pkgconfig(x11-xcb)" \ 48 "pkgconfig(xcb)" \ 49 "pkgconfig(xcb-dri2)" \ 50 "pkgconfig(xcb-dri3)" \ 51 "pkgconfig(xcb-glx)" \ 52 "pkgconfig(xcb-present)" \ 53 "pkgconfig(xcb-randr)" \ 54 "pkgconfig(xcb-sync)" \ 55 "pkgconfig(xcb-xfixes)" \ 56 "pkgconfig(xdamage)" \ 57 "pkgconfig(xext)" \ 58 "pkgconfig(xfixes)" \ 59 "pkgconfig(xrandr)" \ 60 "pkgconfig(xshmfence)" \ 61 "pkgconfig(xxf86vm)" \ 62 "pkgconfig(zlib)" \ 63 python-unversioned-command \ 64 python3-devel \ 65 python3-mako \ 66 python3-devel \ 67 python3-mako \ 68 vulkan-headers \ 69 $EPHEMERAL 70 71 72. .gitlab-ci/container/container_pre_build.sh 73 74 75# dependencies where we want a specific version 76export XORG_RELEASES=https://xorg.freedesktop.org/releases/individual 77export WAYLAND_RELEASES=https://wayland.freedesktop.org/releases 78 79export XORGMACROS_VERSION=util-macros-1.19.0 80export LIBWAYLAND_VERSION=wayland-1.18.0 81 82wget $XORG_RELEASES/util/$XORGMACROS_VERSION.tar.bz2 83tar -xvf $XORGMACROS_VERSION.tar.bz2 && rm $XORGMACROS_VERSION.tar.bz2 84cd $XORGMACROS_VERSION; ./configure; make install; cd .. 85rm -rf $XORGMACROS_VERSION 86 87. .gitlab-ci/container/build-libdrm.sh 88 89wget $WAYLAND_RELEASES/$LIBWAYLAND_VERSION.tar.xz 90tar -xvf $LIBWAYLAND_VERSION.tar.xz && rm $LIBWAYLAND_VERSION.tar.xz 91cd $LIBWAYLAND_VERSION; ./configure --enable-libraries --without-host-scanner --disable-documentation --disable-dtd-validation; make install; cd .. 92rm -rf $LIBWAYLAND_VERSION 93 94 95pushd /usr/local 96git clone https://gitlab.freedesktop.org/mesa/shader-db.git --depth 1 97rm -rf shader-db/.git 98cd shader-db 99make 100popd 101 102 103############### Uninstall the build software 104 105dnf remove -y $EPHEMERAL 106 107. .gitlab-ci/container/container_post_build.sh 108