diff options
author | Rasmus Villemoes <ravi@prevas.dk> | 2025-01-29 09:37:50 +0100 |
---|---|---|
committer | Rasmus Villemoes <ravi@prevas.dk> | 2025-01-29 09:40:23 +0100 |
commit | 0602af4c78ef5a6ee5e64d2cf9202c22aa636b25 (patch) | |
tree | d5194077f414b6b793f012c2b0fff22a8c4357fd | |
parent | 4738bf97f8d95fe8d25fbdf1bde8c268c376e23f (diff) | |
download | meta-freescale-0602af4c78ef5a6ee5e64d2cf9202c22aa636b25.tar.gz |
scripts: avoid pointless LICENSE churn
I was wondering why a bot decided to force-push a commit to a PR of
mine. It turns out the script responsible for generating the LICENSE
file is not deterministic, so depending on random file system layout
we can end up regenerating the LICENSE without any actual change. For
example:
$ diff -u <(git show baf20676~1:LICENSE | sort) <(git show baf20676:LICENSE | sort)
shows that baf20676 didn't provide any change at all in the actual
contents, yet
$ git show --stat baf20676
commit baf20676bcd2b454577449dbf7b0346d7080b880
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Date: Wed Jan 22 21:42:44 2025 +0000
Auto-update LICENSE file with current recipe licenses
LICENSE | 256 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------
1 file changed, 128 insertions(+), 128 deletions(-)
-rwxr-xr-x | scripts/generate-license-file | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/generate-license-file b/scripts/generate-license-file index 2f4e9766..02b45ab3 100755 --- a/scripts/generate-license-file +++ b/scripts/generate-license-file | |||
@@ -1,5 +1,7 @@ | |||
1 | #!/bin/bash | 1 | #!/bin/bash |
2 | 2 | ||
3 | export LC_ALL=C | ||
4 | |||
3 | # Create or clear the LICENSE file | 5 | # Create or clear the LICENSE file |
4 | echo "# License Information" > LICENSE | 6 | echo "# License Information" > LICENSE |
5 | echo "" >> LICENSE | 7 | echo "" >> LICENSE |
@@ -7,7 +9,7 @@ echo "This file lists all licenses used by recipes in the meta-freescale layer." | |||
7 | echo "" >> LICENSE | 9 | echo "" >> LICENSE |
8 | 10 | ||
9 | # Find all .bb and .inc files and extract license information | 11 | # Find all .bb and .inc files and extract license information |
10 | find . -type f \( -name "*.bb" -o -name "*.inc" \) | while read -r file; do | 12 | find . -type f \( -name "*.bb" -o -name "*.inc" \) | sort | while read -r file; do |
11 | # Extract the license line from each recipe file, if it exists | 13 | # Extract the license line from each recipe file, if it exists |
12 | license_line=$(grep -i "^LICENSE" "$file") | 14 | license_line=$(grep -i "^LICENSE" "$file") |
13 | if [ -n "$license_line" ]; then | 15 | if [ -n "$license_line" ]; then |