rendering-in-cgi/Framework/external/embree/scripts/download_gfx.sh
2024-04-23 10:14:24 +02:00

96 lines
2.9 KiB
Bash

#!/usr/bin/env bash
set -e
if [ -z $3 ]; then
echo "ERROR: usage $0 gfx-driver target-directory token"
echo " gfx-driver: URL to the driver packages relative to artifactory URL (e.g. gfx-driver-builds/ci/master/gfx-driver-ci-master-9999/artifacts/Linux/Ubuntu/22.04/Release"
echo " token: access token to (artifactory) repository"
exit 1
fi
ARTIFACTORY_URL="https://gfx-assets-build.igk.intel.com/artifactory"
GFX_DRIVER=$1
DST_DIR=$2
TOKEN=$3
if [[ -d "${DST_DIR}/${GFX_DRIVER}" ]]; then
echo "GFX driver ${GFX_DRIVER} already downloaded in ${DST_DIR}"
exit 0
fi
URL=${ARTIFACTORY_URL}"/"${GFX_DRIVER}/
CUR_DIR=$(pwd)
mkdir -p /tmp/${GFX_DRIVER}
cd /tmp/${GFX_DRIVER}
if [[ $GFX_DRIVER == *"linux"* ]] || [[ $GFX_DRIVER == *"Linux"* ]] ; then
echo "Downloading Linux driver packages using"
echo " ARTIFACTORY_URL=${ARTIFACTORY_URL}"
echo " GFX_DRIVER=${GFX_DRIVER}"
echo " DST_DIR=${DST_DIR}"
echo " TOKEN=${TOKEN}"
if [[ $GFX_DRIVER == *"open-linux"* ]] ; then
DEBS="*"
elif [[ $GFX_DRIVER == *"neo-releases"* ]] ; then
DEBS="*"
elif [[ $GFX_DRIVER == *"neo-master"* ]] ; then
DEBS="*"
else
DEBS="level-zero|intel-level-zero-gpu|intel-opencl-icd|libigc1|libigc-tools|libigdfcl1|libigdgmm"
fi
PACKAGES=$(curl -H "X-JFrog-Art-Api:$TOKEN" -s $URL |
sed 's/<a href/\n<a href/g' | sed 's/.deb"/.deb"\n/g' |
grep -o '".*"' | grep deb | tr -d '"' | grep -E $DEBS |
grep -v devel | grep -v dev | grep -v debuginfo)
mkdir -p install
for package in ${PACKAGES}
do
echo "Download and install ${package}"
curl -H "X-JFrog-Art-Api:${TOKEN}" -s -O ${URL}${package}
dpkg -x $package ./install
done
mkdir -p ${DST_DIR}/${GFX_DRIVER}
cp -r * ${DST_DIR}/${GFX_DRIVER}/
# fix path of libigdrcl in intel.icd file for local installation
echo "${DST_DIR}/${GFX_DRIVER}/install/usr/lib/x86_64-linux-gnu/intel-opencl/libigdrcl.so" > ${DST_DIR}/${GFX_DRIVER}/install/etc/OpenCL/vendors/intel.icd
echo "Driver installed to ${DST_DIR}/${GFX_DRIVER}/install"
elif [[ $GFX_DRIVER == *"Windows"* ]]; then
echo "Downloading Windows driver packages using"
echo " ARTIFACTORY_URL=${ARTIFACTORY_URL}"
echo " GFX_DRIVER=${GFX_DRIVER}"
echo " DST_DIR=${DST_DIR}"
echo " TOKEN=${TOKEN}"
echo "Download Installer-Release"
curl -H "X-JFrog-Art-Api:${TOKEN}" -s -O ${URL}Installer-Release-64-bit.7z
echo "Download Ocloc-Release"
curl -H "X-JFrog-Art-Api:${TOKEN}" -s -O ${URL}Ocloc-Release-64-bit.7z
echo "Unpacking Installer-Release"
7z x Installer-Release-64-bit.7z
echo "Unpacking Ocloc-Release"
7z x Ocloc-Release-64-bit.7z
rm Installer-Release-64-bit.7z Ocloc-Release-64-bit.7z
mkdir -p ${DST_DIR}/${GFX_DRIVER}
cp -r * ${DST_DIR}/${GFX_DRIVER}
chmod -R +x ${DST_DIR}/${GFX_DRIVER}
echo "Driver installed to ${DST_DIR}/${GFX_DRIVER}"
else
echo "Platform could not be detected from gfx-driver URL"
fi
cd ${CUR_DIR}
rm -rf /tmp/${GFX_DRIVER}