Skip to contentSkip to conversation

upgrade bash and ncurses

PATCH Superseded Hongxu Jia 2 participants 7 messages Feb 21, 2017 – Feb 22, 2017

v4 of 5 Superseded Latest is v5 →

lore
Share & tools
lore

Hongxu Jia

author
#0 lore raw

v4 cover upgrade bash and ncurses

Changed in V4:
- Rebase bash, to drop backported patch CVE-2016-9401.patch

- Fix ncurses configure failure in beaglebone by removing cf_flags check.

Changed in V3:

- Fix nativesdk-bash compile failure

- Fix ncurses configure failure in beaglebone

//Hongxu

The following changes since commit e436a6398684d2872cb541f1cfb0f67b3618d15a:

layer.conf: bump version for change in eSDK selftest behaviour (2017-02-19 09:39:03 -0800)

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

 .../ncurses/files/removed-cflags-checking.patch    |  60 +++++++++
 ...ses_6.0+20160625.bb => ncurses_6.0+20161126.bb} |   3 +-
 ...e-builtins-uname-could-not-be-parsed-by-r.patch |  89 +++++++++++++
 .../0001-patch-to-obtain-pkgconfig-sanity.patch    |  28 +++++
 .../recipes-extended/bash/bash/CVE-2016-9401.patch |  50 --------
 ...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          |  72 -----------
 meta/recipes-extended/bash/bash_4.4.bb             |  66 ++++++++++
 10 files changed, 271 insertions(+), 364 deletions(-)
 create mode 100644 meta/recipes-core/ncurses/files/removed-cflags-checking.patch
 rename meta/recipes-core/ncurses/{ncurses_6.0+20160625.bb => ncurses_6.0+20161126.bb} (72%)
 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/CVE-2016-9401.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
Signature · 1 line
2.9.3
author
#1 lore raw

PATCH v4 1/4 bash: 4.3.30 -> 4.4

From: Zheng Ruoqin <[email protected]>

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

5) Delete CVE-2016-9401.patch which backported from 4.4

---
 .../0001-patch-to-obtain-pkgconfig-sanity.patch    |  28 +++++
 .../recipes-extended/bash/bash/CVE-2016-9401.patch |  50 --------
 ...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          |  72 -----------
 meta/recipes-extended/bash/bash_4.4.bb             |  38 ++++++
 7 files changed, 92 insertions(+), 363 deletions(-)
 create mode 100644 meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch
 delete mode 100644 meta/recipes-extended/bash/bash/CVE-2016-9401.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
meta/recipes-extended/bash/bash/0001-patch-to-obtain-pkgconfig-sanity.patch new file +28 -0
new file mode 100644
index 0000000..9b5e4ec
@@ -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 <[email protected]>
+---
+ 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
+
meta/recipes-extended/bash/bash/CVE-2016-9401.patch deleted +0 -50

50 lines not on this page · raw message

meta/recipes-extended/bash/bash/fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch +11 -126

161 lines not on this page · raw message

meta/recipes-extended/bash/bash/fix-run-intl.patch deleted +0 -110

110 lines not on this page · raw message

meta/recipes-extended/bash/bash/test-output.patch +15 -5
index 2b09b7d..652ffb1 100644
@@ -2,15 +2,21 @@ Add FAIL/PASS output to test output.
 
 Signed-off-by: Björn Stenberg <[email protected]>
 Upstream-Status: Pending
+
+Signed-off-by: Zheng Ruoqin <[email protected]>
 ---
-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
+
meta/recipes-extended/bash/bash_4.3.30.bb deleted +0 -72

72 lines not on this page · raw message

meta/recipes-extended/bash/bash_4.4.bb new file +38 -0
new file mode 100644
index 0000000..16ff114
@@ -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"
Signature · 1 line
2.9.3
author
#2 lore raw

PATCH v4 2/4 bash: update patches for 4.4

In reply to Hongxu Jia

- 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

--------------

---
 ...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
