rdepends fixes and QA check: file-rdeps
cover rdepends fixes and QA check: file-rdeps
Hello,
I resent the remaining ones and put all of them in the same thread.
// Robert
The following changes since commit d0be4b37743492fc9c178fd6f9ef73a5eb2fd9c3:
chrpath: Drop warning from darwn builds (2014-08-17 10:01:30 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib rbt/rdeps
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/rdeps
Robert Yang (9):
insane.bbclass: add QA check: file-rdeps
ltp: fix RDEPENDS
meta: fix RDEPNEDS for the test related pkgs valgrind/oprofile/systemd: no bashism in run-ptest
run-ptest: fix bashism
lsbtest: no bashism in LSB_Test.sh
sed: add sed to RDEPENDS sed-ptest
bootchart2: no bashism in bootchartd.in
python3-distribute: fix interpreter
meta/classes/insane.bbclass | 73 +++++++++++++++++++- meta/recipes-core/libxml/libxml2.inc | 2 + meta/recipes-core/systemd/systemd/run-ptest | 2 + meta/recipes-core/udev/udev.inc | 2 +- .../bootchart2/bootchartd-no-bashism.patch | 27 ++++++++ meta/recipes-devtools/bootchart2/bootchart2_git.bb | 6 +- meta/recipes-devtools/insserv/files/run-ptest | 2 +- .../python/python3-distribute_0.6.32.bb | 2 + meta/recipes-devtools/quilt/quilt-0.63.inc | 2 +- meta/recipes-devtools/quilt/quilt/run-ptest | 2 +- meta/recipes-devtools/tcltk/tcl/run-ptest | 4 +- meta/recipes-devtools/valgrind/valgrind/run-ptest | 3 +- meta/recipes-extended/gawk/gawk-4.1.1/run-ptest | 4 +- meta/recipes-extended/lsb/lsbtest/LSB_Test.sh | 2 +- meta/recipes-extended/ltp/ltp_20140422.bb | 2 +- meta/recipes-extended/pam/libpam_1.1.6.bb | 11 ++- meta/recipes-extended/sed/sed_4.2.2.bb | 2 +- meta/recipes-kernel/lttng/lttng-tools_2.5.0.bb | 2 +- meta/recipes-kernel/oprofile/oprofile/run-ptest | 3 +- meta/recipes-support/beecrypt/beecrypt/run-ptest | 2 +- 20 files changed, 135 insertions(+), 20 deletions(-) create mode 100644 meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch
Signature · 1 line
1.7.9.5
PATCH 1/9 insane.bbclass: add QA check: file-rdeps
The ipk or deb can't depend on file such as "/bin/bash" or "/usr/bin/perl", so it knows nothing about the pkg depends bash or perl, thus there would be dependencies problems when we run "apt-get install/remove <pkg>" on the target, this check can help us find the issues and then fix them manually.
* Benefits:
- Help to fix file rdepends issues for ipk and deb
- Help to fix abnormal rdepends.
- Help to check whether the rdepends is OK or not after build each recipe (don't have to install to the image), for example, a recipe may generate 10 binary packages, only a part of them will be installed to the image by default, we can know whether the rdepends are OK or not for the ones which are installed, but can't know the ones which are not installed, this patch can help check all the 10 binary packages' rdepends.
* Basic designs:
- Get all the RDEPENDS on the chain.
- Get the pkg's FILERPROVIDES from oe.packagedata.read_subpkgdata() and save to set filerdepends.
- Get each RPDEPENDS' FILERPROVIDES, RPROVIDES and FILERPROVIDESFLIST, and save to set rdep_rprovides.
- Do the set "filerdepends -= rdep_rprovides" and QA issue if filerdepends is not null.
[YOCTO #1662]
--- meta/classes/insane.bbclass | 73 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-)
meta/classes/insane.bbclass +72 -1
@@ -29,7 +29,7 @@ QA_SANE = "True" WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi \ textrel already-stripped incompatible-license files-invalid \ installed-vs-shipped compile-host-path install-host-path \ - pn-overrides infodir build-deps \ + pn-overrides infodir build-deps file-rdeps \ " ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ perms dep-cmp pkgvarcheck perm-config perm-line perm-link \
@@ -797,6 +797,76 @@ def package_qa_check_rdepends(pkg, pkgdest, skip, taskdeps, packages, d): error_msg = "%s rdepends on %s, but it isn't a build dependency?" % (pkg, rdepend) sane = package_qa_handle_error("build-deps", error_msg, d) + if "file-rdeps" not in skip: + ignored_file_rdeps = set(['/bin/sh', '/usr/bin/env', 'rtld(GNU_HASH)']) + if bb.data.inherits_class('nativesdk', d): + ignored_file_rdeps |= set(['/bin/bash', '/usr/bin/perl']) + # For Saving the FILERDEPENDS + filerdepends = set() + rdep_data = oe.packagedata.read_subpkgdata(pkg, d) + for key in rdep_data: + if key.startswith("FILERDEPENDS_"): + for subkey in rdep_data[key].split(): + filerdepends.add(subkey) + filerdepends -= ignored_file_rdeps + + if filerdepends: + next = rdepends + done = rdepends[:] + # Find all the rdepends on the dependency chain + while next: + new = [] + for rdep in next: + rdep_data = oe.packagedata.read_subpkgdata(rdep, d) + sub_rdeps = rdep_data.get("RDEPENDS_" + rdep) + if not sub_rdeps: + continue + for sub_rdep in sub_rdeps.split(): + if sub_rdep in done: + continue + if not sub_rdep.startswith('(') and \ + oe.packagedata.has_subpkgdata(sub_rdep, d): + # It's a new rdep + done.append(sub_rdep) + new.append(sub_rdep) + next = new + + # Add the rprovides of itself + if pkg not in done: + done.insert(0, pkg) + + # The python is not a package, but python-core provides it, so + # skip checking /usr/bin/python if python is in the rdeps, in + # case there is a RDEPENDS_pkg = "python" in the recipe. + for py in [ d.getVar('MLPREFIX', True) + "python", "python" ]: + if py in done: + filerdepends.discard("/usr/bin/python") + done.remove(py) + for rdep in done: + # For Saving the FILERPROVIDES, RPROVIDES and FILES_INFO + rdep_rprovides = set() + rdep_data = oe.packagedata.read_subpkgdata(rdep, d) + for key in rdep_data: + if key.startswith("FILERPROVIDES_") or key.startswith("RPROVIDES_"): + for subkey in rdep_data[key].split(): + rdep_rprovides.add(subkey) + # Add the files list to the rprovides + if key == "FILES_INFO": + # Use eval() to make it as a dict + for subkey in eval(rdep_data[key]): + rdep_rprovides.add(subkey) + filerdepends -= rdep_rprovides + if not filerdepends: + # Break if all the file rdepends are met + break + else: + # Clear it for the next loop + rdep_rprovides.clear() + if filerdepends: + error_msg = "%s requires %s, but no providers in its RDEPENDS" % \ + (pkg, ', '.join(str(e) for e in filerdepends)) + sane = package_qa_handle_error("file-rdeps", error_msg, d) + return sane def package_qa_check_deps(pkg, pkgdest, skip, d):
@@ -894,6 +964,7 @@ python do_package_qa () { for dep in taskdepdata: taskdeps.add(taskdepdata[dep][0]) + g = globals() walk_sane = True rdepends_sane = True
Signature · 1 line
1.7.9.5
Re: [PATCH 1/9] insane.bbclass: add QA check: file-rdeps
Removed a blank line and put this patch to:
git://git.openembedded.org/openembedded-core-contrib rbt/rdeps
// Robert
Quoted 135 lines · Robert Yang
The ipk or deb can't depend on file such as "
/bin/bash" or "/usr/bin/perl", so it knows nothing about the pkg depends bash or perl, thus there would be dependencies problems when we run "apt-get install/remove <pkg>" on the target, this check can help us find the issues and then fix them manually.* Benefits:
- Help to fix file rdepends issues for ipk and deb
- Help to fix abnormal rdepends.
- Help to check whether the rdepends is OK or not after build each recipe (don't have to install to the image), for example, a recipe may generate 10 binary packages, only a part of them will be installed to the image by default, we can know whether the rdepends are OK or not for the ones which are installed, but can't know the ones which are not installed, this patch can help check all the 10 binary packages' rdepends.* Basic designs:
- Get all the RDEPENDS on the chain.- Get the pkg's FILERPROVIDES from
oe.packagedata.read_subpkgdata()and save to set filerdepends.- Get each RPDEPENDS' FILERPROVIDES, RPROVIDES and FILERPROVIDESFLIST, and save to set
rdep_rprovides.- Do the set "filerdepends -=
rdep_rprovides" and QA issue if filerdepends is not null.[YOCTO #1662]
Signed-off-by Robert Yang <[email protected]>--- meta/classes/insane.bbclass | 73 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-)meta/classes/insane.bbclass +72
-1@@ -29,7 +29,7 @@ QA_SANE = "True" WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi \ textrel already-stripped incompatible-license files-invalid \ installed-vs-shipped compile-host-path install-host-path \ - pn-overrides infodir build-deps \ + pn-overrides infodir build-deps file-rdeps \ " ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ perms dep-cmp pkgvarcheck perm-config perm-line perm-link \@@ -797,6 +797,76 @@ def package_qa_check_rdepends(pkg, pkgdest, skip, taskdeps, packages, d): error_msg = "%s rdepends on %s, but it isn't a build dependency?" % (pkg, rdepend) sane = package_qa_handle_error("build-deps", error_msg, d) + if "file-rdeps" not in skip: + ignored_file_rdeps = set(['/bin/sh', '/usr/bin/env', 'rtld(GNU_HASH)']) + if bb.data.inherits_class('nativesdk', d): + ignored_file_rdeps |= set(['/bin/bash', '/usr/bin/perl']) + # For Saving the FILERDEPENDS + filerdepends = set() + rdep_data = oe.packagedata.read_subpkgdata(pkg, d) + for key in rdep_data: + if key.startswith("FILERDEPENDS_"): + for subkey in rdep_data[key].split(): + filerdepends.add(subkey) + filerdepends -= ignored_file_rdeps + + if filerdepends: + next = rdepends + done = rdepends[:] + # Find all the rdepends on the dependency chain + while next: + new = [] + for rdep in next: + rdep_data = oe.packagedata.read_subpkgdata(rdep, d) + sub_rdeps = rdep_data.get("RDEPENDS_" + rdep) + if not sub_rdeps: + continue + for sub_rdep in sub_rdeps.split(): + if sub_rdep in done: + continue + if not sub_rdep.startswith('(') and \ + oe.packagedata.has_subpkgdata(sub_rdep, d): + # It's a new rdep + done.append(sub_rdep) + new.append(sub_rdep) + next = new + + # Add the rprovides of itself + if pkg not in done: + done.insert(0, pkg) + + # The python is not a package, but python-core provides it, so + # skip checking /usr/bin/python if python is in the rdeps, in + # case there is a RDEPENDS_pkg = "python" in the recipe. + for py in [ d.getVar('MLPREFIX', True) + "python", "python" ]: + if py in done: + filerdepends.discard("/usr/bin/python") + done.remove(py) + for rdep in done: + # For Saving the FILERPROVIDES, RPROVIDES and FILES_INFO + rdep_rprovides = set() + rdep_data = oe.packagedata.read_subpkgdata(rdep, d) + for key in rdep_data: + if key.startswith("FILERPROVIDES_") or key.startswith("RPROVIDES_"): + for subkey in rdep_data[key].split(): + rdep_rprovides.add(subkey) + # Add the files list to the rprovides + if key == "FILES_INFO": + # Use eval() to make it as a dict + for subkey in eval(rdep_data[key]): + rdep_rprovides.add(subkey) + filerdepends -= rdep_rprovides + if not filerdepends: + # Break if all the file rdepends are met + break + else: + # Clear it for the next loop + rdep_rprovides.clear() + if filerdepends: + error_msg = "%s requires %s, but no providers in its RDEPENDS" % \ + (pkg, ', '.join(str(e) for e in filerdepends)) + sane = package_qa_handle_error("file-rdeps", error_msg, d) + return sane def package_qa_check_deps(pkg, pkgdest, skip, d):@@ -894,6 +964,7 @@ python do_package_qa () { for dep in taskdepdata: taskdeps.add(taskdepdata[dep][0]) + g = globals() walk_sane = True rdepends_sane = True
PATCH 2/9 ltp: fix RDEPENDS
In reply to Robert YangFixed:/opt/ltp/testcases/bin/aio01 -> libaio/opt/ltp/testcases/bin/*.sh -> bash/opt/ltp/testcases/bin/*.py -> python/opt/ltp/bin/*.awk -> awk
--- meta/recipes-extended/ltp/ltp_20140422.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-extended/ltp/ltp_20140422.bb +1 -1
@@ -65,7 +65,7 @@ do_install(){ find ${D} -type f -print | xargs grep "\!.*\/usr\/bin\/expect" | awk -F":" '{print $1}' | xargs rm -f } -RDEPENDS_${PN} = "perl e2fsprogs-mke2fs" +RDEPENDS_${PN} = "perl e2fsprogs-mke2fs python-core libaio bash gawk" FILES_${PN}-dbg += "\ /opt/ltp/runtest/.debug \
Signature · 1 line
1.7.9.5
PATCH 3/9 meta: fix RDEPNEDS for the test related pkgs
In reply to Robert YangAdd bash, python or perl to the ptest pkgs to fix the RDEPENDS issues.
--- meta/recipes-core/libxml/libxml2.inc | 2 ++ meta/recipes-core/udev/udev.inc | 2 +- meta/recipes-extended/pam/libpam_1.1.6.bb | 11 +++++++++-- meta/recipes-kernel/lttng/lttng-tools_2.5.0.bb | 2 +- 4 files changed, 13 insertions(+), 4 deletions(-)
meta/recipes-core/libxml/libxml2.inc +2 -0
@@ -27,6 +27,8 @@ BINCONFIG = "${bindir}/xml2-config" inherit autotools pkgconfig binconfig-disabled pythonnative ptest +RDEPENDS_${PN}-ptest += "python-core" + RDEPENDS_${PN}-ptest_append_libc-glibc += "eglibc-gconv-ebcdic-us eglibc-gconv-ibm1141" # We don't DEPEND on binutils for ansidecl.h so ensure we don't use the header
meta/recipes-core/udev/udev.inc +1 -1
@@ -31,7 +31,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \ file://init" inherit autotools pkgconfig update-rc.d ptest -RDEPENDS_${PN}-ptest += "make" +RDEPENDS_${PN}-ptest += "make perl" libexecdir = "${base_libdir}" EXTRA_OECONF = "--disable-introspection \
meta/recipes-extended/pam/libpam_1.1.6.bb +9 -2
@@ -72,8 +72,15 @@ libpam_suffix = "suffix${@get_multilib_bit(d)}" RPROVIDES_${PN} += "${PN}-${libpam_suffix}" RPROVIDES_${PN}-runtime += "${PN}-runtime-${libpam_suffix}" -RDEPENDS_${PN}-runtime = "${PN}-${libpam_suffix} pam-plugin-deny-${libpam_suffix} pam-plugin-permit-${libpam_suffix} pam-plugin-warn-${libpam_suffix} pam-plugin-unix-${libpam_suffix}" -RDEPENDS_${PN}-xtests = "${PN}-${libpam_suffix} pam-plugin-access-${libpam_suffix} pam-plugin-debug-${libpam_suffix} pam-plugin-cracklib-${libpam_suffix} pam-plugin-pwhistory-${libpam_suffix} pam-plugin-succeed-if-${libpam_suffix} pam-plugin-time-${libpam_suffix} coreutils" +RDEPENDS_${PN}-runtime = "${PN}-${libpam_suffix} \ + pam-plugin-deny-${libpam_suffix} pam-plugin-permit-${libpam_suffix} \ + pam-plugin-warn-${libpam_suffix} pam-plugin-unix-${libpam_suffix} \ + " +RDEPENDS_${PN}-xtests = "${PN}-${libpam_suffix} \ + pam-plugin-access-${libpam_suffix} pam-plugin-debug-${libpam_suffix} \ + pam-plugin-cracklib-${libpam_suffix} pam-plugin-pwhistory-${libpam_suffix} \ + pam-plugin-succeed-if-${libpam_suffix} pam-plugin-time-${libpam_suffix} \ + coreutils bash" #RRECOMMENDS_${PN} = "${PN}-runtime-${libpam_suffix}" python populate_packages_prepend () {
meta/recipes-kernel/lttng/lttng-tools_2.5.0.bb +1 -1
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=01d7fc4496aacf37d90df90b90b0cac1 \ file://lgpl-2.1.txt;md5=0f0d71500e6a57fd24d825f33242b9ca" DEPENDS = "liburcu popt lttng-ust libxml2" -RDEPENDS_${PN}-ptest += "make" +RDEPENDS_${PN}-ptest += "make perl bash" SRCREV = "8b27cacb277c2cdab791139b08da8eb87ab14a88" PV = "v2.5.0"
Signature · 1 line
1.7.9.5
PATCH 4/9 valgrind/oprofile/systemd: no bashism in run-ptest
In reply to Robert YangThere is no bashism in the scripts, so use /bin/sh, and add /bin/sh interpreter for systemd's run-ptest.
--- meta/recipes-core/systemd/systemd/run-ptest | 2 ++ meta/recipes-devtools/valgrind/valgrind/run-ptest | 3 ++- meta/recipes-kernel/oprofile/oprofile/run-ptest | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-)
meta/recipes-core/systemd/systemd/run-ptest +2 -0
@@ -1,3 +1,5 @@ +#!/bin/sh + tar -C test -xJf test/sys.tar.xz make test/rules-test.sh.log make test/udev-test.pl.log
meta/recipes-devtools/valgrind/valgrind/run-ptest +2 -1
@@ -1,4 +1,5 @@ -#!/bin/bash +#!/bin/sh + # run-ptest - 'ptest' test infrastructure shell script that # wraps the valgrind regression script vg_regtest. # Must be run in the /usr/lib/valgrind/ptest directory.
meta/recipes-kernel/oprofile/oprofile/run-ptest +2 -1
@@ -1,4 +1,5 @@ -#!/bin/bash +#!/bin/sh + saved_dir=$PWD for dir in */tests ; do cd $dir
Signature · 1 line
1.7.9.5
PATCH 5/9 run-ptest: fix bashism
In reply to Robert YangThese script use /bin/sh as the interpreter, but contains bashism:
recipes-devtools/insserv/files/run-ptest
recipes-devtools/quilt/quilt/run-ptest
recipes-devtools/tcltk/tcl/run-ptest
recipes-extended/gawk/gawk-4.1.1/run-ptest
recipes-support/beecrypt/beecrypt/run-ptestFixed:
"==" -> "=" (should be -eq when integer)
"&>log" -> ">log 2>&1"And quilt's test scripts requires bash, add bash to RDEPENDS_quilt-ptest
--- meta/recipes-devtools/insserv/files/run-ptest | 2 +- meta/recipes-devtools/quilt/quilt-0.63.inc | 2 +- meta/recipes-devtools/quilt/quilt/run-ptest | 2 +- meta/recipes-devtools/tcltk/tcl/run-ptest | 4 ++-- meta/recipes-extended/gawk/gawk-4.1.1/run-ptest | 4 ++-- meta/recipes-support/beecrypt/beecrypt/run-ptest | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-)
meta/recipes-devtools/insserv/files/run-ptest +1 -1
@@ -11,7 +11,7 @@ output() { } for i in test_simple_sequence test_undetected_loop; \ - do $i &>/dev/null ; output; \ + do $i >/dev/null 2>&1; output; \ done rm -rf ${tmpdir}
meta/recipes-devtools/quilt/quilt-0.63.inc +1 -1
@@ -55,5 +55,5 @@ do_install_ptest() { RDEPENDS_${PN}-ptest = "make file sed gawk diffutils findutils ed perl \ perl-module-filehandle perl-module-getopt-std \ perl-module-posix perl-module-file-temp \ - perl-module-text-parsewords \ + perl-module-text-parsewords bash \ "
meta/recipes-devtools/quilt/quilt/run-ptest +1 -1
@@ -1,5 +1,5 @@ #!/bin/sh ln -sf /bin/ed /usr/bin/ed -for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? == 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done +for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? -eq 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done rm -f /usr/bin/ed
meta/recipes-devtools/tcltk/tcl/run-ptest +2 -2
@@ -1,8 +1,8 @@ #!/bin/sh for i in `ls tests/*.test |awk -F/ '{print $2}'`; \ - do TCL_LIBRARY=library ./tcltest tests/all.tcl -file $i &>$i.tmp; \ + do TCL_LIBRARY=library ./tcltest tests/all.tcl -file $i >$i.tmp 2>&1; \ grep -q "^Files with failing tests:" $i.tmp; \ - if [ $? == 0 ]; then echo "FAIL: $i"; \ + if [ $? -eq 0 ]; then echo "FAIL: $i"; \ else echo "PASS: $i"; rm -f $i.tmp; fi; \ done
meta/recipes-extended/gawk/gawk-4.1.1/run-ptest +2 -2
@@ -3,8 +3,8 @@ cd test for i in `grep -vE "@|^$|#|Gt-dummy" Maketests |awk -F: '{print $1}'`; \ do LC_ALL=${GAWKLOCALE:-C} LANG=${GAWKLOCALE:-C} srcdir=`pwd` AWK=gawk CMP=cmp \ - make -f Maketests $i &>$i.tmp; \ + make -f Maketests $i >$i.tmp 2>&1; \ grep -q "Error" $i.tmp; \ - if [ $? == 0 ]; then echo "FAIL: $i"; \ + if [ $? -eq 0 ]; then echo "FAIL: $i"; \ else echo "PASS: $i"; rm -f $i.tmp; fi; \ done
meta/recipes-support/beecrypt/beecrypt/run-ptest +1 -1
@@ -1,5 +1,5 @@ #!/bin/sh cd tests -for i in `ls`; do ./$i; if [ $? == 0 ]; then echo "PASS: $i"; \ +for i in `ls`; do ./$i; if [ $? -eq 0 ]; then echo "PASS: $i"; \ else echo "FAIL: $i"; fi; done
Signature · 1 line
1.7.9.5
PATCH 6/9 lsbtest: no bashism in LSB_Test.sh
In reply to Robert YangSo use /bin/sh
--- meta/recipes-extended/lsb/lsbtest/LSB_Test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-extended/lsb/lsbtest/LSB_Test.sh +1 -1
@@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh # Copyright (C) 2012 Wind River Systems, Inc. #
Signature · 1 line
1.7.9.5
PATCH 7/9 sed: add sed to RDEPENDS sed-ptest
In reply to Robert YangIts test scripts require /bin/sed.
--- meta/recipes-extended/sed/sed_4.2.2.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-extended/sed/sed_4.2.2.bb +1 -1
@@ -14,7 +14,7 @@ SRC_URI[md5sum] = "4111de4faa3b9848a0686b2f260c5056" SRC_URI[sha256sum] = "fea0a94d4b605894f3e2d5572e3f96e4413bcad3a085aae7367c2cf07908b2ff" inherit autotools texinfo update-alternatives gettext ptest -RDEPENDS_${PN}-ptest += "make locale-base-ru-ru" +RDEPENDS_${PN}-ptest += "make locale-base-ru-ru ${PN}" EXTRA_OECONF = "--disable-acl \ ${@bb.utils.contains('PTEST_ENABLED', '1', '--enable-regex-tests', '', d)}"
Signature · 1 line
1.7.9.5
PATCH 8/9 bootchart2: no bashism in bootchartd.in
In reply to Robert YangSo use /bin/sh
--- .../bootchart2/bootchartd-no-bashism.patch | 27 ++++++++++++++++++++ meta/recipes-devtools/bootchart2/bootchart2_git.bb | 6 +++-- 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch
meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch new file +27 -0
@@ -0,0 +1,27 @@ +From ffb5bae5d588aaea6325623462a8070a04767196 Mon Sep 17 00:00:00 2001 +From: Robert Yang <[email protected]> +Date: Thu, 14 Aug 2014 08:33:28 -0700 +Subject: [PATCH] bootchartd.in: no bashism + +No bashism in bootchartd.in, so use /bin/sh. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <[email protected]> +--- + bootchartd.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bootchartd.in b/bootchartd.in +index a408bab..064f6a4 100755 +--- a/bootchartd.in ++++ b/bootchartd.in +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # Bootchart logger script + # Ziga Mahkovec <[email protected]> +-- +1.7.9.5 +
meta/recipes-devtools/bootchart2/bootchart2_git.bb +4 -2
@@ -91,8 +91,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=44ac4678311254db62edf8fd39cb8124" # one commit beyond 1.14.6 for a systemd-related bugfix PV = "0.14.6+git${SRCPV}" -SRC_URI = "git://github.com/mmeeks/bootchart.git" -SRC_URI += "file://bootchartd_stop.sh" +SRC_URI = "git://github.com/mmeeks/bootchart.git \ + file://bootchartd_stop.sh \ + file://bootchartd-no-bashism.patch \ + " SRCREV = "b65ed43b0ae832080fb728245de9ef1a4b48d8b5"
Signature · 1 line
1.7.9.5
Re: [PATCH 8/9] bootchart2: no bashism in bootchartd.in
Would you be okay with me sending this one upstream? I think it's a worthwhile modification.
-Max
Quoted 62 lines · Robert Yang
So use
/bin/shSigned-off-by Robert Yang <[email protected]>--- .../bootchart2/bootchartd-no-bashism.patch | 27 ++++++++++++++++++++ meta/recipes-devtools/bootchart2/bootchart2_git.bb | 6 +++-- 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patchmeta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch new file +27
-0@@ -0,0 +1,27 @@ +From ffb5bae5d588aaea6325623462a8070a04767196 Mon Sep 17 00:00:00 2001 +From: Robert Yang <[email protected]> +Date: Thu, 14 Aug 2014 08:33:28 -0700 +Subject: [PATCH] bootchartd.in: no bashism + +No bashism in bootchartd.in, so use /bin/sh. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <[email protected]> +--- + bootchartd.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bootchartd.in b/bootchartd.in +index a408bab..064f6a4 100755 +--- a/bootchartd.in ++++ b/bootchartd.in +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # Bootchart logger script + # Ziga Mahkovec <[email protected]> +-- +1.7.9.5 +meta/recipes-devtools/bootchart2/bootchart2_git.bb +4
-2@@ -91,8 +91,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=44ac4678311254db62edf8fd39cb8124" # one commit beyond 1.14.6 for a systemd-related bugfix PV = "0.14.6+git${SRCPV}" -SRC_URI = "git://github.com/mmeeks/bootchart.git" -SRC_URI += "file://bootchartd_stop.sh" +SRC_URI = "git://github.com/mmeeks/bootchart.git \ + file://bootchartd_stop.sh \ + file://bootchartd-no-bashism.patch \ + " SRCREV = "b65ed43b0ae832080fb728245de9ef1a4b48d8b5"Signature · 1 line
1.7.9.5
Re: [PATCH 8/9] bootchart2: no bashism in bootchartd.in
Quoted 2 lines · Max Eliaser
Would you be okay with me sending this one upstream? I think it's a worthwhile modification.
Yes, of course, thanks for sending.
// Robert
Quoted 70 lines
-Max
Quoted 62 lines · Robert Yang
So use
/bin/shSigned-off-by Robert Yang <[email protected]>--- .../bootchart2/bootchartd-no-bashism.patch | 27 ++++++++++++++++++++ meta/recipes-devtools/bootchart2/bootchart2_git.bb | 6 +++-- 2 files changed, 31 insertions(+), 2 deletions(-)create mode 100644
meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patchmeta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch new file +27
-0@@ -0,0 +1,27 @@ +From ffb5bae5d588aaea6325623462a8070a04767196 Mon Sep 17 00:00:00 2001 +From: Robert Yang <[email protected]> +Date: Thu, 14 Aug 2014 08:33:28 -0700 +Subject: [PATCH] bootchartd.in: no bashism + +No bashism in bootchartd.in, so use /bin/sh. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <[email protected]> +--- + bootchartd.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bootchartd.in b/bootchartd.in +index a408bab..064f6a4 100755 +--- a/bootchartd.in ++++ b/bootchartd.in +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # Bootchart logger script + # Ziga Mahkovec <[email protected]> +-- +1.7.9.5 +meta/recipes-devtools/bootchart2/bootchart2_git.bb +4
-3@@ -91,8 +91,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=44ac4678311254db62edf8fd39cb8124" # one commit beyond 1.14.6 for a systemd-related bugfix PV = "0.14.6+git${SRCPV}" -SRC_URI = "git://github.com/mmeeks/bootchart.git" -SRC_URI += "file://bootchartd_stop.sh" +SRC_URI = "git://github.com/mmeeks/bootchart.git \ + file://bootchartd_stop.sh \ + file://bootchartd-no-bashism.patch \ + " SRCREV = "b65ed43b0ae832080fb728245de9ef1a4b48d8b5" --1.7.9.5
Re: [PATCH 8/9] bootchart2: no bashism in bootchartd.in
I have submitted the pull request, hopefully it gets accepted:
https://github.com/mmeeks/bootchart/pull/58
Quoted 80 lines · Robert Yang
Quoted 2 lines · Max Eliaser
Would you be okay with me sending this one upstream? I think it's a worthwhile modification.
Yes, of course, thanks for sending.
// Robert
Quoted 70 lines
-Max
Quoted 62 lines · Robert Yang
So use
/bin/shSigned-off-by Robert Yang <[email protected]>--- .../bootchart2/bootchartd-no-bashism.patch | 27 ++++++++++++++++++++ meta/recipes-devtools/bootchart2/bootchart2_git.bb | 6 +++-- 2 files changed, 31 insertions(+), 2 deletions(-)create mode 100644
meta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patchmeta/recipes-devtools/bootchart2/bootchart2/bootchartd-no-bashism.patch new file +27
-0@@ -0,0 +1,27 @@ +From ffb5bae5d588aaea6325623462a8070a04767196 Mon Sep 17 00:00:00 2001 +From: Robert Yang <[email protected]> +Date: Thu, 14 Aug 2014 08:33:28 -0700 +Subject: [PATCH] bootchartd.in: no bashism + +No bashism in bootchartd.in, so use /bin/sh. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <[email protected]> +--- + bootchartd.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bootchartd.in b/bootchartd.in +index a408bab..064f6a4 100755 +--- a/bootchartd.in ++++ b/bootchartd.in +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # Bootchart logger script + # Ziga Mahkovec <[email protected]> +-- +1.7.9.5 +meta/recipes-devtools/bootchart2/bootchart2_git.bb +4
-3@@ -91,8 +91,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=44ac4678311254db62edf8fd39cb8124" # one commit beyond 1.14.6 for a systemd-related bugfix PV = "0.14.6+git${SRCPV}" -SRC_URI = "git://github.com/mmeeks/bootchart.git" -SRC_URI += "file://bootchartd_stop.sh" +SRC_URI = "git://github.com/mmeeks/bootchart.git \ + file://bootchartd_stop.sh \ + file://bootchartd-no-bashism.patch \ + " SRCREV = "b65ed43b0ae832080fb728245de9ef1a4b48d8b5" --1.7.9.5
PATCH 9/9 python3-distribute: fix interpreter
In reply to Robert YangIt should use "/usr/bin/env python3" rather than python.
--- .../python/python3-distribute_0.6.32.bb | 2 ++ 1 file changed, 2 insertions(+)
meta/recipes-devtools/python/python3-distribute_0.6.32.bb +2 -0
@@ -37,6 +37,8 @@ do_install_append() { rm ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install echo "./${SRCNAME}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth + sed -i -e '1s|^#!.*python|#!/usr/bin/env python3|' \ + ${D}${PYTHON_SITEPACKAGES_DIR}/distribute-${PV}-py${PYTHON_BASEVERSION}.egg/setuptools/tests/test_resources.py } RDEPENDS_${PN} = "\
Signature · 1 line
1.7.9.5