Date   

[meta-mingw][PATCH] mingw-w64: Upgrade to 7.0.0

Joshua Watt
 

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
recipes-devtools/mingw-w64/mingw-w64.inc | 3 +--
...-headers_6.0.0.bb => nativesdk-mingw-w64-headers_7.0.0.bb} | 4 ----
...-runtime_6.0.0.bb => nativesdk-mingw-w64-runtime_7.0.0.bb} | 0
...eads_6.0.0.bb => nativesdk-mingw-w64-winpthreads_7.0.0.bb} | 0
4 files changed, 1 insertion(+), 6 deletions(-)
rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-headers_6.0.0.bb => nativesdk-mingw-w64-headers_7.0.0.bb} (82%)
rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-runtime_6.0.0.bb => nativesdk-mingw-w64-runtime_7.0.0.bb} (100%)
rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-winpthreads_6.0.0.bb => nativesdk-mingw-w64-winpthreads_7.0.0.bb} (100%)

diff --git a/recipes-devtools/mingw-w64/mingw-w64.inc b/recipes-devtools/mingw-w64/mingw-w64.inc
index 8c68bcc..a435dea 100644
--- a/recipes-devtools/mingw-w64/mingw-w64.inc
+++ b/recipes-devtools/mingw-w64/mingw-w64.inc
@@ -5,8 +5,7 @@ COMPATIBLE_HOST = ".*-mingw.*"

SRC_URI = "${SOURCEFORGE_MIRROR}/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"

-SRC_URI[md5sum] = "cf5673f6d689bb5e02863e6284cc3d03"
-SRC_URI[sha256sum] = "805e11101e26d7897fce7d49cbb140d7bac15f3e085a91e0001e80b2adaf48f0"
+SRC_URI[sha256sum] = "aa20dfff3596f08a7f427aab74315a6cb80c2b086b4a107ed35af02f9496b628"

UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/"
UPSTREAM_CHECK_REGEX = "mingw-w64-v(?P<pver>(\d+[\.\-_]*)+)\.tar"
diff --git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_6.0.0.bb b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_7.0.0.bb
similarity index 82%
rename from recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_6.0.0.bb
rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_7.0.0.bb
index 58073d6..292d22b 100644
--- a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_6.0.0.bb
+++ b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_7.0.0.bb
@@ -10,10 +10,6 @@ inherit autotools nativesdk
INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = ""

-PACKAGECONFIG ??= "secure-api"
-
-PACKAGECONFIG[secure-api] = "--enable-secure-api,--disable-secure-api"
-
do_configure() {
oe_runconf
}
diff --git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_6.0.0.bb b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_7.0.0.bb
similarity index 100%
rename from recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_6.0.0.bb
rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_7.0.0.bb
diff --git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_6.0.0.bb b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_7.0.0.bb
similarity index 100%
rename from recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_6.0.0.bb
rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_7.0.0.bb
--
2.27.0


[PATCH yocto-autobuilder-helper] config.json: add meta-arm

Ross Burton
 

From: Ross Burton <ross.burton@arm.com>

This builds a small number of images for the N1 SDP and Juno boards.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
config.json | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

diff --git a/config.json b/config.json
index b810373..8823c32 100644
--- a/config.json
+++ b/config.json
@@ -273,6 +273,24 @@
"MACHINE" : "qemuarm64",
"TEMPLATE" : "ltp-qemu"
},
+ "meta-arm" : {
+ "NEEDREPOS" : ["poky", "meta-arm"],
+ "ADDLAYER" : [
+ "${BUILDDIR}/../meta-arm/meta-arm",
+ "${BUILDDIR}/../meta-arm/meta-arm-bsp",
+ "${BUILDDIR}/../meta-arm/meta-arm-toolchain"
+ ],
+ "step1": {
+ "MACHINE": "n1sdp",
+ "BBTARGETS": "core-image-minimal core-image-sato core-image-sato:do_populate_sdk",
+ "SANITYTARGETS" : "core-image-sato:do_testsdk"
+ },
+ "step2": {
+ "MACHINE": "juno",
+ "BBTARGETS": "core-image-minimal core-image-sato core-image-sato:do_populate_sdk",
+ "SANITYTARGETS" : "core-image-sato:do_testsdk"
+ }
+ },
"bringup" : {
"BUILDINFO" : true,
"SSTATEDIR" : ["SSTATE_DIR ?= '${HELPERBUILDDIR}/sstate'"],
@@ -964,6 +982,12 @@
"branch" : "master",
"revision" : "HEAD",
"no-layer-add" : true
+ },
+ "meta-arm" : {
+ "url" : "git://git.yoctoproject.org/meta-arm",
+ "branch" : "master",
+ "revision" : "HEAD",
+ "no-layer-add" : true
}

},
--
2.24.3 (Apple Git-128)