meta/recipes-extended/bash/bash/0001-The-loadable-builtins-uname-could-not-be-parsed-by-r.patch new file +89 -0
new file mode 100644
index 0000000..79d9e4e
@@ -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 <[email protected]>
+---
+ 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
+
meta/recipes-extended/bash/bash_4.4.bb +28 -0
index 16ff114..798bfdb 100644
@@ -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/*"
+
Signature · 1 line
2.9.3
#3 lore raw

Re: [PATCH 2/4] bash: update patches for 4.4

Having commits which don't build isn't good for bisecting in the future:
can you squash these into a single commit and credit Zheng Ruoqin for the initial work?

Ross

Quoted 241 lines · Hongxu Jia

- 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
--------------

---
 ...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

(quoted diff) +0 -0

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

meta/recipes-extended/bash/bash/0001-The-loadable- new file +0 -0

builtins-uname-could-not-be-parsed-by-r.patch

meta/recipes-extended/bash/bash/0001-The-loadable- new file +9 -0
@@ -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
+--------------

meta/recipes-extended/bash/bash/0001-The-loadable- new file +5 -0
+
+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
+--------------

meta/recipes-extended/bash/bash/0001-The-loadable- new file +5 -0
+
+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),

meta/recipes-extended/bash/bash/0001-The-loadable- new file +23 -0
+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 <[email protected]>
+---
+ examples/loadables/Makefile.in | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/examples/loadables/Makefile.in

b/examples/loadables/Makefile.in

meta/recipes-extended/bash/bash/0001-The-loadable- new file +15 -1
+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)

meta/recipes-extended/bash/bash/0001-The-loadable- new file +4 -0
+
+-uname:        uname.o
++uname-oe:     uname.o
+       $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ uname.o

$(SHOBJ_LIBS)

meta/recipes-extended/bash/bash/0001-The-loadable- new file +5 -0
+
+ sync: sync.o
+@@ -244,13 +244,15 @@ install-supported:       all installdirs install-dev
+               echo $$prog ; \
+               $(INSTALL_PROGRAM) $(INSTALLMODE) $$prog

$(DESTDIR)$(loadablesdir)/$$prog ;\

meta/recipes-extended/bash/bash/0001-The-loadable- new file +7 -0
+       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)

meta/recipes-extended/bash/bash/0001-The-loadable- new file +10 -0
+
+ uninstall-supported:  uninstall-dev
+-      -( cd $(DESTDIR)${loadablesdir} && $(RM) ${ALLPROG} )
++      -( cd $(DESTDIR)${loadablesdir} && $(RM) ${ALLPROG} uname)
+
+ install-unsupported:
+ uninstall-unsupported:
+--
+2.8.1
+
meta/recipes-extended/bash/bash_4.4.bb +0 -0
index 16ff114..798bfdb 100644
@@ -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 \
meta/recipes-extended/bash/bash_4.4.bb +1 -0
@@ -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"

meta/recipes-extended/bash/bash_4.4.bb +0 -0
@@ -34,5 +42,25 @@ SRC_URI[patch004.md5sum] = "

4557d674ab5831a5fa98052ab19edaf4"
SRC_URI[patch004.sha256sum] = "ad080a30a4ac6c1273373617f29628
cc320a35c8cd06913894794293dc52c8b3"
SRC_URI[patch005.md5sum] = "cce96dd77cdd1d293beec10848f6cbb5" SRC_URI[patch005.sha256sum] = "221e4b725b770ad0bb6924df3f8d04
f89eeca4558f6e4c777dfa93e967090529"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch006.md5sum] = "d3379f8d8abce5c6ee338f931ad008d5"
+SRC_URI[patch006.sha256sum] = "6a8e2e2a6180d0f1ce39dcd651622f

b6d2fd05db7c459f64ae42d667f1e344b8"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch007.md5sum] = "ec38c76ca439ca7f9c178e9baede84fc"
+SRC_URI[patch007.sha256sum] = "de1ccc07b7bfc9e25243ad854f3bbb

5d3ebf9155b0477df16aaf00a7b0d5edaf"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch008.md5sum] = "e0ba18c1e3b94f905da9b5bf9d38b58b"
+SRC_URI[patch008.sha256sum] = "86144700465933636d7b945e89b77d

f95d3620034725be161ca0ca5a42e239ba"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch009.md5sum] = "e952d4f44e612048930c559d90eb99bb"
+SRC_URI[patch009.sha256sum] = "0b6bdd1a18a0d20e330cc3bc71e048

864e4a13652e29dc0ebf3918bea729343c"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch010.md5sum] = "57b5b35955d68f9a09dbef6b86d2c782"
+SRC_URI[patch010.sha256sum] = "8465c6f2c56afe559402265b39d9e9

4368954930f9aa7f3dfa6d36dd66868e06"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch011.md5sum] = "cc896e1fa696b93ded568e557e2392d5"
+SRC_URI[patch011.sha256sum] = "dd56426ef7d7295e1107c0b3d06c19

2eb9298f4023c202ca2ba6266c613d170d"

meta/recipes-extended/bash/bash_4.4.bb +2 -0
+SRC_URI[patch012.md5sum] = "fa47fbfa56fb7e9e5367f19a9df5fc9e"
+SRC_URI[patch012.sha256sum] = "fac271d2bf6372c9903e3b353cb9ed

a044d7fe36b5aab52f21f3f21cd6a2063e"

BBCLASSEXTEND = "nativesdk"

meta/recipes-extended/bash/bash_4.4.bb +6 -1
+
+PACKAGE_BEFORE_PN += "${PN}-loadable"
+RDEPENDS_${PN}-loadable += "${PN}"
+FILES_${PN}-dev += "${libdir}/bash/Makefile.inc"
+FILES_${PN}-loadable += "${libdir}/bash/*"
+
--

2.9.3

author
#4 lore raw

Re: [PATCH 2/4] bash: update patches for 4.4

Quoted 2 lines · Ross

Having commits which don't build isn't good for bisecting in the future: can you squash these into a single commit and credit Zheng Ruoqin for the initial work?

OK, I will squash them into a single commit.

//Hongxu

Quoted 267 lines

Ross

On 21 February 2017 at 07:36, Hongxu Jia <[email protected] <mailto:[email protected]>> wrote:

    - 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 <[email protected]
    <mailto:[email protected]>>
    ---
     ...e-builtins-uname-could-not-be-parsed-by-r.patch | 89
    ++++++++++++++++++++++
     meta/recipes-extended/bash/bash_4.4.bb <http://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 <[email protected]
    <mailto:[email protected]>>
    +---
    + 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
    <http://bash_4.4.bb> b/meta/recipes-extended/bash/bash_4.4.bb
    <http://bash_4.4.bb>
    index 16ff114..798bfdb 100644
    --- a/meta/recipes-extended/bash/bash_4.4.bb <http://bash_4.4.bb>
    +++ b/meta/recipes-extended/bash/bash_4.4.bb <http://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.9.3
author
#5 lore raw

PATCH v4 3/4 ncurses: 6.0+20160625 -> 6.0+20161126

In reply to Hongxu Jia
---
 .../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%)
meta/recipes-core/ncurses/ncurses_6.0+20161126.bb renamed from meta/recipes-core/ncurses/ncurses_6.0+20160625.bb +1 -1
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
@@ -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+)*)"
Signature · 1 line
2.9.3
author
#6 lore raw

PATCH v4 4/4 ncurses: fix beaglebone do_configure failure

In reply to Hongxu Jia

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.

---
 .../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
meta/recipes-core/ncurses/files/removed-cflags-checking.patch new file +60 -0
new file mode 100644
index 0000000..87be605
@@ -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 <[email protected]>
+---
+ 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
+
meta/recipes-core/ncurses/ncurses_6.0+20161126.bb +1 -0
index 7328e78..6c2a6eb 100644
@@ -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"
Signature · 1 line
2.9.3