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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox