[OE-core] [PATCH v2] oeqa/terminal : improve the test case

2020-12-16 Thread Teoh, Jay Shen
From: Teoh Jay Shen 

-Improve this test case to fulfill the requirements of replacing the 
click_terminal_icon_on_X_desktop manual test case from oeqa/manual/bsp-hw :
1) verify that the terminal window is working without problem
2) verify that there's only 1 terminal window is launched
3) reduce test case run time

Signed-off-by: Teoh Jay Shen 
---
 meta/lib/oeqa/runtime/cases/terminal.py | 17 -
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/meta/lib/oeqa/runtime/cases/terminal.py 
b/meta/lib/oeqa/runtime/cases/terminal.py
index ea4ef02..c330054 100644
--- a/meta/lib/oeqa/runtime/cases/terminal.py
+++ b/meta/lib/oeqa/runtime/cases/terminal.py
@@ -2,21 +2,20 @@ from oeqa.runtime.case import OERuntimeTestCase
 from oeqa.core.decorator.depends import OETestDepends
 from oeqa.runtime.decorator.package import OEHasPackage
 
-import re
+import threading
+import time
 
 class TerminalTest(OERuntimeTestCase):
 
 @OEHasPackage(['matchbox-terminal'])
 @OETestDepends(['ssh.SSHTest.test_ssh'])
 def test_terminal_running(self):
-status, output = self.target.run("export DISPLAY=:0 && 
matchbox-terminal",)
-check_terminal = re.search("Process killed - no output for 300 
seconds.", output)
-self.assertTrue(check_terminal, msg='Terminal window should be 
launched without any problem')  
-
-status, output = self.target.run('pidof matchbox-terminal | wc -w')
-output = int(output)
-self.assertEqual(output, 1, 'There should be only one terminal window 
being launched. Terminal window launched : %s' % output)
+t_thread = threading.Thread(target=self.target.run, args=("export 
DISPLAY=:0 && matchbox-terminal -e 'sh -c \"uname -a && exec sh\"'",))
+t_thread.start()
+time.sleep(2)
 
 status, output = self.target.run('pidof matchbox-terminal')
+number_of_terminal = len(output.split())
+self.assertEqual(number_of_terminal, 1, msg='There should be only one 
terminal being launched. Number of terminal launched : %s' % number_of_terminal)
 self.target.run('kill -9 %s' % output)
-self.assertEqual(status, 0, msg='Not able to find process that runs 
terminal.')   
+self.assertEqual(status, 0, msg='Not able to find process that runs 
terminal.') 
\ No newline at end of file
-- 
2.7.4


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145809): 
https://lists.openembedded.org/g/openembedded-core/message/145809
Mute This Topic: https://lists.openembedded.org/mt/79031076/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][dunfell 00/28] Pull request (cover letter only)

2020-12-16 Thread Steve Sakoman

The following changes since commit e216b2223cbe8c459348262f98b3cfbe79d12023:

  go: update to 1.14.12 (2020-12-03 07:35:27 -1000)

are available in the Git repository at:

  git://git.openembedded.org/openembedded-core-contrib stable/dunfell-next
  
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/dunfell-next

Alexander Kanavin (7):
  meta/lib/oe/reproducible.py: gitsm:// works just as fine as git:// for
timestamps
  llvm: fix reproducibility
  ruby: fix reproducibility
  webkitgtk: fix reproducibility
  ffmpeg: fix reproducibility
  serf: do not install the static library
  llvm: sort the lists in generated source reproducibibly

Andrej Valek (2):
  kernel-dummy: fix executing unexpected tasks
  python3: fix CVE-2019-20907

Brett Warren (1):
  libffi: add patch to revert clang VFP workaround

Changqing Li (1):
  buildtools-tarball: add wic dependency into extended buildtools

Dmitry Baryshkov (2):
  linux-firmware: upgrade 20201022 -> 20201118
  linux-firmware: package ath11k firmware

Gratian Crisan (1):
  kernel-module-split.bbclass: fix kernel modules getting marked as
CONFFILES

Hongxu Jia (1):
  glib-networking/btrfs-tools/dosfstools/parted/bmap-tools/libsoup-2.4:
add nativesdk support

Lee Chee Yang (3):
  glibc: fix CVE-2020-29562
  qemu: fix CVE-2020-25723
  binutils: fix CVE-2020-16592/16598

Mark Jonas (1):
  libsdl2: Add directfb to PACKAGECONFIG rdepends

Richard Purdie (2):
  lz4: Use the new branch naming from upstream
  metadata_scm: Fix signature handling of METADATA_REVISION and
METADATA_BRANCH

Ross Burton (5):
  oeqa/devtool: use Yocto mirror for pv-1.5.3 tarball
  devtool: remove unused variable
  image_types: sort tarball file listings
  cve-update-db-native: handle all-wildcard versions
  coreutils: add SUSE-specific issues to CVE whitelist

sangeeta jain (1):
  meta/lib/oeqa/manual/oe-core.json: Update test_bitbake_devshell

zangrc (1):
  wireless-regdb: upgrade 2020.04.29 -> 2020.11.20

 meta/classes/image_types.bbclass  |   2 +-
 meta/classes/kernel-module-split.bbclass  |   5 +-
 meta/classes/metadata_scm.bbclass |   2 +
 meta/lib/oe/reproducible.py   |   2 +-
 meta/lib/oeqa/manual/oe-core.json |   2 +-
 meta/lib/oeqa/selftest/cases/devtool.py   |   2 +-
 meta/recipes-core/coreutils/coreutils_8.31.bb |   3 +
 .../glib-networking/glib-networking_2.62.4.bb |   2 +-
 .../glibc/glibc/CVE-2020-29562.patch  | 156 ++
 meta/recipes-core/glibc/glibc_2.31.bb |   1 +
 .../meta/buildtools-extended-tarball.bb   |   3 +
 .../recipes-core/meta/cve-update-db-native.bb |   7 +-
 .../binutils/binutils-2.34.inc|   2 +
 .../binutils/binutils/CVE-2020-16592.patch|  61 +++
 .../binutils/binutils/CVE-2020-16598.patch|  32 
 .../btrfs-tools/btrfs-tools_5.4.1.bb  |   2 +-
 .../dosfstools/dosfstools_4.1.bb  |   2 +-
 ...r-sort-ClassInfo-lists-by-name-as-we.patch |  31 
 meta/recipes-devtools/llvm/llvm_git.bb|   8 +-
 ...20-8492-Fix-AbstractBasicAuthHandler.patch |   0
 .../python/python3/CVE-2019-20907.patch   |  44 +
 meta/recipes-devtools/python/python3_3.8.2.bb |   1 +
 meta/recipes-devtools/qemu/qemu.inc   |   1 +
 .../qemu/qemu/CVE-2020-25723.patch|  52 ++
 ...e.in-do-not-write-host-cross-cc-item.patch |  32 
 meta/recipes-devtools/ruby/ruby_2.7.1.bb  |   1 +
 meta/recipes-extended/parted/parted_3.3.bb|   2 +-
 .../libsdl2/libsdl2_2.0.12.bb |   2 +-
 ...20201022.bb => linux-firmware_20201118.bb} |  11 +-
 meta/recipes-kernel/linux/linux-dummy.bb  |   4 +-
 04.29.bb => wireless-regdb_2020.11.20.bb} |   2 +-
 ...e-assembly-with-full-path-from-sourc.patch |  97 +++
 .../recipes-multimedia/ffmpeg/ffmpeg_4.2.2.bb |   6 +
 meta/recipes-sato/webkit/webkitgtk_2.28.2.bb  |  12 ++
 .../bmap-tools/bmap-tools_3.5.bb  |   2 +-
 ...m-sysv-reverted-clang-VFP-mitigation.patch | 104 
 meta/recipes-support/libffi/libffi_3.3.bb |   1 +
 .../libsoup/libsoup-2.4_2.68.4.bb |   2 +-
 meta/recipes-support/lz4/lz4_1.9.2.bb |   2 +-
 meta/recipes-support/serf/serf_1.3.9.bb   |   5 +
 scripts/lib/devtool/standard.py   |   1 -
 41 files changed, 688 insertions(+), 21 deletions(-)
 create mode 100644 meta/recipes-core/glibc/glibc/CVE-2020-29562.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/CVE-2020-16592.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/CVE-2020-16598.patch
 create mode 100644 
meta/recipes-devtools/llvm/llvm/0001-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch
 rename meta/recipes-devtools/python/{files => 
python3}/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch (100%)
 create mode 100644 meta/recipes-devtools/python/python3/CVE-2019-20907.patch
 create mode 100644 

[OE-core] [PATCH 5/8] classes/kernel-fitimage: add ability to sign individual images

2020-12-16 Thread Paul Eggleton
From: Luca Boccassi 

Add the ability to have the kernel, dtb and ramdisk individually signed
by setting FIT_SIGN_INDIVIDUAL = "1". This could be useful if you are
intending to verify signatures before using kexec for example.

Signed-off-by: Luca Boccassi 
Signed-off-by: Paul Eggleton 
---
 meta/classes/kernel-fitimage.bbclass | 42 
 1 file changed, 42 insertions(+)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index 9661b4f..9fa302a 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -75,6 +75,9 @@ FIT_KEY_SIGN_PKCS ?= "-x509"
 # Description string
 FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
 
+# Sign individual images as well
+FIT_SIGN_INDIVIDUAL ?= "0"
+
 # mkimage command
 UBOOT_MKIMAGE ?= "uboot-mkimage"
 UBOOT_MKIMAGE_SIGN ?= "${UBOOT_MKIMAGE}"
@@ -142,6 +145,8 @@ EOF
 fitimage_emit_section_kernel() {
 
kernel_csum="${FIT_HASH_ALG}"
+   kernel_sign_algo="${FIT_SIGN_ALG}"
+   kernel_sign_keyname="${UBOOT_SIGN_KEYNAME}"
 
ENTRYPOINT="${UBOOT_ENTRYPOINT}"
if [ -n "${UBOOT_ENTRYSYMBOL}" ]; then
@@ -164,6 +169,17 @@ fitimage_emit_section_kernel() {
 };
 };
 EOF
+
+   if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${FIT_SIGN_INDIVIDUAL}" = "1" -a 
-n "${kernel_sign_keyname}" ] ; then
+   sed -i '$ d' ${1}
+   cat << EOF >> ${1}
+signature@1 {
+algo = "${kernel_csum},${kernel_sign_algo}";
+key-name-hint = "${kernel_sign_keyname}";
+};
+};
+EOF
+   fi
 }
 
 #
@@ -175,6 +191,8 @@ EOF
 fitimage_emit_section_dtb() {
 
dtb_csum="${FIT_HASH_ALG}"
+   dtb_sign_algo="${FIT_SIGN_ALG}"
+   dtb_sign_keyname="${UBOOT_SIGN_KEYNAME}"
 
dtb_loadline=""
dtb_ext=${DTB##*.}
@@ -198,6 +216,17 @@ fitimage_emit_section_dtb() {
 };
 };
 EOF
+
+   if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${FIT_SIGN_INDIVIDUAL}" = "1" -a 
-n "${dtb_sign_keyname}" ] ; then
+   sed -i '$ d' ${1}
+   cat << EOF >> ${1}
+signature@1 {
+algo = "${dtb_csum},${dtb_sign_algo}";
+key-name-hint = "${dtb_sign_keyname}";
+};
+};
+EOF
+   fi
 }
 
 #
@@ -236,6 +265,8 @@ EOF
 fitimage_emit_section_ramdisk() {
 
ramdisk_csum="${FIT_HASH_ALG}"
+   ramdisk_sign_algo="${FIT_SIGN_ALG}"
+   ramdisk_sign_keyname="${UBOOT_SIGN_KEYNAME}"
ramdisk_loadline=""
ramdisk_entryline=""
 
@@ -261,6 +292,17 @@ fitimage_emit_section_ramdisk() {
 };
 };
 EOF
+
+   if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${FIT_SIGN_INDIVIDUAL}" = "1" -a 
-n "${ramdisk_sign_keyname}" ] ; then
+   sed -i '$ d' ${1}
+   cat << EOF >> ${1}
+signature@1 {
+algo = "${ramdisk_csum},${ramdisk_sign_algo}";
+key-name-hint = "${ramdisk_sign_keyname}";
+};
+};
+EOF
+   fi
 }
 
 #
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145804): 
https://lists.openembedded.org/g/openembedded-core/message/145804
Mute This Topic: https://lists.openembedded.org/mt/79028971/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 4/8] classes/kernel-fitimage: add ability to add additional signing options

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

Add a UBOOT_MKIMAGE_SIGN_ARGS variable to enable passing additional
options to uboot-mkimage when it is run the second time to perform
signing.

Signed-off-by: Paul Eggleton 
---
 meta/classes/kernel-fitimage.bbclass | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index 08b5db2..9661b4f 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -79,6 +79,9 @@ FIT_DESC ?= "U-Boot fitImage for 
${DISTRO_NAME}/${PV}/${MACHINE}"
 UBOOT_MKIMAGE ?= "uboot-mkimage"
 UBOOT_MKIMAGE_SIGN ?= "${UBOOT_MKIMAGE}"
 
+# Arguments passed to mkimage for signing
+UBOOT_MKIMAGE_SIGN_ARGS ?= ""
+
 #
 # Emit the fitImage ITS header
 #
@@ -529,7 +532,8 @@ fitimage_assemble() {
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if 
len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-F -k "${UBOOT_SIGN_KEYDIR}" \
$add_key_to_u_boot \
-   -r arch/${ARCH}/boot/${2}
+   -r arch/${ARCH}/boot/${2} \
+   ${UBOOT_MKIMAGE_SIGN_ARGS}
fi
 }
 
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145800): 
https://lists.openembedded.org/g/openembedded-core/message/145800
Mute This Topic: https://lists.openembedded.org/mt/79028967/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 8/8] oe-selftest: fitimage: add test for signing FIT images

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

Add a new test to verify signing FIT images. Also includes testing for
the newly introduced FIT_SIGN_INDIVIDUAL, UBOOT_MKIMAGE,
UBOOT_MKIMAGE_SIGN, and UBOOT_MKIMAGE_SIGN_ARGS variables.

Signed-off-by: Paul Eggleton 
---
 meta-selftest/classes/test-mkimage-wrapper.bbclass |  19 +++
 meta/lib/oeqa/selftest/cases/fitimage.py   | 146 +
 2 files changed, 165 insertions(+)
 create mode 100644 meta-selftest/classes/test-mkimage-wrapper.bbclass