Re: #yocto #python #python #yocto

Khem Raj
 

On 6/26/20 4:15 AM, valentin.duee@weidmueller.com wrote:
Hi,
if I try to add a layer like this:
bitbake-layers add-layer ../layers/meta-openembedded/meta-oe
(also for other layers)
I get following error:
The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
  python
But I do have installed python in all possible versions. I don't know what to do currently and would appreciate your help a lot. Thanks in Advance.
which release of yocto are you on ? secondly which OS is on the host?
you might want to install python2 perhaps on it.

BR


Yocto Project Status WW26'20

Stephen Jolley
 

Current Dev Position: YP 3.2 M2

Next Deadline: YP 3.2 M2 build date 2020/7/27

 

Next Team Meetings:

 

Key Status/Updates:

  • YP 3.2 M1 was released.
  • We’ve updated to a new version of the buildtools tarball for master and dunfell
  • We continue to be concerned about autobuilder stability, we’re continuing to see high numbers of intermittent failures. You can see the list of failures we’re seeing by searching for the “AB-INT” tag in bugzilla: https://bugzilla.yoctoproject.org/buglist.cgi?quicksearch=AB-INT

Help is urgently needed to bring these to a manageable level.

  • We are struggling with maintainers for some key components of the system/infrastructure such as devtool, wic, buildhistory and patchwork/patchtest. If anyone can help in these areas please contact Richard.
  • If anyone has thoughts on attracting and recognising project contributors and contributions, we would be interested in ideas and assistance in that area.
  • It is ELC this week, please stop by the booth and/or ELC #2-track-yocto-project slack channel and say hi. There are still places available on our virtual Developer Day: https://events.linuxfoundation.org/yocto-dev-day-north-america/
  • Another way to help the project is to help us with bugs that are currently unassigned but ideally needed during 3.2. See: https://wiki.yoctoproject.org/wiki/Bug_Triage#Medium.2B_3.2_Unassigned_Enhancements.2FBugs
  • We’re pleased to announce we have a new manual in the Yocto Project documentation ‘bookshelf’ which covers the project’s testing processes and infrastructure including the autobuilder and resulttool. A work-in-progress version of this can be viewed here: https://www.yoctoproject.org/docs/docs_temp/test-manual/test-manual.html. So far, it contains basic information in key areas, we’re happy to take feedback on areas that are missing or need more information and/or take contributions to further extend this work.

 

YP 3.2 Milestone Dates:

  • YP 3.2 M1 is released.
  • YP 3.2 M2 build date 2020/7/27
  • YP 3.2 M2 Release date 2020/8/7
  • YP 3.2 M3 build date 2020/8/31
  • YP 3.2 M3 Release date 2020/9/11
  • YP 3.2 M4 build date 2020/10/5
  • YP 3.2 M4 Release date 2020/10/30

 

Planned upcoming dot releases:

  • YP 3.0.4 build date 2020/8/10
  • YP 3.0.4 release date 2020/8/21
  • YP 3.1.2 build date 2020/9/14
  • YP 3.1.2 release date 2020/9/25

 

Tracking Metrics:

 

The Yocto Project’s technical governance is through its Technical Steering Committee, more information is available at:

https://wiki.yoctoproject.org/wiki/TSC

 

The Status reports are now stored on the wiki at: https://wiki.yoctoproject.org/wiki/Weekly_Status

 

[If anyone has suggestions for other information you’d like to see on this weekly status update, let us know!]

 

Thanks,

 

Stephen K. Jolley

Yocto Project Program Manager

