35 lines
1006 B
Bash
Executable File
35 lines
1006 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Check that license files are up to date.
|
|
# This script regenerates the license files and compares them with the committed versions.
|
|
# If there are differences, it exits with an error.
|
|
|
|
set -e
|
|
|
|
# Store original files for comparison
|
|
TEMPDIR="$(mktemp -d)"
|
|
trap "rm -fr ${TEMPDIR}" EXIT
|
|
|
|
# Save original license markdown files
|
|
for goos in darwin linux windows; do
|
|
cp "third-party-licenses.${goos}.md" "${TEMPDIR}/"
|
|
done
|
|
|
|
# Save the state of third-party directory
|
|
cp -r third-party "${TEMPDIR}/third-party.orig"
|
|
|
|
# Regenerate using the same script
|
|
./script/licenses
|
|
|
|
# Check for any differences in workspace
|
|
if ! git diff --exit-code --quiet third-party-licenses.*.md third-party/; then
|
|
echo "License files are out of date:"
|
|
git diff third-party-licenses.*.md third-party/
|
|
echo ""
|
|
printf "\nLicense check failed.\n\nPlease update the license files by running \`./script/licenses\` and committing the output.\n"
|
|
exit 1
|
|
fi
|
|
|
|
echo "License check passed for all platforms."
|
|
|