All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/4] upgrade bash and ncurses
@ 2017-02-14  7:02 Hongxu Jia
  2017-02-14  7:02 ` [PATCH 1/4] bash: 4.3.30 -> 4.4 Hongxu Jia
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Hongxu Jia @ 2017-02-14  7:02 UTC (permalink / raw)
  To: openembedded-core, ross.burton

Changed in V3:

- Fix nativesdk-bash compile failure

- Fix ncurses configure failure in beaglebone

//Hongxu

The following changes since commit e758547db9048d4aa1c1415d6af8072f519fae24:

  nss: Fix nss-native so the checksum doesn't change with BUILD_ARCH (2017-02-09 10:52:03 +0000)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib hongxu/upgrade-20170214
  http://cgit.openembedded.org/openembedded-core-contrib/log/?h=hongxu/upgrade-20170214

Hongxu Jia (3):
  bash: update patches for 4.4
  ncurses: 6.0+20160625 -> 6.0+20161126
  ncurses: fix beaglebone do_configure failure

Zheng Ruoqin (1):
  bash: 4.3.30 -> 4.4

 ...ses_6.0+20160625.bb => ncurses_6.0+20161126.bb} |   4 +-
 ...e-builtins-uname-could-not-be-parsed-by-r.patch |  89 +++++++++++++
 .../0001-patch-to-obtain-pkgconfig-sanity.patch    |  28 +++++
 ...roc-run-heredoc-run-execscript-run-test-f.patch | 137 ++-------------------
 meta/recipes-extended/bash/bash/fix-run-intl.patch | 110 -----------------
 meta/recipes-extended/bash/bash/test-output.patch  |  20 ++-
 meta/recipes-extended/bash/bash_4.3.30.bb          |  71 -----------
 meta/recipes-extended/bash/bash_4.4.bb             |  66 ++++++++++
 8 files changed, 212 insertions(+), 313 deletions(-)
 rename meta/recipes-core/ncurses/{ncurses_6.0+20160625.bb => ncurses_6.0+20161126.bb} (77%)
 create mode 100644 meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch
 create mode 100644 meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch
 delete mode 100644 meta/recipes-extended/bash/bash/fix-run-intl.patch
 delete mode 100644 meta/recipes-extended/bash/bash_4.3.30.bb
 create mode 100644 meta/recipes-extended/bash/bash_4.4.bb

-- 
2.8.1



^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/4] bash: 4.3.30 -> 4.4
  2017-02-14  7:02 [PATCH V3 0/4] upgrade bash and ncurses Hongxu Jia
@ 2017-02-14  7:02 ` Hongxu Jia
  2017-02-14  7:02 ` [PATCH 2/4] bash: update patches for 4.4 Hongxu Jia
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 13+ messages in thread
From: Hongxu Jia @ 2017-02-14  7:02 UTC (permalink / raw)
  To: openembedded-core, ross.burton

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 20484 bytes --]

From: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>

1) Upgrade bash from 4.3.30 to 4.4
2) Delete 1 patche below, since they are integrated upstream.
   fix-run-intl.patch
3) Modify 2 patches below to make it compatible with new version
   fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch
   test-output.patch
4) Add 1 patche below to solve pkgconfig sanity error
   0001-patch-to-obtain-pkgconfig-sanity.patch

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 .../0001-patch-to-obtain-pkgconfig-sanity.patch    |  28 +++++
 ...roc-run-heredoc-run-execscript-run-test-f.patch | 137 ++-------------------
 meta/recipes-extended/bash/bash/fix-run-intl.patch | 110 -----------------
 meta/recipes-extended/bash/bash/test-output.patch  |  20 ++-
 meta/recipes-extended/bash/bash_4.3.30.bb          |  71 -----------
 meta/recipes-extended/bash/bash_4.4.bb             |  38 ++++++
 6 files changed, 92 insertions(+), 312 deletions(-)
 create mode 100644 meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch
 delete mode 100644 meta/recipes-extended/bash/bash/fix-run-intl.patch
 delete mode 100644 meta/recipes-extended/bash/bash_4.3.30.bb
 create mode 100644 meta/recipes-extended/bash/bash_4.4.bb

diff --git a/meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch b/meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch
new file mode 100644
index 0000000..9b5e4ec
--- /dev/null
+++ b/meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch
@@ -0,0 +1,28 @@
+Subject: [PATCH] patch to obtain pkgconfig sanity
+
+Drop the paths from the pkgconfig file bash.pc.in which will cause pkgconfig sanity error below:
+ERROR: QA Issue: bash.pc failed sanity test (tmpdir) in path /yocto/work001/fnst/zrq/community/poky/build/tmp/work/i586-poky-linux/bash    /4.4-r0/sysroot-destdir/usr/lib/pkgconfig [pkgconfig]
+
+Upstream-Status: Pending
+
+Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
+---
+ support/bash.pc.in | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/support/bash.pc.in b/support/bash.pc.in
+index 6009659..871fa9f 100644
+--- a/support/bash.pc.in
++++ b/support/bash.pc.in
+@@ -12,8 +12,6 @@ LOCAL_CFLAGS = @LOCAL_CFLAGS@
+ LOCAL_DEFS = @LOCAL_DEFS@
+ CCFLAGS = ${LOCAL_DEFS} ${LOCAL_CFLAGS}
+ 
+-CC = @CC@
+-SHOBJ_CC = @SHOBJ_CC@
+ SHOBJ_CFLAGS = @SHOBJ_CFLAGS@
+ SHOBJ_LD = @SHOBJ_LD@
+ SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@
+-- 
+2.7.4
+
diff --git a/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch b/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch
index 7f099ae..d6beaff 100644
--- a/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch
+++ b/meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch
@@ -20,150 +20,35 @@ the test suite should not be run as root
 Upstream-Status: Pending
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
 ---
- tests/coproc.right   |  5 +----
- tests/coproc.tests   | 30 +++++++++++++++++++++++++-----
- tests/heredoc.right  |  5 ++---
- tests/heredoc3.sub   |  3 ++-
- tests/run-execscript |  3 ++-
- tests/run-test       |  3 ++-
- 6 files changed, 34 insertions(+), 15 deletions(-)
+ tests/run-execscript | 3 ++-
+ tests/run-test       | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
 
-diff --git a/tests/coproc.right b/tests/coproc.right
-index 6d9deaa..94b001c 100644
---- a/tests/coproc.right
-+++ b/tests/coproc.right
-@@ -1,11 +1,8 @@
--84575
- 63 60
- a b c
--84577
- 63 60
- flop
--./coproc.tests: line 22: 84577 Terminated              coproc REFLECT { cat -; }
--84579
-+coproc.tests: REFLECT: status 143
- 63 60
- FOO
- 63 60
-diff --git a/tests/coproc.tests b/tests/coproc.tests
-index 8be3563..d347eb7 100644
---- a/tests/coproc.tests
-+++ b/tests/coproc.tests
-@@ -1,6 +1,13 @@
-+: ${TMPDIR:=/tmp}
-+TMPOUT=${TMPDIR}/coproc-wait-$BASHPID
-+
- coproc { echo a b c; sleep 2; }
- 
--echo $COPROC_PID
-+case $COPROC_PID in
-+[0-9]*)	;;
-+*)	echo COPROC_PID not integer ;;
-+esac
-+
- echo ${COPROC[@]}
- 
- read LINE <&${COPROC[0]}
-@@ -10,7 +17,11 @@ wait $COPROC_PID
- 
- coproc REFLECT { cat - ; }
- 
--echo $REFLECT_PID
-+case $REFLECT_PID in
-+[0-9]*)	;;
-+*)	echo REFLECT_PID not integer ;;
-+esac
-+
- echo ${REFLECT[@]}
- 
- echo flop >&${REFLECT[1]}
-@@ -18,12 +29,21 @@ read LINE <&${REFLECT[0]}
- 
- echo $LINE
- 
--kill $REFLECT_PID
--wait $REFLECT_PID
-+{ sleep 1; kill $REFLECT_PID; } &
-+wait $REFLECT_PID >$TMPOUT 2>&1 || echo "coproc.tests: REFLECT: status $?"
-+grep 'Terminated.*coproc.*REFLECT' < $TMPOUT >/dev/null 2>&1 || {
-+	echo "coproc.tests: wait for REFLECT failed" >&2
-+}
-+rm -f $TMPOUT
-+exec 2>&1
- 
- coproc xcase -n -u
- 
--echo $COPROC_PID
-+case $COPROC_PID in
-+[0-9]*)	;;
-+*)	echo COPROC_PID not integer ;;
-+esac
-+
- echo ${COPROC[@]}
- 
- echo foo >&${COPROC[1]}
-diff --git a/tests/heredoc.right b/tests/heredoc.right
-index 6abaa1f..8df91c5 100644
---- a/tests/heredoc.right
-+++ b/tests/heredoc.right
-@@ -76,15 +76,14 @@ ENDEND
- end ENDEND
- hello
- end hello
--x star x
- end x*x
- helloEND
- end helloEND
- hello
- \END
- end hello<NL>\END
--./heredoc3.sub: line 74: warning: here-document at line 72 delimited by end-of-file (wanted `EOF')
--./heredoc3.sub: line 75: syntax error: unexpected end of file
-+./heredoc3.sub: line 75: warning: here-document at line 73 delimited by end-of-file (wanted `EOF')
-+./heredoc3.sub: line 76: syntax error: unexpected end of file
- comsub here-string
- ./heredoc.tests: line 105: warning: here-document at line 103 delimited by end-of-file (wanted `EOF')
- hi
-diff --git a/tests/heredoc3.sub b/tests/heredoc3.sub
-index 73a111e..9d3d846 100644
---- a/tests/heredoc3.sub
-+++ b/tests/heredoc3.sub
-@@ -49,9 +49,10 @@ hello
-     END    
- echo end hello
- 
--cat <<x*x & touch 'x*x'
-+cat <<x*x >/dev/null & touch 'x*x'
- x star x
- x*x
-+wait $!
- echo end 'x*x'
- rm 'x*x'
- 
 diff --git a/tests/run-execscript b/tests/run-execscript
-index f97ab21..0d00a1b 100644
+index de78644..f7b075f 100644
 --- a/tests/run-execscript
 +++ b/tests/run-execscript
 @@ -5,5 +5,6 @@ echo "warning: \`/tmp/bash-notthere' not being found or \`/' being a directory"
  echo "warning: produce diff output, please do not consider this a test failure" >&2
  echo "warning: if diff output differing only in the location of the bash" >&2
  echo "warning: binary appears, please do not consider this a test failure" >&2
--${THIS_SH} ./execscript > /tmp/xx 2>&1
+-${THIS_SH} ./execscript > ${BASH_TSTOUT} 2>&1
 +rm -f /tmp/xx
 +su -c "${THIS_SH} ./execscript > /tmp/xx 2>&1" test
- diff /tmp/xx exec.right && rm -f /tmp/xx
+ diff ${BASH_TSTOUT} exec.right && rm -f ${BASH_TSTOUT}
 diff --git a/tests/run-test b/tests/run-test
-index b2482c3..2e8f049 100644
+index d68791c..699855f 100644
 --- a/tests/run-test
 +++ b/tests/run-test
 @@ -1,4 +1,5 @@
  unset GROUPS UID 2>/dev/null
  
--${THIS_SH} ./test.tests >/tmp/xx 2>&1
+-${THIS_SH} ./test.tests >${BASH_TSTOUT} 2>&1
 +rm -f /tmp/xx
 +su -c "${THIS_SH} ./test.tests >/tmp/xx 2>&1" test
- diff /tmp/xx test.right && rm -f /tmp/xx
+ diff ${BASH_TSTOUT} test.right && rm -f ${BASH_TSTOUT}
 -- 
-1.9.1
+2.7.4
 
diff --git a/meta/recipes-extended/bash/bash/fix-run-intl.patch b/meta/recipes-extended/bash/bash/fix-run-intl.patch
deleted file mode 100644
index d4a3409..0000000
--- a/meta/recipes-extended/bash/bash/fix-run-intl.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From a00d3161fd7b6a698bdd2ed5f0ac5faac580ee2a Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@windriver.com>
-Date: Wed, 3 Aug 2016 23:13:00 -0400
-Subject: [PATCH] fix run-intl failed
-
-1. Filter extra white space of intl.right
-
-   Due to the extra white space of intl.right, when the result of
-   sub-test unicode2.sub of intl.tests compared to it, the test
-   failed.
-
-   So we need to filter the extra white space of intl.right.
-
-   Import this patch for intl.right from bash devel branch:
-
-	http://git.savannah.gnu.org/cgit/bash.git/log/?h=devel
-
-   commit is:
-
-	85ec0778f9d778e1820fb8c0e3e996f2d1103b45
-
-2. Change intl.right correspond to the unicode3.sub's output
-
-   In sub-test unicode3.sub of intl.tests, the payload value is:
-
-	payload=$'\065\247\100\063\231\053\306\123\070\237\242\352\263'
-
-   It used quoted string expansion(escaped octal) to assign ASCII
-   characters to variables. So when the test run the following:
-
-	printf %q "$payload"
-
-   It produced:
-
-	$'5\247@3\231+\306S8\237\242\352\263'
-
-   When compared to the intl.right(contain the converted character), it failed.
-
-   Import parts of patch for intl.right from bash devel branch:
-
-	http://git.savannah.gnu.org/cgit/bash.git/log/?h=devel
-
-   commit is:
-
-	74b8cbb41398b4453d8ba04d0cdd1b25f9dcb9e3
-
-Upstream-Status: Backport
-
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
----
- tests/intl.right | 30 +++++++++++++++---------------
- 1 file changed, 15 insertions(+), 15 deletions(-)
-
-diff --git a/tests/intl.right b/tests/intl.right
-index acf108a..1efdfbe 100644
---- a/tests/intl.right
-+++ b/tests/intl.right
-@@ -18,34 +18,34 @@ aéb
- 1.0000
- 1,0000
- Passed all 1378 Unicode tests
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   357 277 277 012                                                
-+0000000 357 277 277 012
- 0000004
--0000000   357 277 277 012                                                
-+0000000 357 277 277 012
- 0000004
--0000000   012                                                            
-+0000000 012
- 0000001
--0000000   012                                                            
-+0000000 012
- 0000001
--0000000   012                                                            
-+0000000 012
- 0000001
--0000000   012                                                            
-+0000000 012
- 0000001
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   303 277 012                                                    
-+0000000 303 277 012
- 0000003
--0000000   101 040 302 243 040 305 222 012                                
-+0000000 101 040 302 243 040 305 222 012
- 0000010
- ./unicode3.sub: line 2: 5§@3™+ÆS8Ÿ¢ê³: command not found
--5§@3™+ÆS8Ÿ¢ê³
-+$'5\247@3\231+\306S8\237\242\352\263'
- + : $'5\247@3\231+\306S8\237\242\352\263'
--- 
-2.8.1
-
diff --git a/meta/recipes-extended/bash/bash/test-output.patch b/meta/recipes-extended/bash/bash/test-output.patch
index 2b09b7d..652ffb1 100644
--- a/meta/recipes-extended/bash/bash/test-output.patch
+++ b/meta/recipes-extended/bash/bash/test-output.patch
@@ -2,15 +2,21 @@ Add FAIL/PASS output to test output.
 
 Signed-off-by: Björn Stenberg <bjst@enea.com>
 Upstream-Status: Pending
+
+Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
 ---
-diff -uNr a/tests/run-all b/tests/run-all
---- a/tests/run-all	1999-10-08 17:07:46.000000000 +0200
-+++ b/tests/run-all	2012-10-27 21:04:18.663331887 +0200
-@@ -22,7 +22,15 @@
+ tests/run-all | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/tests/run-all b/tests/run-all
+index 2882fe0..069dbbe 100644
+--- a/tests/run-all
++++ b/tests/run-all
+@@ -33,7 +33,16 @@ do
  	case $x in
  	$0|run-minimal|run-gprof)	;;
  	*.orig|*~) ;;
--	*)	echo $x ; sh $x ;;
+-	*)	echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;;
 +    *)  echo $x
 +         output=`sh $x`
 +         if [ -n "$output" ]; then
@@ -19,7 +25,11 @@ diff -uNr a/tests/run-all b/tests/run-all
 +         else
 +             echo "PASS: $x"
 +         fi
++         rm -f ${BASH_TSTOUT} 
 +         ;;
  	esac
  done
  
+-- 
+2.7.4
+
diff --git a/meta/recipes-extended/bash/bash_4.3.30.bb b/meta/recipes-extended/bash/bash_4.3.30.bb
deleted file mode 100644
index 765562f..0000000
--- a/meta/recipes-extended/bash/bash_4.3.30.bb
+++ /dev/null
@@ -1,71 +0,0 @@
-require bash.inc
-
-# GPLv2+ (< 4.0), GPLv3+ (>= 4.0)
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-031;apply=yes;striplevel=0;name=patch031 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-032;apply=yes;striplevel=0;name=patch032 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-033;apply=yes;striplevel=0;name=patch033 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-034;apply=yes;striplevel=0;name=patch034 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-035;apply=yes;striplevel=0;name=patch035 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-036;apply=yes;striplevel=0;name=patch036 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-037;apply=yes;striplevel=0;name=patch037 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-038;apply=yes;striplevel=0;name=patch038 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-039;apply=yes;striplevel=0;name=patch039 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-040;apply=yes;striplevel=0;name=patch040 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-041;apply=yes;striplevel=0;name=patch041 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-042;apply=yes;striplevel=0;name=patch042 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-043;apply=yes;striplevel=0;name=patch043 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-044;apply=yes;striplevel=0;name=patch044 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-045;apply=yes;striplevel=0;name=patch045 \
-           ${GNU_MIRROR}/bash/bash-4.3-patches/bash43-046;apply=yes;striplevel=0;name=patch046 \
-           file://execute_cmd.patch;striplevel=0 \
-           file://mkbuiltins_have_stringize.patch \
-           file://build-tests.patch \
-           file://test-output.patch \
-           file://fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch \
-           file://run-ptest \
-           file://fix-run-builtins.patch \
-           file://0001-help-fix-printf-format-security-warning.patch \
-           file://fix-run-intl.patch \
-           "
-
-SRC_URI[tarball.md5sum] = "a27b3ee9be83bd3ba448c0ff52b28447"
-SRC_URI[tarball.sha256sum] = "317881019bbf2262fb814b7dd8e40632d13c3608d2f237800a8828fbb8a640dd"
-
-SRC_URI[patch031.md5sum] = "236df1ac1130a033ed0dbe2d2115f28f"
-SRC_URI[patch031.sha256sum] = "cd529f59dd0f2fdd49d619fe34691da6f0affedf87cc37cd460a9f3fe812a61d"
-SRC_URI[patch032.md5sum] = "2360f7e79cfb28526f80021025ea5909"
-SRC_URI[patch032.sha256sum] = "889357d29a6005b2c3308ca5b6286cb223b5e9c083219e5db3156282dd554f4a"
-SRC_URI[patch033.md5sum] = "b551c4ee7b8713759e4143499d0bbd48"
-SRC_URI[patch033.sha256sum] = "fb2a7787a13fbe027a7335aca6eb3c21cdbd813e9edc221274b6a9d8692eaa16"
-SRC_URI[patch034.md5sum] = "c9a56fbe0348e05a886dff97f2872b74"
-SRC_URI[patch034.sha256sum] = "f1694f04f110defe1330a851cc2768e7e57ddd2dfdb0e3e350ca0e3c214ff889"
-SRC_URI[patch035.md5sum] = "e564e8ab44ed1ca3a4e315a9f6cabdc9"
-SRC_URI[patch035.sha256sum] = "370d85e51780036f2386dc18c5efe996eba8e652fc1973f0f4f2ab55a993c1e3"
-SRC_URI[patch036.md5sum] = "b00ff66c41a7c0f06e191200981980b0"
-SRC_URI[patch036.sha256sum] = "ac5f82445b36efdb543dbfae64afed63f586d7574b833e9aa9cd5170bc5fd27c"
-SRC_URI[patch037.md5sum] = "be2a7b05f6ae560313f3c9d5f7127bda"
-SRC_URI[patch037.sha256sum] = "33f170dd7400ab3418d749c55c6391b1d161ef2de7aced1873451b3a3fca5813"
-SRC_URI[patch038.md5sum] = "61e0522830b24fbe8c0d1b010f132470"
-SRC_URI[patch038.sha256sum] = "adbeaa500ca7a82535f0e88d673661963f8a5fcdc7ad63445e68bf5b49786367"
-SRC_URI[patch039.md5sum] = "a4775487abe958536751c8ce53cdf6f9"
-SRC_URI[patch039.sha256sum] = "ab94dced2215541097691f60c3eb323cc28ef2549463e6a5334bbcc1e61e74ec"
-SRC_URI[patch040.md5sum] = "80d3587c58854e226055ef099ffeb535"
-SRC_URI[patch040.sha256sum] = "84bb396b9262992ca5424feab6ed3ec39f193ef5c76dfe4a62b551bd8dd9d76b"
-SRC_URI[patch041.md5sum] = "20bf63eef7cb441c0b1cc49ef3191d03"
-SRC_URI[patch041.sha256sum] = "4ec432966e4198524a7e0cd685fe222e96043769c9613e66742ac475db132c1a"
-SRC_URI[patch042.md5sum] = "70790646ae61e207c995e44931390e50"
-SRC_URI[patch042.sha256sum] = "ac219322db2791da87a496ee6e8e5544846494bdaaea2626270c2f73c1044919"
-SRC_URI[patch043.md5sum] = "855a46955cb251534e80b4732b748e37"
-SRC_URI[patch043.sha256sum] = "47a8a3c005b46e25821f4d8f5ccb04c1d653b1c829cb40568d553dc44f7a6180"
-SRC_URI[patch044.md5sum] = "29623d3282fcbb37e1158136509b5bb8"
-SRC_URI[patch044.sha256sum] = "9338820630bf67373b44d8ea68409f65162ea7a47b9b29ace06a0aed12567f99"
-SRC_URI[patch045.md5sum] = "4473244ca5abfd4b018ea26dc73e7412"
-SRC_URI[patch045.sha256sum] = "ba6ec3978e9eaa1eb3fabdaf3cc6fdf8c4606ac1c599faaeb4e2d69864150023"
-SRC_URI[patch046.md5sum] = "7e5fb09991c077076b86e0e057798913"
-SRC_URI[patch046.sha256sum] = "b3b456a6b690cd293353f17e22d92a202b3c8bce587ae5f2667c20c9ab6f688f"
-
-BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-extended/bash/bash_4.4.bb b/meta/recipes-extended/bash/bash_4.4.bb
new file mode 100644
index 0000000..16ff114
--- /dev/null
+++ b/meta/recipes-extended/bash/bash_4.4.bb
@@ -0,0 +1,38 @@
+require bash.inc
+
+# GPLv2+ (< 4.0), GPLv3+ (>= 4.0)
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-001;apply=yes;striplevel=0;name=patch001 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-002;apply=yes;striplevel=0;name=patch002 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-003;apply=yes;striplevel=0;name=patch003 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-004;apply=yes;striplevel=0;name=patch004 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-005;apply=yes;striplevel=0;name=patch005 \
+           file://execute_cmd.patch;striplevel=0 \
+           file://mkbuiltins_have_stringize.patch \
+           file://build-tests.patch \
+           file://test-output.patch  \
+           file://fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch \
+           file://run-ptest \
+           file://fix-run-builtins.patch \
+           file://0001-help-fix-printf-format-security-warning.patch \
+           file://0001-patch-to-obtain-pkgconfig-sanity.patch \
+           "
+
+SRC_URI[tarball.md5sum] = "148888a7c95ac23705559b6f477dfe25" 
+SRC_URI[tarball.sha256sum] = "d86b3392c1202e8ff5a423b302e6284db7f8f435ea9f39b5b1b20fd3ac36dfcb"
+
+SRC_URI[patch001.md5sum] = "817d01a6c0af6f79308a8b7b649e53d8"
+SRC_URI[patch001.sha256sum] = "3e28d91531752df9a8cb167ad07cc542abaf944de9353fe8c6a535c9f1f17f0f"
+SRC_URI[patch002.md5sum] = "765e14cff12c7284009772e8e24f2fe0"
+SRC_URI[patch002.sha256sum] = "7020a0183e17a7233e665b979c78c184ea369cfaf3e8b4b11f5547ecb7c13c53"
+SRC_URI[patch003.md5sum] = "49e7da93bf07f510a2eb6bb43ac3e5a2"
+SRC_URI[patch003.sha256sum] = "51df5a9192fdefe0ddca4bdf290932f74be03ffd0503a3d112e4199905e718b2"
+SRC_URI[patch004.md5sum] = "4557d674ab5831a5fa98052ab19edaf4"
+SRC_URI[patch004.sha256sum] = "ad080a30a4ac6c1273373617f29628cc320a35c8cd06913894794293dc52c8b3"
+SRC_URI[patch005.md5sum] = "cce96dd77cdd1d293beec10848f6cbb5"
+SRC_URI[patch005.sha256sum] = "221e4b725b770ad0bb6924df3f8d04f89eeca4558f6e4c777dfa93e967090529"
+
+BBCLASSEXTEND = "nativesdk"
-- 
2.8.1



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/4] bash: update patches for 4.4
  2017-02-14  7:02 [PATCH V3 0/4] upgrade bash and ncurses Hongxu Jia
  2017-02-14  7:02 ` [PATCH 1/4] bash: 4.3.30 -> 4.4 Hongxu Jia
@ 2017-02-14  7:02 ` Hongxu Jia
  2017-02-14  7:02 ` [PATCH 3/4] ncurses: 6.0+20160625 -> 6.0+20161126 Hongxu Jia
  2017-02-14  7:02 ` [PATCH 4/4] ncurses: fix beaglebone do_configure failure Hongxu Jia
  3 siblings, 0 replies; 13+ messages in thread
