From: rdkehn at yahoo.com <rdkehn@yahoo.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] apply-patches.sh: use everything from the series file
Date: Sat, 7 Nov 2015 09:50:29 -0600 [thread overview]
Message-ID: <20151107155029.GA11213@dkarchlinux64.gateway.pace.com> (raw)
In-Reply-To: <1446852432-30582-1-git-send-email-arnout@mind.be>
On Sat, Nov 07, 2015 at 12:27:12AM +0100, Arnout Vandecappelle (Essensium/Mind) wrote:
> When a series file exists, we should use every file mentioned in it,
> not just the ones ending with .patch or .diff. Also, there's no need
> to uncompress anything if it's mentioned in a series file (the tools
> that manipulate series files don't support compressed patches).
>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Doug Kehn <rdkehn@yahoo.com>
Tested-by: Doug Kehn <rdkehn@yahoo.com>
> ---
> support/scripts/apply-patches.sh | 55 ++++++++++++++++++++++------------------
> 1 file changed, 30 insertions(+), 25 deletions(-)
>
> diff --git a/support/scripts/apply-patches.sh b/support/scripts/apply-patches.sh
> index af6df9e..2edf054 100755
> --- a/support/scripts/apply-patches.sh
> +++ b/support/scripts/apply-patches.sh
> @@ -16,8 +16,9 @@
> # '*'. Pattern(s) describing the patch names you want to apply.
> #
> # The script will look recursively for patches from the patch directory. If a
> -# file is named 'series' then only patches mentionned into it will be applied.
> -# If not, the script will look for file names matching pattern(s). If the name
> +# file named 'series' exists then the patches mentioned in it will be applied
> +# as plain patches, regardless of their file name. If no 'series' file exists,
> +# the script will look for file names matching pattern(s). If the name
> # ends with '.tar.*', '.tbz2' or '.tgz', the file is considered as an archive
> # and will be uncompressed into a directory named
> # '.patches-name_of_the_archive-unpacked'. It's the turn of this directory to
> @@ -64,28 +65,32 @@ find ${builddir}/ '(' -name '*.rej' -o -name '.*.rej' ')' -print0 | \
> function apply_patch {
> path=$1
> patch=$2
> - case "$patch" in
> - *.gz)
> - type="gzip"; uncomp="gunzip -dc"; ;;
> - *.bz)
> - type="bzip"; uncomp="bunzip -dc"; ;;
> - *.bz2)
> - type="bzip2"; uncomp="bunzip2 -dc"; ;;
> - *.xz)
> - type="xz"; uncomp="unxz -dc"; ;;
> - *.zip)
> - type="zip"; uncomp="unzip -d"; ;;
> - *.Z)
> - type="compress"; uncomp="uncompress -c"; ;;
> - *.diff*)
> - type="diff"; uncomp="cat"; ;;
> - *.patch*)
> - type="patch"; uncomp="cat"; ;;
> - *)
> - echo "Unsupported file type for ${path}/${patch}, skipping";
> - return 0
> - ;;
> - esac
> + if [ "$3" ]; then
> + type="series"; uncomp="cat"
> + else
> + case "$patch" in
> + *.gz)
> + type="gzip"; uncomp="gunzip -dc"; ;;
> + *.bz)
> + type="bzip"; uncomp="bunzip -dc"; ;;
> + *.bz2)
> + type="bzip2"; uncomp="bunzip2 -dc"; ;;
> + *.xz)
> + type="xz"; uncomp="unxz -dc"; ;;
> + *.zip)
> + type="zip"; uncomp="unzip -d"; ;;
> + *.Z)
> + type="compress"; uncomp="uncompress -c"; ;;
> + *.diff*)
> + type="diff"; uncomp="cat"; ;;
> + *.patch*)
> + type="patch"; uncomp="cat"; ;;
> + *)
> + echo "Unsupported file type for ${path}/${patch}, skipping";
> + return 0
> + ;;
> + esac
> + fi
> if [ -z "$silent" ] ; then
> echo ""
> echo "Applying $patch using ${type}: "
> @@ -111,7 +116,7 @@ function scan_patchdir {
> # to apply patches. Skip line starting with a dash.
> if [ -e "${path}/series" ] ; then
> for i in `grep -Ev "^#" ${path}/series 2> /dev/null` ; do
> - apply_patch "$path" "$i"
> + apply_patch "$path" "$i" series
> done
> else
> for i in `cd $path; ls -d $patches 2> /dev/null` ; do
> --
> 2.6.2
>
next prev parent reply other threads:[~2015-11-07 15:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-06 23:27 [Buildroot] [PATCH] apply-patches.sh: use everything from the series file Arnout Vandecappelle
2015-11-07 15:50 ` rdkehn at yahoo.com [this message]
2015-11-17 8:24 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151107155029.GA11213@dkarchlinux64.gateway.pace.com \
--to=rdkehn@yahoo.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.