summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRasmus Villemoes <ravi@prevas.dk>2025-01-29 09:37:50 +0100
committerRodrigo M. Duarte <rodrigo.duarte@ossystems.com.br>2025-04-02 09:18:55 -0300
commitbe18f7307c5121a2bae9e455ea97ef3df506df97 (patch)
tree035e09af8e37eec578f3d3307a54ad7d9e1bdb50
parent600c2fead031e7ec4cb0918faaa15cf2d1469b0e (diff)
downloadmeta-freescale-be18f7307c5121a2bae9e455ea97ef3df506df97.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-xscripts/generate-license-file4
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
3export LC_ALL=C
4
3# Create or clear the LICENSE file 5# Create or clear the LICENSE file
4echo "# License Information" > LICENSE 6echo "# License Information" > LICENSE
5echo "" >> LICENSE 7echo "" >> LICENSE
@@ -7,7 +9,7 @@ echo "This file lists all licenses used by recipes in the meta-freescale layer."
7echo "" >> LICENSE 9echo "" >> 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
10find . -type f \( -name "*.bb" -o -name "*.inc" \) | while read -r file; do 12find . -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