From: Hongxu Jia @ 2017-02-14  7:02 UTC (permalink / raw)
  To: openembedded-core, ross.burton

- Update patches from upstream to 4.4

- Add ${PN}-loadable for loadable builtins which is new features in Bash 4.4
  --------------
   a.  `make install' now installs the example loadable builtins and a set of
       bash headers to use when developing new loadable builtins.

   b.  `enable -f' now attempts to call functions named BUILTIN_builtin_load when
       loading BUILTIN, and BUILTIN_builtin_unload when deleting it.  This allows
       loadable builtins to run initialization and cleanup code.

   c.  There is a new BASH_LOADABLES_PATH variable containing a list of directories
       where the `enable -f' command looks for shared objects containing loadable
       builtins.
   --------------

- The loadable builtins `uname' could not be parsed by rpmdeps correctly:
   --------------
   $ recipe-sysroot-native/usr/lib/rpm/bin/rpmdeps-oecore --macros \
   recipe-sysroot-native/usr/lib/rpm/macros --define '_rpmfc_magic_path \
   recipe-sysroot-native/usr/share/misc/magic.mgc' --rpmpopt \
   recipe-sysroot-native/usr/lib/rpm/rpmpopt packages-split/bash/usr/lib64/bash/uname

   |packages-split/bash/usr/lib64/bash/uname Provides: )(64bit
   |packages-split/bash/usr/lib64/bash/uname Provides: elf(buildid) = 7186059a5a6b11ec38493b53072c3a62edf7e05c
   --------------

   The incorrected "Provides: )(64bit" could not be parsed by rpmbuild.
   --------------
   | DEBUG: Executing shell function BUILDSPEC
   | error: line 56: Dependency ")(64bit" must begin with alpha-numeric, '_' or '/': Provides: )(64bit
   | error: Package has no %description: bash-4.4-r0.core2_64
   --------------

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 ...e-builtins-uname-could-not-be-parsed-by-r.patch | 89 ++++++++++++++++++++++
 meta/recipes-extended/bash/bash_4.4.bb             | 28 +++++++
 2 files changed, 117 insertions(+)
 create mode 100644 meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch

diff --git a/meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch b/meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch
new file mode 100644
index 0000000..79d9e4e
--- /dev/null
+++ b/meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch
@@ -0,0 +1,89 @@
+rename uname to workaround name confliction in rpmnsProbe
+
+The loadable builtins `uname' could not be parsed by
+rpmdeps correctly:
+--------------
+$recipe-sysroot-native/usr/lib/rpm/bin/rpmdeps-oecore --macros \
+recipe-sysroot-native/usr/lib/rpm/macros --define '_rpmfc_magic_path \
+recipe-sysroot-native/usr/share/misc/magic.mgc' --rpmpopt \
+recipe-sysroot-native/usr/lib/rpm/rpmpopt packages-split/bash/usr/lib64/bash/uname
+
+|packages-split/bash/usr/lib64/bash/uname Provides: )(64bit
+|packages-split/bash/usr/lib64/bash/uname Provides: elf(buildid) = 7186059a5a6b11ec38493b53072c3a62edf7e05c
+--------------
+
+The incorrected "Provides: )(64bit" could not be parsed by rpmbuild.
+--------------
+| DEBUG: Executing shell function BUILDSPEC
+| error: line 56: Dependency ")(64bit" must begin with alpha-numeric, '_' or '/': Provides: )(64bit
+| error: Package has no %description: bash-4.4-r0.core2_64
+--------------
+
+The root cause is `uname' is incorrectly parsed by rpmnsProbe that string
+matches with "uname()(64bit)".
+
+The nsType of `uname' should be RPMNS_TYPE_NAMESPACE (like other utilities),
+rather than RPMNS_TYPE_UNAME which generates "Provides: )(64bit".
+
+We could not fix rpm-native without side effect. So rename to `uname-oe'
+and create a symlink `uname' could workaround the issue.
+
+Here is to load builtin uname in the target:
+----------------
+root@qemux86-64:# enable -f /usr/lib64/bash/uname uname
+root@qemux86-64:# help uname
+uname: uname [-amnrsv]
+    Display system information.
+
+    Display information about the system hardware and OS.
+----------------
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ examples/loadables/Makefile.in | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/examples/loadables/Makefile.in b/examples/loadables/Makefile.in
+index ec305cd..c7c96e2 100644
+--- a/examples/loadables/Makefile.in
++++ b/examples/loadables/Makefile.in
+@@ -102,7 +102,7 @@ INC = -I. -I.. -I$(topdir) -I$(topdir)/lib -I$(topdir)/builtins -I${srcdir} \
+ 
+ ALLPROG = print truefalse sleep finfo logname basename dirname \
+ 	  tty pathchk tee head mkdir rmdir printenv id whoami \
+-	  uname sync push ln unlink realpath strftime mypid setpgid
++	  uname-oe sync push ln unlink realpath strftime mypid setpgid
+ OTHERPROG = necho hello cat pushd
+ 
+ all:	$(SHOBJ_STATUS)
+@@ -178,7 +178,7 @@ id:	id.o
+ whoami:	whoami.o
+ 	$(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ whoami.o $(SHOBJ_LIBS)
+ 
+-uname:	uname.o
++uname-oe:	uname.o
+ 	$(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ uname.o $(SHOBJ_LIBS)
+ 
+ sync:	sync.o
+@@ -244,13 +244,15 @@ install-supported:	all installdirs install-dev
+ 		echo $$prog ; \
+ 		$(INSTALL_PROGRAM) $(INSTALLMODE) $$prog $(DESTDIR)$(loadablesdir)/$$prog ;\
+ 	done
++	-( cd $(DESTDIR)$(loadablesdir) && ln -snf uname-oe uname)
++
+ 
+ uninstall-dev:
+ 	-$(RM) $(DESTDIR)$(loadablesdir)/Makefile.inc
+ 	-( cd $(BUILD_DIR) && ${MAKE} ${MFLAGS} DESTDIR="$(DESTDIR)" uninstall-headers)
+ 
+ uninstall-supported:	uninstall-dev
+-	-( cd $(DESTDIR)${loadablesdir} && $(RM) ${ALLPROG} )
++	-( cd $(DESTDIR)${loadablesdir} && $(RM) ${ALLPROG} uname)
+ 
+ install-unsupported:
+ uninstall-unsupported:
+-- 
+2.8.1
+
diff --git a/meta/recipes-extended/bash/bash_4.4.bb b/meta/recipes-extended/bash/bash_4.4.bb
index 16ff114..798bfdb 100644
--- a/meta/recipes-extended/bash/bash_4.4.bb
+++ b/meta/recipes-extended/bash/bash_4.4.bb
@@ -10,6 +10,13 @@ SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
            ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-003;apply=yes;striplevel=0;name=patch003 \
            ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-004;apply=yes;striplevel=0;name=patch004 \
            ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-005;apply=yes;striplevel=0;name=patch005 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-006;apply=yes;striplevel=0;name=patch006 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-007;apply=yes;striplevel=0;name=patch007 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-008;apply=yes;striplevel=0;name=patch008 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-009;apply=yes;striplevel=0;name=patch009 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-010;apply=yes;striplevel=0;name=patch010 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-011;apply=yes;striplevel=0;name=patch011 \
+           ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-012;apply=yes;striplevel=0;name=patch012 \
            file://execute_cmd.patch;striplevel=0 \
            file://mkbuiltins_have_stringize.patch \
            file://build-tests.patch \
@@ -19,6 +26,7 @@ SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
            file://fix-run-builtins.patch \
            file://0001-help-fix-printf-format-security-warning.patch \
            file://0001-patch-to-obtain-pkgconfig-sanity.patch \
+           file://0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch \
            "
 
 SRC_URI[tarball.md5sum] = "148888a7c95ac23705559b6f477dfe25" 
@@ -34,5 +42,25 @@ SRC_URI[patch004.md5sum] = "4557d674ab5831a5fa98052ab19edaf4"
 SRC_URI[patch004.sha256sum] = "ad080a30a4ac6c1273373617f29628cc320a35c8cd06913894794293dc52c8b3"
 SRC_URI[patch005.md5sum] = "cce96dd77cdd1d293beec10848f6cbb5"
 SRC_URI[patch005.sha256sum] = "221e4b725b770ad0bb6924df3f8d04f89eeca4558f6e4c777dfa93e967090529"
+SRC_URI[patch006.md5sum] = "d3379f8d8abce5c6ee338f931ad008d5"
+SRC_URI[patch006.sha256sum] = "6a8e2e2a6180d0f1ce39dcd651622fb6d2fd05db7c459f64ae42d667f1e344b8"
+SRC_URI[patch007.md5sum] = "ec38c76ca439ca7f9c178e9baede84fc"
+SRC_URI[patch007.sha256sum] = "de1ccc07b7bfc9e25243ad854f3bbb5d3ebf9155b0477df16aaf00a7b0d5edaf"
+SRC_URI[patch008.md5sum] = "e0ba18c1e3b94f905da9b5bf9d38b58b"
+SRC_URI[patch008.sha256sum] = "86144700465933636d7b945e89b77df95d3620034725be161ca0ca5a42e239ba"
+SRC_URI[patch009.md5sum] = "e952d4f44e612048930c559d90eb99bb"
+SRC_URI[patch009.sha256sum] = "0b6bdd1a18a0d20e330cc3bc71e048864e4a13652e29dc0ebf3918bea729343c"
+SRC_URI[patch010.md5sum] = "57b5b35955d68f9a09dbef6b86d2c782"
+SRC_URI[patch010.sha256sum] = "8465c6f2c56afe559402265b39d9e94368954930f9aa7f3dfa6d36dd66868e06"
+SRC_URI[patch011.md5sum] = "cc896e1fa696b93ded568e557e2392d5"
+SRC_URI[patch011.sha256sum] = "dd56426ef7d7295e1107c0b3d06c192eb9298f4023c202ca2ba6266c613d170d"
+SRC_URI[patch012.md5sum] = "fa47fbfa56fb7e9e5367f19a9df5fc9e"
+SRC_URI[patch012.sha256sum] = "fac271d2bf6372c9903e3b353cb9eda044d7fe36b5aab52f21f3f21cd6a2063e"
 
 BBCLASSEXTEND = "nativesdk"
+
+PACKAGE_BEFORE_PN += "${PN}-loadable"
+RDEPENDS_${PN}-loadable += "${PN}"
+FILES_${PN}-dev += "${libdir}/bash/Makefile.inc"
+FILES_${PN}-loadable += "${libdir}/bash/*"
+
-- 
2.8.1



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 3/4] ncurses: 6.0+20160625 -> 6.0+20161126
  2017-02-14  7:02 [PATCH V3 0/4] upgrade bash and ncurses Hongxu Jia
  2017-02-14  7:02 ` [PATCH 1/4] bash: 4.3.30 -> 4.4 Hongxu Jia
  2017-02-14  7:02 ` [PATCH 2/4] bash: update patches for 4.4 Hongxu Jia
@ 2017-02-14  7:02 ` Hongxu Jia
  2017-02-14  7:02 ` [PATCH 4/4] ncurses: fix beaglebone do_configure failure Hongxu Jia
  3 siblings, 0 replies; 13+ messages in thread
From: Hongxu Jia @ 2017-02-14  7:02 UTC (permalink / raw)
  To: openembedded-core, ross.burton

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 .../ncurses/{ncurses_6.0+20160625.bb => ncurses_6.0+20161126.bb}        | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta/recipes-core/ncurses/{ncurses_6.0+20160625.bb => ncurses_6.0+20161126.bb} (84%)

diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20160625.bb b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
similarity index 84%
rename from meta/recipes-core/ncurses/ncurses_6.0+20160625.bb
rename to meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
index 6514613..7328e78 100644
--- a/meta/recipes-core/ncurses/ncurses_6.0+20160625.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
@@ -4,7 +4,7 @@ SRC_URI += "file://tic-hang.patch \
             file://config.cache \
 "
 # commit id corresponds to the revision in package version
-SRCREV = "63dd558cb8e888d6fab5f00bbf7842736a2356b9"
+SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
 S = "${WORKDIR}/git"
 EXTRA_OECONF += "--with-abi-version=5"
 UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+(\+\d+)*)"
-- 
2.8.1



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-14  7:02 [PATCH V3 0/4] upgrade bash and ncurses Hongxu Jia
                   ` (2 preceding siblings ...)
  2017-02-14  7:02 ` [PATCH 3/4] ncurses: 6.0+20160625 -> 6.0+20161126 Hongxu Jia
@ 2017-02-14  7:02 ` Hongxu Jia
  2017-02-14 10:48   ` Enrico Scholz
  3 siblings, 1 reply; 13+ messages in thread
From: Hongxu Jia @ 2017-02-14  7:02 UTC (permalink / raw)
  To: openembedded-core, ross.burton

In configure, the option ${HOST_CC_ARCH} was removed from ${CC}:
---------------
|configure:2188: WARNING: your environment misuses the CC variable
to hold CFLAGS/CPPFLAGS options
|configure:2284: testing resulting CC: 'arm-poky-linux-gnueabi-gcc
--sysroot=tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/
6.0+20161126-r0/recipe-sysroot'
---------------

While arm compiling, option "-mfloat-abi=hard" in ${HOST_CC_ARCH}
lost that caused the failure:
---------------
|tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/6.0+20161126-r0/
recipe-sysroot/usr/include/gnu/stubs.h:7:29: fatal error:
gnu/stubs-soft.h: No such file or directory
| # include <gnu/stubs-soft.h>
---------------

Append ${HOST_CC_ARCH} to ${CFLAGS} could fix the issue.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 meta/recipes-core/ncurses/ncurses_6.0+20161126.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
index 7328e78..af75044 100644
--- a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
@@ -8,3 +8,5 @@ SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
 S = "${WORKDIR}/git"
 EXTRA_OECONF += "--with-abi-version=5"
 UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+(\+\d+)*)"
+
+CFLAGS += "${HOST_CC_ARCH}"
-- 
2.8.1



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-14  7:02 ` [PATCH 4/4] ncurses: fix beaglebone do_configure failure Hongxu Jia
@ 2017-02-14 10:48   ` Enrico Scholz
  2017-02-20 23:21     ` Burton, Ross
  0 siblings, 1 reply; 13+ messages in thread
From: Enrico Scholz @ 2017-02-14 10:48 UTC (permalink / raw)
  To: openembedded-core

Hongxu Jia <hongxu.jia-CWA4WttNNZF54TAoqtyWWQ@public.gmane.org> writes:

> Append ${HOST_CC_ARCH} to ${CFLAGS} could fix the issue.

I think, the correct fix would be

a) bother the ncurses author to remove the stupid CC sanity check, or

b) create a wrapper around CC like in

   https://github.com/sigma-embedded/elito-de.sigma-chemnitz/blob/master/meta-fixup/recipes/ncurses/ncurses_6.0%2B20160625.bbappend


Enrico


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-14 10:48   ` Enrico Scholz
@ 2017-02-20 23:21     ` Burton, Ross
  2017-02-21  0:20       ` Burton, Ross
  0 siblings, 1 reply; 13+ messages in thread
From: Burton, Ross @ 2017-02-20 23:21 UTC (permalink / raw)
  To: Enrico Scholz; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 382 bytes --]

On 14 February 2017 at 10:48, Enrico Scholz <enrico.scholz@sigma-chemnitz.de
> wrote:

> a) bother the ncurses author to remove the stupid CC sanity check, or
>
> b) create a wrapper around CC like in
>

c) fix the function that detects the "broken" use of CC as it should be
extracting the flags and moving them to CFLAGS.  Clearly this isn't working
somewhere.

Ross

[-- Attachment #2: Type: text/html, Size: 812 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-20 23:21     ` Burton, Ross
@ 2017-02-21  0:20       ` Burton, Ross
  2017-02-21  1:01         ` Enrico Scholz
  0 siblings, 1 reply; 13+ messages in thread
From: Burton, Ross @ 2017-02-21  0:20 UTC (permalink / raw)
  To: Hongxu Jia; +Cc: Enrico Scholz, OE-core

