When passing -n to git-ptx-patches the filenames in the patch stack
don't get a number as prefix.

The obvious downside is that the order of the patches isn't obvious
without the series file and you cannot create a patch stack if two
patches share have the same shortlog (which ideally shouldn't happen
...)

The obvious advantage is that when a patch is added or removed in the
middle of the series there are no renames for the later patches
necessary and the changes to series are smaller accordingly.

So if the patchstack of openssl used unnumbered patches the commit
c45d66cdae4b ("openssl: remove engines-path patch") would only have to
touch two lines in series (i.e. the removal of the patch and the changed
checksum) and contain no renames.

Signed-off-by: Uwe Kleine-König <u.kleine-koe...@pengutronix.de>
---
Hello,

On Tue, Sep 22, 2020 at 09:48:44AM +0200, Michael Olbrich wrote:
> Hmmm, I prefer numbers for upstream, but if someone want's patches like
> this in a BSP, then I don't mind.

I actually expected that and so kept the default as is.

> However, this patch does not apply on master. Please rebase.

Done with this patch.

Best regards
Uwe

 scripts/git-ptx-patches | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/scripts/git-ptx-patches b/scripts/git-ptx-patches
index fe680273085b..772d20992838 100755
--- a/scripts/git-ptx-patches
+++ b/scripts/git-ptx-patches
@@ -34,6 +34,7 @@ fi
 
 remove_old=no
 tag=base
+numbered_patches=true
 
 if grep -q "$PTX_PATCHES_HEADER" .ptxdist/series; then
        echo "Found series file generated by git-ptx-patches."
@@ -52,7 +53,7 @@ if [ "x$1" = "x--force-remove" ]; then
        shift
 fi
 
-while getopts "ft:n:" opt; do
+while getopts "ft:n" opt; do
        case "${opt}" in
                f)
                        remove_old="force"
@@ -61,6 +62,9 @@ while getopts "ft:n:" opt; do
                        tag="${OPTARG}"
                        range="${tag}"
                        ;;
+               n)
+                       numbered_patches=false
+                       ;;
        esac
 done
 shift $((${OPTIND} - 1))
@@ -144,7 +148,16 @@ fi
 GIT_EXTRA_ARGS="$GIT_EXTRA_ARGS --summary --stat=80"
 
 cat .ptxdist/series.0 > .ptxdist/series
-${GIT} format-patch -N $GIT_EXTRA_ARGS ${tagopt} -o .ptxdist/patches/ ${range} 
| sed -e 's,^.ptxdist/patches/,,' > .ptxdist/series.auto
+${GIT} format-patch -N $GIT_EXTRA_ARGS ${tagopt} -o .ptxdist/patches/ ${range} 
| while read patch; do
+       if "$numbered_patches"; then
+               patchname="${patch#.ptxdist/patches/}"
+       else
+               patchname="${patch#.ptxdist/patches/[0-9][0-9][0-9][0-9]-}"
+               mv -n "$patch" ".ptxdist/patches/$patchname"
+       fi
+       echo "$patchname"
+done > .ptxdist/series.auto
+
 cat .ptxdist/series.auto >> .ptxdist/series
 cat .ptxdist/series.1 >> .ptxdist/series
 cat .ptxdist/series | _md5sum >> .ptxdist/series
-- 
2.28.0


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to 
ptxdist-requ...@pengutronix.de

Reply via email to