zoog 0.8.1

Tools for modifying Ogg Opus output gain and R128 tags and Ogg Opus/Vorbis comment tags
Documentation
#!/bin/bash
set -eu

TAG="$(echo ${1} | sed 's/refs\/tags\///')"
TARGET="${2}"

if echo ${TARGET} | grep -i windows > /dev/null; then
  EXE_SUFFIX=".exe"
  ARCHIVE_FORMAT="zip"
elif echo ${TARGET} | grep -i darwin > /dev/null; then
  EXE_SUFFIX=""
  ARCHIVE_FORMAT="zip"
else
  EXE_SUFFIX=""
  ARCHIVE_FORMAT="tarball"
fi

TOP="$(pwd)"
SCRATCH=$(mktemp -d ./tmp.XXXXXXXXXX)
SCRATCH="${TOP}/${SCRATCH}"
trap "rm -rf ${SCRATCH}" EXIT HUP INT QUIT TERM
pushd "${SCRATCH}"
NAME="zoog-${TAG}-${TARGET}"
mkdir "${NAME}"
cp -a "${TOP}/README.md" "${NAME}"
cp -a "${TOP}/CHANGELOG.md" "${NAME}"
cp -a "${TOP}/LICENSE" "${NAME}"
for BINARY in opusgain zoogcomment; do
  BINARY_PATH="${TOP}/target/${TARGET}/release/${BINARY}${EXE_SUFFIX}"
  if [ -f "${BINARY_PATH}" ]; then
    cp -a "${BINARY_PATH}" "${NAME}"
  fi
done

if [ "${ARCHIVE_FORMAT}" = "tarball" ]; then
  CONTENT_TYPE="application/x-bzip2"
  OUTPUT="${NAME}.tar.bz2"
  tar -jcf "${OUTPUT}" "${NAME}"
elif [ "${ARCHIVE_FORMAT}" = "zip" ]; then
  CONTENT_TYPE="application/zip"
  OUTPUT="${NAME}.zip"
  zip -r "${OUTPUT}" "${NAME}"
else
  echo "Don't know how to generate ${ARCHIVE_FORMAT}"
  exit 1
fi

mv "${OUTPUT}" "${TOP}"
echo "path=${TOP}/${OUTPUT}" >> "${GITHUB_OUTPUT}"
echo "name=${OUTPUT}" >> "${GITHUB_OUTPUT}"
echo "content_type=${CONTENT_TYPE}" >> "${GITHUB_OUTPUT}"