HULL/misc/update-libs.sh
2025-07-13 22:57:32 +01:00

37 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
CODE="${ROOT}/code"
prepare()
{
local URL="$1"
shift
local EXCLUDE_PATTERNS=("$@")
local FILENAME=$(basename ${URL})
local BASENAME="${FILENAME%.tar.gz}"
local DIR="${CODE}/${BASENAME}"
local EXCLUDE_ARGS=
for EXCLUDE_PATTERN in "${EXCLUDE_PATTERNS[@]}"; do
EXCLUDE_ARGS+=" -not -regex ${EXCLUDE_PATTERN}"
done
echo ${BASENAME}
curl -L "${URL}" | tar -xz -C "${CODE}"
(
cd ${DIR}
[ -f ./configure ] && ./configure
find . -type f ${EXCLUDE_ARGS[@]} -delete
find . -type d -empty -delete
)
}
prepare "https://downloads.xiph.org/releases/ogg/libogg-1.3.6.tar.gz" "\./\(include\|src\)/.*\.[ch]"
prepare "https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.gz" "\./\(include\|lib\)/.*\.[ch]"
prepare "https://downloads.xiph.org/releases/opus/opus-1.5.2.tar.gz" "\./\(celt\|include\|silk\|src\)/.*\.[ch]"
prepare "https://downloads.xiph.org/releases/opus/opusfile-0.12.tar.gz" "\./\(include\|src\)/.*\.[ch]"