From a4778c719f785f519ac0c5d5a064f2f51f79e355 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Wed, 16 Jun 2021 01:06:18 +0000 Subject: Wed Jun 16 01:06:18 UTC 2021 a/grub-2.06-x86_64-2.txz: Rebuilt. Don't use the -O2 compiler optimization as it causes an immediate reboot. Thanks to kaott. ap/nano-5.8-x86_64-1.txz: Upgraded. d/opencl-headers-2021.04.29-noarch-1.txz: Upgraded. Thanks to Heinz Wiesinger. kde/bluedevil-5.22.1-x86_64-1.txz: Upgraded. kde/breeze-5.22.1-x86_64-1.txz: Upgraded. kde/breeze-grub-5.22.1-x86_64-1.txz: Upgraded. kde/breeze-gtk-5.22.1-x86_64-1.txz: Upgraded. kde/drkonqi-5.22.1-x86_64-1.txz: Upgraded. kde/kactivitymanagerd-5.22.1-x86_64-1.txz: Upgraded. kde/kde-cli-tools-5.22.1-x86_64-1.txz: Upgraded. kde/kde-gtk-config-5.22.1-x86_64-1.txz: Upgraded. kde/kdecoration-5.22.1-x86_64-1.txz: Upgraded. kde/kdeplasma-addons-5.22.1-x86_64-1.txz: Upgraded. kde/kgamma5-5.22.1-x86_64-1.txz: Upgraded. kde/khotkeys-5.22.1-x86_64-1.txz: Upgraded. kde/kinfocenter-5.22.1-x86_64-1.txz: Upgraded. kde/kmenuedit-5.22.1-x86_64-1.txz: Upgraded. kde/kscreen-5.22.1-x86_64-1.txz: Upgraded. kde/kscreenlocker-5.22.1-x86_64-1.txz: Upgraded. kde/ksshaskpass-5.22.1-x86_64-1.txz: Upgraded. kde/ksystemstats-5.22.1-x86_64-1.txz: Upgraded. kde/kwallet-pam-5.22.1-x86_64-1.txz: Upgraded. kde/kwayland-integration-5.22.1-x86_64-1.txz: Upgraded. kde/kwayland-server-5.22.1-x86_64-1.txz: Upgraded. kde/kwin-5.22.1-x86_64-1.txz: Upgraded. kde/kwrited-5.22.1-x86_64-1.txz: Upgraded. kde/layer-shell-qt-5.22.1-x86_64-1.txz: Upgraded. kde/libkscreen-5.22.1-x86_64-1.txz: Upgraded. kde/libksysguard-5.22.1-x86_64-1.txz: Upgraded. kde/milou-5.22.1-x86_64-1.txz: Upgraded. kde/oxygen-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-browser-integration-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-desktop-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-disks-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-firewall-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-integration-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-nm-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-pa-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-sdk-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-systemmonitor-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-vault-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-workspace-5.22.1-x86_64-1.txz: Upgraded. kde/plasma-workspace-wallpapers-5.22.1-x86_64-1.txz: Upgraded. kde/polkit-kde-agent-1-5.22.1-x86_64-1.txz: Upgraded. kde/powerdevil-5.22.1-x86_64-1.txz: Upgraded. kde/qqc2-breeze-style-5.22.1-x86_64-1.txz: Upgraded. kde/sddm-kcm-5.22.1-x86_64-1.txz: Upgraded. kde/systemsettings-5.22.1-x86_64-1.txz: Upgraded. kde/xdg-desktop-portal-kde-5.22.1-x86_64-1.txz: Upgraded. l/M2Crypto-0.38.0-x86_64-1.txz: Upgraded. l/libclc-12.0.0-x86_64-1.txz: Upgraded. Thanks to Heinz Wiesinger. l/spirv-llvm-translator-12.0.0-x86_64-1.txz: Added. Needed by libclc. Thanks to Heinz Wiesinger. n/getmail-6.17-x86_64-1.txz: Upgraded. n/nfs-utils-2.5.4-x86_64-1.txz: Upgraded. n/proftpd-1.3.7b-x86_64-1.txz: Upgraded. x/fonttosfnt-1.2.2-x86_64-1.txz: Upgraded. x/vulkan-sdk-1.2.176.1-x86_64-1.txz: Upgraded. Thanks to Heinz Wiesinger. xap/mozilla-firefox-89.0.1-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/en-US/firefox/89.0.1/releasenotes/ (* Security fix *) --- source/x/vulkan-sdk/VERSION | 1 + source/x/vulkan-sdk/fetch-sources.sh | 180 ++++++------ source/x/vulkan-sdk/vulkan-sdk.SlackBuild | 449 +++++++++++++++++++++++++++--- source/x/x11/build/fonttosfnt | 2 +- 4 files changed, 497 insertions(+), 135 deletions(-) create mode 100644 source/x/vulkan-sdk/VERSION (limited to 'source/x') diff --git a/source/x/vulkan-sdk/VERSION b/source/x/vulkan-sdk/VERSION new file mode 100644 index 000000000..0b8928f3a --- /dev/null +++ b/source/x/vulkan-sdk/VERSION @@ -0,0 +1 @@ +1.2.176.1 diff --git a/source/x/vulkan-sdk/fetch-sources.sh b/source/x/vulkan-sdk/fetch-sources.sh index 73e78f9e5..da1121023 100755 --- a/source/x/vulkan-sdk/fetch-sources.sh +++ b/source/x/vulkan-sdk/fetch-sources.sh @@ -1,6 +1,7 @@ #!/bin/sh # Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2021 Heinz Wiesinger, Amsterdam, The Netherlands # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -27,102 +28,99 @@ # # Example: VERSION=1.1.92.1 ./fetch-sources.sh -VERSION=${VERSION:-1.2.162.2} -BRANCH=${BRANCH:-sdk-1.2.162} +VERSION=${VERSION:-latest} -rm -rf Vulkan-*-*.tar.?z glslang* SPIRV-Tools* SPIRV-Headers* \ - Vulkan-Headers-sdk-${VERSION}* \ - Vulkan-ValidationLayers-sdk-${VERSION}* \ - Vulkan-Loader-sdk-${VERSION}* \ - Vulkan-Tools-sdk-${VERSION}* +get_known_good() { +JSON_PATH=$1 +DEP=$2 +KEY=$3 - -git clone -b "$BRANCH" --single-branch https://github.com/KhronosGroup/Vulkan-Headers.git Vulkan-Headers-sdk-${VERSION} -rm -rf Vulkan-Headers-sdk-${VERSION}/.git -tar cf Vulkan-Headers-sdk-${VERSION}.tar Vulkan-Headers-sdk-${VERSION} -rm -rf Vulkan-Headers-sdk-${VERSION} -plzip -9 Vulkan-Headers-sdk-${VERSION}.tar - -git clone -b "$BRANCH" --single-branch https://github.com/KhronosGroup/Vulkan-ValidationLayers.git Vulkan-ValidationLayers-sdk-${VERSION} -rm -rf Vulkan-ValidationLayers-sdk-${VERSION}/.git -tar cf Vulkan-ValidationLayers-sdk-${VERSION}.tar Vulkan-ValidationLayers-sdk-${VERSION} -rm -rf Vulkan-ValidationLayers-sdk-${VERSION} -# Put this here since python's tarfile.open doesn't like tar.lz: -GLSLANG_COMMIT=$(python3 - << EOF -import json -import tarfile -with tarfile.open('Vulkan-ValidationLayers-sdk-$VERSION.tar') as layers: - known_good = layers.extractfile('Vulkan-ValidationLayers-sdk-${VERSION}/scripts/known_good.json') - known_good_info = json.loads(known_good.read()) -glslang = next(repo for repo in known_good_info['repos'] if repo['name'] == 'glslang') -print(glslang['commit']) -EOF -) -# Now it's safe to compress: -plzip -9 Vulkan-ValidationLayers-sdk-${VERSION}.tar - -git clone -b "$BRANCH" --single-branch https://github.com/KhronosGroup/Vulkan-Loader.git Vulkan-Loader-sdk-${VERSION} -rm -rf Vulkan-Loader-sdk-${VERSION}/.git -tar cf Vulkan-Loader-sdk-${VERSION}.tar Vulkan-Loader-sdk-${VERSION} -rm -rf Vulkan-Loader-sdk-${VERSION} -plzip -9 Vulkan-Loader-sdk-${VERSION}.tar - -git clone -b "$BRANCH" --single-branch https://github.com/KhronosGroup/Vulkan-Tools.git Vulkan-Tools-sdk-${VERSION} -rm -rf Vulkan-Tools-sdk-${VERSION}/.git -tar cf Vulkan-Tools-sdk-${VERSION}.tar Vulkan-Tools-sdk-${VERSION} -rm -rf Vulkan-Tools-sdk-${VERSION} -plzip -9 Vulkan-Tools-sdk-${VERSION}.tar - -git clone https://github.com/KhronosGroup/glslang.git -cd glslang || exit -git checkout "$GLSLANG_COMMIT" -GLSLANG_VERSION=$(git rev-parse --short HEAD) -rm -rf .git -cd .. - -mv glslang "glslang-$GLSLANG_VERSION" - -SPIRV_TOOLS_COMMIT=$(python3 - << EOF -import json -with open('glslang-$GLSLANG_VERSION/known_good.json') as f: - known_good = json.load(f) -tools = next(commit for commit in known_good['commits'] if commit['name'] == 'spirv-tools') -print(tools['commit']) -EOF -) - -git clone https://github.com/KhronosGroup/SPIRV-Tools.git -cd SPIRV-Tools || exit -git checkout "$SPIRV_TOOLS_COMMIT" -SPIRV_TOOLS_VERSION="$(git rev-parse --short HEAD)" -rm -rf .git -cd .. -mv SPIRV-Tools SPIRV-Tools-$SPIRV_TOOLS_VERSION -tar cf SPIRV-Tools-$SPIRV_TOOLS_VERSION.tar SPIRV-Tools-$SPIRV_TOOLS_VERSION -rm -rf SPIRV-Tools-$SPIRV_TOOLS_VERSION -plzip -9 SPIRV-Tools-$SPIRV_TOOLS_VERSION.tar - -SPIRV_HEADERS_COMMIT=$(python3 - << EOF +DEP_COMMIT=$(python3 - << EOF import json -with open('glslang-$GLSLANG_VERSION/known_good.json') as f: +with open('$JSON_PATH') as f: known_good = json.load(f) -name = 'spirv-tools/external/spirv-headers' -headers = next(commit for commit in known_good['commits'] if commit['name'] == name) +name = '$DEP' +headers = next(commit for commit in known_good['$KEY'] if commit['name'] == name) print(headers['commit']) EOF ) -git clone https://github.com/KhronosGroup/SPIRV-Headers.git -cd SPIRV-Headers || exit -git checkout "$SPIRV_HEADERS_COMMIT" -SPIRV_HEADERS_VERSION="$(git rev-parse --short HEAD)" -rm -rf .git -cd .. -mv SPIRV-Headers SPIRV-Headers-$SPIRV_HEADERS_VERSION -tar cf SPIRV-Headers-$SPIRV_HEADERS_VERSION.tar SPIRV-Headers-$SPIRV_HEADERS_VERSION -rm -rf SPIRV-Headers-$SPIRV_HEADERS_VERSION -plzip -9 SPIRV-Headers-$SPIRV_HEADERS_VERSION.tar - -tar cf glslang-$GLSLANG_VERSION.tar glslang-$GLSLANG_VERSION -rm -rf glslang-$GLSLANG_VERSION -plzip -9 glslang-$GLSLANG_VERSION.tar +echo $DEP_COMMIT +} + +rm -f *.tar.lz + +wget https://vulkan.lunarg.com/doc/view/$VERSION/linux/release_notes.html + +VERSION=$(grep "Version" release_notes.html | grep "for Linux" | sed -e 's/<[^>]*>//g' | cut -d " " -f 2) + +for i in $(grep "Repo:" release_notes.html | cut -d "\"" -f 2); do + COMMIT=$(basename $i) + REPO=$(echo $i | cut -d "/" -f 1-5) + NAME=$(basename $REPO) + + # release notes for bugfix releases contain the repo list multiple times + # only create tarballs for the most recent ones (on top) + if ! [ -e $NAME.fetched ]; then + git clone $REPO $NAME-$COMMIT + cd $NAME-$COMMIT + git reset --hard $COMMIT || git reset --hard origin/$COMMIT + git submodule update --init --recursive + git describe > .git-version + cd .. + tar --exclude-vcs -cf $NAME-$COMMIT.tar $NAME-$COMMIT + plzip -9 $NAME-$COMMIT.tar + touch $NAME.fetched + + if [ "$NAME" = "glslang" -a ! -e SPIRV-Headers.fetched ]; then + SPIRV_HEADERS_COMMIT=$(get_known_good glslang-$COMMIT/known_good.json spirv-tools/external/spirv-headers commits) + + git clone https://github.com/KhronosGroup/SPIRV-Headers.git SPIRV-Headers-$SPIRV_HEADERS_COMMIT + cd SPIRV-Headers-$SPIRV_HEADERS_COMMIT + git reset --hard $SPIRV_HEADERS_COMMIT || git reset --hard origin/$SPIRV_HEADERS_COMMIT + git submodule update --init --recursive + git describe > .git-version + cd .. + tar --exclude-vcs -cf SPIRV-Headers-$SPIRV_HEADERS_COMMIT.tar SPIRV-Headers-$SPIRV_HEADERS_COMMIT + plzip -9 SPIRV-Headers-$SPIRV_HEADERS_COMMIT.tar + rm -rf SPIRV-Headers-$SPIRV_HEADERS_COMMIT + touch SPIRV-Headers.fetched + elif [ "$NAME" = "Vulkan-ValidationLayers" -a ! -e robin-hood-hashing.fetched ]; then + ROBIN_HOOD_COMMIT=$(get_known_good Vulkan-ValidationLayers-$COMMIT/scripts/known_good.json robin-hood-hashing repos) + + git clone https://github.com/martinus/robin-hood-hashing.git robin-hood-hashing-$ROBIN_HOOD_COMMIT + cd robin-hood-hashing-$ROBIN_HOOD_COMMIT + git reset --hard $ROBIN_HOOD_COMMIT || git reset --hard origin/$ROBIN_HOOD_COMMIT + git submodule update --init --recursive + git describe > .git-version + cd .. + tar --exclude-vcs -cf robin-hood-hashing-$ROBIN_HOOD_COMMIT.tar robin-hood-hashing-$ROBIN_HOOD_COMMIT + plzip -9 robin-hood-hashing-$ROBIN_HOOD_COMMIT.tar + rm -rf robin-hood-hashing-$ROBIN_HOOD_COMMIT + touch robin-hood-hashing.fetched + fi + + rm -rf $NAME-$COMMIT + fi + +done + +if ! [ -e "Vulkan-ExtensionLayer.fetched" ]; then + git clone https://github.com/KhronosGroup/Vulkan-ExtensionLayer.git Vulkan-ExtensionLayer-sdk-$VERSION + cd Vulkan-ExtensionLayer-sdk-$VERSION + git reset --hard sdk-$VERSION || git reset --hard origin/sdk-$VERSION || \ + git reset --hard sdk-$VERSION-TAG || git reset --hard origin/sdk-$VERSION-TAG || \ + git reset --hard sdk.$VERSION-TAG || git reset --hard origin/sdk.$VERSION-TAG + git submodule update --init --recursive + git describe > .git-version + cd .. + tar --exclude-vcs -cf Vulkan-ExtensionLayer-sdk-$VERSION.tar Vulkan-ExtensionLayer-sdk-$VERSION + plzip -9 Vulkan-ExtensionLayer-sdk-$VERSION.tar + rm -rf Vulkan-ExtensionLayer-sdk-$VERSION + touch Vulkan-ExtensionLayer.fetched +fi + +echo $VERSION > VERSION + +rm -f release_notes.html +rm -f *.fetched diff --git a/source/x/vulkan-sdk/vulkan-sdk.SlackBuild b/source/x/vulkan-sdk/vulkan-sdk.SlackBuild index 9f63d76ad..a6ee5ae20 100755 --- a/source/x/vulkan-sdk/vulkan-sdk.SlackBuild +++ b/source/x/vulkan-sdk/vulkan-sdk.SlackBuild @@ -2,7 +2,6 @@ # Slackware build script for vulkan-sdk -# Copyright 2016, 2017 Heinz Wiesinger, Amsterdam, The Netherlands # Copyright 2016, 2017, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # @@ -26,7 +25,8 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=vulkan-sdk -VERSION=${VERSION:-$(echo Vulkan-ValidationLayers-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +# The ./VERSION file is created by ./fetch-sources.sh: +VERSION=${VERSION:-$(cat VERSION)} BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: @@ -74,18 +74,76 @@ PKG=$TMP/package-vulkan-sdk GLSLANG_VERSION=$(echo glslang-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) SPIRV_HEADERS_VERSION=$(echo SPIRV-Headers-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) SPIRV_TOOLS_VERSION=$(echo SPIRV-Tools-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKAN_HEADERS_VERSION=$(echo Vulkan-Headers-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKAN_LOADER_VERSION=$(echo Vulkan-Loader-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKAN_VALIDATIONLAYERS_VERSION=$(echo Vulkan-ValidationLayers-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +ROBIN_HOOD_VERSION=$(echo robin-hood-hashing-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKAN_EXTENSIONLAYER_VERSION=$(echo Vulkan-ExtensionLayer-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKAN_TOOLS_VERSION=$(echo Vulkan-Tools-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VULKANTOOLS_VERSION=$(echo VulkanTools-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +SHADERC_VERSION=$(echo shaderc-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +SPIRV_CROSS_VERSION=$(echo SPIRV-Cross-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +GFXRECONSTRUCT_VERSION=$(echo gfxreconstruct-sdk-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +DXC_VERSION=$(echo DirectXShaderCompiler-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +SPIRV_REFLECT_VERSION=$(echo SPIRV-Reflect-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev) + +# upstream builder order: +# - SPIRV-Headers +# - glslang +# - Vulkan-Headers +# - Vulkan-Loader +# - Vulkan-ValidationLayers +# - Vulkan-ExtensionLayer +# - Vulkan-Tools +# - VulkanTools +# - shaderc +# - SPIRV-Cross +# - gfxreconstruct +# - DirectXShaderCompiler +# - SPIRV-Reflect rm -rf $PKG mkdir -p $TMP $PKG cd $TMP # Clear existing tmp sources: -rm -rf glslang-${GLSLANG_VERSION} \ - Vulkan-Headers-sdk-$VERSION \ - Vulkan-Loader-sdk-$VERSION \ - Vulkan-ValidationLayers-sdk-$VERSION \ - Vulkan-Tools-sdk-$VERSION +rm -rf SPIRV-Headers-$SPIRV_HEADERS_VERSION \ + glslang-${GLSLANG_VERSION} \ + Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION \ + Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION \ + Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION \ + Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION \ + Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION \ + VulkanTools-sdk-$VULKANTOOLS_VERSION \ + shaderc-$SHADERC_VERSION \ + SPIRV-Cross-$SPIRV_CROSS_VERSION \ + gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION \ + DirectXShaderCompiler-$DXC_VERSION \ + SPIRV-Reflect-$SPIRV_REFLECT_VERSION +tar xvf $CWD/SPIRV-Headers-$SPIRV_HEADERS_VERSION.tar.?z || exit 1 +cd SPIRV-Headers-$SPIRV_HEADERS_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +mkdir -p build +cd build +cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \ + -DCMAKE_BUILD_TYPE=Release \ + .. +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 + +cd $TMP tar xvf $CWD/glslang-${GLSLANG_VERSION}.tar.?z || exit 1 cd glslang-$GLSLANG_VERSION/External tar xvf $CWD/SPIRV-Tools-$SPIRV_TOOLS_VERSION.tar.?z || exit 1 @@ -113,17 +171,18 @@ cd build cmake \ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ - -DCMAKE_INSTALL_PREFIX=$PKG \ + -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \ -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS=On \ + -DSPIRV_TOOLS_BUILD_STATIC=Off \ .. -cmake .. -DCMAKE_INSTALL_PREFIX=/usr make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 cd $TMP -tar xvf $CWD/Vulkan-Headers-sdk-$VERSION.tar.?z || exit 1 -cd Vulkan-Headers-sdk-$VERSION +tar xvf $CWD/Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION.tar.?z || exit 1 +cd Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION chown -R root:root . find . \ @@ -144,25 +203,9 @@ cmake \ make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 -# Make sure some SPIR-V headers are there: -HEADER_SOURCE_DIR="$TMP/glslang-${GLSLANG_VERSION}/External/spirv-tools/external/spirv-headers/include/spirv/unified1" -mkdir -p $PKG/usr/include/vulkan -for file in GLSL.std.450.h spirv.h spirv.hpp spirv.hpp11 spirv.json \ - spirv.lua spirv.py ; do - if [ -r $HEADER_SOURCE_DIR/$file -a ! -r $PKG/usr/include/vulkan/$file ]; then - cp -a --verbose $HEADER_SOURCE_DIR/$file $PKG/usr/include/vulkan/$file - chown root:root $PKG/usr/include/vulkan/$file - chmod 644 $PKG/usr/include/vulkan/$file - fi -done -unset HEADER_SOURCE_DIR -# This location is checked as well, so link it: -mkdir -p $PKG/usr/include/spirv -( cd $PKG/usr/include/spirv ; ln -sf ../vulkan unified1 ) - cd $TMP -tar xvf $CWD/Vulkan-Loader-sdk-$VERSION.tar.?z || exit 1 -cd $TMP/Vulkan-Loader-sdk-$VERSION +tar xvf $CWD/Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION.tar.?z || exit 1 +cd $TMP/Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION chown -R root:root . find . \ @@ -177,19 +220,19 @@ cd build -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DGLSLANG_INSTALL_DIR=$PKG/usr \ -DVULKAN_HEADERS_INSTALL_DIR=$PKG/usr \ -DBUILD_WSI_WAYLAND_SUPPORT=On \ - -DBUILD_WSI_MIR_SUPPORT=Off \ .. make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 cd $TMP - -tar xvf $CWD/Vulkan-ValidationLayers-sdk-$VERSION.tar.?z || exit 1 -cd $TMP/Vulkan-ValidationLayers-sdk-$VERSION +tar xvf $CWD/Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION.tar.?z || exit 1 +cd $TMP/Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION/external +tar xvf $CWD/robin-hood-hashing-$ROBIN_HOOD_VERSION.tar.?z || exit 1 +mv robin-hood-hashing-$ROBIN_HOOD_VERSION robin-hood-hashing +cd .. chown -R root:root . find . \ @@ -211,22 +254,52 @@ cd build -DBUILD_WSI_XLIB_SUPPORT=On \ -DBUILD_WSI_XCB_SUPPORT=On \ -DBUILD_WSI_WAYLAND_SUPPORT=On \ - -DBUILD_WSI_MIR_SUPPORT=Off \ -DCMAKE_BUILD_TYPE=Release \ -DGLSLANG_INSTALL_DIR=$PKG/usr \ -DVULKAN_HEADERS_INSTALL_DIR=$PKG/usr \ - -DVULKAN_LOADER_INSTALL_DIR=$PKG/usr \ -DSPIRV_HEADERS_INSTALL_DIR=$PKG/usr \ -DBUILD_LAYER_SUPPORT_FILES=On \ - -DCMAKE_INSTALL_INCLUDEDIR=/usr/include/vulkan \ + -DROBIN_HOOD_HASHING_INSTALL_DIR="$TMP/Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION/external/robin-hood-hashing" \ + .. + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + +cd $TMP +tar xvf $CWD/Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION.tar.?z || exit 1 +cd $TMP/Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_SYSCONFDIR=/etc \ + -DCMAKE_INSTALL_DATADIR=/share \ + -DCMAKE_SKIP_RPATH=True \ + -DBUILD_TESTS=Off \ + -DBUILD_WSI_XLIB_SUPPORT=On \ + -DBUILD_WSI_XCB_SUPPORT=On \ + -DBUILD_WSI_WAYLAND_SUPPORT=On \ + -DCMAKE_BUILD_TYPE=Release \ + -DVULKAN_HEADERS_INSTALL_DIR=$PKG/usr \ + -DBUILD_LAYER_SUPPORT_FILES=On \ .. make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 cd $TMP -tar xvf $CWD/Vulkan-Tools-sdk-$VERSION.tar.?z || exit 1 -cd $TMP/Vulkan-Tools-sdk-$VERSION +tar xvf $CWD/Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION.tar.?z || exit 1 +cd $TMP/Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION chown -R root:root . find . \ @@ -246,22 +319,312 @@ cd build -DGLSLANG_INSTALL_DIR=$PKG/usr \ -DVULKAN_LOADER_INSTALL_DIR=$PKG/usr \ -DBUILD_WSI_WAYLAND_SUPPORT=On \ - -DBUILD_WSI_MIR_SUPPORT=Off \ + .. + + # make uses glslangValidator, which is built against a shared + # libglslang that isn't installed yet + export LD_LIBRARY_PATH=$PKG/usr/lib$LIBDIRSUFFIX + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + +cd $TMP +tar xvf $CWD/VulkanTools-sdk-$VULKANTOOLS_VERSION.tar.?z || exit 1 +cd $TMP/VulkanTools-sdk-$VULKANTOOLS_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +# building jsoncpp +cd submodules/jsoncpp + python3 amalgamate.py +cd ../../ + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_SYSCONFDIR=/usr/share \ + -DVULKAN_HEADERS_INSTALL_DIR=$PKG/usr \ + -DVULKAN_REGISTRY_PATH_HINT=$PKG/usr \ + -DVULKAN_LOADER_INSTALL_DIR=$PKG/usr \ + -DVULKAN_VALIDATIONLAYERS_INSTALL_DIR=$PKG/usr \ + -DBUILD_WSI_WAYLAND_SUPPORT=On \ + -DBUILD_TESTS=Off \ + -DINSTALL_GTEST=Off \ + .. + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + + mkdir -p $PKG/usr/share/vulkan/config/VK_LAYER_LUNARG_device_simulation + install -m 644 ../layersvt/device_simulation_examples/sdk_sample_configs/*.json \ + $PKG/usr/share/vulkan/config/VK_LAYER_LUNARG_device_simulation/ + +cd $TMP +tar xvf $CWD/shaderc-$SHADERC_VERSION.tar.?z || exit 1 +cd $TMP/shaderc-$SHADERC_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +# Report correct versions in `glslc --version` +# git describe output collected in fetch-sources.sh +sed -i "s|\['git', 'describe'\]|\['cat', '.git-version'\]|" \ + utils/update_build_version.py + +# We're pointing shaderc to the sources we just compiled +# This won't avoid compiling them again, but slightly better than +# extracting them twice. +# Short of polluting the build system with the libraries we built +# so far, there's no (easy) way to point shaderc to the already +# built versions. + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_SYSCONFDIR=/usr/share \ + -DSHADERC_SKIP_TESTS=On \ + -DSHADERC_SKIP_EXAMPLES=On \ + -DSHADERC_SPIRV_TOOLS_DIR=$TMP/glslang-$GLSLANG_VERSION/External/spirv-tools \ + -DSHADERC_GLSLANG_DIR=$TMP/glslang-$GLSLANG_VERSION \ + -DSKIP_GLSLANG_INSTALL=On \ + -DSKIP_SPIRV_TOOLS_INSTALL=On \ + -DBUILD_SHARED_LIBS=On \ + -DSPIRV_TOOLS_BUILD_STATIC=Off \ + -DBUILD_TESTING=Off \ + .. + + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + +cd $TMP +tar xvf $CWD/SPIRV-Cross-$SPIRV_CROSS_VERSION.tar.?z || exit 1 +cd $TMP/SPIRV-Cross-$SPIRV_CROSS_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +# Set git hash +SPIRV_CROSS_SHORT_HASH=$(echo $SPIRV_CROSS_VERSION | cut -c 1-8) +sed -i "s|version \"unknown\"|version \"$SPIRV_CROSS_SHORT_HASH\"|" \ + CMakeLists.txt + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSPIRV_CROSS_ENABLE_TESTS=Off \ + -DSPIRV_CROSS_SHARED=On \ + -DSPIRV_CROSS_FORCE_PIC=On \ + -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON \ + .. + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + +cd $TMP +tar xvf $CWD/gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION.tar.?z || exit 1 +cd $TMP/gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + .. + + make $NUMJOBS || make || exit 1 + make install DESTDIR=$PKG || exit 1 + +cd $TMP +tar xvf $CWD/DirectXShaderCompiler-$DXC_VERSION.tar.?z || exit 1 +cd $TMP/DirectXShaderCompiler-$DXC_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_INCLUDEDIR=include/dxc \ + -DLLVM_LIBDIR_SUFFIX=$LIBDIRSUFFIX \ + $(cat ../utils/cmake-predefined-config-params) \ + .. + + make $NUMJOBS || make || exit 1 + + # "make install" is essentially useless at this point + # It installs a bunch of unnecessary llvm files + # https://github.com/microsoft/DirectXShaderCompiler/issues/3276 + + # install steps taken from appveyor.yml + mkdir -p $PKG/usr/{bin,lib$LIBDIRSUFFIX,include} + cp -P bin/dxc* $PKG/usr/bin/ + cp -P lib$LIBDIRSUFFIX/libdxcompiler.so* $PKG/usr/lib$LIBDIRSUFFIX/ + cp -r ../include/dxc $PKG/usr/include/ + +cd $TMP +tar xvf $CWD/SPIRV-Reflect-$SPIRV_REFLECT_VERSION.tar.?z || exit 1 +cd $TMP/SPIRV-Reflect-$SPIRV_REFLECT_VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +mkdir -p build +cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ .. make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 + mkdir -p $PKG/usr/include/SPIRV-Reflect/include/spirv/unified1 + + install -m 644 ../spirv_reflect.c $PKG/usr/include/SPIRV-Reflect/ + install -m 644 ../spirv_reflect.h $PKG/usr/include/SPIRV-Reflect/ + install -m 644 ../include/spirv/unified1/spirv.h \ + $PKG/usr/include/SPIRV-Reflect/include/spirv/unified1/ + cd $TMP find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Headers +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Tools +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/glslang +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Headers +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Loader +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-ValidationLayers +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-ExtensionLayer +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Tools +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/VulkanTools +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/shaderc +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Cross +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/gfxreconstruct +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/DirectXShaderCompiler +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Reflect +cp -a \ + SPIRV-Headers-$SPIRV_HEADERS_VERSION/LICENSE* \ + SPIRV-Headers-$SPIRV_HEADERS_VERSION/README* \ + $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Headers +cp -a \ + glslang-$GLSLANG_VERSION/External/spirv-tools/LICENSE* \ + glslang-$GLSLANG_VERSION/External/spirv-tools/README* \ + glslang-$GLSLANG_VERSION/External/spirv-tools/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Tools +cp -a \ + glslang-$GLSLANG_VERSION/LICENSE* \ + glslang-$GLSLANG_VERSION/README* \ + glslang-$GLSLANG_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/glslang +cp -a \ + Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION/LICENSE* \ + Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION/README* \ + Vulkan-Headers-sdk-$VULKAN_HEADERS_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Headers +cp -a \ + Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION/LICENSE* \ + Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION/README* \ + Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION/*.md \ + Vulkan-Loader-sdk-$VULKAN_LOADER_VERSION/loader/LoaderAndLayerInterface.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Loader +cp -a \ + Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION/LICENSE* \ + Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION/README* \ + Vulkan-ValidationLayers-sdk-$VULKAN_VALIDATIONLAYERS_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-ValidationLayers +cp -a \ + Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION/LICENSE* \ + Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION/README* \ + Vulkan-ExtensionLayer-sdk-$VULKAN_EXTENSIONLAYER_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-ExtensionLayer +cp -a \ + Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION/LICENSE* \ + Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION/README* \ + Vulkan-Tools-sdk-$VULKAN_TOOLS_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/Vulkan-Tools +cp -a \ + VulkanTools-sdk-$VULKANTOOLS_VERSION/LICENSE* \ + VulkanTools-sdk-$VULKANTOOLS_VERSION/README* \ + VulkanTools-sdk-$VULKANTOOLS_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/VulkanTools +cp -a \ + shaderc-$SHADERC_VERSION/AUTHORS \ + shaderc-$SHADERC_VERSION/LICENSE* \ + shaderc-$SHADERC_VERSION/README* \ + shaderc-$SHADERC_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/shaderc +cp -a \ + SPIRV-Cross-$SPIRV_CROSS_VERSION/LICENSE* \ + SPIRV-Cross-$SPIRV_CROSS_VERSION/README* \ + SPIRV-Cross-$SPIRV_CROSS_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Cross +cp -a \ + gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION/LICENSE* \ + gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION/README* \ + gfxreconstruct-sdk-$GFXRECONSTRUCT_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/gfxreconstruct +cp -a \ + DirectXShaderCompiler-$DXC_VERSION/LICENSE* \ + DirectXShaderCompiler-$DXC_VERSION/README* \ + DirectXShaderCompiler-$DXC_VERSION/ThirdPartyNotices.txt \ + DirectXShaderCompiler-$DXC_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/DirectXShaderCompiler cp -a \ - Vulkan-Loader-sdk-$VERSION/*.txt \ - Vulkan-Loader-sdk-$VERSION/loader/LoaderAndLayerInterface.md \ - $PKG/usr/doc/$PKGNAM-$VERSION + SPIRV-Reflect-$SPIRV_REFLECT_VERSION/LICENSE* \ + SPIRV-Reflect-$SPIRV_REFLECT_VERSION/README* \ + SPIRV-Reflect-$SPIRV_REFLECT_VERSION/*.md \ + $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Reflect mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/source/x/x11/build/fonttosfnt b/source/x/x11/build/fonttosfnt index 00750edc0..d00491fd7 100644 --- a/source/x/x11/build/fonttosfnt +++ b/source/x/x11/build/fonttosfnt @@ -1 +1 @@ -3 +1 -- cgit v1.2.3