Patchwork [V2] gzip: fix MakeMaker issues with using wrong SHELL/GREP

login
register
mail settings
Submitter Ming Liu
Date Nov. 30, 2013, 3:18 a.m.
Message ID <1385781487-18314-1-git-send-email-ming.liu@windriver.com>
Download mbox | patch
Permalink /patch/62643/
State New
Headers show

Comments

Ming Liu - Nov. 30, 2013, 3:18 a.m.
A set of substitution is being processed to all target scripts with sed by
replacing some key words with the detected values at configure time, this
is exactly not compliant with cross compling, and will cause missing path
errors at run time like:
"/usr/bin/zgrep: line 230: /usr/bin/grep: No such file or directory"

Fixed by removing unneeded substitution and using real runtime paths
instead.

Signed-off-by: Ming Liu <ming.liu@windriver.com>
---
 .../gzip/gzip-1.6/wrong-path-fix.patch             | 31 ++++++++++++++++++++++
 meta/recipes-extended/gzip/gzip.inc                |  2 ++
 2 files changed, 33 insertions(+)
 create mode 100644 meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
Hongxu Jia - March 26, 2014, 8:25 a.m.
Ping

//Hongxu

On 11/30/2013 11:18 AM, Ming Liu wrote:
> A set of substitution is being processed to all target scripts with sed by
> replacing some key words with the detected values at configure time, this
> is exactly not compliant with cross compling, and will cause missing path
> errors at run time like:
> "/usr/bin/zgrep: line 230: /usr/bin/grep: No such file or directory"
>
> Fixed by removing unneeded substitution and using real runtime paths
> instead.
>
> Signed-off-by: Ming Liu <ming.liu@windriver.com>
> ---
>   .../gzip/gzip-1.6/wrong-path-fix.patch             | 31 ++++++++++++++++++++++
>   meta/recipes-extended/gzip/gzip.inc                |  2 ++
>   2 files changed, 33 insertions(+)
>   create mode 100644 meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
>
> diff --git a/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch b/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
> new file mode 100644
> index 0000000..92863d6
> --- /dev/null
> +++ b/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
> @@ -0,0 +1,31 @@
> +fix MakeMaker issues with using wrong SHELL/GREP
> +
> +A set of substitution is being processed to all target scripts with sed by
> +replacing some key words with the detected values at configure time, this
> +is exactly not compliant with cross compling, and will cause missing path
> +errors at run time like:
> +"/usr/bin/zgrep: line 230: /usr/bin/grep: No such file or directory"
> +
> +Fixed by removing unneeded substitution and using real runtime paths
> +instead.
> +
> +Signed-off-by: Ming Liu <ming.liu@windriver.com>
> +
> +Upstream-Status: Pending
> +
> +Index: gzip-1.3.12/Makefile.am
> +===================================================================
> +diff -urpN a/Makefile.am b/Makefile.am
> +--- a/Makefile.am	2013-11-30 10:06:09.402234871 +0800
> ++++ b/Makefile.am	2013-11-30 10:13:42.952236025 +0800
> +@@ -81,9 +81,8 @@ gzip.doc.gz: gzip.doc $(bin_PROGRAMS)
> + SUFFIXES = .in
> + .in:
> + 	$(AM_V_GEN)sed \
> +-		-e 's|/bin/sh|$(SHELL)|g' \
> + 		-e 's|[@]bindir@|'\''$(bindir)'\''|g' \
> +-		-e 's|[@]GREP@|$(GREP)|g' \
> ++		-e 's|[@]GREP@|$(base_bindir)/grep|g' \
> + 		-e 's|[@]VERSION@|$(VERSION)|g' \
> + 		$(srcdir)/$@.in >$@-t \
> + 	  && chmod a+x $@-t \
> diff --git a/meta/recipes-extended/gzip/gzip.inc b/meta/recipes-extended/gzip/gzip.inc
> index 6ec1dae..bf3469d 100644
> --- a/meta/recipes-extended/gzip/gzip.inc
> +++ b/meta/recipes-extended/gzip/gzip.inc
> @@ -10,6 +10,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
>   
>   SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz"
>   
> +SRC_URI_append_class-target = " file://wrong-path-fix.patch"
> +
>   inherit autotools
>   
>   do_install_append () {

Patch

diff --git a/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch b/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
new file mode 100644
index 0000000..92863d6
--- /dev/null
+++ b/meta/recipes-extended/gzip/gzip-1.6/wrong-path-fix.patch
@@ -0,0 +1,31 @@ 
+fix MakeMaker issues with using wrong SHELL/GREP
+
+A set of substitution is being processed to all target scripts with sed by
+replacing some key words with the detected values at configure time, this
+is exactly not compliant with cross compling, and will cause missing path
+errors at run time like:
+"/usr/bin/zgrep: line 230: /usr/bin/grep: No such file or directory"
+
+Fixed by removing unneeded substitution and using real runtime paths
+instead.
+
+Signed-off-by: Ming Liu <ming.liu@windriver.com>
+
+Upstream-Status: Pending
+
+Index: gzip-1.3.12/Makefile.am
+===================================================================
+diff -urpN a/Makefile.am b/Makefile.am
+--- a/Makefile.am	2013-11-30 10:06:09.402234871 +0800
++++ b/Makefile.am	2013-11-30 10:13:42.952236025 +0800
+@@ -81,9 +81,8 @@ gzip.doc.gz: gzip.doc $(bin_PROGRAMS)
+ SUFFIXES = .in
+ .in:
+ 	$(AM_V_GEN)sed \
+-		-e 's|/bin/sh|$(SHELL)|g' \
+ 		-e 's|[@]bindir@|'\''$(bindir)'\''|g' \
+-		-e 's|[@]GREP@|$(GREP)|g' \
++		-e 's|[@]GREP@|$(base_bindir)/grep|g' \
+ 		-e 's|[@]VERSION@|$(VERSION)|g' \
+ 		$(srcdir)/$@.in >$@-t \
+ 	  && chmod a+x $@-t \
diff --git a/meta/recipes-extended/gzip/gzip.inc b/meta/recipes-extended/gzip/gzip.inc
index 6ec1dae..bf3469d 100644
--- a/meta/recipes-extended/gzip/gzip.inc
+++ b/meta/recipes-extended/gzip/gzip.inc
@@ -10,6 +10,8 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
 
 SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz"
 
+SRC_URI_append_class-target = " file://wrong-path-fix.patch"
+
 inherit autotools
 
 do_install_append () {