msys2-configure: only extract what we need

In case the packages directory has been preloaded or symlinked.
This commit is contained in:
Přemysl Eric Janouch 2023-06-26 21:23:24 +02:00
parent 2869c656c1
commit 68245b55c9
Signed by: p
GPG Key ID: A0420B94F92B9493

View File

@ -46,7 +46,8 @@ fetch() {
} BEGIN { while ((getline < "db.tsv") > 0) { } BEGIN { while ((getline < "db.tsv") > 0) {
filenames[$1] = $2; deps[$1] = ""; for (i = 3; i <= NF; i++) { filenames[$1] = $2; deps[$1] = ""; for (i = 3; i <= NF; i++) {
gsub(/[<=>].*/, "", $i); deps[$1] = deps[$1] $i FS } gsub(/[<=>].*/, "", $i); deps[$1] = deps[$1] $i FS }
} for (i = 0; i < ARGC; i++) get(ARGV[i]) }' "$@" | while IFS= read -r name } for (i = 0; i < ARGC; i++) get(ARGV[i]) }' "$@" | tee db.want | \
while IFS= read -r name
do do
status Fetching "$name" status Fetching "$name"
[ -f "packages/$name" ] || curl -#o "packages/$name" "$repo/$name" [ -f "packages/$name" ] || curl -#o "packages/$name" "$repo/$name"
@ -69,10 +70,10 @@ extract() {
for subdir in * for subdir in *
do [ -d "$subdir" -a "$subdir" != packages ] && rm -rf -- "$subdir" do [ -d "$subdir" -a "$subdir" != packages ] && rm -rf -- "$subdir"
done done
for i in packages/* while IFS= read -r name
do bsdtar -xf "$i" --strip-components 1 \ do bsdtar -xf "packages/$name" --strip-components 1 \
--exclude '*/share/man' --exclude '*/share/doc' --exclude '*/share/man' --exclude '*/share/doc'
done done < db.want
bsdtar -xf exiftool.tar.gz bsdtar -xf exiftool.tar.gz
mv Image-ExifTool-*/exiftool bin mv Image-ExifTool-*/exiftool bin