diff --git a/meta-selftest/classes/test-mkimage-wrapper.bbclass 
b/meta-selftest/classes/test-mkimage-wrapper.bbclass
new file mode 100644
index 000..7c98d7b
--- /dev/null
+++ b/meta-selftest/classes/test-mkimage-wrapper.bbclass
@@ -0,0 +1,19 @@
+# Class to test UBOOT_MKIMAGE and UBOOT_MKIMAGE_SIGN
+# (in conjunction with kernel-fitimage.bbclass)
+#
+# SPDX-License-Identifier: MIT
+#
+
+UBOOT_MKIMAGE = "test_mkimage_wrapper"
+UBOOT_MKIMAGE_SIGN = "test_mkimage_signing_wrapper"
+
+test_mkimage_wrapper() {
+echo "### uboot-mkimage wrapper message"
+uboot-mkimage "$@"
+}
+
+test_mkimage_signing_wrapper() {
+echo "### uboot-mkimage signing wrapper message"
+uboot-mkimage "$@"
+}
+
diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py 
b/meta/lib/oeqa/selftest/cases/fitimage.py
index 2a02c60..19b9f53 100644
--- a/meta/lib/oeqa/selftest/cases/fitimage.py
+++ b/meta/lib/oeqa/selftest/cases/fitimage.py
@@ -6,6 +6,7 @@ from oeqa.selftest.case import OESelftestTestCase
 from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu
 import os
 import json
+import re
 
 class FitImageTests(OESelftestTestCase):
 
@@ -85,3 +86,148 @@ FIT_DESC = "A model description"
 self.assertTrue(field_index == len(its_field_check),
 "Fields in Image Tree Source File %s did not match, error in 
finding %s"
 % (fitimage_its_path, its_field_check[field_index]))
+
+
+def test_sign_fit_image(self):
+"""
+Summary: Check if FIT image and Image Tree Source (its) are created
+ and signed correctly.
+Expected:1) its and FIT image are built successfully
+ 2) Scanning the its file indicates signing is enabled
+as requested by UBOOT_SIGN_ENABLE (using keys generated
+via FIT_GENERATE_KEYS)
+ 3) Dumping the FIT image indicates signature values
+are present (including for images as enabled via
+FIT_SIGN_INDIVIDUAL)
+ 4) Examination of the do_assemble_fitimage runfile/logfile
+indicate that UBOOT_MKIMAGE, UBOOT_MKIMAGE_SIGN and
+UBOOT_MKIMAGE_SIGN_ARGS are working as expected.
+Product: oe-core
+Author:  Paul Eggleton  based upon
+ work by Usama Arif 
+"""
+config = """
+# Enable creation of fitImage
+MACHINE = "beaglebone-yocto"
+KERNEL_IMAGETYPES += " fitImage "
+KERNEL_CLASSES = " kernel-fitimage test-mkimage-wrapper "
+UBOOT_SIGN_ENABLE = "1"
+FIT_GENERATE_KEYS = "1"
+UBOOT_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_SIGN_KEYNAME = "oe-selftest"
+FIT_SIGN_INDIVIDUAL = "1"
+UBOOT_MKIMAGE_SIGN_ARGS = "-c 'a smart comment'"
+"""
+self.write_config(config)
+
+# fitImage is created as part of linux recipe
+bitbake("virtual/kernel")
+
+image_type = "core-image-minimal"
+deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+machine = get_bb_var('MACHINE')
+fitimage_its_path = os.path.join(deploy_dir_image,
+"fitImage-its-%s" % (machine,))
+fitimage_path = os.path.join(deploy_dir_image,
+"fitImage-%s.bin" % (machine,))
+
+self.assertTrue(os.path.exists(fitimage_its_path),
+"%s image tree source doesn't exist" % (fitimage_its_path))
+self.assertTrue(os.path.exists(fitimage_path),
+"%s FIT image doesn't exist" % (fitimage_path))
+
+req_itspaths = [
+['/', 'images', 'kernel@1'],
+['/', 'images', 'kernel@1', 'signature@1'],
+['/', 'images', 'f...@am335x-boneblack.dtb'],
+['/', 'images', 'f...@am335x-boneblack.dtb', 'signature@1'],
+['/', 'configurations', 'c...@am335x-boneblack.dtb'],
+['/', 'configurations', 'c...@am335x-boneblack.dtb', 
'signature@1'],
+]
+
+itspath = []
+itspaths = []
+linect = 0
+sigs = {}
+with open(fitimage_its_path) as its_file:
+linect += 1
+for line in its_file:
+line = line.strip()
+if line.endswith('};'):
+itspath.pop()
+elif line.endswith('{'):
+itspath.append(line[:-1].strip())
+itspaths.append(itspath[:])
+elif itspath and itspath[-1] == 'signature@1':
+ 

[OE-core] [PATCH 7/8] oe-selftest: fitimage: Test for FIT_DESC

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

Add verification of FIT_DESC to the existing test for kernel-fitimage.

Signed-off-by: Paul Eggleton 
---
 meta/lib/oeqa/selftest/cases/fitimage.py | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py 
b/meta/lib/oeqa/selftest/cases/fitimage.py
index 2c3803d..2a02c60 100644
--- a/meta/lib/oeqa/selftest/cases/fitimage.py
+++ b/meta/lib/oeqa/selftest/cases/fitimage.py
@@ -35,6 +35,7 @@ UBOOT_RD_LOADADDRESS = "0x8800"
 UBOOT_RD_ENTRYPOINT = "0x8800"
 UBOOT_LOADADDRESS = "0x8008"
 UBOOT_ENTRYPOINT = "0x8008"
+FIT_DESC = "A model description"
 """
 self.write_config(config)
 
@@ -59,7 +60,9 @@ UBOOT_ENTRYPOINT = "0x8008"
 # The order of fields in the below array is important. Not all the
 # fields are tested, only the key fields that wont vary between
 # different architectures.
-its_field_check = ['type = "kernel";',
+its_field_check = [
+'description = "A model description";',
+'type = "kernel";',
 'load = <0x8008>;',
 'entry = <0x8008>;',
 'type = "ramdisk";',
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145805): 
https://lists.openembedded.org/g/openembedded-core/message/145805
Mute This Topic: https://lists.openembedded.org/mt/79028972/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 6/8] oe-selftest: move FIT image tests to their own module

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

I'm about to add an additional test, and on the assumption that we might
also add more in future it seems reasonable to have the tests in their own
module.

Signed-off-by: Paul Eggleton 
---
 meta/lib/oeqa/selftest/cases/fitimage.py  | 84 +++
 meta/lib/oeqa/selftest/cases/imagefeatures.py | 74 ---
 2 files changed, 84 insertions(+), 74 deletions(-)
 create mode 100644 meta/lib/oeqa/selftest/cases/fitimage.py

diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py 
b/meta/lib/oeqa/selftest/cases/fitimage.py
new file mode 100644
index 000..2c3803d
--- /dev/null
+++ b/meta/lib/oeqa/selftest/cases/fitimage.py
@@ -0,0 +1,84 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
+from oeqa.selftest.case import OESelftestTestCase
+from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu
+import os
+import json
+
+class FitImageTests(OESelftestTestCase):
+
+def test_fit_image(self):
+"""
+Summary: Check if FIT image and Image Tree Source (its) are built
+ and the Image Tree Source has the correct fields.
+Expected:1. fitImage and fitImage-its can be built
+ 2. The type, load address, entrypoint address and
+ default values of kernel and ramdisk are as expected
+ in the Image Tree Source. Not all the fields are tested,
+ only the key fields that wont vary between different
+ architectures.
+Product: oe-core
+Author:  Usama Arif 
+"""
+config = """
+# Enable creation of fitImage
+KERNEL_IMAGETYPE = "Image"
+KERNEL_IMAGETYPES += " fitImage "
+KERNEL_CLASSES = " kernel-fitimage "
+
+# RAM disk variables including load address and entrypoint for kernel and RAM 
disk
+IMAGE_FSTYPES += "cpio.gz"
+INITRAMFS_IMAGE = "core-image-minimal"
+UBOOT_RD_LOADADDRESS = "0x8800"
+UBOOT_RD_ENTRYPOINT = "0x8800"
+UBOOT_LOADADDRESS = "0x8008"
+UBOOT_ENTRYPOINT = "0x8008"
+"""
+self.write_config(config)
+
+# fitImage is created as part of linux recipe
+bitbake("virtual/kernel")
+
+image_type = "core-image-minimal"
+deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+machine = get_bb_var('MACHINE')
+fitimage_its_path = os.path.join(deploy_dir_image,
+"fitImage-its-%s-%s-%s" % (image_type, machine, machine))
+fitimage_path = os.path.join(deploy_dir_image,
+"fitImage-%s-%s-%s" % (image_type, machine, machine))
+
+self.assertTrue(os.path.exists(fitimage_its_path),
+"%s image tree source doesn't exist" % (fitimage_its_path))
+self.assertTrue(os.path.exists(fitimage_path),
+"%s FIT image doesn't exist" % (fitimage_path))
+
+# Check that the type, load address, entrypoint address and default
+# values for kernel and ramdisk in Image Tree Source are as expected.
+# The order of fields in the below array is important. Not all the
+# fields are tested, only the key fields that wont vary between
+# different architectures.
+its_field_check = ['type = "kernel";',
+'load = <0x8008>;',
+'entry = <0x8008>;',
+'type = "ramdisk";',
+'load = <0x8800>;',
+'entry = <0x8800>;',
+'default = "conf@1";',
+'kernel = "kernel@1";',
+'ramdisk = "ramdisk@1";'
+]
+
+with open(fitimage_its_path) as its_file:
+field_index = 0
+for line in its_file:
+if field_index == len(its_field_check):
+break
+if its_field_check[field_index] in line:
+field_index +=1
+
+if field_index != len(its_field_check): # if its equal, the test passed
+self.assertTrue(field_index == len(its_field_check),
+"Fields in Image Tree Source File %s did not match, error in 
finding %s"
+% (fitimage_its_path, its_field_check[field_index]))
diff --git a/meta/lib/oeqa/selftest/cases/imagefeatures.py 
b/meta/lib/oeqa/selftest/cases/imagefeatures.py
index 415e031..6723a81 100644
--- a/meta/lib/oeqa/selftest/cases/imagefeatures.py
+++ b/meta/lib/oeqa/selftest/cases/imagefeatures.py
@@ -264,80 +264,6 @@ PNBLACKLIST[busybox] = "Don't build this"
 
 bitbake("--graphviz core-image-sato")
 
-def test_fit_image(self):
-"""
-Summary: Check if FIT image and Image Tree Source (its) are built
- and the Image Tree Source has the correct fields.
-Expected:1. fitImage and fitImage-its can be built
- 2. The type, load address, entrypoint address and
- default values of kernel and ramdisk are as expected
- in the Image Tree Source. Not all the fields are tested,
-  

[OE-core] [PATCH 2/8] classes/kernel-fitimage: make fitimage_emit_section_config more readable

2020-12-16 Thread Paul Eggleton
From: Easwar Hariharan 

fitimage_emit_section_config() has a number of arguments, add named
variables to make the function a bit more readable.