[-- Attachment #1: Type: text/plain, Size: 735 bytes --]

On 20 February 2017 at 23:21, Burton, Ross <ross.burton@intel.com> wrote:

> c) fix the function that detects the "broken" use of CC as it should be
> extracting the flags and moving them to CFLAGS.  Clearly this isn't working
> somewhere.
>

So upstream's sed made the assumption that there was only one argument
being passed via CC.

I've a local working fix that basically does this:

- cf_flags=`echo "$CC" | sed -e 's/^.*[ ]\(-[^ ]\)/\1/'`
+ cf_flags=`echo "$CC" | cut -f2- -d' '`

(use cut to remove the first word, assuming everything after the first word
of CC is an option).

Hongxu, would you mind if I squash this into your upgrade so we don't end
up with a revision where ncurses doesn't build?

Ross

[-- Attachment #2: Type: text/html, Size: 1679 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-21  0:20       ` Burton, Ross
@ 2017-02-21  1:01         ` Enrico Scholz
  2017-02-21  1:34           ` Hongxu Jia
  0 siblings, 1 reply; 13+ messages in thread
From: Enrico Scholz @ 2017-02-21  1:01 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

"Burton, Ross" <ross.burton@intel.com> writes:

>> c) fix the function that detects the "broken" use of CC as it should be
>> extracting the flags and moving them to CFLAGS.  Clearly this isn't working
>> somewhere.

