1bf215546Sopenharmony_ci#!/bin/bash 2bf215546Sopenharmony_ci 3bf215546Sopenharmony_ciset -e 4bf215546Sopenharmony_ciset -o xtrace 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ciexport DEBIAN_FRONTEND=noninteractive 7bf215546Sopenharmony_ci 8bf215546Sopenharmony_ci# Ephemeral packages (installed for this script and removed again at the end) 9bf215546Sopenharmony_ciSTABLE_EPHEMERAL=" \ 10bf215546Sopenharmony_ci autoconf \ 11bf215546Sopenharmony_ci automake \ 12bf215546Sopenharmony_ci autotools-dev \ 13bf215546Sopenharmony_ci bzip2 \ 14bf215546Sopenharmony_ci libtool \ 15bf215546Sopenharmony_ci python3-pip \ 16bf215546Sopenharmony_ci " 17bf215546Sopenharmony_ci 18bf215546Sopenharmony_ciapt-get update 19bf215546Sopenharmony_ci 20bf215546Sopenharmony_ciapt-get install -y --no-remove \ 21bf215546Sopenharmony_ci $STABLE_EPHEMERAL \ 22bf215546Sopenharmony_ci check \ 23bf215546Sopenharmony_ci clang \ 24bf215546Sopenharmony_ci libasan6 \ 25bf215546Sopenharmony_ci libarchive-dev \ 26bf215546Sopenharmony_ci libclang-cpp13-dev \ 27bf215546Sopenharmony_ci libclang-cpp11-dev \ 28bf215546Sopenharmony_ci libgbm-dev \ 29bf215546Sopenharmony_ci libglvnd-dev \ 30bf215546Sopenharmony_ci libllvmspirvlib-dev \ 31bf215546Sopenharmony_ci liblua5.3-dev \ 32bf215546Sopenharmony_ci libxcb-dri2-0-dev \ 33bf215546Sopenharmony_ci libxcb-dri3-dev \ 34bf215546Sopenharmony_ci libxcb-glx0-dev \ 35bf215546Sopenharmony_ci libxcb-present-dev \ 36bf215546Sopenharmony_ci libxcb-randr0-dev \ 37bf215546Sopenharmony_ci libxcb-shm0-dev \ 38bf215546Sopenharmony_ci libxcb-sync-dev \ 39bf215546Sopenharmony_ci libxcb-xfixes0-dev \ 40bf215546Sopenharmony_ci libxcb1-dev \ 41bf215546Sopenharmony_ci libxml2-dev \ 42bf215546Sopenharmony_ci llvm-13-dev \ 43bf215546Sopenharmony_ci llvm-11-dev \ 44bf215546Sopenharmony_ci llvm-9-dev \ 45bf215546Sopenharmony_ci ocl-icd-opencl-dev \ 46bf215546Sopenharmony_ci python3-freezegun \ 47bf215546Sopenharmony_ci python3-pytest \ 48bf215546Sopenharmony_ci procps \ 49bf215546Sopenharmony_ci spirv-tools \ 50bf215546Sopenharmony_ci strace \ 51bf215546Sopenharmony_ci time 52bf215546Sopenharmony_ci 53bf215546Sopenharmony_ci 54bf215546Sopenharmony_ci. .gitlab-ci/container/container_pre_build.sh 55bf215546Sopenharmony_ci 56bf215546Sopenharmony_ci# dependencies where we want a specific version 57bf215546Sopenharmony_ciexport XORG_RELEASES=https://xorg.freedesktop.org/releases/individual 58bf215546Sopenharmony_ci 59bf215546Sopenharmony_ciexport XORGMACROS_VERSION=util-macros-1.19.0 60bf215546Sopenharmony_ci 61bf215546Sopenharmony_ciwget $XORG_RELEASES/util/$XORGMACROS_VERSION.tar.bz2 62bf215546Sopenharmony_citar -xvf $XORGMACROS_VERSION.tar.bz2 && rm $XORGMACROS_VERSION.tar.bz2 63bf215546Sopenharmony_cicd $XORGMACROS_VERSION; ./configure; make install; cd .. 64bf215546Sopenharmony_cirm -rf $XORGMACROS_VERSION 65bf215546Sopenharmony_ci 66bf215546Sopenharmony_ci. .gitlab-ci/container/build-libdrm.sh 67bf215546Sopenharmony_ci 68bf215546Sopenharmony_ci. .gitlab-ci/container/build-wayland.sh 69bf215546Sopenharmony_ci 70bf215546Sopenharmony_cipushd /usr/local 71bf215546Sopenharmony_cigit clone https://gitlab.freedesktop.org/mesa/shader-db.git --depth 1 72bf215546Sopenharmony_cirm -rf shader-db/.git 73bf215546Sopenharmony_cicd shader-db 74bf215546Sopenharmony_cimake 75bf215546Sopenharmony_cipopd 76bf215546Sopenharmony_ci 77bf215546Sopenharmony_cigit clone https://github.com/microsoft/DirectX-Headers -b v1.606.3 --depth 1 78bf215546Sopenharmony_cimkdir -p DirectX-Headers/build 79bf215546Sopenharmony_cipushd DirectX-Headers/build 80bf215546Sopenharmony_cimeson .. --backend=ninja --buildtype=release -Dbuild-test=false 81bf215546Sopenharmony_cininja 82bf215546Sopenharmony_cininja install 83bf215546Sopenharmony_cipopd 84bf215546Sopenharmony_cirm -rf DirectX-Headers 85bf215546Sopenharmony_ci 86bf215546Sopenharmony_cipip3 install git+https://git.lavasoftware.org/lava/lavacli@3db3ddc45e5358908bc6a17448059ea2340492b7 87bf215546Sopenharmony_ci 88bf215546Sopenharmony_ci############### Uninstall the build software 89bf215546Sopenharmony_ci 90bf215546Sopenharmony_ciapt-get purge -y \ 91bf215546Sopenharmony_ci $STABLE_EPHEMERAL 92bf215546Sopenharmony_ci 93bf215546Sopenharmony_ci. .gitlab-ci/container/container_post_build.sh 94