Signed-off-by: Easwar Hariharan 
Signed-off-by: Paul Eggleton 
---
 meta/classes/kernel-fitimage.bbclass | 53 
 1 file changed, 30 insertions(+), 23 deletions(-)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index f121eee..f3d18e2 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -273,6 +273,13 @@ fitimage_emit_section_config() {
conf_sign_keyname="${UBOOT_SIGN_KEYNAME}"
fi
 
+   its_file="${1}"
+   kernel_id="${2}"
+   dtb_image="${3}"
+   ramdisk_id="${4}"
+   config_id="${5}"
+   default_flag="${6}"
+
# Test if we have any DTBs at all
sep=""
conf_desc=""
@@ -285,49 +292,49 @@ fitimage_emit_section_config() {
 
# conf node name is selected based on dtb ID if it is present,
# otherwise its selected based on kernel ID
-   if [ -n "${3}" ]; then
-   conf_node=$conf_node${3}
+   if [ -n "${dtb_image}" ]; then
+   conf_node=$conf_node${dtb_image}
else
-   conf_node=$conf_node${2}
+   conf_node=$conf_node${kernel_id}
fi
 
-   if [ -n "${2}" ]; then
+   if [ -n "${kernel_id}" ]; then
conf_desc="Linux kernel"
sep=", "
-   kernel_line="kernel = \"kernel@${2}\";"
+   kernel_line="kernel = \"kernel@${kernel_id}\";"
fi
 
-   if [ -n "${3}" ]; then
+   if [ -n "${dtb_image}" ]; then
conf_desc="${conf_desc}${sep}FDT blob"
sep=", "
-   fdt_line="fdt = \"fdt@${3}\";"
+   fdt_line="fdt = \"fdt@${dtb_image}\";"
fi
 
-   if [ -n "${4}" ]; then
+   if [ -n "${ramdisk_id}" ]; then
conf_desc="${conf_desc}${sep}ramdisk"
sep=", "
-   ramdisk_line="ramdisk = \"ramdisk@${4}\";"
+   ramdisk_line="ramdisk = \"ramdisk@${ramdisk_id}\";"
fi
 
-   if [ -n "${5}" ]; then
+   if [ -n "${config_id}" ]; then
conf_desc="${conf_desc}${sep}setup"
-   setup_line="setup = \"setup@${5}\";"
+   setup_line="setup = \"setup@${config_id}\";"
fi
 
-   if [ "${6}" = "1" ]; then
+   if [ "${default_flag}" = "1" ]; then
# default node is selected based on dtb ID if it is present,
# otherwise its selected based on kernel ID
-   if [ -n "${3}" ]; then
-   default_line="default = \"conf@${3}\";"
+   if [ -n "${dtb_image}" ]; then
+   default_line="default = \"conf@${dtb_image}\";"
else
-   default_line="default = \"conf@${2}\";"
+   default_line="default = \"conf@${kernel_id}\";"
fi
fi
 
-   cat << EOF >> ${1}
+   cat << EOF >> ${its_file}
 ${default_line}
 $conf_node {
-   description = "${6} ${conf_desc}";
+   description = "${default_flag} ${conf_desc}";
${kernel_line}
${fdt_line}
${ramdisk_line}
@@ -342,28 +349,28 @@ EOF
sign_line="sign-images = "
sep=""
 
-   if [ -n "${2}" ]; then
+   if [ -n "${kernel_id}" ]; then
sign_line="${sign_line}${sep}\"kernel\""
sep=", "
fi
 
-   if [ -n "${3}" ]; then
+   if [ -n "${dtb_image}" ]; then
sign_line="${sign_line}${sep}\"fdt\""
sep=", "
fi
 
-   if [ -n "${4}" ]; then
+   if [ -n "${ramdisk_id}" ]; then
sign_line="${sign_line}${sep}\"ramdisk\""
sep=", "
fi
 
-   if [ -n "${5}" ]; then
+   if [ -n "${config_id}" ]; then
sign_line="${sign_line}${sep}\"setup\""
fi
 
sign_line="${sign_line};"
 
-   cat << EOF >> ${1}
+   cat << EOF >> ${its_file}
 signature@1 {
 algo = "${conf_csum},${conf_sign_algo}";
 key-name-hint = "${conf_sign_keyname}";
@@ -372,7 +379,7 @@ EOF
 EOF
fi
 
-   cat << EOF >> ${1}
+   cat << EOF >> ${its_file}
 };
 EOF
 }
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145803): 
https://lists.openembedded.org/g/openembedded-core/message/145803
Mute This Topic: 

[OE-core] [PATCH 3/8] classes/kernel-fitimage: allow substituting mkimage command

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

Add a UBOOT_MKIMAGE and UBOOT_MKIMAGE_SIGN variables to allow specifying
an alternative uboot-mkimage executable (or wrapper script/function).

Signed-off-by: Paul Eggleton 
---
 meta/classes/kernel-fitimage.bbclass | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index f3d18e2..08b5db2 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -75,6 +75,10 @@ FIT_KEY_SIGN_PKCS ?= "-x509"
 # Description string
 FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
 
+# mkimage command
+UBOOT_MKIMAGE ?= "uboot-mkimage"
+UBOOT_MKIMAGE_SIGN ?= "${UBOOT_MKIMAGE}"
+
 #
 # Emit the fitImage ITS header
 #
@@ -505,7 +509,7 @@ fitimage_assemble() {
#
# Step 6: Assemble the image
#
-   uboot-mkimage \
+   ${UBOOT_MKIMAGE} \
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if 
len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-f ${1} \
arch/${ARCH}/boot/${2}
@@ -521,7 +525,7 @@ fitimage_assemble() {
cp -P ${STAGING_DATADIR}/u-boot*.dtb ${B}
add_key_to_u_boot="-K ${B}/${UBOOT_DTB_BINARY}"
fi
-   uboot-mkimage \
+   ${UBOOT_MKIMAGE_SIGN} \
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if 
len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-F -k "${UBOOT_SIGN_KEYDIR}" \
$add_key_to_u_boot \
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145799): 
https://lists.openembedded.org/g/openembedded-core/message/145799
Mute This Topic: https://lists.openembedded.org/mt/79028966/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 1/8] classes/kernel-fitimage: add variable for description

2020-12-16 Thread Paul Eggleton
From: Paul Eggleton 

Add a FIT_DESC variable to make it possible to change how the
description is set in the FIT image.

Signed-off-by: Paul Eggleton 
---
 meta/classes/kernel-fitimage.bbclass | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index bb2f3c4..f121eee 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -72,6 +72,9 @@ FIT_KEY_REQ_ARGS ?= "-batch -new"
 # Standard format for public key certificate
 FIT_KEY_SIGN_PKCS ?= "-x509"
 
+# Description string
+FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
+
 #
 # Emit the fitImage ITS header
 #
@@ -81,7 +84,7 @@ fitimage_emit_fit_header() {
 /dts-v1/;
 
 / {
-description = "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}";
+description = "${FIT_DESC}";
 #address-cells = <1>;
 EOF
 }
-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145802): 
https://lists.openembedded.org/g/openembedded-core/message/145802
Mute This Topic: https://lists.openembedded.org/mt/79028969/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 0/8] kernel-fitimage extensions

2020-12-16 Thread Paul Eggleton
Some minor extensions to the kernel-fitimage class, mostly for signing,
with associated oe-selftest tests. 

(Separate docs patch is queued and will follow once these changes are
pass review).


The following changes since commit 6012fffa99b600956ea1076d60e050d0737b4c4f:

  systemd: Fix reallocarray check (2020-12-16 19:44:45 +)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib paule/fitimage
  http://cgit.openembedded.org/openembedded-core-contrib/log/?h=paule/fitimage

Easwar Hariharan (1):
  classes/kernel-fitimage: make fitimage_emit_section_config more
readable

Luca Boccassi (1):
  classes/kernel-fitimage: add ability to sign individual images

Paul Eggleton (6):
  classes/kernel-fitimage: add variable for description
  classes/kernel-fitimage: allow substituting mkimage command
  classes/kernel-fitimage: add ability to add additional signing options
  oe-selftest: move FIT image tests to their own module
  oe-selftest: fitimage: Test for FIT_DESC
  oe-selftest: fitimage: add test for signing FIT images

 meta-selftest/classes/test-mkimage-wrapper.bbclass |  19 ++
 meta/classes/kernel-fitimage.bbclass   | 114 +++---
 meta/lib/oeqa/selftest/cases/fitimage.py   | 233 +
 meta/lib/oeqa/selftest/cases/imagefeatures.py  |  74 ---
 4 files changed, 339 insertions(+), 101 deletions(-)
 create mode 100644 meta-selftest/classes/test-mkimage-wrapper.bbclass
 create mode 100644 meta/lib/oeqa/selftest/cases/fitimage.py

-- 
1.8.3.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145801): 
https://lists.openembedded.org/g/openembedded-core/message/145801
Mute This Topic: https://lists.openembedded.org/mt/79028968/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [gatesgarth][PATCH 00/19] pull request (cover letter only)

2020-12-16 Thread Anuj Mittal
Please merge these changes in gatesgarth.

Thanks,

Anuj

The following changes since commit d11ab9cb77bf91f939035417b757773a5d80242c:

  build-appliance-image: Update to gatesgarth head revision (2020-12-07 
16:25:27 +)

are available in the Git repository at:

  git://push.openembedded.org/openembedded-core-contrib stable/gatesgarth-next

Alexander Kanavin (3):
  meta/lib/oe/reproducible.py: gitsm:// works just as fine as git:// for
timestamps
  llvm: fix reproducibility
  webkitgtk: fix reproducibility

Chandana kalluri (1):
  populate_sdk_ext: use SDK_CUSTOM_TEPLATECONF variable to enable custom
templateconf.cfg

Changqing Li (1):
  buildtools-tarball: add wic dependency into extended buildtools

Gratian Crisan (1):
  kernel-module-split.bbclass: fix kernel modules getting marked as
CONFFILES

Kai Kang (1):
  sudo: fix multilib conflict

Li Wang (2):
  qemu: CVE-2020-29129 CVE-2020-29130
  qemu: CVE-2020-25624

Mark Jonas (1):
  libsdl2: Add directfb to PACKAGECONFIG rdepends

Richard Purdie (2):
  lz4: Use the new branch naming from upstream
  uninative: Don't use single sstate for pseudo-native

Ross Burton (5):
  cve-update-db-native: handle all-wildcard versions
  oeqa/devtool: use Yocto mirror for pv-1.5.3 tarball
  image_types: sort tarball file listings
  image_types: remove obsolete tar comment
  coreutils: add SUSE-specific issues to CVE whitelist

sangeeta jain (1):
  meta/lib/oeqa/manual/oe-core.json: Update test_bitbake_devshell

zangrc (1):
  wireless-regdb: upgrade 2020.04.29 -> 2020.11.20

 meta/classes/base.bbclass |   1 +
 meta/classes/image_types.bbclass  |  12 +--
 meta/classes/kernel-module-split.bbclass  |   5 +-
 meta/classes/populate_sdk_ext.bbclass |   6 +-
 meta/classes/sstate.bbclass   |   4 +
 meta/lib/oe/reproducible.py   |   2 +-
 meta/lib/oe/sstatesig.py  |   2 +-
 meta/lib/oeqa/manual/oe-core.json |   2 +-
 meta/lib/oeqa/selftest/cases/devtool.py   |   2 +-
 meta/recipes-core/coreutils/coreutils_8.32.bb |   3 +
 .../meta/buildtools-extended-tarball.bb   |   3 +
 .../recipes-core/meta/cve-update-db-native.bb |   7 +-
 meta/recipes-devtools/llvm/llvm_git.bb|   5 +
 meta/recipes-devtools/qemu/qemu.inc   |   2 +
 .../qemu/qemu/CVE-2020-25624.patch| 101 ++
 .../qemu/CVE-2020-29129-CVE-2020-29130.patch  |  64 +++
 ...o.conf.in-fix-conflict-with-multilib.patch |  52 +
 meta/recipes-extended/sudo/sudo_1.9.3.bb  |   6 +-
 .../libsdl2/libsdl2_2.0.12.bb |   2 +-
 04.29.bb => wireless-regdb_2020.11.20.bb} |   2 +-
 meta/recipes-sato/webkit/webkitgtk_2.28.4.bb  |  12 +++
 meta/recipes-support/lz4/lz4_1.9.2.bb |   2 +-
 22 files changed, 274 insertions(+), 23 deletions(-)
 create mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2020-25624.patch
 create mode 100644 
meta/recipes-devtools/qemu/qemu/CVE-2020-29129-CVE-2020-29130.patch
 create mode 100644 
meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch
 rename meta/recipes-kernel/wireless-regdb/{wireless-regdb_2020.04.29.bb => 
wireless-regdb_2020.11.20.bb} (94%)

-- 
2.29.2


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145798): 
https://lists.openembedded.org/g/openembedded-core/message/145798
Mute This Topic: https://lists.openembedded.org/mt/79028904/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 8:20 PM, Peter Kjellerstedt wrote:
>> I do something very similar in my bbappend now. On the other hand, we
>> have an upstream first principle in the company. I would rather try to
>> find an upstream friendly solution that works for everybody without
>> breaking existing users before falling back to bbappend route that I
>> need to maintain forever.
> Well, the problem as I see it is that some of these changes are pretty 
> invasive to the recipes. And when most seem fine with them as they are 
> (based on the fact that there has not been any push to split any of 
> them before AFAIK), the value of these changes are questionable, given 
> that more complicated recipes increase the maintenance burden. 
> 

The counter argument is that a user should not be required to rework a
recipe in bbappend for common tools that everybody uses the same way.

If I was doing something special for my target, it has no business in
upstream recipe.

Requesting to have the ip tool out of iproute2 package is a no-brainer
IMO and should be supported by default.

I can also go ahead and say that ip tool probably is the most important
tool in this package and is actually disappointing to see that it has
not been brought out either by PACKAGECONFIG or PACKAGE options. I
honestly don't care about the rest of the tools in that package.

At the end of the day, there is room for improvement in the recipe.
Whether we can do it safely or not is for reviewers to help here.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145797): 
https://lists.openembedded.org/g/openembedded-core/message/145797
Mute This Topic: https://lists.openembedded.org/mt/79007326/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual package

2020-12-16 Thread Peter Kjellerstedt
> -Original Message-
> From: Sinan Kaya 
> Sent: den 17 december 2020 01:31
> To: Peter Kjellerstedt ; openembedded-
> c...@lists.openembedded.org
> Subject: Re: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to
> individual package
> 
> On 12/16/2020 6:19 PM, Peter Kjellerstedt wrote:
> >>
> >> -PACKAGES =+ "\
> >> +IPROUTE2_PACKAGES =+ "\
> >>  ${PN}-devlink \
> >>  ${PN}-genl \
> >>  ${PN}-ifstat \
> >> +${PN}-ip \
> >>  ${PN}-lnstat \
> >>  ${PN}-nstat \
> >>  ${PN}-rtacct \
> >> @@ -58,12 +59,16 @@ PACKAGES =+ "\
> >>  ${PN}-tipc \
> >>  "
> >>
> >> +PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
> >> +RDEPENDS_${PN} += "${IPROUTE2_PACKAGES}"
> >
> > This breaks backwards compatibility. The iproute2 package today
> > does not bring in all the sub-packages.
> >
> 
> OK, Let me fix this.
> 
> >> +
> >>  FILES_${PN}-tc = "${base_sbindir}/tc* \
> >>${libdir}/tc/*.so"
> >>  FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
> >>${base_sbindir}/ctstat \
> >>${base_sbindir}/rtstat"
> >>  FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
> >> +FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
> >>  FILES_${PN}-genl = "${base_sbindir}/genl"
> >>  FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
> >>  FILES_${PN}-nstat = "${base_sbindir}/nstat"
> >> @@ -71,7 +76,7 @@ FILES_${PN}-ss = "${base_sbindir}/ss"
> >>  FILES_${PN}-tipc = "${base_sbindir}/tipc"
> >>  FILES_${PN}-devlink = "${base_sbindir}/devlink"
> >>
> >> -ALTERNATIVE_${PN} = "ip"
> >> +ALTERNATIVE_${PN}-ip = "ip"
> >>  ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
> >>  ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
> >>  ALTERNATIVE_PRIORITY = "100"
> >> --
> >> 2.17.1
> >
> > If you are this space constrained, I would suggest adding bbappend
> files
> > to your own layer for these recipes instead. That is what we do so we
> can
> > control exactly what files we want or not. E.g., this is what we have
> in
> > our iproute2_%.bbappend:
> >
> > EXTRA_OEMAKE += "SUBDIRS='lib tc ip'"
> >
> > do_install_append() {
> > # Remove unused files
> > rm -f ${D}${base_sbindir}/ifcfg
> > rm -f ${D}${base_sbindir}/rtmon
> > rm -f ${D}${base_sbindir}/routef
> > rm -f ${D}${base_sbindir}/routel
> > rm -f ${D}${base_sbindir}/rtpr
> > }
> >
> > With the above bbappend, the only binary left in the iproute2 package
> is in
> > fact "ip".
> 
> I do something very similar in my bbappend now. On the other hand, we
> have an upstream first principle in the company. I would rather try to
> find an upstream friendly solution that works for everybody without
> breaking existing users before falling back to bbappend route that I
> need to maintain forever.

Well, the problem as I see it is that some of these changes are pretty 
invasive to the recipes. And when most seem fine with them as they are 
(based on the fact that there has not been any push to split any of 
them before AFAIK), the value of these changes are questionable, given 
that more complicated recipes increase the maintenance burden. 

> > //Peter

//Peter


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145796): 
https://lists.openembedded.org/g/openembedded-core/message/145796
Mute This Topic: https://lists.openembedded.org/mt/79007326/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] glibc: Make adjtime() for 32 bit support being called with delta == NULL

2020-12-16 Thread Peter Kjellerstedt
This backports a fix from glibc's master branch, which solves a
regression in 2.32 with adjtime() where it would seg fault if being
called with delta == NULL on 32 bit machines.

Signed-off-by: Peter Kjellerstedt 
---
 ...-adjtime-with-NULL-argument-BZ-26833.patch | 110 ++
 meta/recipes-core/glibc/glibc_2.32.bb |   1 +
 2 files changed, 111 insertions(+)
 create mode 100644 
meta/recipes-core/glibc/glibc/0031-linux-Allow-adjtime-with-NULL-argument-BZ-26833.patch

diff --git 
a/meta/recipes-core/glibc/glibc/0031-linux-Allow-adjtime-with-NULL-argument-BZ-26833.patch
 
b/meta/recipes-core/glibc/glibc/0031-linux-Allow-adjtime-with-NULL-argument-BZ-26833.patch
new file mode 100644
index 00..a458a2a223
--- /dev/null
+++ 
b/meta/recipes-core/glibc/glibc/0031-linux-Allow-adjtime-with-NULL-argument-BZ-26833.patch
@@ -0,0 +1,110 @@
+From 75a193b7611bade31a150dfcc528b973e3d46231 Mon Sep 17 00:00:00 2001
+From: Adhemerval Zanella 
+Date: Mon, 2 Nov 2020 16:18:29 -0300
+Subject: [PATCH] linux: Allow adjtime with NULL argument [BZ #26833]
+
+The adjtime interface allows return the amount of time remaining
+from any previous adjustment that has not yet been completed by
+passing a NULL as first argument.  This was introduced with y2038
+support 0308077e3a.
+
+Checked on i686-linux-gnu.
+
+Reviewed-by: Lukasz Majewski 
+Upstream-Status: Backport 
[https://sourceware.org/git/?p=glibc.git;a=commit;h=75a193b7611bade31a150dfcc528b973e3d46231]
+Signed-off-by: Peter Kjellerstedt 
+---
+ sysdeps/unix/sysv/linux/adjtime.c | 11 +---
+ time/Makefile |  3 ++-
+ time/tst-adjtime.c| 44 +++
+ 3 files changed, 54 insertions(+), 4 deletions(-)
+ create mode 100644 time/tst-adjtime.c
+
+diff --git a/sysdeps/unix/sysv/linux/adjtime.c 
b/sysdeps/unix/sysv/linux/adjtime.c
+index 3f9a4ea2eb..6d1d1b6af2 100644
+--- a/sysdeps/unix/sysv/linux/adjtime.c
 b/sysdeps/unix/sysv/linux/adjtime.c
+@@ -68,11 +68,16 @@ libc_hidden_def (__adjtime64)
+ int
+ __adjtime (const struct timeval *itv, struct timeval *otv)
+ {
+-  struct __timeval64 itv64, otv64;
++  struct __timeval64 itv64, *pitv64 = NULL;
++  struct __timeval64 otv64;
+   int retval;
+ 
+-  itv64 = valid_timeval_to_timeval64 (*itv);
+-  retval = __adjtime64 (, otv != NULL ?  : NULL);
++  if (itv != NULL)
++{
++  itv64 = valid_timeval_to_timeval64 (*itv);
++  pitv64 = 
++}
++  retval = __adjtime64 (pitv64, otv != NULL ?  : NULL);
+   if (otv != NULL)
+ *otv = valid_timeval64_to_timeval (otv64);
+ 
+diff --git a/time/Makefile b/time/Makefile
+index 26aa835166..f27a75a115 100644
+--- a/time/Makefile
 b/time/Makefile
+@@ -47,7 +47,8 @@ tests:= test_time clocktest tst-posixtz tst-strptime 
tst_wcsftime \
+  tst-mktime3 tst-strptime2 bug-asctime bug-asctime_r bug-mktime1 \
+  tst-strptime3 bug-getdate1 tst-strptime-whitespace tst-ftime \
+  tst-tzname tst-y2039 bug-mktime4 tst-strftime2 tst-strftime3 \
+- tst-clock tst-clock2 tst-clock_nanosleep tst-cpuclock1
++ tst-clock tst-clock2 tst-clock_nanosleep tst-cpuclock1 \
++ tst-adjtime
+ 
+ include ../Rules
+ 
+diff --git a/time/tst-adjtime.c b/time/tst-adjtime.c
+new file mode 100644
+index 00..ae2b37cdab
+--- /dev/null
 b/time/tst-adjtime.c
+@@ -0,0 +1,44 @@
++/* Basic tests for adjtime.
++   Copyright (C) 2020 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   .  */
++
++#include 
++#include 
++
++#include 
++#include 
++
++
++static int
++do_test (void)
++{
++  /* Check if the interface allows getting the amount of time remaining
++ from any previous adjustment that has not yet been completed.  This
++ is a non-privileged function of adjtime.  */
++  struct timeval tv;
++  int r = adjtime (NULL, );
++  if (r == -1)
++{
++  if (errno == ENOSYS)
++  FAIL_UNSUPPORTED ("adjtime unsupported");
++  FAIL_EXIT1 ("adjtime (NULL, ...) failed: %m");
++}
++
++  return 0;
++}
++
++#include 
diff --git a/meta/recipes-core/glibc/glibc_2.32.bb 
b/meta/recipes-core/glibc/glibc_2.32.bb
index 6d42f33822..b850c28c78 100644
--- a/meta/recipes-core/glibc/glibc_2.32.bb
+++ b/meta/recipes-core/glibc/glibc_2.32.bb
@@ -43,6 +43,7 @@ 

Re: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 6:19 PM, Peter Kjellerstedt wrote:
>>
>> -PACKAGES =+ "\
>> +IPROUTE2_PACKAGES =+ "\
>>  ${PN}-devlink \
>>  ${PN}-genl \
>>  ${PN}-ifstat \
>> +${PN}-ip \
>>  ${PN}-lnstat \
>>  ${PN}-nstat \
>>  ${PN}-rtacct \
>> @@ -58,12 +59,16 @@ PACKAGES =+ "\
>>  ${PN}-tipc \
>>  "
>>
>> +PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
>> +RDEPENDS_${PN} += "${IPROUTE2_PACKAGES}"
> 
> This breaks backwards compatibility. The iproute2 package today 
> does not bring in all the sub-packages. 
> 

OK, Let me fix this.

>> +
>>  FILES_${PN}-tc = "${base_sbindir}/tc* \
>>${libdir}/tc/*.so"
>>  FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
>>${base_sbindir}/ctstat \
>>${base_sbindir}/rtstat"
>>  FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
>> +FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
>>  FILES_${PN}-genl = "${base_sbindir}/genl"
>>  FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
>>  FILES_${PN}-nstat = "${base_sbindir}/nstat"
>> @@ -71,7 +76,7 @@ FILES_${PN}-ss = "${base_sbindir}/ss"
>>  FILES_${PN}-tipc = "${base_sbindir}/tipc"
>>  FILES_${PN}-devlink = "${base_sbindir}/devlink"
>>
>> -ALTERNATIVE_${PN} = "ip"
>> +ALTERNATIVE_${PN}-ip = "ip"
>>  ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
>>  ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
>>  ALTERNATIVE_PRIORITY = "100"
>> --
>> 2.17.1
> 
> If you are this space constrained, I would suggest adding bbappend files 
> to your own layer for these recipes instead. That is what we do so we can 
> control exactly what files we want or not. E.g., this is what we have in 
> our iproute2_%.bbappend:
> 
> EXTRA_OEMAKE += "SUBDIRS='lib tc ip'"
> 
> do_install_append() {
> # Remove unused files
> rm -f ${D}${base_sbindir}/ifcfg
> rm -f ${D}${base_sbindir}/rtmon
> rm -f ${D}${base_sbindir}/routef
> rm -f ${D}${base_sbindir}/routel
> rm -f ${D}${base_sbindir}/rtpr
> }
> 
> With the above bbappend, the only binary left in the iproute2 package is in 
> fact "ip".

I do something very similar in my bbappend now. On the other hand, we
have an upstream first principle in the company. I would rather try to
find an upstream friendly solution that works for everybody without
breaking existing users before falling back to bbappend route that I
need to maintain forever.

> 
> //Peter
> 


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145794): 
https://lists.openembedded.org/g/openembedded-core/message/145794
Mute This Topic: https://lists.openembedded.org/mt/79007326/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual package

2020-12-16 Thread Peter Kjellerstedt
> -Original Message-
> From: openembedded-core@lists.openembedded.org  c...@lists.openembedded.org> On Behalf Of Sinan Kaya
> Sent: den 16 december 2020 18:50
> To: openembedded-core@lists.openembedded.org
> Cc: Sinan Kaya 
> Subject: [OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual
> package
> 
> Move the ip tool into its own package. Useful for size constrained
> systems that only want the ip tool.
> 
> Signed-off-by: Sinan Kaya 
> ---
>  meta/recipes-connectivity/iproute2/iproute2.inc | 9 +++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc
> b/meta/recipes-connectivity/iproute2/iproute2.inc
> index 403d264308c..44f336bd580 100644
> --- a/meta/recipes-connectivity/iproute2/iproute2.inc
> +++ b/meta/recipes-connectivity/iproute2/iproute2.inc
> @@ -46,10 +46,11 @@ do_install () {
>  # The .so files in iproute2-tc are modules, not traditional libraries
>  INSANE_SKIP_${PN}-tc = "dev-so"
> 
> -PACKAGES =+ "\
> +IPROUTE2_PACKAGES =+ "\
>  ${PN}-devlink \
>  ${PN}-genl \
>  ${PN}-ifstat \
> +${PN}-ip \
>  ${PN}-lnstat \
>  ${PN}-nstat \
>  ${PN}-rtacct \
> @@ -58,12 +59,16 @@ PACKAGES =+ "\
>  ${PN}-tipc \
>  "
> 
> +PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
> +RDEPENDS_${PN} += "${IPROUTE2_PACKAGES}"

This breaks backwards compatibility. The iproute2 package today 
does not bring in all the sub-packages. 

> +
>  FILES_${PN}-tc = "${base_sbindir}/tc* \
>${libdir}/tc/*.so"
>  FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
>${base_sbindir}/ctstat \
>${base_sbindir}/rtstat"
>  FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
> +FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
>  FILES_${PN}-genl = "${base_sbindir}/genl"
>  FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
>  FILES_${PN}-nstat = "${base_sbindir}/nstat"
> @@ -71,7 +76,7 @@ FILES_${PN}-ss = "${base_sbindir}/ss"
>  FILES_${PN}-tipc = "${base_sbindir}/tipc"
>  FILES_${PN}-devlink = "${base_sbindir}/devlink"
> 
> -ALTERNATIVE_${PN} = "ip"
> +ALTERNATIVE_${PN}-ip = "ip"
>  ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
>  ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
>  ALTERNATIVE_PRIORITY = "100"
> --
> 2.17.1

If you are this space constrained, I would suggest adding bbappend files 
to your own layer for these recipes instead. That is what we do so we can 
control exactly what files we want or not. E.g., this is what we have in 
our iproute2_%.bbappend:

EXTRA_OEMAKE += "SUBDIRS='lib tc ip'"

do_install_append() {
# Remove unused files
rm -f ${D}${base_sbindir}/ifcfg
rm -f ${D}${base_sbindir}/rtmon
rm -f ${D}${base_sbindir}/routef
rm -f ${D}${base_sbindir}/routel
rm -f ${D}${base_sbindir}/rtpr
}

With the above bbappend, the only binary left in the iproute2 package is in 
fact "ip".

//Peter


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145793): 
https://lists.openembedded.org/g/openembedded-core/message/145793
Mute This Topic: https://lists.openembedded.org/mt/79007326/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v5] net-tools: split mii-tool into its own package

2020-12-16 Thread Sinan Kaya
Move the mii-tool into its own package. Useful for size constrained
systems that only want the mii-tool only.

Signed-off-by: Sinan Kaya 
---
 .../net-tools/net-tools_1.60-20181103.bb  | 15 ++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/net-tools/net-tools_1.60-20181103.bb 
b/meta/recipes-extended/net-tools/net-tools_1.60-20181103.bb
index e97731073e8..1784bf9ec24 100644
--- a/meta/recipes-extended/net-tools/net-tools_1.60-20181103.bb
+++ b/meta/recipes-extended/net-tools/net-tools_1.60-20181103.bb
@@ -107,4 +107,17 @@ python __anonymous() {
 }
 ALTERNATIVE_PRIORITY = "100"
 
-BBCLASSEXTEND = "native nativesdk"
+NETTOOLS_PACKAGES = "${PN}-mii-tool"
+
+PACKAGE_BEFORE_PN = "${NETTOOLS_PACKAGES}"
+RDEPENDS_${PN} += "${NETTOOLS_PACKAGES}"
+
+FILES_${PN}-mii-tool = "${base_sbindir}/mii-tool"
+
+ALTERNATIVE_${PN}_remove = "mii-tool"
+
+ALTERNATIVE_${PN}-mii-tool = "mii-tool"
+ALTERNATIVE_TARGET[mii-tool] = "${base_sbindir}/mii-tool"
+ALTERNATIVE_LINK_NAME[mii-tool] = "${base_sbindir}/mii-tool"
+
+BBCLASSEXTEND = "native nativesdk"
\ No newline at end of file
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145792): 
https://lists.openembedded.org/g/openembedded-core/message/145792
Mute This Topic: https://lists.openembedded.org/mt/79024663/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v6] procps: split ps and sysctl into individual packages

2020-12-16 Thread Sinan Kaya
Move the ps and sysctl tools into its own package. Useful for
size constrained systems that only want the ps and/or sysctl tools.

Signed-off-by: Sinan Kaya 
---
 meta/recipes-extended/procps/procps_3.3.16.bb | 25 +++
 1 file changed, 25 insertions(+)

diff --git a/meta/recipes-extended/procps/procps_3.3.16.bb 
b/meta/recipes-extended/procps/procps_3.3.16.bb
index 2810ebd285a..ef3ac86e97c 100644
--- a/meta/recipes-extended/procps/procps_3.3.16.bb
+++ b/meta/recipes-extended/procps/procps_3.3.16.bb
@@ -74,3 +74,28 @@ python __anonymous() {
 # 'ps' isn't suitable for use as a security tool so whitelist this CVE.
 # https://bugzilla.redhat.com/show_bug.cgi?id=1575473#c3
 CVE_CHECK_WHITELIST += "CVE-2018-1121"
+
+PROCPS_PACKAGES = "${PN}-lib \
+   ${PN}-ps \
+   ${PN}-sysctl"
+
+PACKAGE_BEFORE_PN = "${PROCPS_PACKAGES}"
+RDEPENDS_${PN} += "${PROCPS_PACKAGES}"
+
+RDEPENDS_${PN}-ps += "${PN}-lib"
+RDEPENDS_${PN}-sysctl += "${PN}-lib"
+
+FILES_${PN}-lib = "${libdir}"
+FILES_${PN}-ps = "${base_bindir}/ps.${BPN}"
+FILES_${PN}-sysctl = "${base_sbindir}/sysctl.${BPN} ${sysconfdir}/sysctl.conf 
${sysconfdir}/sysctl.d"
+
+ALTERNATIVE_${PN}_remove = "ps"
+ALTERNATIVE_${PN}_remove = "sysctl"
+
+ALTERNATIVE_${PN}-ps = "ps"
+ALTERNATIVE_TARGET[ps] = "${base_bindir}/ps"
+ALTERNATIVE_LINK_NAME[ps] = "${base_bindir}/ps"
+
+ALTERNATIVE_${PN}-sysctl = "sysctl"
+ALTERNATIVE_TARGET[sysctl] = "${base_sbindir}/sysctl"
+ALTERNATIVE_LINK_NAME[sysctl] = "${base_sbindir}/sysctl"
\ No newline at end of file
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145791): 
https://lists.openembedded.org/g/openembedded-core/message/145791
Mute This Topic: https://lists.openembedded.org/mt/79024126/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v5] procps: split ps and sysctl into individual packages

2020-12-16 Thread Sinan Kaya
Move the ps and sysctl tools into its own package. Useful for
size constrained systems that only want the ps and/or sysctl tools.

Signed-off-by: Sinan Kaya 
---
 meta/recipes-extended/procps/procps_3.3.16.bb | 25 +++
 1 file changed, 25 insertions(+)

diff --git a/meta/recipes-extended/procps/procps_3.3.16.bb 
b/meta/recipes-extended/procps/procps_3.3.16.bb
index 2810ebd285a..df340ea183f 100644
--- a/meta/recipes-extended/procps/procps_3.3.16.bb
+++ b/meta/recipes-extended/procps/procps_3.3.16.bb
@@ -74,3 +74,28 @@ python __anonymous() {
 # 'ps' isn't suitable for use as a security tool so whitelist this CVE.
 # https://bugzilla.redhat.com/show_bug.cgi?id=1575473#c3
 CVE_CHECK_WHITELIST += "CVE-2018-1121"
+
+PROCPS_PACKAGES = "${PN}-lib \
+   ${PN}-ps \
+   ${PN}-sysctl"
+
+PACKAGE_BEFORE_PN = "${PROCPS_PACKAGES}"
+RDEPENDS_${PN} += "${PROCPS_PACKAGES}"
+
+RDEPENDS_${PN}-ps += "${PN}-lib"
+RDEPENDS_${PN}-sysctl += "${PN}-sysctl"
+
+FILES_${PN}-lib = "${libdir}"
+FILES_${PN}-ps = "${base_bindir}/ps.${BPN}"
+FILES_${PN}-sysctl = "${base_sbindir}/sysctl.${BPN} ${sysconfdir}/sysctl.conf 
${sysconfdir}/sysctl.d"
+
+ALTERNATIVE_${PN}_remove = "ps"
+ALTERNATIVE_${PN}_remove = "sysctl"
+
+ALTERNATIVE_${PN}-ps = "ps"
+ALTERNATIVE_TARGET[ps] = "${base_bindir}/ps"
+ALTERNATIVE_LINK_NAME[ps] = "${base_bindir}/ps"
+
+ALTERNATIVE_${PN}-sysctl = "sysctl"
+ALTERNATIVE_TARGET[sysctl] = "${base_sbindir}/sysctl"
+ALTERNATIVE_LINK_NAME[sysctl] = "${base_sbindir}/sysctl"
\ No newline at end of file
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145790): 
https://lists.openembedded.org/g/openembedded-core/message/145790
Mute This Topic: https://lists.openembedded.org/mt/79023906/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] binutils: add libopcodes package for perf

2020-12-16 Thread Alan Perry



On 12/16/20 11:00 AM, Khem Raj wrote:

On Wed, Dec 16, 2020 at 10:57 AM Alan Perry  wrote:



On 12/16/20 10:27 AM, Khem Raj wrote:

On Tue, Dec 15, 2020 at 11:38 PM Alan Perry  wrote:

Add a package for libopcodes, since, like libbfd, it is needed by
perf. Without separate packages for these libraries, all of the
binutil tools get added as well.


libopcodes is not an API that binutils publish for wider consumption,
its meant for internal components and
external components can use it from binutils itself knowing very well
that it will change with binutils and therefore
I would prefer to not separate it out into separate package like this
which can appear as if its an external API
that binutils will respect.

Currently in binutils, the libbfd package is there "so including perf
doesn't include extra stuff".

Without this change, including perf includes that extra stuff anyway.

If that comment is to be believed, the libbfd is not currently being
provided in binutils as an external API.

yes libbfd should also have not been done this way as well but I guess
there are more than
one user for libbfd which tilted in its favor.


As I mentioned, the reason that it is done that way is broken without 
doing something similar with libopcodes as well.



Signed-off-by: Alan Perry 
---
   meta/recipes-devtools/binutils/binutils_2.35.bb | 6 --
   1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/binutils/binutils_2.35.bb 
b/meta/recipes-devtools/binutils/binutils_2.35.bb
index 2e645e1ed8..976e49765a 100644
--- a/meta/recipes-devtools/binutils/binutils_2.35.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.35.bb
@@ -52,9 +52,11 @@ do_install_class-native () {
  rmdir ${D}/${libdir}64 || :
   }

-# Split out libbfd-*.so so including perf doesn't include extra stuff
-PACKAGE_BEFORE_PN += "libbfd"
+# Split out libbfd-*.so and libopcodes-*.so so including perf doesn't include
+# extra stuff
+PACKAGE_BEFORE_PN += "libbfd libopcodes"
   FILES_libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
+FILES_libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"

   SRC_URI_append_class-nativesdk =  " 
file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "

--
2.17.1







-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145789): 
https://lists.openembedded.org/g/openembedded-core/message/145789
Mute This Topic: https://lists.openembedded.org/mt/78996080/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][PATCH v2 1/1] opkg: upgrade to version 0.4.4

2020-12-16 Thread Alex Stewart
Include an upstream patch for 0.4.4 which fixes a test framework error
that occurs on host systems with symlinked /tmp directories (like OE).

Signed-off-by: Alex Stewart 
---
 ...e-OS-negotiate-relative-package-dirs.patch | 43 +++
 .../opkg/{opkg_0.4.3.bb => opkg_0.4.4.bb} |  5 ++-
 2 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 
meta/recipes-devtools/opkg/opkg/0001-tests-let-the-OS-negotiate-relative-package-dirs.patch
 rename meta/recipes-devtools/opkg/{opkg_0.4.3.bb => opkg_0.4.4.bb} (92%)

diff --git 
a/meta/recipes-devtools/opkg/opkg/0001-tests-let-the-OS-negotiate-relative-package-dirs.patch
 
b/meta/recipes-devtools/opkg/opkg/0001-tests-let-the-OS-negotiate-relative-package-dirs.patch
new file mode 100644
index 
..33b7280e5a1d171400e0765c7d66072e3a718d17
--- /dev/null
+++ 
b/meta/recipes-devtools/opkg/opkg/0001-tests-let-the-OS-negotiate-relative-package-dirs.patch
@@ -0,0 +1,43 @@
+From 4acda6d01c5abd33f1a1a3275fd695363f59473f Mon Sep 17 00:00:00 2001
+From: Alex Stewart 
+Date: Tue, 15 Dec 2020 15:17:54 -0600
+Subject: [opkg][opkg-0.4.4 PATCH] tests: let the OS negotiate relative package
+ dirs
+
+In cases where a regression test requires that a package be installed to
+a subdirectory in the test feed, the opk.py module will attempt to
+resolve the subdirectory and rebase it to the root of the test feed.
+
+This is unnecessary, since all operations which make use of the
+subdirectory path do so from the perspective of the test feed already.
+Further, the rebase implementation breaks in cases where the test feed
+is beyond a symlink.
+
+Remove the resolve-and-rebase logic, and allow the OS to negotiate the
+relative path.
+
+Upstream-Status: Submitted 
[https://groups.google.com/g/opkg-devel/c/dE1o7_OVQSY]
+
+Signed-off-by: Alex Stewart 
+---
+ tests/opk.py | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/tests/opk.py b/tests/opk.py
+index 
692339567f72441766c8e658edc5bdf6a339f77d..711abacaeb328283e31524f6a49305fc7d39696a
 100644
+--- a/tests/opk.py
 b/tests/opk.py
+@@ -58,9 +58,7 @@ class Opk:
+ if 'Version' not in control.keys():
+ control['Version'] = '1.0'
+ if subdirectory is not None:
+-subdir = Path(subdirectory).resolve()
+-opkdir = Path(cfg.opkdir)
+-self._relative_dir = subdir.relative_to(opkdir)
++self._relative_dir = Path(subdirectory)
+ else:
+ self._relative_dir = None
+ self.control = control
+-- 
+2.29.2
+
diff --git a/meta/recipes-devtools/opkg/opkg_0.4.3.bb 
b/meta/recipes-devtools/opkg/opkg_0.4.4.bb
similarity index 92%
rename from meta/recipes-devtools/opkg/opkg_0.4.3.bb
rename to meta/recipes-devtools/opkg/opkg_0.4.4.bb
index 
46b7aa25231e49b3e800dabac1e516f6c741e574..f8034ca5fa591bce73e5bf6b0ce70bb6a681a18b
 100644
--- a/meta/recipes-devtools/opkg/opkg_0.4.3.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.4.4.bb
@@ -14,11 +14,12 @@ PE = "1"
 SRC_URI = 
"http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz \
file://opkg.conf \

file://0001-opkg_conf-create-opkg.lock-in-run-instead-of-var-run.patch \
+   file://0001-tests-let-the-OS-negotiate-relative-package-dirs.patch \
file://run-ptest \
 "
 
-SRC_URI[md5sum] = "86ec5eee9362aca0990994a402e077e9"
-SRC_URI[sha256sum] = 
"dda452854bc0cd1334f7ba18a66003d1c12a98600c894111b56919b1ea434718"
+SRC_URI[md5sum] = "345900c1d4747d58455867f9fe88ca43"
+SRC_URI[sha256sum] = 
"2217acc58b8eb31300631ebae75e222ebc700c9c1cf6408088705d19a472c839"
 
 # This needs to be before ptest inherit, otherwise all ptest files end packaged
 # in libopkg package if OPKGLIBDIR == libdir, because default
-- 
2.29.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145788): 
https://lists.openembedded.org/g/openembedded-core/message/145788
Mute This Topic: https://lists.openembedded.org/mt/79020734/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core][PATCH v2 0/1] opkg: upgrade to 0.4.4

2020-12-16 Thread Alex Stewart
Adopting Alejandro del Castillo's original upgrade patch.

Patch V2:
* Added a .patch from the 0.4.4 upstream which should resolve the ptest
  framework error which Alex Kanavin observed in his OE-core tests. I've
  verified this change on a local build of the OE-core minimal QEMU image.

Alex Stewart (1):
  opkg: upgrade to version 0.4.4

 ...e-OS-negotiate-relative-package-dirs.patch | 43 +++
 .../opkg/{opkg_0.4.3.bb => opkg_0.4.4.bb} |  5 ++-
 2 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 
meta/recipes-devtools/opkg/opkg/0001-tests-let-the-OS-negotiate-relative-package-dirs.patch
 rename meta/recipes-devtools/opkg/{opkg_0.4.3.bb => opkg_0.4.4.bb} (92%)

-- 
2.29.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145787): 
https://lists.openembedded.org/g/openembedded-core/message/145787
Mute This Topic: https://lists.openembedded.org/mt/79020726/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] binutils: add libopcodes package for perf

2020-12-16 Thread Khem Raj
On Wed, Dec 16, 2020 at 10:57 AM Alan Perry  wrote:
>
>
>
> On 12/16/20 10:27 AM, Khem Raj wrote:
> > On Tue, Dec 15, 2020 at 11:38 PM Alan Perry  wrote:
> >> Add a package for libopcodes, since, like libbfd, it is needed by
> >> perf. Without separate packages for these libraries, all of the
> >> binutil tools get added as well.
> >>
> > libopcodes is not an API that binutils publish for wider consumption,
> > its meant for internal components and
> > external components can use it from binutils itself knowing very well
> > that it will change with binutils and therefore
> > I would prefer to not separate it out into separate package like this
> > which can appear as if its an external API
> > that binutils will respect.
>
> Currently in binutils, the libbfd package is there "so including perf
> doesn't include extra stuff".
>
> Without this change, including perf includes that extra stuff anyway.
>
> If that comment is to be believed, the libbfd is not currently being
> provided in binutils as an external API.

yes libbfd should also have not been done this way as well but I guess
there are more than
one user for libbfd which tilted in its favor.

>
>
> >
> >> Signed-off-by: Alan Perry 
> >> ---
> >>   meta/recipes-devtools/binutils/binutils_2.35.bb | 6 --
> >>   1 file changed, 4 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/meta/recipes-devtools/binutils/binutils_2.35.bb 
> >> b/meta/recipes-devtools/binutils/binutils_2.35.bb
> >> index 2e645e1ed8..976e49765a 100644
> >> --- a/meta/recipes-devtools/binutils/binutils_2.35.bb
> >> +++ b/meta/recipes-devtools/binutils/binutils_2.35.bb
> >> @@ -52,9 +52,11 @@ do_install_class-native () {
> >>  rmdir ${D}/${libdir}64 || :
> >>   }
> >>
> >> -# Split out libbfd-*.so so including perf doesn't include extra stuff
> >> -PACKAGE_BEFORE_PN += "libbfd"
> >> +# Split out libbfd-*.so and libopcodes-*.so so including perf doesn't 
> >> include
> >> +# extra stuff
> >> +PACKAGE_BEFORE_PN += "libbfd libopcodes"
> >>   FILES_libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
> >> +FILES_libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"
> >>
> >>   SRC_URI_append_class-nativesdk =  " 
> >> file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "
> >>
> >> --
> >> 2.17.1
> >>
> >>
> >> 
> >>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145786): 
https://lists.openembedded.org/g/openembedded-core/message/145786
Mute This Topic: https://lists.openembedded.org/mt/78996080/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] binutils: add libopcodes package for perf

2020-12-16 Thread Alan Perry



On 12/16/20 10:27 AM, Khem Raj wrote:

On Tue, Dec 15, 2020 at 11:38 PM Alan Perry  wrote:

Add a package for libopcodes, since, like libbfd, it is needed by
perf. Without separate packages for these libraries, all of the
binutil tools get added as well.


libopcodes is not an API that binutils publish for wider consumption,
its meant for internal components and
external components can use it from binutils itself knowing very well
that it will change with binutils and therefore
I would prefer to not separate it out into separate package like this
which can appear as if its an external API
that binutils will respect.


Currently in binutils, the libbfd package is there "so including perf 
doesn't include extra stuff".


Without this change, including perf includes that extra stuff anyway.

If that comment is to be believed, the libbfd is not currently being 
provided in binutils as an external API.






Signed-off-by: Alan Perry 
---
  meta/recipes-devtools/binutils/binutils_2.35.bb | 6 --
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/binutils/binutils_2.35.bb 
b/meta/recipes-devtools/binutils/binutils_2.35.bb
index 2e645e1ed8..976e49765a 100644
--- a/meta/recipes-devtools/binutils/binutils_2.35.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.35.bb
@@ -52,9 +52,11 @@ do_install_class-native () {
 rmdir ${D}/${libdir}64 || :
  }

-# Split out libbfd-*.so so including perf doesn't include extra stuff
-PACKAGE_BEFORE_PN += "libbfd"
+# Split out libbfd-*.so and libopcodes-*.so so including perf doesn't include
+# extra stuff
+PACKAGE_BEFORE_PN += "libbfd libopcodes"
  FILES_libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
+FILES_libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"

  SRC_URI_append_class-nativesdk =  " 
file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "

--
2.17.1







-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145785): 
https://lists.openembedded.org/g/openembedded-core/message/145785
Mute This Topic: https://lists.openembedded.org/mt/78996080/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH v2 1/5] systemd: update 246 -> 247

2020-12-16 Thread Richard Purdie
On Wed, 2020-12-16 at 18:07 +, Richard Purdie via
lists.openembedded.org wrote:
> a reproducibility issue in oe-selftest:
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/79/builds/1651
> (which did happen last time as well on centos but I don't think was
> reported on the list, sorry)
> 
> These urls may help understand why its not reproducible:
> 
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20201215-mhq8wl33/packages/diff-html/
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20201215-mhq8wl33/
> 
> (looks like the uid of messagebus is changing at a really quick
> glance)

I did look a little further, the messagebus thing is not the problem. I
think the issue looks to be that systemd is conditionally adding some
code to a function on centos which changes the size of the .text
section, then that results in the other changes. What its doing on
centos and why, not sure but it sounds like host system contamination
of some sort.

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145784): 
https://lists.openembedded.org/g/openembedded-core/message/145784
Mute This Topic: https://lists.openembedded.org/mt/78949130/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] binutils: add libopcodes package for perf

2020-12-16 Thread Khem Raj
On Tue, Dec 15, 2020 at 11:38 PM Alan Perry  wrote:
>
> Add a package for libopcodes, since, like libbfd, it is needed by
> perf. Without separate packages for these libraries, all of the
> binutil tools get added as well.
>

libopcodes is not an API that binutils publish for wider consumption,
its meant for internal components and
external components can use it from binutils itself knowing very well
that it will change with binutils and therefore
I would prefer to not separate it out into separate package like this
which can appear as if its an external API
that binutils will respect.

> Signed-off-by: Alan Perry 
> ---
>  meta/recipes-devtools/binutils/binutils_2.35.bb | 6 --
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-devtools/binutils/binutils_2.35.bb 
> b/meta/recipes-devtools/binutils/binutils_2.35.bb
> index 2e645e1ed8..976e49765a 100644
> --- a/meta/recipes-devtools/binutils/binutils_2.35.bb
> +++ b/meta/recipes-devtools/binutils/binutils_2.35.bb
> @@ -52,9 +52,11 @@ do_install_class-native () {
> rmdir ${D}/${libdir}64 || :
>  }
>
> -# Split out libbfd-*.so so including perf doesn't include extra stuff
> -PACKAGE_BEFORE_PN += "libbfd"
> +# Split out libbfd-*.so and libopcodes-*.so so including perf doesn't include
> +# extra stuff
> +PACKAGE_BEFORE_PN += "libbfd libopcodes"
>  FILES_libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
> +FILES_libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"
>
>  SRC_URI_append_class-nativesdk =  " 
> file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "
>
> --
> 2.17.1
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145783): 
https://lists.openembedded.org/g/openembedded-core/message/145783
Mute This Topic: https://lists.openembedded.org/mt/78996080/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] bitbake.conf: Prevent pyc file generation in pseudo context

2020-12-16 Thread Paul Barker
This also effectively reverts commit b6d30c21b0:
bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta

The contents of ${COREBASE}/meta were ignored as pyc files could be
generated for the contents of the lib subdirectory if python modules
were imported within a pseudo context. However this doesn't protect us
from pyc files being generated in the lib directories for other layers.
It's far better to tell python not to produce pyc files when running
under pseudo (by setting the PYTHONDONTWRITEBYTECODE variable) as this
will cover any location where pyc files could possibly be created. This
variable is set in FAKEROOTBASEENV so that it applies to the
bitbake-worker instance for fakeroot tasks, preventing pyc files from
being generated for imports in python tasks themselves.

Also add a test case to ensure that pyc files are not created in tasks
which are executed under pseudo.

Signed-off-by: Paul Barker 
---
 meta-selftest/lib/pseudo_pyc_test1.py |  1 +
 meta-selftest/lib/pseudo_pyc_test2.py |  1 +
 .../pseudo-pyc-test/pseudo-pyc-test.bb| 15 +++
 meta/conf/bitbake.conf|  4 +--
 meta/lib/oeqa/selftest/cases/pseudo.py| 27 +++
 5 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 meta-selftest/lib/pseudo_pyc_test1.py
 create mode 100644 meta-selftest/lib/pseudo_pyc_test2.py
 create mode 100644 
meta-selftest/recipes-test/pseudo-pyc-test/pseudo-pyc-test.bb
 create mode 100644 meta/lib/oeqa/selftest/cases/pseudo.py

diff --git a/meta-selftest/lib/pseudo_pyc_test1.py 
b/meta-selftest/lib/pseudo_pyc_test1.py
new file mode 100644
index 00..b59abdd536
--- /dev/null
+++ b/meta-selftest/lib/pseudo_pyc_test1.py
@@ -0,0 +1 @@
+STRING = "pseudo_pyc_test1"
diff --git a/meta-selftest/lib/pseudo_pyc_test2.py 
b/meta-selftest/lib/pseudo_pyc_test2.py
new file mode 100644
index 00..fb67a978e0
--- /dev/null
+++ b/meta-selftest/lib/pseudo_pyc_test2.py
@@ -0,0 +1 @@
+STRING = "pseudo_pyc_test2"
diff --git a/meta-selftest/recipes-test/pseudo-pyc-test/pseudo-pyc-test.bb 
b/meta-selftest/recipes-test/pseudo-pyc-test/pseudo-pyc-test.bb
new file mode 100644
index 00..12dc91a8f3
--- /dev/null
+++ b/meta-selftest/recipes-test/pseudo-pyc-test/pseudo-pyc-test.bb
@@ -0,0 +1,15 @@
+SUMMARY = "pseudo env test"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = 
"file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+INHIBIT_DEFAULT_DEPS = "1"
+
+python do_compile() {
+import pseudo_pyc_test1
+print(pseudo_pyc_test1.STRING)
+}
+
+python do_install() {
+import pseudo_pyc_test2
+print(pseudo_pyc_test2.STRING)
+}
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 0d38eac094..4ce224a90c 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -685,13 +685,13 @@ SRC_URI = ""
 PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/"
 PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}:${PSEUDO_SYSROOT}"
 PSEUDO_SYSROOT = "${COMPONENTS_DIR}/${BUILD_ARCH}/pseudo-native"
-PSEUDO_IGNORE_PATHS = 
"/usr/,/etc/,/lib,/dev/,${T},${WORKDIR}/recipe-sysroot,${SSTATE_DIR},${STAMPS_DIR},${WORKDIR}/pkgdata-sysroot,${TMPDIR}/sstate-control,${DEPLOY_DIR},${WORKDIR}/deploy-,${TMPDIR}/buildstats,${WORKDIR}/sstate-build-package_,${WORKDIR}/sstate-install-package_,${WORKDIR}/sstate-build-image_complete,${TMPDIR}/sysroots-components,${BUILDHISTORY_DIR},${TMPDIR}/pkgdata,${TOPDIR}/cache,${COREBASE}/scripts,${COREBASE}/meta,${CCACHE_DIR}"
+PSEUDO_IGNORE_PATHS = 
"/usr/,/etc/,/lib,/dev/,${T},${WORKDIR}/recipe-sysroot,${SSTATE_DIR},${STAMPS_DIR},${WORKDIR}/pkgdata-sysroot,${TMPDIR}/sstate-control,${DEPLOY_DIR},${WORKDIR}/deploy-,${TMPDIR}/buildstats,${WORKDIR}/sstate-build-package_,${WORKDIR}/sstate-install-package_,${WORKDIR}/sstate-build-image_complete,${TMPDIR}/sysroots-components,${BUILDHISTORY_DIR},${TMPDIR}/pkgdata,${TOPDIR}/cache,${COREBASE}/scripts,${CCACHE_DIR}"
 
 export PSEUDO_DISABLED = "1"
 #export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}"
 #export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}"
 #export PSEUDO_LIBDIR = "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib
-FAKEROOTBASEENV = "PSEUDO_BINDIR=${PSEUDO_SYSROOT}${bindir_native} 
PSEUDO_LIBDIR=${PSEUDO_SYSROOT}${prefix_native}/lib/pseudo/lib 
PSEUDO_PREFIX=${PSEUDO_SYSROOT}${prefix_native} 
PSEUDO_IGNORE_PATHS=${PSEUDO_IGNORE_PATHS} PSEUDO_DISABLED=1"
+FAKEROOTBASEENV = "PSEUDO_BINDIR=${PSEUDO_SYSROOT}${bindir_native} 
PSEUDO_LIBDIR=${PSEUDO_SYSROOT}${prefix_native}/lib/pseudo/lib 
PSEUDO_PREFIX=${PSEUDO_SYSROOT}${prefix_native} 
PSEUDO_IGNORE_PATHS=${PSEUDO_IGNORE_PATHS} PSEUDO_DISABLED=1 
PYTHONDONTWRITEBYTECODE=1"
 FAKEROOTCMD = "${PSEUDO_SYSROOT}${bindir_native}/pseudo"
 FAKEROOTENV = "PSEUDO_PREFIX=${PSEUDO_SYSROOT}${prefix_native} 
PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${PSEUDO_PASSWD} 
PSEUDO_NOSYMLINKEXP=1 PSEUDO_IGNORE_PATHS=${PSEUDO_IGNORE_PATHS} 
PSEUDO_DISABLED=0"
 FAKEROOTNOENV = 

Re: [OE-core] [PATCH v2 1/5] systemd: update 246 -> 247

2020-12-16 Thread Richard Purdie
On Mon, 2020-12-14 at 12:34 +, Luca Bocassi wrote:
> From: Luca Boccassi 
> 
> Update systemd to v247.1.
> Add rule for new oomd dbus conf and for new pam.d
> conf directory in /usr/lib.
> Drop selinux-hook-handling-to-enumerate-nexthop.patch,
> merged upstream.
> Backport 0001-meson-set-cxx-variable-before-using-it.patch
> from v247-stable to fix builds without C++.
> Refresh musl patches.
> 
> Signed-off-by: Luca Boccassi 
> ---
> NOTE: the musl build has only been build-tested, and only on x86_64.
> The glibc build has been built and runtime-tested on x86_64 and
> arm64.

[sorry, hit send early when writing]

Unfortunately there is still something not quite right in this patchset
as it failed again during testing. There are a few different problems:

meta-intel in systemd-boot:

https://autobuilder.yoctoproject.org/typhoon/#/builders/100/builds/1016

a reproducibility issue in oe-selftest:

https://autobuilder.yoctoproject.org/typhoon/#/builders/79/builds/1651
(which did happen last time as well on centos but I don't think was
reported on the list, sorry)

These urls may help understand why its not reproducible:

https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20201215-mhq8wl33/packages/diff-html/
https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20201215-mhq8wl33/

(looks like the uid of messagebus is changing at a really quick glance)

and a build issue in world-lsb:

https://autobuilder.yoctoproject.org/typhoon/#/builders/108/builds/1189

At the top of the logs you can see the configuration that is being used
for a given build, so for example in the last one, the key difference
to some of the other builds might be any one of:

DISTRO = "poky-altcfg"
DISTRO_FEATURES_append = ' api-documentation'
require conf/multilib.conf
MULTILIBS = 'multilib:lib32'
DEFAULTTUNE_virtclass-multilib-lib32 = 'x86'
QEMU_USE_KVM = 'True'
INHERIT += 'testimage'
SDK_EXT_TYPE = 'minimal'
SDK_INCLUDE_TOOLCHAIN = '1'

but given its a pam error, I'd strongly suspect the DISTRO = "poky-
altcfg" would be the likely trigger.

Cheers,

Richard









-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145781): 
https://lists.openembedded.org/g/openembedded-core/message/145781
Mute This Topic: https://lists.openembedded.org/mt/78949130/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH v2 1/5] systemd: update 246 -> 247

2020-12-16 Thread Richard Purdie
On Mon, 2020-12-14 at 12:34 +, Luca Bocassi wrote:
> From: Luca Boccassi 
> 
> Update systemd to v247.1.
> Add rule for new oomd dbus conf and for new pam.d
> conf directory in /usr/lib.
> Drop selinux-hook-handling-to-enumerate-nexthop.patch,
> merged upstream.
> Backport 0001-meson-set-cxx-variable-before-using-it.patch
> from v247-stable to fix builds without C++.
> Refresh musl patches.
> 
> Signed-off-by: Luca Boccassi 
> ---
> NOTE: the musl build has only been build-tested, and only on x86_64.
> The glibc build has been built and runtime-tested on x86_64 and
> arm64.

Unfortunately there is still something not quite right in this patchset
as it failed again during testing. There are a few different problems:

meta-intel in systemd-boot:


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145780): 
https://lists.openembedded.org/g/openembedded-core/message/145780
Mute This Topic: https://lists.openembedded.org/mt/78949130/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v4] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
Move the ip tool into its own package. Useful for size constrained
systems that only want the ip tool.

Signed-off-by: Sinan Kaya 
---
 meta/recipes-connectivity/iproute2/iproute2.inc | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc 
b/meta/recipes-connectivity/iproute2/iproute2.inc
index 403d264308c..44f336bd580 100644
--- a/meta/recipes-connectivity/iproute2/iproute2.inc
+++ b/meta/recipes-connectivity/iproute2/iproute2.inc
@@ -46,10 +46,11 @@ do_install () {
 # The .so files in iproute2-tc are modules, not traditional libraries
 INSANE_SKIP_${PN}-tc = "dev-so"
 
-PACKAGES =+ "\
+IPROUTE2_PACKAGES =+ "\
 ${PN}-devlink \
 ${PN}-genl \
 ${PN}-ifstat \
+${PN}-ip \
 ${PN}-lnstat \
 ${PN}-nstat \
 ${PN}-rtacct \
@@ -58,12 +59,16 @@ PACKAGES =+ "\
 ${PN}-tipc \
 "
 
+PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
+RDEPENDS_${PN} += "${IPROUTE2_PACKAGES}"
+
 FILES_${PN}-tc = "${base_sbindir}/tc* \
   ${libdir}/tc/*.so"
 FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
   ${base_sbindir}/ctstat \
   ${base_sbindir}/rtstat"
 FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
+FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
 FILES_${PN}-genl = "${base_sbindir}/genl"
 FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
 FILES_${PN}-nstat = "${base_sbindir}/nstat"
@@ -71,7 +76,7 @@ FILES_${PN}-ss = "${base_sbindir}/ss"
 FILES_${PN}-tipc = "${base_sbindir}/tipc"
 FILES_${PN}-devlink = "${base_sbindir}/devlink"
 
-ALTERNATIVE_${PN} = "ip"
+ALTERNATIVE_${PN}-ip = "ip"
 ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
 ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
 ALTERNATIVE_PRIORITY = "100"
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145779): 
https://lists.openembedded.org/g/openembedded-core/message/145779
Mute This Topic: https://lists.openembedded.org/mt/79007326/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v6] sudo: split sudo binary into its own package