Upstream tries to do it correctly for nearly a year and fails everytime
at some cornercases.


> I've a local working fix that basically does this:
>
> - cf_flags=`echo "$CC" | sed -e 's/^.*[ ]\(-[^ ]\)/\1/'`
> + cf_flags=`echo "$CC" | cut -f2- -d' '`

This will break for

  CC='ccache gcc -m32'

Perhaps there are cases (not for OE), where gcc contains a space... How
to deal with this?



Enrico


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-21  1:01         ` Enrico Scholz
@ 2017-02-21  1:34           ` Hongxu Jia
  2017-02-21 13:50             ` Burton, Ross
  0 siblings, 1 reply; 13+ messages in thread
From: Hongxu Jia @ 2017-02-21  1:34 UTC (permalink / raw)
  To: Enrico Scholz, Burton, Ross; +Cc: OE-core

On 2017年02月21日 09:01, Enrico Scholz wrote:
> "Burton, Ross" <ross.burton@intel.com> writes:
>
>>> c) fix the function that detects the "broken" use of CC as it should be
>>> extracting the flags and moving them to CFLAGS.  Clearly this isn't working
>>> somewhere.
> Upstream tries to do it correctly for nearly a year and fails everytime
> at some cornercases.
>
>
>> I've a local working fix that basically does this:
>>
>> - cf_flags=`echo "$CC" | sed -e 's/^.*[ ]\(-[^ ]\)/\1/'`
>> + cf_flags=`echo "$CC" | cut -f2- -d' '`
> This will break for
>
>    CC='ccache gcc -m32'
>
> Perhaps there are cases (not for OE), where gcc contains a space... How
> to deal with this?

How about directly remove the cf_flags assigning? Because our OE have
correctly assigned it in bitbake.conf.

//Hongxu

>
>
> Enrico




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-21  1:34           ` Hongxu Jia
@ 2017-02-21 13:50             ` Burton, Ross
  2017-02-21 16:30               ` Burton, Ross
  0 siblings, 1 reply; 13+ messages in thread
