mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 18:32:15 +02:00
The Wind River kernel is "patched" via guilt to provide both git integration and quilt like patch management (if that is of interest). This is a modified 0.33 guilt with some changes to streamline interactions with the way that the Wind River kernel is constructed. That being said, the common semantics of guilt are not changed, and it can be used for other purposes. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
70 lines
2.3 KiB
Diff
70 lines
2.3 KiB
Diff
guilt: improve the generation of an automatic header
|
|
|
|
Patches that do not have a proper header are encountered when generating
|
|
a tree. This improves the detection of these patches and generates a sane
|
|
header so the eventual commit will be coherent
|
|
|
|
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
---
|
|
|
|
guilt | 24 ++++++++++++++++++------
|
|
1 file changed, 18 insertions(+), 6 deletions(-)
|
|
|
|
--- a/guilt
|
|
+++ b/guilt
|
|
@@ -591,7 +591,12 @@ commit()
|
|
fi
|
|
|
|
# last try: make a default commit message if patch doesn't contain one
|
|
- [ ! -s "$TMP_MSG" ] && echo "auto_msg: patch $pname" > "$TMP_MSG"
|
|
+ if [ ! -s "$TMP_MSG" ]; then
|
|
+ echo "auto_msg: importing `basename $pname`" > "$TMP_MSG"
|
|
+ echo "" >> "$TMP_MSG"
|
|
+ echo "This is an automatic import of patch $pname, no headers were" >> "$TMP_MSG"
|
|
+ echo "detected and a default message was constructed" >> "$TMP_MSG"
|
|
+ fi
|
|
|
|
|
|
if [ "$header_type" = "guilt" ]; then
|
|
@@ -599,12 +604,14 @@ commit()
|
|
# extract a From line from the patch header, and set
|
|
# GIT_AUTHOR_{NAME,EMAIL}
|
|
author_str=`sed -n -e '/^From:/ { s/^From: //; p; q }; /^(diff |---)/ q' "$p"`
|
|
- if [ ! -z "$author_str" ]; then
|
|
- GIT_AUTHOR_NAME=`echo $author_str | sed -e 's/ *<.*$//'`
|
|
- export GIT_AUTHOR_NAME="${GIT_AUTHOR_NAME:-" "}"
|
|
- export GIT_AUTHOR_EMAIL="`echo $author_str | sed -e 's/[^<]*//'`"
|
|
+ if [ -z "$author_str" ]; then
|
|
+ author_str="auto commit <unknown@unknown>"
|
|
fi
|
|
|
|
+ GIT_AUTHOR_NAME=`echo $author_str | sed -e 's/ *<.*$//'`
|
|
+ export GIT_AUTHOR_NAME="${GIT_AUTHOR_NAME:-" "}"
|
|
+ export GIT_AUTHOR_EMAIL="`echo $author_str | sed -e 's/[^<]*//'`"
|
|
+
|
|
|
|
# check in the patch for a subject
|
|
SUBJECT="$(sed -n '/^Subject/ s/Subject: //p' "$p")"
|
|
@@ -615,6 +622,11 @@ commit()
|
|
if [ ${#SUBJECT} -gt 60 ]; then
|
|
SUBJECT=${SUBJECT: -60}
|
|
fi
|
|
+
|
|
+ # remove the line from the tmp msg
|
|
+ mv "$TMP_MSG" "$TMP_MSG.work"
|
|
+ cat "$TMP_MSG.work" | grep -v -E ".*$SUBJECT.*" > "$TMP_MSG"
|
|
+ rm "$TMP_MSG.work"
|
|
fi
|
|
|
|
if [ -z "$SUBJECT" ]; then
|
|
@@ -629,7 +641,7 @@ commit()
|
|
|
|
SUBJECT=`echo $SUBJECT | sed s'%^ *%%'`
|
|
|
|
- if [ ! -z "$SUBJECT" ]; then
|
|
+ if [ -n "$SUBJECT" ]; then
|
|
echo "$SUBJECT" >> $TMP_MSG.subject
|
|
echo "" >> $TMP_MSG.subject
|
|
cat "$TMP_MSG" >> $TMP_MSG.subject
|