2020-12-16 Thread Sinan Kaya
Package just sudo binary into its own package for size concerned
targets.

Signed-off-by: Sinan Kaya 
---
 meta/recipes-extended/sudo/sudo_1.9.3p1.bb | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb 
b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
index ba61a7f2472..745f71b8504 100644
--- a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
+++ b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
@@ -44,6 +44,16 @@ do_install_append () {
rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo
 }
 
-FILES_${PN} += "${nonarch_libdir}/tmpfiles.d"
 FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \
 ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la"
+
+SUDO_PACKAGES = "${PN}-sudo\
+ ${PN}-lib"
+
+PACKAGE_BEFORE_PN = "${SUDO_PACKAGES}"
+
+RDEPENDS_${PN}-sudo = "${PN}-lib"
+RDEPENDS_${PN} += "${SUDO_PACKAGES}"
+
+FILES_${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit"
+FILES_${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} 
${nonarch_libdir}"
\ No newline at end of file
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145778): 
https://lists.openembedded.org/g/openembedded-core/message/145778
Mute This Topic: https://lists.openembedded.org/mt/79006904/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v3] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 12:24 PM, Richard Purdie wrote:
>> Is your preference to keep ip or have individual packages for the
>> remaining ?
> I have a very strong preference for only splitting the things we need
> to split.

Sounds good, I'll rework.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145777): 
https://lists.openembedded.org/g/openembedded-core/message/145777
Mute This Topic: https://lists.openembedded.org/mt/79005154/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v3] iproute2: split ip to individual package

2020-12-16 Thread Richard Purdie
On Wed, 2020-12-16 at 12:09 -0500, Sinan Kaya wrote:
> On 12/16/2020 12:00 PM, Richard Purdie wrote:
> > I accept there is a case for splitting out ip, the patch now splits
> > out
> > every binary though? That isn't what the commit message says...
> 
> I thought of going all the way to split everything since I'm here.
> 
> Is your preference to keep ip or have individual packages for the
> remaining ?

I have a very strong preference for only splitting the things we need
to split.

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145776): 
https://lists.openembedded.org/g/openembedded-core/message/145776
Mute This Topic: https://lists.openembedded.org/mt/79005154/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v5] sudo: split into smaller tools package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 12:01 PM, Konrad Weihmann wrote:
>> +PACKAGES += "${SUDO_PACKAGES}"
> 
> I think needs to be PACKAGE_BEFORE_PN = "${SUDO_PACKAGES}"
> otherwise everything will end up in ${PN} as the list is appended here

OK, I guess this is what I didn't know. This is unusual keyword that I
have never used/seen before.

All other examples I looked had FILES="" and split the package into
smaller subpackages.

I can rework the change to just have sudo as a small package with
PACKAGE_BEFORE_PN keyword.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145775): 
https://lists.openembedded.org/g/openembedded-core/message/145775
Mute This Topic: https://lists.openembedded.org/mt/79005423/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v3] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 12:00 PM, Richard Purdie wrote:
> I accept there is a case for splitting out ip, the patch now splits out
> every binary though? That isn't what the commit message says...

I thought of going all the way to split everything since I'm here.

Is your preference to keep ip or have individual packages for the
remaining ?

I can adjust commit and name accordingly.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145774): 
https://lists.openembedded.org/g/openembedded-core/message/145774
Mute This Topic: https://lists.openembedded.org/mt/79005154/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v5] sudo: split into smaller tools package

2020-12-16 Thread Konrad Weihmann

On 16.12.20 17:56, Sinan Kaya wrote:

Signed-off-by: Sinan Kaya 
---
  meta/recipes-extended/sudo/sudo_1.9.3p1.bb | 30 +-
  1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb 
b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
index ba61a7f2472..2d185d88e4b 100644
--- a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
+++ b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
@@ -44,6 +44,34 @@ do_install_append () {
rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo
  }
  
-FILES_${PN} += "${nonarch_libdir}/tmpfiles.d"

  FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \
  ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la"
+
+SUDO_PACKAGES = "${PN}-cvtsudoers"
+SUDO_PACKAGES += "${PN}-sudoreplay"
+SUDO_PACKAGES += "${PN}-logsrvd"
+SUDO_PACKAGES += "${PN}-sendlog"
+SUDO_PACKAGES += "${PN}-visudo"
+SUDO_PACKAGES += "${PN}-sudo"
+SUDO_PACKAGES += "${PN}-lib"
+PACKAGES += "${SUDO_PACKAGES}"


I think needs to be PACKAGE_BEFORE_PN = "${SUDO_PACKAGES}"
otherwise everything will end up in ${PN} as the list is appended here


+
+RDEPENDS_${PN}-cvtsudoers = "${PN}-lib"
+RDEPENDS_${PN}-sudo = "${PN}-lib"
+RDEPENDS_${PN}-sudoreplay = "${PN}-lib"
+RDEPENDS_${PN}-logsrvd = "${PN}-lib"
+RDEPENDS_${PN}-sendlog = "${PN}-lib"
+RDEPENDS_${PN}-visudo = "${PN}-lib"
+
+RDEPENDS_${PN} += "${SUDO_PACKAGES}"
+
+ALLOW_EMPTY_${PN} = "1"
+
+FILES_${PN} = ""
+FILES_${PN}-cvtsudoers = "${bindir}/cvtsudoers"
+FILES_${PN}-sudoreplay = "${bindir}/sudoreplay"
+FILES_${PN}-logsrvd = "${sbindir}/sudo_logsrvd"
+FILES_${PN}-sendlog = "${sbindir}/sudo_sendlog"
+FILES_${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit"
+FILES_${PN}-visudo = "${sbindir}/visudo"
+FILES_${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} 
${nonarch_libdir}"






-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145773): 
https://lists.openembedded.org/g/openembedded-core/message/145773
Mute This Topic: https://lists.openembedded.org/mt/79005423/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v3] iproute2: split ip to individual package

2020-12-16 Thread Richard Purdie
On Wed, 2020-12-16 at 16:45 +, Sinan Kaya wrote:
> Move the ip tool into its own package. Useful for size constrained
> systems that only want the ip tool.
> 
> Signed-off-by: Sinan Kaya 
> ---
>  .../iproute2/iproute2.inc | 47 ++-
>  1 file changed, 45 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc 
> b/meta/recipes-connectivity/iproute2/iproute2.inc
> index 403d264308c..c7a3d547dae 100644
> --- a/meta/recipes-connectivity/iproute2/iproute2.inc
> +++ b/meta/recipes-connectivity/iproute2/iproute2.inc
> @@ -46,32 +46,75 @@ do_install () {
>  # The .so files in iproute2-tc are modules, not traditional libraries
>  INSANE_SKIP_${PN}-tc = "dev-so"
>  
> -PACKAGES =+ "\
> +IPROUTE2_PACKAGES =+ "\
> +${PN}-bridge \
>  ${PN}-devlink \
>  ${PN}-genl \
> +${PN}-ifcfg \
>  ${PN}-ifstat \
> +${PN}-ip \
> +${PN}-lib \
>  ${PN}-lnstat \
>  ${PN}-nstat \
> +${PN}-rdma \
> +${PN}-routef \
> +${PN}-routel \
> +${PN}-rtmon \
> +${PN}-rtpr \
>  ${PN}-rtacct \
>  ${PN}-ss \
>  ${PN}-tc \
>  ${PN}-tipc \
>  "

I accept there is a case for splitting out ip, the patch now splits out
every binary though? That isn't what the commit message says...

Cheers,

Richard




-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145772): 
https://lists.openembedded.org/g/openembedded-core/message/145772
Mute This Topic: https://lists.openembedded.org/mt/79005154/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-oe][PATCH v5] sudo: split into smaller tools package

2020-12-16 Thread Sinan Kaya
Allow to include whether we want sudo, visudo, sudoreplay
or cvtsudoers tools.

Signed-off-by: Sinan Kaya 
---
 meta/recipes-extended/sudo/sudo_1.9.3p1.bb | 30 +-
 1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb 
b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
index ba61a7f2472..2d185d88e4b 100644
--- a/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
+++ b/meta/recipes-extended/sudo/sudo_1.9.3p1.bb
@@ -44,6 +44,34 @@ do_install_append () {
rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo
 }
 
-FILES_${PN} += "${nonarch_libdir}/tmpfiles.d"
 FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \
 ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la"
+
+SUDO_PACKAGES = "${PN}-cvtsudoers"
+SUDO_PACKAGES += "${PN}-sudoreplay"
+SUDO_PACKAGES += "${PN}-logsrvd"
+SUDO_PACKAGES += "${PN}-sendlog"
+SUDO_PACKAGES += "${PN}-visudo"
+SUDO_PACKAGES += "${PN}-sudo"
+SUDO_PACKAGES += "${PN}-lib"
+PACKAGES += "${SUDO_PACKAGES}"
+
+RDEPENDS_${PN}-cvtsudoers = "${PN}-lib"
+RDEPENDS_${PN}-sudo = "${PN}-lib"
+RDEPENDS_${PN}-sudoreplay = "${PN}-lib"
+RDEPENDS_${PN}-logsrvd = "${PN}-lib"
+RDEPENDS_${PN}-sendlog = "${PN}-lib"
+RDEPENDS_${PN}-visudo = "${PN}-lib"
+
+RDEPENDS_${PN} += "${SUDO_PACKAGES}"
+
+ALLOW_EMPTY_${PN} = "1"
+
+FILES_${PN} = ""
+FILES_${PN}-cvtsudoers = "${bindir}/cvtsudoers"
+FILES_${PN}-sudoreplay = "${bindir}/sudoreplay"
+FILES_${PN}-logsrvd = "${sbindir}/sudo_logsrvd"
+FILES_${PN}-sendlog = "${sbindir}/sudo_sendlog"
+FILES_${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit"
+FILES_${PN}-visudo = "${sbindir}/visudo"
+FILES_${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} 
${nonarch_libdir}"
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145771): 
https://lists.openembedded.org/g/openembedded-core/message/145771
Mute This Topic: https://lists.openembedded.org/mt/79005423/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] pseudo: Drop patches merged into upstream branch

2020-12-16 Thread Richard Purdie
Signed-off-by: Richard Purdie 
---
 ...ssen-indentation-of-pseudo_client_ig.patch | 69 ---
 ...mplify-pseudo_client_ignore_path_chr.patch | 50 --
 meta/recipes-devtools/pseudo/pseudo_git.bb|  4 +-
 3 files changed, 1 insertion(+), 122 deletions(-)
 delete mode 100644 
meta/recipes-devtools/pseudo/files/0002-pseudo_client-Lessen-indentation-of-pseudo_client_ig.patch
 delete mode 100644 
meta/recipes-devtools/pseudo/files/0003-pseudo_client-Simplify-pseudo_client_ignore_path_chr.patch

diff --git 
a/meta/recipes-devtools/pseudo/files/0002-pseudo_client-Lessen-indentation-of-pseudo_client_ig.patch
 
b/meta/recipes-devtools/pseudo/files/0002-pseudo_client-Lessen-indentation-of-pseudo_client_ig.patch
deleted file mode 100644
index e4a5356f5c7..000
--- 
a/meta/recipes-devtools/pseudo/files/0002-pseudo_client-Lessen-indentation-of-pseudo_client_ig.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 28c760542eecd7c5b35ea88aa2b14d62afbda961 Mon Sep 17 00:00:00 2001
-From: Peter Kjellerstedt 
-Date: Sat, 21 Nov 2020 17:22:38 +0100
-Subject: [PATCH] pseudo_client: Lessen indentation of
- pseudo_client_ignore_path_chroot()
-
-Change-Id: I739b18efb7a95ce2d2d907d0faf7df539ab9af1c