(    Cell:                (208) 244-4460

* Email:              sjolley.yp.pm@...

 


Re: Need help understanding #devtool flow to library #devtool

Quentin Schulz
 

Hi Stephan,

On Tue, Jun 30, 2020 at 04:26:01AM -0700, tobies@synopsys.com wrote:
Hello!

I am new to yocto, so I might be missing something obvious, but I have trouble getting the devtool flow to work for me. It seems that the library that ends up in the image is not the one with my modifications but instead the altered one.

Here is what I have done:

devtool modify <libname>

This has successfully checked out the sources of the library that I want to modify and I could make my modifications and build the changed version with "devtool build vsomeip" . Now when I build an image with "devtool build-image <img-name>", devtool reports that it would build the image with addtional package "vsomeip".

But the library that ends up in the generated image does not seem to have the modified code. I do not find my additional symbols when I do an objdump on the library in

./tmp/work/qemux86-poky-linux/<img-name>/1.0-r0/rootfs/usr/lib/libvsomeip...

On the other hand, the library built in ./tmp/work/i586-poky-linux/vsomeip/2.10.21-r0/vsomeip-2.10.21/libvsomeip.so.2.10.21 does have these symbols.

The disconnect seems to happen already within the vsomeip library build process. The library present at ./tmp/work/i586-poky-linux/vsomeip/2.10.21-r0/package/usr/lib/libvsomeip.so.2.10.21 is one _without_ my changes present (and identical in size to the one on the rootfs folder of the image).

It feels like I am missing a step of the devtool flow, or at least the starting point to debug the deployment process.

Any hints of pointers to relevant documentation would be very appreciated!
Libraries and binaries are stripped of the debug symbols before adding
them to the "normal" package. The version with the debug symbols are
usually in the -dbg package of your recipe.

You can disable this behavior with INHIBIT_PACKAGE_STRIP in your recipe (c.f.
https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#var-INHIBIT_PACKAGE_STRIP)

This is Yocto's default behavior, not sure if there is anything specific
to devtool in what you described.

(BTW, until you have run devtool reset <recipe>, bitbake takes the
sources from your devtool workspace. I don't know exactly what's the
difference with bitbake build-image <img-name> and bitbake <img-name>)

Let us know if that helps,
Quentin


Re: License reporting for golang (and rust)

Irving ST
 

Hi,

For anyone else having the same problem, here's what I eventually did
for my go stuff:

I created a bbclass containing a task that gets inherited by all
packages, but the task only does some work when it detects that it is
inherited by a golang recipe.
The task basically sets up GOPATH and calls
https://github.com/rancher/trash - this tool populates all the source
dependencies and generate a trash.lock file in the repository.
Then I used https://github.com/pivotal/LicenseFinder to generate a
json report that can be postprocessed with python.

To me it seems that Go used the vendor directory approach in the past,
and there are multiple tools that can be used for this; and nowadays
go seems to have switched to a different approach called go modules.
With this multiple tools and methods of managing dependencies, I am
not sure whether it is feasible to integrate this in Yocto at all -
though I think I have seen mailing list posts on meta-virtualization
adding vendor information to their recipes, so maybe some progress is
happening there.

Best regards,
Irving Tjiptowarsono

On Tue, Jun 30, 2020 at 7:32 AM Robert Berger@yocto.user
<robert.berger.yocto.user@gmail.com> wrote:

Hi,

My comments are in-line

On 22/06/2020 11:53, Irving ST wrote:
Hello,

I am building a device that uses some Go (and Rust) dependencies. This
is on Yocto 2.7 / Warrior.

I noticed that after building an image, the generated license.manifest
and package.manifest (in tmp/deploy/licenses/) does not contain any
mention of go packages or rust crates. The go packages seem to
generate directories in tmp/deploy/licenses/ but they do not seem to
be reported in the final image.
On dunfell 3.1.1 I see this:

licenses/
└── github.com-influxdata-influxdb
├── generic_MIT
├── LICENSE
└── recipeinfo

which is wrong, since I would need to add all the licenses of all the
dependencies golang pulls in as well to the recipe. It's shows only the
top level license.

In my license manifest I do have the influxdb:

tmp/deploy/licenses/image-influxdb-from-source-container-x86-64-20200629205620/license.manifest

PACKAGE NAME: github.com-influxdata-influxdb
PACKAGE VERSION: 1.8.0
RECIPE NAME: github.com-influxdata-influxdb
LICENSE: MIT

Regards,

Robert



Need help understanding #devtool flow to library #devtool

tobies@...
 

Hello!

I am new to yocto, so I might be missing something obvious, but I have trouble getting the devtool flow to work for me. It seems that the library that ends up in the image is not the one with my modifications but instead the altered one. 

Here is what I have done:

devtool modify <libname>

This has successfully checked out the sources of the library that I want to modify and I could make my modifications and build the changed version with "devtool build vsomeip" . Now when I build an image with "devtool build-image <img-name>", devtool reports that it would build the image with addtional package "vsomeip".

But the library that ends up in the generated image does not seem to have the modified code. I do not find my additional symbols when I do an objdump on the library in 

./tmp/work/qemux86-poky-linux/<img-name>/1.0-r0/rootfs/usr/lib/libvsomeip...

On the other hand, the library built in ./tmp/work/i586-poky-linux/vsomeip/2.10.21-r0/vsomeip-2.10.21/libvsomeip.so.2.10.21 does have these symbols.

The disconnect seems to happen already within the vsomeip library build process. The library present at ./tmp/work/i586-poky-linux/vsomeip/2.10.21-r0/package/usr/lib/libvsomeip.so.2.10.21 is one _without_ my changes present (and identical in size to the one on the rootfs folder of the image).

It feels like I am missing a step of the devtool flow, or at least the starting point to debug the deployment process.

Any hints of pointers to relevant documentation would be very appreciated!

Thanks a lot!

Stephan


Re: INCOMPATIBLE_LICENSE - how to use it properly?

Alexander Kanavin
 

It goes over a list of packages installed into their image, and checks their licensing. If something was directly built into something else, it will not produce a separate package, and therefore you need to handle that separately: perhaps by setting the package license appropriately in respective recipes (they needs to carry the licenses of items coming directly as headers from other recipes).

Alex


On Tue, 30 Jun 2020 at 12:01, John Ernberg <john.ernberg@...> wrote:
Hi Alex,

I will give this a try on master.

One question though, will this still catch build-only libraries? (i.e. a
library that consists only of headers). I don't think we have such
recipes right now, it's more to understand how this feature works.

Thank you.

Best regards // John Ernberg

On 6/30/20 11:55 AM, Alexander Kanavin wrote:
> On master, you can set INCOMPATIBLE_LICENSE in the image recipe, rather
> than globally, then the check would only be performed on items that
> actually go into that image.
>
> Warrior does not have that feature yet, I think, so your only option
> there is meta-gpl2.
>
> Alex
>
> On Tue, 30 Jun 2020 at 11:34, John Ernberg <john.ernberg@...
> <mailto:john.ernberg@...>> wrote:
>
>     Hi,
>
>     I have been trying to use INCOMPATIBLE_LICENSE to filter out
>     undesirable
>     licenses for us from our images. I started simple and picked the
>     examples from the manual (AGPL-3.0, GPL-3.0 and LGPL-3.0).
>
>     Currently we're based on Warrior, but I also did a short test on master
>     (results later in the message)
>
>     Our images use systemd as init system. We use busybox ash as shell on
>     these images for now.
>
>     When setting the INCOMPATIBLE_LICENSE according to the manual example,
>     systemd cannot be built anymore because bash is being skipped due to
>     license.
>
>     Turns out that because systemd-bash-completion and
>     systemd-kernel-install both rdepend on bash, we can't build systemd at
>     all, because bash is not buildable. Even if we're not installing those
>     features of systemd.
>
>     A dive into TaskData suggests that all the rdepends of all packages
>     provided by a recipe are flattened into depends of the recipe when
>     testing buildability.
>
>     A quick test on master from about 2 weeks ago show the same behavior.
>
>     For the test on master all I did was change the DISTRO_FEATURES of
>     core-image-minimal to include systemd.
>
>
>     Am I using ICOMPATIBLE_LICENSE properly so far?
>     If so, is being unable to fulfill an rdepend for an unused package
>     meant
>     to fail the whole build, and how can I avoid it short of including
>     meta-gplv2 or writing lots of .bbappends to remove the dependencies?
>     Otherwise, where did I go wrong, and what should I be trying instead?
>
>     Thank you.
>
>     Best regards // John Ernberg
>     
>


Re: INCOMPATIBLE_LICENSE - how to use it properly?

Mikko Rapeli
 

Hi,

On Tue, Jun 30, 2020 at 09:34:39AM +0000, John Ernberg wrote:
Hi,

I have been trying to use INCOMPATIBLE_LICENSE to filter out undesirable
licenses for us from our images. I started simple and picked the
examples from the manual (AGPL-3.0, GPL-3.0 and LGPL-3.0).

Currently we're based on Warrior, but I also did a short test on master
(results later in the message)

Our images use systemd as init system. We use busybox ash as shell on
these images for now.

When setting the INCOMPATIBLE_LICENSE according to the manual example,
systemd cannot be built anymore because bash is being skipped due to
license.

Turns out that because systemd-bash-completion and
systemd-kernel-install both rdepend on bash, we can't build systemd at
all, because bash is not buildable. Even if we're not installing those
features of systemd.

A dive into TaskData suggests that all the rdepends of all packages
provided by a recipe are flattened into depends of the recipe when
testing buildability.

A quick test on master from about 2 weeks ago show the same behavior.

For the test on master all I did was change the DISTRO_FEATURES of
core-image-minimal to include systemd.


Am I using ICOMPATIBLE_LICENSE properly so far?
If so, is being unable to fulfill an rdepend for an unused package meant
to fail the whole build, and how can I avoid it short of including
meta-gplv2 or writing lots of .bbappends to remove the dependencies?
Otherwise, where did I go wrong, and what should I be trying instead?
You need to add exceptions to build a lot GPLv3 components but not let them
be part of product images.

In distro config:

INCOMPATIBLE_LICENSE += "GPLv3 GPLv3+ LGPLv3 LGPLv3+"
...
WHITELIST_GPL-3.0 += "bash"
PACKAGE_EXCLUDE += "bash-ptest bash-dbg bash-staticdev bash-dev bash-doc bash-locale bashbug bash"
...

The PACKAGE_EXCLUDE must be complete list of binary packages produced by the recipe.

I end up enabling a large set of GPLv3 tools for use as development tooling at build
time or in SDK:

$ grep WHITELIST_ distro.conf
WHITELIST_GPL-3.0 += "autoconf"
WHITELIST_GPL-3.0 += "bash"
WHITELIST_GPL-3.0 += "bc"
WHITELIST_GPL-3.0 += "binutils"
WHITELIST_GPL-3.0 += "bison"
WHITELIST_GPL-3.0 += "ccache"
WHITELIST_GPL-3.0 += "coreutils"
WHITELIST_GPL-3.0 += "diffutils"
WHITELIST_GPL-3.0 += "elfutils"
WHITELIST_GPL-3.0 += "findutils"
WHITELIST_GPL-3.0 += "gawk"
WHITELIST_GPL-3.0 += "gdb"
WHITELIST_GPL-3.0 += "gdbm"
WHITELIST_GPL-3.0 += "gettext"
WHITELIST_GPL-3.0 += "gnutls"
WHITELIST_GPL-3.0 += "grep"
WHITELIST_GPL-3.0 += "libevent"
WHITELIST_GPL-3.0 += "libpipeline"
WHITELIST_GPL-3.0 += "libunistring"
WHITELIST_GPL-3.0 += "m4"
WHITELIST_GPL-3.0 += "make"
WHITELIST_GPL-3.0 += "readline"
WHITELIST_GPL-3.0 += "rsync"
WHITELIST_GPL-3.0 += "sed"
WHITELIST_GPL-3.0 += "which"

If one does not do this, alternative is to use a bunch of old and deprecated tool
versions from meta-gplv2.

Hope this helps,

-Mikko


Re: INCOMPATIBLE_LICENSE - how to use it properly?

John Ernberg
 

Hi Alex,

I will give this a try on master.

One question though, will this still catch build-only libraries? (i.e. a
library that consists only of headers). I don't think we have such
recipes right now, it's more to understand how this feature works.

Thank you.

Best regards // John Ernberg

On 6/30/20 11:55 AM, Alexander Kanavin wrote:
On master, you can set INCOMPATIBLE_LICENSE in the image recipe, rather
than globally, then the check would only be performed on items that
actually go into that image.

Warrior does not have that feature yet, I think, so your only option
there is meta-gpl2.

Alex

On Tue, 30 Jun 2020 at 11:34, John Ernberg <john.ernberg@actia.se
<mailto:john.ernberg@actia.se>> wrote:

Hi,

I have been trying to use INCOMPATIBLE_LICENSE to filter out
undesirable
licenses for us from our images. I started simple and picked the
examples from the manual (AGPL-3.0, GPL-3.0 and LGPL-3.0).

Currently we're based on Warrior, but I also did a short test on master
(results later in the message)

Our images use systemd as init system. We use busybox ash as shell on
these images for now.

When setting the INCOMPATIBLE_LICENSE according to the manual example,
systemd cannot be built anymore because bash is being skipped due to
license.

Turns out that because systemd-bash-completion and
systemd-kernel-install both rdepend on bash, we can't build systemd at
all, because bash is not buildable. Even if we're not installing those
features of systemd.

A dive into TaskData suggests that all the rdepends of all packages
provided by a recipe are flattened into depends of the recipe when
testing buildability.

A quick test on master from about 2 weeks ago show the same behavior.

For the test on master all I did was change the DISTRO_FEATURES of
core-image-minimal to include systemd.


Am I using ICOMPATIBLE_LICENSE properly so far?
If so, is being unable to fulfill an rdepend for an unused package
meant
to fail the whole build, and how can I avoid it short of including
meta-gplv2 or writing lots of .bbappends to remove the dependencies?
Otherwise, where did I go wrong, and what should I be trying instead?

Thank you.

Best regards // John Ernberg


Re: INCOMPATIBLE_LICENSE - how to use it properly?

Alexander Kanavin
 

On master, you can set INCOMPATIBLE_LICENSE in the image recipe, rather than globally, then the check would only be performed on items that actually go into that image.

Warrior does not have that feature yet, I think, so your only option there is meta-gpl2.

Alex


On Tue, 30 Jun 2020 at 11:34, John Ernberg <john.ernberg@...> wrote:
Hi,

I have been trying to use INCOMPATIBLE_LICENSE to filter out undesirable
licenses for us from our images. I started simple and picked the
examples from the manual (AGPL-3.0, GPL-3.0 and LGPL-3.0).

Currently we're based on Warrior, but I also did a short test on master
(results later in the message)

Our images use systemd as init system. We use busybox ash as shell on
these images for now.

When setting the INCOMPATIBLE_LICENSE according to the manual example,
systemd cannot be built anymore because bash is being skipped due to
license.

Turns out that because systemd-bash-completion and
systemd-kernel-install both rdepend on bash, we can't build systemd at
all, because bash is not buildable. Even if we're not installing those
features of systemd.

A dive into TaskData suggests that all the rdepends of all packages
provided by a recipe are flattened into depends of the recipe when
testing buildability.

A quick test on master from about 2 weeks ago show the same behavior.

For the test on master all I did was change the DISTRO_FEATURES of
core-image-minimal to include systemd.


Am I using ICOMPATIBLE_LICENSE properly so far?
If so, is being unable to fulfill an rdepend for an unused package meant
to fail the whole build, and how can I avoid it short of including
meta-gplv2 or writing lots of .bbappends to remove the dependencies?
Otherwise, where did I go wrong, and what should I be trying instead?

Thank you.

Best regards // John Ernberg


INCOMPATIBLE_LICENSE - how to use it properly?

John Ernberg
 

Hi,

I have been trying to use INCOMPATIBLE_LICENSE to filter out undesirable
licenses for us from our images. I started simple and picked the
examples from the manual (AGPL-3.0, GPL-3.0 and LGPL-3.0).

Currently we're based on Warrior, but I also did a short test on master
(results later in the message)

Our images use systemd as init system. We use busybox ash as shell on
these images for now.

When setting the INCOMPATIBLE_LICENSE according to the manual example,
systemd cannot be built anymore because bash is being skipped due to
license.

Turns out that because systemd-bash-completion and
systemd-kernel-install both rdepend on bash, we can't build systemd at
all, because bash is not buildable. Even if we're not installing those
features of systemd.

A dive into TaskData suggests that all the rdepends of all packages
provided by a recipe are flattened into depends of the recipe when
testing buildability.

A quick test on master from about 2 weeks ago show the same behavior.

For the test on master all I did was change the DISTRO_FEATURES of
core-image-minimal to include systemd.


Am I using ICOMPATIBLE_LICENSE properly so far?
If so, is being unable to fulfill an rdepend for an unused package meant
to fail the whole build, and how can I avoid it short of including
meta-gplv2 or writing lots of .bbappends to remove the dependencies?
Otherwise, where did I go wrong, and what should I be trying instead?

Thank you.

Best regards // John Ernberg


Re: Error building openjdk-8 on zeus

srijan.nandi@...
 

So here is what I have done so far:.

# Added meta-java layer in bblayers.conf and then did a bitbake -c cleanall glibc followed by bitbake glibc. Everything builds successfully.

# As soon as I try to build bitbake core-image-full-cmdline, I get the following errors:

ERROR: linux-yocto-5.2.17+gitAUTOINC+bb2776d6be_25b14cdf96-r0 do_package: Error executing a python function in exec_python_func() autogenerated:
 
The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:split_kernel_module_packages(d)
     0003:
File: '/opt/graylog-poky/meta/classes/kernel-module-split.bbclass', lineno: 171, function: split_kernel_module_packages
     0167:    # avoid warnings. removedirs only raises an OSError if an empty
     0168:    # directory cannot be removed.
     0169:    dvar = d.getVar('PKGD')
     0170:    for dir in ["%s/etc/modprobe.d" % (dvar), "%s/etc/modules-load.d" % (dvar), "%s/etc" % (dvar)]:
 *** 0171:        if len(os.listdir(dir)) == 0:
     0172:            os.rmdir(dir)
     0173:}
     0174:
     0175:do_package[vardeps] += '${@" ".join(map(lambda s: "module_conf_" + s, (d.getVar("KERNEL_MODULE_PROBECONF") or "").split()))}'
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/opt/graylog-poky/build/tmp/work/genericx86_64-poky-linux/linux-yocto/5.2.17+gitAUTOINC+bb2776d6be_25b14cdf96-r0/package/etc/modprobe.d'
 
ERROR: Logfile of failure stored in: /opt/graylog-poky/build/tmp/work/genericx86_64-poky-linux/linux-yocto/5.2.17+gitAUTOINC+bb2776d6be_25b14cdf96-r0/temp/log.do_package.29306
ERROR: Task (/opt/graylog-poky/meta/recipes-kernel/linux/linux-yocto_5.2.bb:do_package) failed with exit code '1'
ERROR: volatile-binds-1.0-r0 do_package: SYSTEMD_SERVICE_volatile-binds value var-volatile-lib.service does not exist
ERROR: Logfile of failure stored in: /opt/graylog-poky/build/tmp/work/all-poky-linux/volatile-binds/1.0-r0/temp/log.do_package.29309
ERROR: Task (/opt/graylog-poky/meta/recipes-core/volatile-binds/volatile-binds.bb:do_package) failed with exit code '1'
ERROR: run-postinsts-1.0-r10 do_package: SYSTEMD_SERVICE_run-postinsts value run-postinsts.service does not exist
ERROR: Logfile of failure stored in: /opt/graylog-poky/build/tmp/work/all-poky-linux/run-postinsts/1.0-r10/temp/log.do_package.29316
ERROR: Task (/opt/graylog-poky/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb:do_package) failed with exit code '1'

# If I remove the meta-java layer from bblayers.conf, everything builds successfully.

-=Srijan


[PATCH yocto-autobuilder-helper] auh-config: send AUH update emails to oe-core list as well

Alexander Kanavin
 

Sadly, many maintainers do not act on AUH mails in a timely manner
(or do not act at all). Sending these emails to oe-core list as well
will allow other people to pick them up, and ease up the path
to doing recipe version maintenance.

Also, recently the amount of outdate recipes has been greatly reduced,
so there should not be too many of those emails each month.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
scripts/auh-config/upgrade-helper.conf | 2 ++
1 file changed, 2 insertions(+)

diff --git a/scripts/auh-config/upgrade-helper.conf b/scripts/auh-config/upgrade-helper.conf
index fbf5d8a..b012600 100644
--- a/scripts/auh-config/upgrade-helper.conf
+++ b/scripts/auh-config/upgrade-helper.conf
@@ -14,6 +14,8 @@ smtp=smtp1.yoctoproject.org:25
from=auh@auh.yoctoproject.org
# who should get the status mail with statistics, at the end
status_recipients=openembedded-core@lists.openembedded.org
+# who should be CCd with upgrade emails
+cc_recipients=openembedded-core@lists.openembedded.org
# clean sstate directory before upgrading
#clean_sstate=yes
# clean tmp directory before upgrading
--
2.27.0


[AUH][PATCH 2/2] upgradehelper: use a separate setting for CCing recipe upgrades

Alexander Kanavin
 

Previously it was same as status update recipients.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
upgrade-helper.conf | 3 +++
upgradehelper.py | 4 ++--
2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/upgrade-helper.conf b/upgrade-helper.conf
index 98ef58f..e926300 100644
--- a/upgrade-helper.conf
+++ b/upgrade-helper.conf
@@ -31,6 +31,9 @@
# except when recipes are owned by specific maintainer_override entries above.
#global_maintainer_override=john.doe@doe.com

+# who should be CCd with all upgrade emails (optional)
+#cc_recipients=john.doe@doe.com
+
# who should get the status mail with statistics, at the end (optional)
#status_recipients=john.doe@doe.com

diff --git a/upgradehelper.py b/upgradehelper.py
index 061d18d..c2480f1 100755
--- a/upgradehelper.py
+++ b/upgradehelper.py
@@ -321,8 +321,8 @@ class Updater(object):
to_addr = pkg_ctx['MAINTAINER']

cc_addr = None
- if "status_recipients" in settings:
- cc_addr = settings["status_recipients"].split()
+ if "cc_recipients" in settings:
+ cc_addr = settings["cc_recipients"].split()

newversion = pkg_ctx['NPV'] if not pkg_ctx['NPV'].endswith("new-commits-available") else pkg_ctx['NSRCREV']
subject = "[AUH] " + pkg_ctx['PN'] + ": upgrading to " + newversion
--
2.27.0


[AUH][PATCH 1/2] emailhandler: actually send messages to cc_list as well

Alexander Kanavin
 

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
modules/utils/emailhandler.py | 2 ++
1 file changed, 2 insertions(+)

diff --git a/modules/utils/emailhandler.py b/modules/utils/emailhandler.py
index 066f013..8c8b85b 100644
--- a/modules/utils/emailhandler.py
+++ b/modules/utils/emailhandler.py
@@ -103,6 +103,8 @@ class Email(object):
try:
smtp = SMTP(self.smtp_host, self.smtp_port)
smtp.sendmail(self.from_addr, to_addr, msg_text)
+ if cc_addr is not None:
+ smtp.sendmail(self.from_addr, cc_addr, msg_text)
smtp.close()
except Exception as e:
E("Could not send email: %s" % str(e))
--
2.27.0


Error building openjdk-8 on zeus

srijan.nandi@...
 

Hello Everyone,

When I am trying to add meta-java as a layer on zeus. I get the following error message:

 

ERROR: glibc-2.30-r0 do_package: SYSTEMD_SERVICE_nscd value nscd.service does not exist

ERROR: Logfile of failure stored in: /opt/graylog-poky/build/tmp/work/core2-64-poky-linux/glibc/2.30-r0/temp/log.do_package.28895

ERROR: Task (/opt/graylog-poky/meta/recipes-core/glibc/glibc_2.30.bb:do_package) failed with exit code '1'

Thanks,
-=Srijan 

 


Errors Building openjdk-8 on dunfell

Robert Joslyn
 

I'm trying to build openjdk-8 on dunfull and am getting some build errors.
Using an Ubuntu 18.04 host, I get an error building the openjdk-8 recipe:

| g++: error: unrecognized command line option ‘-fmacro-prefix-
map=/mnt/yocto/bionic/poky/build/tmp/work/core2-64-poky-linux/openjdk-
8/252-r0=/usr/src/debug/openjdk-8/252-r0’

This seems to imply I need a newer gcc which supports the -fmacro-prefix-
map option. The README says I need gcc 6 or later on the host, but 18.04
has gcc 7.5.0. Maybe the README is outdated?

I then tried building in an Ubuntu 20.04 container to see if that makes
any difference. It fails in a different way while building icedtea7-
native:

| /usr/include/x86_64-linux-gnu/bits/stdio2.h:100:24: error: ‘%s’
directive argument is null [-Werror=format-overflow=]

I'm doing clean builds with both my 18.04 and 20.04 setups starting with
separate, empty sstate-cache directories. Both builds are using poky
defaults:

Build Configuration:
BB_VERSION = "1.46.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "x86_64-poky-linux"
MACHINE = "qemux86-64"
DISTRO = "poky"
DISTRO_VERSION = "3.1.1"
TUNE_FEATURES = "m64 core2"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "dunfell:93ef4736915090ac9a2402916df8924ac4439490"
meta-oe = "dunfell:8a72d29e0876830ffd96b85d7d0308302eb07a5d"
meta-java = "dunfell:cf9604a4789801d9dfb0cb8ca134ff04b42ae161"

Is there some trick I'm missing to get clean builds out of the box? I can
fix the 20.04 build by adding -Wno-error for that specific warning (and
can send a patch if desired), but has anyone else had these issues? Any
thoughts would be appreciated.

Thanks,
Robert


[PATCH] yocto-bsps: bump reference boards to v5.4.49

Bruce Ashfield
 

From: Bruce Ashfield <bruce.ashfield@gmail.com>

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---

This goes along with my oe-core -stable version bumps. It contains
the gcc10 host compiler fixes. If the issues still pop up, we'll try
the debug patch.

Bruce

.../linux/linux-yocto_5.4.bbappend | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
index 7207442008..626748541a 100644
--- a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
+++ b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
@@ -7,17 +7,17 @@ KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"

-SRCREV_machine_genericx86 ?= "29f44c85c379c38f15e544828e7e77b3c008f378"
-SRCREV_machine_genericx86-64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378"
-SRCREV_machine_edgerouter ?= "f4d7dbafb103e4f782323017c239c548871c1567"
-SRCREV_machine_beaglebone-yocto ?= "f4d7dbafb103e4f782323017c239c548871c1567"
+SRCREV_machine_genericx86 ?= "ec485bd4afef57715eb45ba331b04b3f941e43bb"
+SRCREV_machine_genericx86-64 ?= "ec485bd4afef57715eb45ba331b04b3f941e43bb"
+SRCREV_machine_edgerouter ?= "ec485bd4afef57715eb45ba331b04b3f941e43bb"
+SRCREV_machine_beaglebone-yocto ?= "ec485bd4afef57715eb45ba331b04b3f941e43bb"

COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"

-LINUX_VERSION_genericx86 = "5.4.40"
-LINUX_VERSION_genericx86-64 = "5.4.40"
-LINUX_VERSION_edgerouter = "5.4.20"
-LINUX_VERSION_beaglebone-yocto = "5.4.20"
+LINUX_VERSION_genericx86 = "5.4.49"
+LINUX_VERSION_genericx86-64 = "5.4.49"
+LINUX_VERSION_edgerouter = "5.4.49"
+LINUX_VERSION_beaglebone-yocto = "5.4.49"
--
2.19.1


Re: License reporting for golang (and rust)

Robert Berger
 

Hi,

My comments are in-line

On 22/06/2020 11:53, Irving ST wrote:
Hello,
I am building a device that uses some Go (and Rust) dependencies. This
is on Yocto 2.7 / Warrior.
I noticed that after building an image, the generated license.manifest
and package.manifest (in tmp/deploy/licenses/) does not contain any
mention of go packages or rust crates. The go packages seem to
generate directories in tmp/deploy/licenses/ but they do not seem to
be reported in the final image.
On dunfell 3.1.1 I see this:

licenses/
└── github.com-influxdata-influxdb
├── generic_MIT
├── LICENSE
└── recipeinfo

which is wrong, since I would need to add all the licenses of all the dependencies golang pulls in as well to the recipe. It's shows only the top level license.

In my license manifest I do have the influxdb:

tmp/deploy/licenses/image-influxdb-from-source-container-x86-64-20200629205620/license.manifest

PACKAGE NAME: github.com-influxdata-influxdb
PACKAGE VERSION: 1.8.0
RECIPE NAME: github.com-influxdata-influxdb
LICENSE: MIT

Regards,

Robert

4501 - 4520 of 54277