apply-patches.sh: be quiet when "make -s" is used
Subsystems (2)
v3 cover apply-patches.sh: be quiet when "make -s" is used
To reduce further the noise when "make -s" is used silence the "apply-patches.sh" script.
v3:
- Remove the already merged patch
- Use double $$ inside hooks (Yann)
- Add patch to use [[ ]] construct
v2:
- move the second patch as first to easy up merging
- split the first patch in two (Yann)
- add BR_SILENT variable (Yann)
Fabio Porcedda (3):
apply-patches.sh: Use the "APPLY_PATCHES" variable to call the script apply-patches.sh: Use [[...]] construct instead of [...] construct apply-patches.sh: don't print anything when "make -s" is used
Makefile | 2 ++ boot/at91bootstrap/at91bootstrap.mk | 2 +- boot/at91bootstrap3/at91bootstrap3.mk | 2 +- boot/barebox/barebox.mk | 2 +- boot/uboot/uboot.mk | 2 +- linux/linux-ext-rtai.mk | 4 ++-- linux/linux.mk | 6 +++--- package/Makefile.in | 2 ++ package/cvs/cvs.mk | 2 +- package/gcc/gcc.mk | 4 ++-- package/input-tools/input-tools.mk | 2 +- package/mii-diag/mii-diag.mk | 2 +- package/pkg-autotools.mk | 12 ++++++------ package/pkg-generic.mk | 6 +++--- package/setserial/setserial.mk | 2 +- package/sysklogd/sysklogd.mk | 2 +- package/sysvinit/sysvinit.mk | 2 +- package/thttpd/thttpd.mk | 2 +- support/scripts/apply-patches.sh | 31 +++++++++++++++++++++---------- 19 files changed, 52 insertions(+), 37 deletions(-)
Signature · 1 line
2.0.3
PATCH v3 1/3 apply-patches.sh: Use the "APPLY_PATCHES" variable to call the script
To easy up adding optional parameters when calling the "apply-patches.sh" add and use the "APPLY_PATCHES" variable to execute the script.
--- boot/at91bootstrap/at91bootstrap.mk | 2 +- boot/at91bootstrap3/at91bootstrap3.mk | 2 +- boot/barebox/barebox.mk | 2 +- boot/uboot/uboot.mk | 2 +- linux/linux-ext-rtai.mk | 4 ++-- linux/linux.mk | 6 +++--- package/Makefile.in | 2 ++ package/cvs/cvs.mk | 2 +- package/gcc/gcc.mk | 4 ++-- package/input-tools/input-tools.mk | 2 +- package/mii-diag/mii-diag.mk | 2 +- package/pkg-autotools.mk | 12 ++++++------ package/pkg-generic.mk | 6 +++--- package/setserial/setserial.mk | 2 +- package/sysklogd/sysklogd.mk | 2 +- package/sysvinit/sysvinit.mk | 2 +- package/thttpd/thttpd.mk | 2 +- 17 files changed, 29 insertions(+), 27 deletions(-)
boot/at91bootstrap/at91bootstrap.mk +1 -1
@@ -24,7 +24,7 @@ endef ifneq ($(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR)),) define AT91BOOTSTRAP_APPLY_CUSTOM_PATCHES - support/scripts/apply-patches.sh $(@D) $(BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR) \ + $(APPLY_PATCHES) $(@D) $(BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR) \ at91bootstrap-$(AT91BOOTSTRAP_VERSION)-\*.patch endef
boot/at91bootstrap3/at91bootstrap3.mk +1 -1
@@ -21,7 +21,7 @@ AT91BOOTSTRAP3_MAKE_OPT = CROSS_COMPILE=$(TARGET_CROSS) DESTDIR=$(BINARIES_DIR) ifneq ($(AT91BOOTSTRAP3_CUSTOM_PATCH_DIR),) define AT91BOOTSTRAP3_APPLY_CUSTOM_PATCHES - support/scripts/apply-patches.sh $(@D) $(AT91BOOTSTRAP3_CUSTOM_PATCH_DIR) \ + $(APPLY_PATCHES) $(@D) $(AT91BOOTSTRAP3_CUSTOM_PATCH_DIR) \ at91bootstrap3-\*.patch endef
boot/barebox/barebox.mk +1 -1
@@ -26,7 +26,7 @@ BAREBOX_LICENSE_FILES = COPYING ifneq ($(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR)),) define BAREBOX_APPLY_CUSTOM_PATCHES - support/scripts/apply-patches.sh $(@D) \ + $(APPLY_PATCHES) $(@D) \ $(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR) \ barebox-$(BAREBOX_VERSION)-\*.patch endef
boot/uboot/uboot.mk +1 -1
@@ -87,7 +87,7 @@ UBOOT_POST_EXTRACT_HOOKS += UBOOT_COPY_OLD_LICENSE_FILE ifneq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),) define UBOOT_APPLY_CUSTOM_PATCHES - support/scripts/apply-patches.sh $(@D) $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR) \ + $(APPLY_PATCHES) $(@D) $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR) \ uboot-\*.patch endef
linux/linux-ext-rtai.mk +2 -2
@@ -25,7 +25,7 @@ ifeq ($(RTAI_PATCH),) define RTAI_PREPARE_KERNEL kver=`$(MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelversion` ; \ if test -f $(RTAI_DIR)/base/arch/$(RTAI_ARCH)/patches/hal-linux-$${kver}-*patch ; then \ - support/scripts/apply-patches.sh $(LINUX_DIR) \ + $(APPLY_PATCHES) $(LINUX_DIR) \ $(RTAI_DIR)/base/arch/$(RTAI_ARCH)/patches/ \ hal-linux-$${kver}-*patch ; \ else \
@@ -35,7 +35,7 @@ define RTAI_PREPARE_KERNEL endef else define RTAI_PREPARE_KERNEL - support/scripts/apply-patches.sh \ + $(APPLY_PATCHES) \ $(LINUX_DIR) \ $(dir $(RTAI_PATCH)) \ $(notdir $(RTAI_PATCH))
linux/linux.mk +3 -3
@@ -154,11 +154,11 @@ LINUX_POST_DOWNLOAD_HOOKS += LINUX_DOWNLOAD_PATCHES define LINUX_APPLY_PATCHES for p in $(LINUX_PATCHES) ; do \ if echo $$p | grep -q -E "^ftp://|^http://" ; then \ - support/scripts/apply-patches.sh $(@D) $(DL_DIR) `basename $$p` ; \ + $(APPLY_PATCHES) $(@D) $(DL_DIR) `basename $$p` ; \ elif test -d $$p ; then \ - support/scripts/apply-patches.sh $(@D) $$p linux-\*.patch ; \ + $(APPLY_PATCHES) $(@D) $$p linux-\*.patch ; \ else \ - support/scripts/apply-patches.sh $(@D) `dirname $$p` `basename $$p` ; \ + $(APPLY_PATCHES) $(@D) `dirname $$p` `basename $$p` ; \ fi \ done endef
package/Makefile.in +2 -0
@@ -218,6 +218,8 @@ FLEX := $(shell which flex || type -p flex) BISON := $(shell which bison || type -p bison) SED := $(shell which sed || type -p sed) -i -e +APPLY_PATCHES = support/scripts/apply-patches.sh + HOST_CPPFLAGS = -I$(HOST_DIR)/usr/include HOST_CFLAGS ?= -O2 HOST_CFLAGS += $(HOST_CPPFLAGS)
package/cvs/cvs.mk +1 -1
@@ -38,7 +38,7 @@ define CVS_DEBIAN_PATCHES do $(SED) 's,^\+\+\+ .*cvs-$(CVS_VERSION)/,+++ cvs-$(CVS_VERSION)/,' $$i; \ done; \ ); \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*; \ fi endef endif
package/gcc/gcc.mk +2 -2
@@ -44,14 +44,14 @@ endef ifeq ($(ARCH),powerpc) ifneq ($(BR2_SOFT_FLOAT),) define HOST_GCC_APPLY_POWERPC_PATCH - support/scripts/apply-patches.sh $(@D) package/gcc/$(GCC_VERSION) powerpc-link-with-math-lib.patch.conditional + $(APPLY_PATCHES) $(@D) package/gcc/$(GCC_VERSION) powerpc-link-with-math-lib.patch.conditional endef endif endif define HOST_GCC_APPLY_PATCHES if test -d package/gcc/$(GCC_VERSION); then \ - support/scripts/apply-patches.sh $(@D) package/gcc/$(GCC_VERSION) \*.patch ; \ + $(APPLY_PATCHES) $(@D) package/gcc/$(GCC_VERSION) \*.patch ; \ fi; $(HOST_GCC_APPLY_POWERPC_PATCH) endef
package/input-tools/input-tools.mk +1 -1
@@ -17,7 +17,7 @@ INPUT_TOOLS_TARGETS_$(BR2_PACKAGE_INPUT_TOOLS_JSTEST) += jstest define INPUT_TOOLS_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*.patch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*.patch; \ fi endef
package/mii-diag/mii-diag.mk +1 -1
@@ -15,7 +15,7 @@ MII_DIAG_MAKE_OPT = $(TARGET_CONFIGURE_OPTS) define MII_DIAG_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*.patch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*.patch; \ fi endef
package/pkg-autotools.mk +6 -6
@@ -196,11 +196,11 @@ define LIBTOOL_PATCH_HOOK ltmain_version=`sed -n '/^[ ]*VERSION=/{s/^[ ]*VERSION=//;p;q;}' $$$$i | \ sed -e 's/\([0-9].[0-9]*\).*/\1/' -e 's/\"//'`; \ if test $$$${ltmain_version} = '1.5'; then \ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ elif test $$$${ltmain_version} = "2.2"; then\ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ elif test $$$${ltmain_version} = "2.4"; then\ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ fi \ done \ fi
@@ -230,11 +230,11 @@ define AUTORECONF_HOOK ltmain_version=`sed -n '/^[ ]*VERSION=/{s/^[ ]*VERSION=//;p;q;}' $$$$i | \ sed -e 's/\([0-9].[0-9]*\).*/\1/' -e 's/\"//'`; \ if test $$$${ltmain_version} = "1.5"; then \ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ elif test $$$${ltmain_version} = "2.2"; then\ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ elif test $$$${ltmain_version} = "2.4"; then\ - support/scripts/apply-patches.sh $$$${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ + $$(APPLY_PATCHES) $$$${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ fi \ done \ fi
package/pkg-generic.mk +3 -3
@@ -146,14 +146,14 @@ $(BUILD_DIR)/%/.stamp_patched: @$(call step_start,patch) @$(call MESSAGE,"Patching") $(foreach hook,$($(PKG)_PRE_PATCH_HOOKS),$(call $(hook))$(sep)) - $(foreach p,$($(PKG)_PATCH),support/scripts/apply-patches.sh $(@D) $(DL_DIR) $(notdir $(p))$(sep)) + $(foreach p,$($(PKG)_PATCH),$(APPLY_PATCHES) $(@D) $(DL_DIR) $(notdir $(p))$(sep)) $(Q)( \ for D in $(PATCH_BASE_DIRS); do \ if test -d $${D}; then \ if test -d $${D}/$($(PKG)_VERSION); then \ - support/scripts/apply-patches.sh $(@D) $${D}/$($(PKG)_VERSION) \*.patch \*.patch.$(ARCH) || exit 1; \ + $(APPLY_PATCHES) $(@D) $${D}/$($(PKG)_VERSION) \*.patch \*.patch.$(ARCH) || exit 1; \ else \ - support/scripts/apply-patches.sh $(@D) $${D} \*.patch \*.patch.$(ARCH) || exit 1; \ + $(APPLY_PATCHES) $(@D) $${D} \*.patch \*.patch.$(ARCH) || exit 1; \ fi; \ fi; \ done; \
package/setserial/setserial.mk +1 -1
@@ -16,7 +16,7 @@ define SETSERIAL_APPLY_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ touch $(@D)/gorhack.h; \ rm $(@D)/debian/patches/01_makefile.dpatch; \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches *.dpatch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches *.dpatch; \ fi endef
package/sysklogd/sysklogd.mk +1 -1
@@ -18,7 +18,7 @@ endif define SYSKLOGD_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*.patch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*.patch; \ fi endef
package/sysvinit/sysvinit.mk +1 -1
@@ -18,7 +18,7 @@ endif define SYSVINIT_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*.patch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*.patch; \ fi endef
package/thttpd/thttpd.mk +1 -1
@@ -14,7 +14,7 @@ THTTPD_LICENSE_FILES = thttpd.c ifneq ($(THTTPD_PATCH),) define THTTPD_DEBIAN_PATCHES if [ -d $(@D)/debian/patches ]; then \ - support/scripts/apply-patches.sh $(@D) $(@D)/debian/patches \*.patch; \ + $(APPLY_PATCHES) $(@D) $(@D)/debian/patches \*.patch; \ fi endef endif
Signature · 1 line
2.0.3
PATCH v3 2/3 apply-patches.sh: Use [[...]] construct instead of [...] construct
In reply to Fabio PorceddaThe [[...]] construct it's an improved and safer construct than the [...] construct. It's safer because it doesn't do "word splitting" so we don't need to enclose variable expansion with double quotes, e.g:
[ -e "$file" ] -> [[ -e $file ]]
--- support/scripts/apply-patches.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-)
support/scripts/apply-patches.sh +7 -7
@@ -37,11 +37,11 @@ patchpattern=${@-*} # use a well defined sorting order export LC_COLLATE=C -if [ ! -d "${builddir}" ] ; then +if [[ ! -d ${builddir} ]] ; then echo "Aborting. '${builddir}' is not a directory." exit 1 fi -if [ ! -d "${patchdir}" ] ; then +if [[ ! -d ${patchdir} ]] ; then echo "Aborting. '${patchdir}' is not a directory." exit 1 fi
@@ -79,13 +79,13 @@ function apply_patch { esac echo "" echo "Applying $patch using ${type}: " - if [ ! -e "${path}/$patch" ] ; then + if [[ ! -e ${path}/$patch ]] ; then echo "Error: missing patch file ${path}/$patch" exit 1 fi echo $patch >> ${builddir}/.applied_patches_list ${uncomp} "${path}/$patch" | patch -g0 -p1 -E -d "${builddir}" -t -N - if [ $? != 0 ] ; then + if [[ $? != 0 ]] ; then echo "Patch failed! Please fix ${patch}!" exit 1 fi
@@ -98,13 +98,13 @@ function scan_patchdir { # If there is a series file, use it instead of using ls sort order # to apply patches. Skip line starting with a dash. - if [ -e "${path}/series" ] ; then + if [[ -e ${path}/series ]] ; then for i in `grep -Ev "^#" ${path}/series 2> /dev/null` ; do apply_patch "$path" "$i" done else for i in `cd $path; ls -d $patches 2> /dev/null` ; do - if [ -d "${path}/$i" ] ; then + if [[ -d ${path}/$i ]] ; then scan_patchdir "${path}/$i" elif echo "$i" | grep -q -E "\.tar(\..*)?$|\.tbz2?$|\.tgz$" ; then unpackedarchivedir="$builddir/.patches-$(basename $i)-unpacked"
@@ -122,7 +122,7 @@ function scan_patchdir { scan_patchdir "$patchdir" "$patchpattern" # Check for rejects... -if [ "`find $builddir/ '(' -name '*.rej' -o -name '.*.rej' ')' -print`" ] ; then +if [[ `find $builddir/ '(' -name '*.rej' -o -name '.*.rej' ')' -print` ]] ; then echo "Aborting. Reject files found." exit 1 fi
Signature · 1 line
2.0.3
PATCH v3 2/3 apply-patches.sh: Use [[...]] construct instead of [...] construct
Fabio Porcedda <[email protected]> schreef:
Quoted 6 lines
The [[...]] construct it's an improved and safer construct than the [...] construct. It's safer because it doesn't do "word splitting" so we don't need to enclose variable expansion with double quotes, e.g:
[ -e "$file" ] -> [[ -e $file ]]
---
I'm not so convinced by this patch. [[]] is a bashism, it is not
supported in all shells.
Yes, using single brackets means that you need to take care, but anyway shell programming has many pitfalls.
In the past people have sent patches to make Buildroot more compatible with non-bash shells, so moving in the opposite
direction is not a good idea IMO.
Best regards,
Thomas
PATCH v3 2/3 apply-patches.sh: Use [[...]] construct instead of [...] construct
Thomas, All,
On 2014-07-31 19:19 +0200, Thomas De Schampheleire spake thusly:
Quoted 11 lines
Fabio Porcedda <[email protected]> schreef:
Quoted 6 lines
The [[...]] construct it's an improved and safer construct than the [...] construct. It's safer because it doesn't do "word splitting" so we don't need to enclose variable expansion with double quotes, e.g:
[ -e "$file" ] -> [[ -e $file ]]
---I'm not so convinced by this patch. [[]] is a bashism, it is not
supported in all shells.
Well, apply-patches is bash script (it has the correct sha-bang.) But it is almost POSIX. The only bashism currently used is the 'function' keyword to declare functions. REmove this, and we have a POSIX script.
Quoted 6 lines
Yes, using single brackets means that you need to take care, but anyway shell programming has many pitfalls.
In the past people have sent patches to make Buildroot more compatible with non-bash shells, so moving in the opposite
direction is not a good idea IMO.
Agreed. Besides, the gains from that change are not worth it, IMHO.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v3 2/3 apply-patches.sh: Use [[...]] construct instead of [...] construct
Quoted 12 lines · Yann E. MORIN
Thomas, All,
On 2014-07-31 19:19 +0200, Thomas De Schampheleire spake thusly:
Quoted 9 lines
Fabio Porcedda <[email protected]> schreef:
Quoted 6 lines
The [[...]] construct it's an improved and safer construct than the [...] construct. It's safer because it doesn't do "word splitting" so we don't need to enclose variable expansion with double quotes, e.g:
[ -e "$file" ] -> [[ -e $file ]]
---
Quoted 14 lines
Quoted 2 lines
I'm not so convinced by this patch. [[]] is a bashism, it is not
supported in all shells.Well, apply-patches is bash script (it has the correct sha-bang.) But it is almost POSIX. The only bashism currently used is the 'function' keyword to declare functions. REmove this, and we have a POSIX script.
Quoted 6 lines
Yes, using single brackets means that you need to take care, but anyway shell programming has many pitfalls.
In the past people have sent patches to make Buildroot more compatible with non-bash shells, so moving in the opposite
direction is not a good idea IMO.
On the TODO list i didn't found a line about removing the use of bash:
http://elinux.org/Buildroot
I've found just 4 commit made 4 years ago made by Yann, there are recent commits about that effort?
right now bash is a requirement for buildroot:Makefile:
# we want bash as shell
SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
else if [ -x /bin/bash ]; then echo /bin/bash; \
else echo sh; fi; fi)It seems to me that right now there is no effort to remove the use of bash.
What are the advantage on removing the use of bash other that no requring bash? There are platforms supported by buildroot where is not available bash?
Quoted 2 lines
Agreed. Besides, the gains from that change are not worth it, IMHO.
It's worth or not based also on the effort, because the work is already done, it's just a gain without effort so IMHO it's worth it.
IMHO rejecting this patch it is like proposing that removing the use of bash it's worth it, so removing bash is worth it? it is really a problem requiring bash? there is someone that is working on removing the use of bash?
I just want to understand properly the situation.
Thanks for reviewing and best regards
Signature · 1 line
Fabio Porcedda
PATCH v3 3/3 apply-patches.sh: don't print anything when "make -s" is used
In reply to Fabio PorceddaThe make "-s" option is used to enable the "Silent operation" so if that option is used don't print anything as far as there isn't any error.
Add the "-s" option to "apply-patches.sh" to enable silent operation.
Also add the "BR_SILENT" variable the contain "YES" when "make -s" is used so others parts can use it to silence the build as well.
--- Makefile | 2 ++ package/Makefile.in | 2 +- support/scripts/apply-patches.sh | 17 ++++++++++++++--- 3 files changed, 17 insertions(+), 4 deletions(-)
Makefile +2 -0
@@ -198,6 +198,8 @@ else Q = @ endif +BR_SILENT = $(if $(findstring s,$(MAKEFLAGS)),YES) + # we want bash as shell SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ else if [ -x /bin/bash ]; then echo /bin/bash; \
package/Makefile.in +1 -1
@@ -218,7 +218,7 @@ FLEX := $(shell which flex || type -p flex) BISON := $(shell which bison || type -p bison) SED := $(shell which sed || type -p sed) -i -e -APPLY_PATCHES = support/scripts/apply-patches.sh +APPLY_PATCHES = support/scripts/apply-patches.sh $(if $(BR_SILENT),-s) HOST_CPPFLAGS = -I$(HOST_DIR)/usr/include HOST_CFLAGS ?= -O2
support/scripts/apply-patches.sh +14 -3
@@ -6,6 +6,8 @@ # (c) 2002 Erik Andersen <[email protected]> # # Parameters: +# - "-s",optional. Silent operation, don't print anything if there +# isn't any error. # - the build directory, optional, default value is '.'. The place where are # the package sources. # - the patch directory, optional, default '../kernel-patches'. The place
@@ -28,6 +30,13 @@ # applied. The list of the patches applied is stored in '.applied_patches_list' # file in the build directory. +silent= +if [[ $1 = "-s" ]] ; then + # add option to be used by the patch tool + silent=-s + shift +fi + # Set directories from arguments, or use defaults. builddir=${1-.} patchdir=${2-../kernel-patches}
@@ -77,14 +86,16 @@ function apply_patch { return 0 ;; esac - echo "" - echo "Applying $patch using ${type}: " + if [[ ! $silent ]] ; then + echo "" + echo "Applying $patch using ${type}: " + fi if [[ ! -e ${path}/$patch ]] ; then echo "Error: missing patch file ${path}/$patch" exit 1 fi echo $patch >> ${builddir}/.applied_patches_list - ${uncomp} "${path}/$patch" | patch -g0 -p1 -E -d "${builddir}" -t -N + ${uncomp} "${path}/$patch" | patch $silent -g0 -p1 -E -d "${builddir}" -t -N if [[ $? != 0 ]] ; then echo "Patch failed! Please fix ${patch}!" exit 1
Signature · 1 line
2.0.3