- pseudo_client.c | 45 +
- 1 file changed, 25 insertions(+), 20 deletions(-)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 116d926..a8bc3dc 100644
 a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -1527,28 +1527,33 @@ int pseudo_client_ignore_fd(int fd) {
- 
- int pseudo_client_ignore_path_chroot(const char *path, int ignore_chroot) {
-   char *env;
--  if (path) {
--  if (ignore_chroot && pseudo_chroot && strncmp(path, 
pseudo_chroot, pseudo_chroot_len) == 0)
--  return 0;
--  env = pseudo_get_value("PSEUDO_IGNORE_PATHS");
--  if (env) {
--  char *p = env;
--  while (*p) {
--  char *next = strchr(p, ',');
--  if (!next)
--  next = strchr(p, '\0');
--  if ((next - p) && !strncmp(path, p, next - p)) {
--  pseudo_debug(PDBGF_PATH | 
PDBGF_VERBOSE, "ignoring path: '%s'\n", path);
--  return 1;
--  }
--  if (next && *next != '\0')
--  p = next+1;
--  else
--  break;
--  }
--  free(env);
-+
-+  if (!path)
-+  return 0;
-+
-+  if (ignore_chroot && pseudo_chroot && strncmp(path, pseudo_chroot, 
pseudo_chroot_len) == 0)
-+  return 0;
-+
-+  env = pseudo_get_value("PSEUDO_IGNORE_PATHS");
-+  if (!env)
-+  return 0;
-+
-+  char *p = env;
-+  while (*p) {
-+  char *next = strchr(p, ',');
-+  if (!next)
-+  next = strchr(p, '\0');
-+  if ((next - p) && !strncmp(path, p, next - p)) {
-+  pseudo_debug(PDBGF_PATH | PDBGF_VERBOSE, "ignoring 
path: '%s'\n", path);
-+  return 1;
-   }
-+  if (next && *next != '\0')
-+  p = next+1;
-+  else
-+  break;
-   }
-+  free(env);
-+
-   return 0;
- }
- 
diff --git 
a/meta/recipes-devtools/pseudo/files/0003-pseudo_client-Simplify-pseudo_client_ignore_path_chr.patch
 
b/meta/recipes-devtools/pseudo/files/0003-pseudo_client-Simplify-pseudo_client_ignore_path_chr.patch
deleted file mode 100644
index a657a27f285..000
--- 
a/meta/recipes-devtools/pseudo/files/0003-pseudo_client-Simplify-pseudo_client_ignore_path_chr.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From a1d61d68777373a50ae23b9dd83b428abe2f748d Mon Sep 17 00:00:00 2001
-From: Peter Kjellerstedt 
-Date: Sat, 21 Nov 2020 17:30:33 +0100
-Subject: [PATCH] pseudo_client: Simplify pseudo_client_ignore_path_chroot()
-
-This also plugs a memory leak by making sure env is freed.
-
-Change-Id: Ia8635fd2c6b1e85919e4743713a85e0b52c28fac

- pseudo_client.c | 21 ++---
- 1 file changed, 10 insertions(+), 11 deletions(-)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index a8bc3dc..7dc0345 100644
 a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -1538,23 +1538,22 @@ int pseudo_client_ignore_path_chroot(const char *path, 
int ignore_chroot) {
-   if (!env)
-   return 0;
- 
-+  int ret = 0;
-   char *p = env;
--  while (*p) {
-+  while (p) {
-   char *next = strchr(p, ',');
--  if (!next)
--  next = strchr(p, '\0');
--  if ((next - p) && !strncmp(path, p, next - p)) {
--  pseudo_debug(PDBGF_PATH | PDBGF_VERBOSE, "ignoring 
path: '%s'\n", path);

[OE-core] [meta-oe][PATCH v3] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
Move the ip tool into its own package. Useful for size constrained
systems that only want the ip tool.

Signed-off-by: Sinan Kaya 
---
 .../iproute2/iproute2.inc | 47 ++-
 1 file changed, 45 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc 
b/meta/recipes-connectivity/iproute2/iproute2.inc
index 403d264308c..c7a3d547dae 100644
--- a/meta/recipes-connectivity/iproute2/iproute2.inc
+++ b/meta/recipes-connectivity/iproute2/iproute2.inc
@@ -46,32 +46,75 @@ do_install () {
 # The .so files in iproute2-tc are modules, not traditional libraries
 INSANE_SKIP_${PN}-tc = "dev-so"
 
-PACKAGES =+ "\
+IPROUTE2_PACKAGES =+ "\
+${PN}-bridge \
 ${PN}-devlink \
 ${PN}-genl \
+${PN}-ifcfg \
 ${PN}-ifstat \
+${PN}-ip \
+${PN}-lib \
 ${PN}-lnstat \
 ${PN}-nstat \
+${PN}-rdma \
+${PN}-routef \
+${PN}-routel \
+${PN}-rtmon \
+${PN}-rtpr \
 ${PN}-rtacct \
 ${PN}-ss \
 ${PN}-tc \
 ${PN}-tipc \
 "
+RDEPENDS_${PN}-bridge = "${PN}-lib"
+RDEPENDS_${PN}-devlink = "${PN}-lib"
+RDEPENDS_${PN}-genl = "${PN}-lib"
+RDEPENDS_${PN}-ifcfg = "${PN}-lib"
+RDEPENDS_${PN}-ifstat = "${PN}-lib"
+RDEPENDS_${PN}-ip = "${PN}-lib"
+RDEPENDS_${PN}-lib = "${PN}-lib"
+RDEPENDS_${PN}-lnstat = "${PN}-lib"
+RDEPENDS_${PN}-nstat = "${PN}-lib"
+RDEPENDS_${PN}-rdma = "${PN}-lib"
+RDEPENDS_${PN}-routef = "${PN}-lib"
+RDEPENDS_${PN}-routel = "${PN}-lib"
+RDEPENDS_${PN}-rtmon = "${PN}-lib"
+RDEPENDS_${PN}-rtpr = "${PN}-lib"
+RDEPENDS_${PN}-rtacct = "${PN}-lib"
+RDEPENDS_${PN}-ss = "${PN}-lib"
+RDEPENDS_${PN}-tc = "${PN}-lib"
+RDEPENDS_${PN}-tipc = "${PN}-lib"
 
+PACKAGES += "${IPROUTE2_PACKAGES}"
+RDEPENDS_${PN} += "${IPROUTE2_PACKAGES}"
+ALLOW_EMPTY_${PN} = "1"
+
+FILES_${PN} = ""
 FILES_${PN}-tc = "${base_sbindir}/tc* \
   ${libdir}/tc/*.so"
 FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
   ${base_sbindir}/ctstat \
   ${base_sbindir}/rtstat"
 FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
+FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
 FILES_${PN}-genl = "${base_sbindir}/genl"
 FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
 FILES_${PN}-nstat = "${base_sbindir}/nstat"
 FILES_${PN}-ss = "${base_sbindir}/ss"
 FILES_${PN}-tipc = "${base_sbindir}/tipc"
 FILES_${PN}-devlink = "${base_sbindir}/devlink"
+FILES_${PN}-rdma = "${base_sbindir}/rdma"
+FILES_${PN}-routef = "${base_sbindir}/routef"
+FILES_${PN}-rtpr = "${base_sbindir}/rtpr"
+FILES_${PN}-rtmon = "${base_sbindir}/rtmon"
+FILES_${PN}-routel = "${base_sbindir}/routel"
+FILES_${PN}-bridge = "${base_sbindir}/bridge"
+FILES_${PN}-ifcfg = "${base_sbindir}/ifcfg"
+FILES_${PN}-ip = "${base_sbindir}/ip.${BPN} ${sysconfdir}"
+FILES_${PN}-lib = "${localstatedir}"
+
 
-ALTERNATIVE_${PN} = "ip"
+ALTERNATIVE_${PN}-ip = "ip"
 ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
 ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
 ALTERNATIVE_PRIORITY = "100"
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145769): 
https://lists.openembedded.org/g/openembedded-core/message/145769
Mute This Topic: https://lists.openembedded.org/mt/79005154/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v2] iproute2: split ip to individual package

2020-12-16 Thread Richard Purdie
On Wed, 2020-12-16 at 11:09 -0500, Sinan Kaya wrote:
> On 12/16/2020 6:50 AM, Richard Purdie wrote:
> > > +++ b/meta/recipes-connectivity/iproute2/iproute2.inc
> > > @@ -46,10 +46,11 @@ do_install () {
> > >  # The .so files in iproute2-tc are modules, not traditional
> > > libraries
> > >  INSANE_SKIP_${PN}-tc = "dev-so"
> > >  
> > > -PACKAGES =+ "\
> > > +IPROUTE2_PACKAGES =+ "\
> > >  ${PN}-devlink \
> > >  ${PN}-genl \
> > >  ${PN}-ifstat \
> > > +${PN}-ip \
> > >  ${PN}-lnstat \
> > >  ${PN}-nstat \
> > >  ${PN}-rtacct \
> > > @@ -58,12 +59,17 @@ PACKAGES =+ "\
> > >  ${PN}-tipc \
> > >  "
> > > 
> > > +PACKAGES += "${IPROUTE2_PACKAGES}"
> > > +PROVIDES += "${IPROUTE2_PACKAGES}"
> > This doesn't look correct. Why do we need to add all the individual
> > package splits to PROVIDES?
> > 
> 
> I want to add iproute2-ip into my IMAGE_INSTALL and not take the rest
> of the iproute2-$foo packages. If I don't add PROVIDES, build stage
> fails saying nobody provides iproute2-ip.

IMAGE_INSTALL is a runtime namespace, the same as RPROVIDES/RDEPENDS,
not PROVIDES/DEPENDS so using iproute2-ip there should be fine.

> > or is there some other reason for this? This is basically the issue
> > with some of the other package splits too, its not using the build
> > time verses runtime namespaces correctly.
> 
> If I misunderstood something or am not doing it right, let me know.

I think IMAGE_INSTALL should work (behind the scenes it adds to
RDEPENDS for the image).

Cheers,

Richard



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145768): 
https://lists.openembedded.org/g/openembedded-core/message/145768
Mute This Topic: https://lists.openembedded.org/mt/78992706/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v2] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 11:09 AM, Sinan Kaya wrote:
>>> +PACKAGES += "${IPROUTE2_PACKAGES}"
>>> +PROVIDES += "${IPROUTE2_PACKAGES}"
>> This doesn't look correct. Why do we need to add all the individual
>> package splits to PROVIDES?
>>
> I want to add iproute2-ip into my IMAGE_INSTALL and not take the rest
> of the iproute2-$foo packages. If I don't add PROVIDES, build stage
> fails saying nobody provides iproute2-ip.
> 

Interesting, it worked now. I queued some builds on my side. I will
post a new REV.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145767): 
https://lists.openembedded.org/g/openembedded-core/message/145767
Mute This Topic: https://lists.openembedded.org/mt/78992706/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v2] iproute2: split ip to individual package

2020-12-16 Thread Sinan Kaya
On 12/16/2020 6:50 AM, Richard Purdie wrote:
>> +++ b/meta/recipes-connectivity/iproute2/iproute2.inc
>> @@ -46,10 +46,11 @@ do_install () {
>>  # The .so files in iproute2-tc are modules, not traditional
>> libraries
>>  INSANE_SKIP_${PN}-tc = "dev-so"
>>  
>> -PACKAGES =+ "\
>> +IPROUTE2_PACKAGES =+ "\
>>  ${PN}-devlink \
>>  ${PN}-genl \
>>  ${PN}-ifstat \
>> +${PN}-ip \
>>  ${PN}-lnstat \
>>  ${PN}-nstat \
>>  ${PN}-rtacct \
>> @@ -58,12 +59,17 @@ PACKAGES =+ "\
>>  ${PN}-tipc \
>>  "
>>
>> +PACKAGES += "${IPROUTE2_PACKAGES}"
>> +PROVIDES += "${IPROUTE2_PACKAGES}"
> This doesn't look correct. Why do we need to add all the individual
> package splits to PROVIDES?
> 

I want to add iproute2-ip into my IMAGE_INSTALL and not take the rest
of the iproute2-$foo packages. If I don't add PROVIDES, build stage
fails saying nobody provides iproute2-ip.

> 
> or is there some other reason for this? This is basically the issue
> with some of the other package splits too, its not using the build time
> verses runtime namespaces correctly.

If I misunderstood something or am not doing it right, let me know.

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145766): 
https://lists.openembedded.org/g/openembedded-core/message/145766
Mute This Topic: https://lists.openembedded.org/mt/78992706/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] I wish to drop my recipe maintainer duties

2020-12-16 Thread Ross Burton
Thanks for all the work over the years, it's been much appreciated!

Cheers,
Ross

On Mon, 14 Dec 2020 at 19:07, Tanu Kaskinen  wrote:
>
> Hello,
>
> I haven't lately had time to do OE work, or maybe the lack of time is
> more rooted in lack of motivation since I don't objectively have a very
> busy life, but in any case, I think it's time for me to step down as a
> recipe maintainer. When in 2015 I transitioned from being paid for the
> work to a volunteer, I had plans to use OE in hobby projects, but those
> projects haven't materialized, so I don't really have any connection to
> OE other than being a recipe maintainer. My experience of the community
> has been very positive, it has always been nice to work with you, thank
> you for that!
>
> Should I post a maintainers.inc patch that changes all my recipes to to
> unassigned, or should they or some of them be directly transferred to
> someone else?
>
> I will still post some patches for pulseaudio that convert the recipe
> from autotools to meson. I've had them ready since the last feature
> freeze, and I intended to submit them today, but I found out (as I read
> the mailing list for the first time in three months) that the recipe
> has had a major version update, so I'll have to redo some tests first.
>
> --
> Tanu
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145765): 
https://lists.openembedded.org/g/openembedded-core/message/145765
Mute This Topic: https://lists.openembedded.org/mt/78958714/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [meta-oe][PATCH v2] iproute2: split ip to individual package

2020-12-16 Thread Richard Purdie
On Wed, 2020-12-16 at 02:41 +, Sinan Kaya wrote:
> Move the ip tool into its own package. Useful for size constrained
> systems that only want the ip tool.
> 
> Signed-off-by: Sinan Kaya 
> ---
>  meta/recipes-connectivity/iproute2/iproute2.inc | 10 --
>  1 file changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc
> b/meta/recipes-connectivity/iproute2/iproute2.inc
> index 403d264308c..f4d882d3ece 100644
> --- a/meta/recipes-connectivity/iproute2/iproute2.inc
> +++ b/meta/recipes-connectivity/iproute2/iproute2.inc
> @@ -46,10 +46,11 @@ do_install () {
>  # The .so files in iproute2-tc are modules, not traditional
> libraries
>  INSANE_SKIP_${PN}-tc = "dev-so"
>  
> -PACKAGES =+ "\
> +IPROUTE2_PACKAGES =+ "\
>  ${PN}-devlink \
>  ${PN}-genl \
>  ${PN}-ifstat \
> +${PN}-ip \
>  ${PN}-lnstat \
>  ${PN}-nstat \
>  ${PN}-rtacct \
> @@ -58,12 +59,17 @@ PACKAGES =+ "\
>  ${PN}-tipc \
>  "
>
> +PACKAGES += "${IPROUTE2_PACKAGES}"
> +PROVIDES += "${IPROUTE2_PACKAGES}"

This doesn't look correct. Why do we need to add all the individual
package splits to PROVIDES?

I'm going to guess this is because you want to do:

DEPENDS = "iproute2-ip"

somewhere? If so, that is not how DEPENDS is meant to work, even after
this split you'd use:

DEPENDS = "iproute2"

If you want iproute2-ip specifically, you'd use the package namespace,
e.g. 

RDEPENDS = "iproute2-ip".

or is there some other reason for this? This is basically the issue
with some of the other package splits too, its not using the build time
verses runtime namespaces correctly.

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145764): 
https://lists.openembedded.org/g/openembedded-core/message/145764
Mute This Topic: https://lists.openembedded.org/mt/78992706/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] kernel: set COMPATIBLE_HOST to *-linux

2020-12-16 Thread Ross Burton
On Sun, 13 Dec 2020 at 23:09, Richard Purdie
 wrote:
> > Maybe?  Depends on the matching in anchored.  If it does by accident
> > then explicitly matching would be better.  What machine has a triple
> > like that for testing?
>
> Most arm machines I think? :)

Only old ones, which are dead to me. ;)

> It is unanchored, something which I have to wonder about. I also don't
> like the overhead adding COMPATIBLE_* adds but I guess we just have to
> live with that :(.

So prior art in meta:

meta/recipes-core/systemd/systemd-boot_246.6.bb:COMPATIBLE_HOST =
"(x86_64.*|i.86.*)-linux"
meta/recipes-devtools/dmidecode/dmidecode_3.3.bb:COMPATIBLE_HOST =
"(i.86|x86_64|aarch64|arm|powerpc|powerpc64).*-linux"
meta/recipes-devtools/gcc/gcc-sanitizers.inc:COMPATIBLE_HOST =
'(x86_64|i.86|powerpc|sparc|s390|arm|aarch64).*-linux'
meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb:COMPATIBLE_HOST =
'(x86_64|i.86).*-(linux|freebsd.*)'
meta/recipes-devtools/valgrind/valgrind_3.16.1.bb:COMPATIBLE_HOST =
'(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux'

35 users in total and none are anchored, they all implicitly let the
expression match -linux-gnueabi.

Ross

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145763): 
https://lists.openembedded.org/g/openembedded-core/message/145763
Mute This Topic: https://lists.openembedded.org/mt/78882226/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-