This aims to fix two issues with the previous implementation:
1. the whole content of downloaded archives were extracted, while only
few files are necessary;
2. the archives were extracted in the prebuild-deps/ directory as is.
As a consequence of (2), the actual directory name relied on the root
directory of the archive. For adb, this root directory was always
"platform-tools", so when bumping the adb version, the target directory
already existed and the dependency was not upgraded (the old one had to
be removed manually).
Expose common function to download a file and check its checksum, but
let the custom script for each dependency extract only the needed files
and reorganize the content if necessary.
33 lines
845 B
Bash
Executable File
33 lines
845 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
DIR=$(dirname ${BASH_SOURCE[0]})
|
|
cd "$DIR"
|
|
. common
|
|
mkdir -p "$PREBUILT_DATA_DIR"
|
|
cd "$PREBUILT_DATA_DIR"
|
|
|
|
DEP_DIR=SDL2-2.0.20
|
|
|
|
FILENAME=SDL2-devel-2.0.20-mingw.tar.gz
|
|
SHA256SUM=38094d82a857d6c62352e5c5cdec74948c5b4d25c59cbd298d6d233568976bd1
|
|
|
|
if [[ -d "$DEP_DIR" ]]
|
|
then
|
|
echo "$DEP_DIR" found
|
|
exit 0
|
|
fi
|
|
|
|
get_file "https://libsdl.org/release/$FILENAME" "$FILENAME" "$SHA256SUM"
|
|
|
|
mkdir "$DEP_DIR"
|
|
cd "$DEP_DIR"
|
|
|
|
TAR_PREFIX="$DEP_DIR" # root directory inside the tar has the same name
|
|
tar xf "../$FILENAME" --strip-components=1 \
|
|
"$TAR_PREFIX"/i686-w64-mingw32/bin/SDL2.dll \
|
|
"$TAR_PREFIX"/i686-w64-mingw32/include/ \
|
|
"$TAR_PREFIX"/i686-w64-mingw32/lib/ \
|
|
"$TAR_PREFIX"/x86_64-w64-mingw32/bin/SDL2.dll \
|
|
"$TAR_PREFIX"/x86_64-w64-mingw32/include/ \
|
|
"$TAR_PREFIX"/x86_64-w64-mingw32/lib/ \
|