#!/bin/zsh
set -euo pipefail
materials="${0:A:h}"
build_dir="${1:?Pass a new, unused absolute build directory}"
[[ "$build_dir" == /* && ! -e "$build_dir" ]] || { print -u2 'Choose a new absolute directory; existing files are never cleaned.'; exit 1; }
expected=3df5124d5ad3a98312ffd7ba6a9b36230e4f8a3e66d3ce0f425e336c32d216eb
actual="$(shasum -a 256 "$materials/lame-4.0.tar.gz" | awk '{print $1}')"
[[ "$actual" == "$expected" ]] || { print -u2 'Source archive checksum mismatch.'; exit 1; }
mkdir -p "$build_dir"
tar -xzf "$materials/lame-4.0.tar.gz" -C "$build_dir"
cd "$build_dir/lame-4.0"
export MACOSX_DEPLOYMENT_TARGET=15.0
export CFLAGS='-O2 -arch arm64 -mmacosx-version-min=15.0 -fstack-protector-strong'
export LDFLAGS='-arch arm64 -mmacosx-version-min=15.0'
./configure --disable-frontend --disable-decoder --disable-static --enable-shared --prefix="$build_dir/local-prefix"
make -j4
library="$build_dir/lame-4.0/libmp3lame/.libs/libmp3lame.0.dylib"
install_name_tool -id @rpath/libmp3lame.0.dylib "$library"
print "Replacement library: $library"