From: Burton, Ross @ 2017-02-21 13:50 UTC (permalink / raw)
  To: Hongxu Jia; +Cc: Enrico Scholz, OE-core

[-- Attachment #1: Type: text/plain, Size: 364 bytes --]

On 21 February 2017 at 01:34, Hongxu Jia <hongxu.jia@windriver.com> wrote:

> How about directly remove the cf_flags assigning? Because our OE have
> correctly assigned it in bitbake.conf.
>

I'm a big fan of fixing upstream so we don't have to carry a patch
forever.  Their rationale I don't understand, but the implementation is
clearly broken.

Ross

[-- Attachment #2: Type: text/html, Size: 788 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-21 13:50             ` Burton, Ross
@ 2017-02-21 16:30               ` Burton, Ross
  0 siblings, 0 replies; 13+ messages in thread
From: Burton, Ross @ 2017-02-21 16:30 UTC (permalink / raw)
  To: Hongxu Jia; +Cc: Enrico Scholz, OE-core

[-- Attachment #1: Type: text/plain, Size: 529 bytes --]

On 21 February 2017 at 13:50, Burton, Ross <ross.burton@intel.com> wrote:

> I'm a big fan of fixing upstream so we don't have to carry a patch
> forever.  Their rationale I don't understand, but the implementation is
> clearly broken.
>

Here's my current fix:

+      cf_flags=`echo "$CC" | awk  'BEGIN{ORS=" ";RS=" "} /^-.+/ {print
$1}'`
+      CC=`echo "$CC " | awk  'BEGIN{ORS=" ";RS=" "} /^[^-].+/ {print $1}'`

Works for ccache, and doesn't involve a long/horrible sed.  I've also sent
it upstream.

Ross

[-- Attachment #2: Type: text/html, Size: 1156 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 4/4] ncurses: fix beaglebone do_configure failure
  2017-02-21  7:36 [PATCH V4 0/4] upgrade bash and ncurses Hongxu Jia
@ 2017-02-21  7:36 ` Hongxu Jia
  0 siblings, 0 replies; 13+ messages in thread
From: Hongxu Jia @ 2017-02-21  7:36 UTC (permalink / raw)
  To: openembedded-core, ross.burton

In configure, the option ${HOST_CC_ARCH} was removed from ${CC}:
---------------
|configure:2188: WARNING: your environment misuses the CC variable
to hold CFLAGS/CPPFLAGS options
|configure:2284: testing resulting CC: 'arm-poky-linux-gnueabi-gcc
--sysroot=tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/
6.0+20161126-r0/recipe-sysroot'
---------------

While arm compiling, option "-mfloat-abi=hard" in ${HOST_CC_ARCH}
lost that caused the failure:
---------------
|tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/6.0+20161126-r0/
recipe-sysroot/usr/include/gnu/stubs.h:7:29: fatal error:
gnu/stubs-soft.h: No such file or directory
| # include <gnu/stubs-soft.h>
---------------

Remove the cf_flags checking, because OE have assigned CC/CFLAGS.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 .../ncurses/files/removed-cflags-checking.patch    | 60 ++++++++++++++++++++++
 meta/recipes-core/ncurses/ncurses_6.0+20161126.bb  |  1 +
 2 files changed, 61 insertions(+)
 create mode 100644 meta/recipes-core/ncurses/files/removed-cflags-checking.patch

diff --git a/meta/recipes-core/ncurses/files/removed-cflags-checking.patch b/meta/recipes-core/ncurses/files/removed-cflags-checking.patch
new file mode 100644
index 0000000..87be605
--- /dev/null
+++ b/meta/recipes-core/ncurses/files/removed-cflags-checking.patch
@@ -0,0 +1,60 @@
+Remove cf_flags checking
+
+---------------
+|configure:2188: WARNING: your environment misuses the
+ CC variable to hold CFLAGS/CPPFLAGS options |configure:2284: testing
+ resulting CC: 'arm-poky-linux-gnueabi-gcc
+ --sysroot=tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/
+ 6.0+20161126-r0/recipe-sysroot'
+---------------
+
+While arm compiling, option "-mfloat-abi=hard" in ${HOST_CC_ARCH}
+lost that caused the failure:
+---------------
+|tmp/work/cortexa8hf-neon-poky-linux-gnueabi/ncurses/6.0+20161126-r0/
+recipe-sysroot/usr/include/gnu/stubs.h:7:29: fatal error:
+gnu/stubs-soft.h: No such file or directory
+| # include <gnu/stubs-soft.h>
+---------------
+
+Do not do the cf_cflags check could avoid the failure.
+
+Upstream-Status: Pending
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ aclocal.m4 | 3 +--
+ configure  | 3 +--
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/aclocal.m4 b/aclocal.m4
+index 4dc16ba..92f00fc 100644
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -734,8 +734,7 @@ case "$CC" in
+ 	AC_MSG_RESULT(broken)
+ 	AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
+ 	# humor him...
+-	cf_flags=`echo "$CC" | sed -e 's/^.*[[ 	]]\(-[[^ 	]]\)/\1/'`
+-	CC=`echo "$CC " | sed -e 's/[[ 	]]-[[^ 	]].*$//' -e 's/[[ 	]]*$//'`
++	cf_flags=""
+ 	for cf_arg in $cf_flags
+ 	do
+ 		case "x$cf_arg" in
+diff --git a/configure b/configure
+index b02eeb3..13adf90 100755
+--- a/configure
++++ b/configure
+@@ -2188,8 +2188,7 @@ echo "${ECHO_T}broken" >&6
+ 	{ echo "$as_me:2188: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
+ echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
+ 	# humor him...
+-	cf_flags=`echo "$CC" | sed -e 's/^.*[ 	]\(-[^ 	]\)/\1/'`
+-	CC=`echo "$CC " | sed -e 's/[ 	]-[^ 	].*$//' -e 's/[ 	]*$//'`
++	cf_flags=""
+ 	for cf_arg in $cf_flags
+ 	do
+ 		case "x$cf_arg" in
+-- 
+2.8.1
+
diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
index 7328e78..6c2a6eb 100644
--- a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
@@ -2,6 +2,7 @@ require ncurses.inc
 
 SRC_URI += "file://tic-hang.patch \
             file://config.cache \
+            file://removed-cflags-checking.patch \
 "
 # commit id corresponds to the revision in package version
 SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
-- 
2.9.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2017-02-21 16:30 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-14  7:02 [PATCH V3 0/4] upgrade bash and ncurses Hongxu Jia
2017-02-14  7:02 ` [PATCH 1/4] bash: 4.3.30 -> 4.4 Hongxu Jia
2017-02-14  7:02 ` [PATCH 2/4] bash: update patches for 4.4 Hongxu Jia
2017-02-14  7:02 ` [PATCH 3/4] ncurses: 6.0+20160625 -> 6.0+20161126 Hongxu Jia
2017-02-14  7:02 ` [PATCH 4/4] ncurses: fix beaglebone do_configure failure Hongxu Jia
2017-02-14 10:48   ` Enrico Scholz
2017-02-20 23:21     ` Burton, Ross
2017-02-21  0:20       ` Burton, Ross
2017-02-21  1:01         ` Enrico Scholz
2017-02-21  1:34           ` Hongxu Jia
2017-02-21 13:50             ` Burton, Ross
2017-02-21 16:30               ` Burton, Ross
2017-02-21  7:36 [PATCH V4 0/4] upgrade bash and ncurses Hongxu Jia
2017-02-21  7:36 ` [PATCH 4/4] ncurses: fix beaglebone do_configure failure Hongxu Jia

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.