summaryrefslogtreecommitdiffstats
path: root/source/x/vulkan-sdk/fetch-sources.sh
diff options
context:
space:
mode:
Diffstat (limited to 'source/x/vulkan-sdk/fetch-sources.sh')
-rwxr-xr-xsource/x/vulkan-sdk/fetch-sources.sh57
1 files changed, 51 insertions, 6 deletions
diff --git a/source/x/vulkan-sdk/fetch-sources.sh b/source/x/vulkan-sdk/fetch-sources.sh
index da1121023..4202b1d4a 100755
--- a/source/x/vulkan-sdk/fetch-sources.sh
+++ b/source/x/vulkan-sdk/fetch-sources.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
@@ -48,7 +48,7 @@ EOF
echo $DEP_COMMIT
}
-rm -f *.tar.lz
+rm -f *.tar.lz *.fetched release_notes.html
wget https://vulkan.lunarg.com/doc/view/$VERSION/linux/release_notes.html
@@ -58,6 +58,9 @@ 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)
+ echo ""
+ echo "$NAME"
+ echo ""
# release notes for bugfix releases contain the repo list multiple times
# only create tarballs for the most recent ones (on top)
@@ -66,7 +69,7 @@ for i in $(grep "Repo:" release_notes.html | cut -d "\"" -f 2); do
cd $NAME-$COMMIT
git reset --hard $COMMIT || git reset --hard origin/$COMMIT
git submodule update --init --recursive
- git describe > .git-version
+ git describe --tags > .git-version
cd ..
tar --exclude-vcs -cf $NAME-$COMMIT.tar $NAME-$COMMIT
plzip -9 $NAME-$COMMIT.tar
@@ -79,7 +82,7 @@ for i in $(grep "Repo:" release_notes.html | cut -d "\"" -f 2); do
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
+ git describe --tags > .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
@@ -92,12 +95,42 @@ for i in $(grep "Repo:" release_notes.html | cut -d "\"" -f 2); do
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
+ git describe --tags > .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
+ elif [ "$NAME" = "Vulkan-Profiles" ]; then
+ if [ ! -e jsoncpp.fetched ]; then
+ JSONCPP_COMMIT=$(get_known_good Vulkan-Profiles-$COMMIT/scripts/known_good.json jsoncpp repos)
+
+ git clone https://github.com/open-source-parsers/jsoncpp.git jsoncpp-$JSONCPP_COMMIT
+ cd jsoncpp-$JSONCPP_COMMIT
+ git reset --hard $JSONCPP_COMMIT || git reset --hard origin/$JSONCPP_COMMIT
+ git submodule update --init --recursive
+ git describe --tags > .git-version
+ cd ..
+ tar --exclude-vcs -cf jsoncpp-$JSONCPP_COMMIT.tar jsoncpp-$JSONCPP_COMMIT
+ plzip -9 jsoncpp-$JSONCPP_COMMIT.tar
+ rm -rf jsoncpp-$JSONCPP_COMMIT
+ touch jsoncpp.fetched
+ fi
+ if [ ! -e valijson.fetched ]; then
+ VALIJSON_COMMIT=$(get_known_good Vulkan-Profiles-$COMMIT/scripts/known_good.json valijson repos)
+
+ git clone https://github.com/tristanpenman/valijson.git valijson-$VALIJSON_COMMIT
+ cd valijson-$VALIJSON_COMMIT
+ git reset --hard $VALIJSON_COMMIT || git reset --hard origin/$VALIJSON_COMMIT
+ # Intentionally skipping the submodules, as those result in a huge source tarball
+ #git submodule update --init --recursive
+ git describe --tags > .git-version
+ cd ..
+ tar --exclude-vcs -cf valijson-$VALIJSON_COMMIT.tar valijson-$VALIJSON_COMMIT
+ plzip -9 valijson-$VALIJSON_COMMIT.tar
+ rm -rf valijson-$VALIJSON_COMMIT
+ touch valijson.fetched
+ fi
fi
rm -rf $NAME-$COMMIT
@@ -112,7 +145,7 @@ if ! [ -e "Vulkan-ExtensionLayer.fetched" ]; then
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
+ git describe --tags > .git-version
cd ..
tar --exclude-vcs -cf Vulkan-ExtensionLayer-sdk-$VERSION.tar Vulkan-ExtensionLayer-sdk-$VERSION
plzip -9 Vulkan-ExtensionLayer-sdk-$VERSION.tar
@@ -124,3 +157,15 @@ echo $VERSION > VERSION
rm -f release_notes.html
rm -f *.fetched
+
+# Adding this kludge since 1.3.268 is somehow pulling a bad shaderc (the
+# commit referenced can't be found in the repo, and a mostly empty archive
+# is produced.) So, if we find an unreasonably small shaderc, just pull a
+# recent one.
+if [ "$(tar tf shaderc-*.tar.lz | wc -l)" -lt "7" ]; then
+ rm shaderc-*.tar.*
+ lftpget https://github.com/google/shaderc/archive/refs/tags/v2023.8.tar.gz
+ mv v2023.8.tar.gz shaderc-2023.8.tar.gz
+ gzip -d shaderc-2023.8.tar.gz
+ plzip -9 shaderc-2023.8.tar
+fi