Date   

[meta-oracle-java][PATCH v2] Don't preserve ownership when copying files

Martin Nordqvist <mano@...>
 

Don't preserve ownership when copying files. Instead let root be
owner of all files.
---
recipes-devtools/oracle-java/oracle-jse.inc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/recipes-devtools/oracle-java/oracle-jse.inc b/recipes-devtools/oracle-java/oracle-jse.inc
index 4346f23..5e5f406 100644
--- a/recipes-devtools/oracle-java/oracle-jse.inc
+++ b/recipes-devtools/oracle-java/oracle-jse.inc
@@ -19,7 +19,8 @@ JDK_HOME = "${libdir_jvm}/${JDK_DIR}"

do_install () {
install -d -m 0755 ${D}${libdir_jvm}
- cp -a ${S}/${JDK_JRE}${PV}_${PV_UPDATE} ${D}${JDK_HOME}
+ cp -a --no-preserve=ownership \
+ ${S}/${JDK_JRE}${PV}_${PV_UPDATE} ${D}${JDK_HOME}
}

# All the files are provided in a binaray package, and keeping all the
--
1.9.1


32-bit sdk (/opt/poky) in 64 bit machine

Ran Shalit <ranshalit@...>
 

Hello,

Is it possible to use 32-bit sdk (/opt/poky) in 64 bit machine ?

Regards,
Ran


Re: u-boot recipe: Missing dependencies

Eric Schwarz
 

Am 09.10.2017 12:30, schrieb Burton, Ross:
On 8 October 2017 at 18:04, Eric Schwarz <eas@...> wrote:
Don't _append when you can just extend the assignment above. I just did it that way for the moment since I wanted to circumvent merge
conflicts when I upgrade the underlying recipes from openembedded.
Well it's ugly, so if you want a patch in oe-core then don't introduce ugly for your convenience.
Well, I have only done this, so the patch does apply the next time. Since in case someone changes something in the mainline it is always a hassle otherwise. For the final version it will be fixed.

Depending on python-native does nothing as the binary isn't in $PATH still.
I thought any Yocto native binaries built are in the PATH automatically. - How
to fix this/do it correctly?
You need to inherit python3native, as python (and some others) are opt-in.
Well, okay, but WTH I do not need to inherit from something for "bc-native" and "dtc-native"?

Eric


kernel menuconfig with screen is not populating clearly

Vineeth Karumanchi <vineethchowz.chowdary@...>
 

Hi ALL,

When my oe_term is set to screen/tmux, the menuconfig for kernel,u-boot,.. is
having some empty spaces. This is making distorted view.
Please see the attachment. It is looking good with gnome and other
terminals with ssh -x.

Anything i need to do to get clear menuconfig without ssh -X ?

Thanks
VIneeth


Re: [meta-oracle-java][PATCH] Don't preserve ownership when copying files

Vincent Prince
 

Hi Martin, 

Any reason to give root rights to JDK?

Best Regards,
Vincent

2017-11-06 15:33 GMT+01:00 Martin Nordqvist <mano@...>:

Don't preserve ownership when copying files. Instead let root be
owner of all files.
---
 recipes-devtools/oracle-java/oracle-jse-jdk.inc | 3 ++-
 recipes-devtools/oracle-java/oracle-jse.inc     | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/recipes-devtools/oracle-java/oracle-jse-jdk.inc b/recipes-devtools/oracle-java/oracle-jse-jdk.inc
index a7210d9..ca6af22 100644
--- a/recipes-devtools/oracle-java/oracle-jse-jdk.inc
+++ b/recipes-devtools/oracle-java/oracle-jse-jdk.inc
@@ -13,7 +13,8 @@ require oracle-jse.inc

 do_install_class-native() {
        install -d                              ${D}${libdir_jvm}
-       cp -a ${S}/${JDK_JRE}${PV}_${PV_UPDATE} ${D}${JDK_HOME}
+       cp -a --no-preserve=ownership \
+               ${S}/${JDK_JRE}${PV}_${PV_UPDATE}       ${D}${JDK_HOME}

        install -d                              ${D}${bindir}
        ln -sf ${JDK_HOME}/bin/java             ${D}${bindir}
diff --git a/recipes-devtools/oracle-java/oracle-jse.inc b/recipes-devtools/oracle-java/oracle-jse.inc
index 4346f23..5e5f406 100644
--- a/recipes-devtools/oracle-java/oracle-jse.inc
+++ b/recipes-devtools/oracle-java/oracle-jse.inc
@@ -19,7 +19,8 @@ JDK_HOME = "${libdir_jvm}/${JDK_DIR}"

 do_install () {
        install -d -m 0755                      ${D}${libdir_jvm}
-       cp -a ${S}/${JDK_JRE}${PV}_${PV_UPDATE} ${D}${JDK_HOME}
+       cp -a --no-preserve=ownership \
+               ${S}/${JDK_JRE}${PV}_${PV_UPDATE}       ${D}${JDK_HOME}
 }

 # All the files are provided in a binaray package, and keeping all the
--
1.9.1

--
_______________________________________________
yocto mailing list
yocto@...
https://lists.yoctoproject.org/listinfo/yocto


Re: [layerindex-web][patch v3 1/1] recipes.html: Require keyword for recipe search

Paul Eggleton
 

On Wednesday, 8 November 2017 11:47:49 AM NZDT Mark Hatle wrote:
On 11/7/17 4:31 PM, Amanda Brindle wrote:
Use JavaScript to check if the search box for recipe search is
empty before querying the database. This will prevent the "502
Bad Gateway" error that occurs when the query takes too long due
to the large list of recipes. Since there are so many recipes
spread across the layers in the OE index, there's no point in
allowing a user to search without a keyword in order to browse
the list; it simply isn't digestible as a whole.

Add a browse button for the Machines, Classes, and Distros pages.
There are reasons to view all of the recipes, machines, classes, distros,
etc. (Not necessarily good reasons, but I know people do it.)

If the query is too long, it would be better to figure out a way to get a
partial response and formulate the first page based on partial responses...
having a multipage response that the user can look at.
I'm willing to be proven wrong, but unfortunately it looks to me like this
will require major re-engineering to sort out for a fairly weak use case. If
you consider this important, would you be able to look into making it work?

Cheers,
Paul

--

Paul Eggleton
Intel Open Source Technology Centre


Re: [layerindex-web][patch v3 1/1] recipes.html: Require keyword for recipe search

Mark Hatle <mark.hatle@...>
 

On 11/7/17 4:31 PM, Amanda Brindle wrote:
Use JavaScript to check if the search box for recipe search is
empty before querying the database. This will prevent the "502
Bad Gateway" error that occurs when the query takes too long due
to the large list of recipes. Since there are so many recipes
spread across the layers in the OE index, there's no point in
allowing a user to search without a keyword in order to browse
the list; it simply isn't digestible as a whole.

Add a browse button for the Machines, Classes, and Distros pages.
There are reasons to view all of the recipes, machines, classes, distros, etc.
(Not necessarily good reasons, but I know people do it.)

If the query is too long, it would be better to figure out a way to get a
partial response and formulate the first page based on partial responses...
having a multipage response that the user can look at.

--Mark

Fixes [YOCTO #11930]

Signed-off-by: Amanda Brindle <amanda.r.brindle@...>
---
layerindex/views.py | 15 ++++++++++++---
templates/layerindex/classes.html | 3 ++-
templates/layerindex/distros.html | 3 ++-
templates/layerindex/machines.html | 3 ++-
templates/layerindex/recipes.html | 27 +++++++++++++++++++++------
5 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/layerindex/views.py b/layerindex/views.py
index 03d47f2..414c770 100644
--- a/layerindex/views.py
+++ b/layerindex/views.py
@@ -656,7 +656,10 @@ class MachineSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = Machine.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name', 'description'])
@@ -705,7 +708,10 @@ class DistroSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = Distro.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name', 'description'])
@@ -730,7 +736,10 @@ class ClassSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = BBClass.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name'])
diff --git a/templates/layerindex/classes.html b/templates/layerindex/classes.html
index 34ac5aa..574cdb8 100644
--- a/templates/layerindex/classes.html
+++ b/templates/layerindex/classes.html
@@ -35,7 +35,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'class_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search classes" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/distros.html b/templates/layerindex/distros.html
index 5b6995a..3266bf6 100644
--- a/templates/layerindex/distros.html
+++ b/templates/layerindex/distros.html
@@ -35,7 +35,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'distro_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search distros" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/machines.html b/templates/layerindex/machines.html
index c0c6f33..e963376 100644
--- a/templates/layerindex/machines.html
+++ b/templates/layerindex/machines.html
@@ -34,7 +34,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'machine_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search machines" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/recipes.html b/templates/layerindex/recipes.html
index 1322750..5ff92ab 100644
--- a/templates/layerindex/recipes.html
+++ b/templates/layerindex/recipes.html
@@ -32,14 +32,20 @@


<div class="row-fluid">
- <div class="input-append">
- <form id="filter-form" action="{% url 'recipe_search' url_branch %}" method="get">
- <input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search recipes" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
- </form>
- </div>
+ <form id="filter-form" action="{% url 'recipe_search' url_branch %}" method="get" onsubmit="return validate()">
+ <div class="control-group" id="searchfield">
+ <div class="controls">
+ <div class="input-append">
+ <input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search recipes" name="q" value="{{ search_keyword }}" />
+ <button class="btn" type="submit">search</button>
+ </div>
+ <span class="help-inline" id="errortext"></span>
+ </div>
+ </div>
+ </form>
</div>

+ <div id="error"> </div>
{% if recipe_list %}
<table class="table table-striped table-bordered recipestable">
<thead>
@@ -88,5 +94,14 @@
$('.icon-hdd').tooltip({title:"Inherits image"});
$('.label-inverse').tooltip();
});
+
+ function validate(){
+ if (!$("#appendedInputButtons").val()){
+ $("#errortext").html("<p>Please specify search text</p>");
+ $("#searchfield").addClass("error");
+ return false;
+ }
+ }
+
</script>
{% endblock %}


[layerindex-web][patch v3 1/1] recipes.html: Require keyword for recipe search

Amanda Brindle
 

Use JavaScript to check if the search box for recipe search is
empty before querying the database. This will prevent the "502
Bad Gateway" error that occurs when the query takes too long due
to the large list of recipes. Since there are so many recipes
spread across the layers in the OE index, there's no point in
allowing a user to search without a keyword in order to browse
the list; it simply isn't digestible as a whole.

Add a browse button for the Machines, Classes, and Distros pages.

Fixes [YOCTO #11930]

Signed-off-by: Amanda Brindle <amanda.r.brindle@...>
---
layerindex/views.py | 15 ++++++++++++---
templates/layerindex/classes.html | 3 ++-
templates/layerindex/distros.html | 3 ++-
templates/layerindex/machines.html | 3 ++-
templates/layerindex/recipes.html | 27 +++++++++++++++++++++------
5 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/layerindex/views.py b/layerindex/views.py
index 03d47f2..414c770 100644
--- a/layerindex/views.py
+++ b/layerindex/views.py
@@ -656,7 +656,10 @@ class MachineSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = Machine.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name', 'description'])
@@ -705,7 +708,10 @@ class DistroSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = Distro.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name', 'description'])
@@ -730,7 +736,10 @@ class ClassSearchView(ListView):

def get_queryset(self):
_check_url_branch(self.kwargs)
- query_string = self.request.GET.get('q', '')
+ if self.request.GET.get('search', ''):
+ query_string = self.request.GET.get('q', '')
+ else:
+ query_string = ""
init_qs = BBClass.objects.filter(layerbranch__branch__name=self.kwargs['branch'])
if query_string.strip():
entry_query = simplesearch.get_query(query_string, ['name'])
diff --git a/templates/layerindex/classes.html b/templates/layerindex/classes.html
index 34ac5aa..574cdb8 100644
--- a/templates/layerindex/classes.html
+++ b/templates/layerindex/classes.html
@@ -35,7 +35,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'class_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search classes" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/distros.html b/templates/layerindex/distros.html
index 5b6995a..3266bf6 100644
--- a/templates/layerindex/distros.html
+++ b/templates/layerindex/distros.html
@@ -35,7 +35,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'distro_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search distros" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/machines.html b/templates/layerindex/machines.html
index c0c6f33..e963376 100644
--- a/templates/layerindex/machines.html
+++ b/templates/layerindex/machines.html
@@ -34,7 +34,8 @@
<div class="input-append">
<form id="filter-form" action="{% url 'machine_search' url_branch %}" method="get">
<input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search machines" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
+ <button class="btn" type="submit" name="search" value="1">search</button>
+ <button class="btn" type="submit" name="browse" value="1">browse</button>
</form>
</div>
</div>
diff --git a/templates/layerindex/recipes.html b/templates/layerindex/recipes.html
index 1322750..5ff92ab 100644
--- a/templates/layerindex/recipes.html
+++ b/templates/layerindex/recipes.html
@@ -32,14 +32,20 @@


<div class="row-fluid">
- <div class="input-append">
- <form id="filter-form" action="{% url 'recipe_search' url_branch %}" method="get">
- <input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search recipes" name="q" value="{{ search_keyword }}" />
- <button class="btn" type="submit">search</button>
- </form>
- </div>
+ <form id="filter-form" action="{% url 'recipe_search' url_branch %}" method="get" onsubmit="return validate()">
+ <div class="control-group" id="searchfield">
+ <div class="controls">
+ <div class="input-append">
+ <input type="text" class="input-xxlarge" id="appendedInputButtons" placeholder="Search recipes" name="q" value="{{ search_keyword }}" />
+ <button class="btn" type="submit">search</button>
+ </div>
+ <span class="help-inline" id="errortext"></span>
+ </div>
+ </div>
+ </form>
</div>

+ <div id="error"> </div>
{% if recipe_list %}
<table class="table table-striped table-bordered recipestable">
<thead>
@@ -88,5 +94,14 @@
$('.icon-hdd').tooltip({title:"Inherits image"});
$('.label-inverse').tooltip();
});
+
+ function validate(){
+ if (!$("#appendedInputButtons").val()){
+ $("#errortext").html("<p>Please specify search text</p>");
+ $("#searchfield").addClass("error");
+ return false;
+ }
+ }
+
</script>
{% endblock %}
--
2.7.4


[layerindex-web][patch v3 0/1] recipes.html: Require keyword for recipe search

Amanda Brindle
 

For v3, updated recipes.html to use bootstrap's error state and added the browse option
for Classes.

The following changes since commit 78c2561181f07b1c39f1dc3516a9110a39d874f2:

templates/layerindex/classes.html: Add bbclass search (2017-11-07 16:54:46 +1300)

are available in the git repository at:

git://git.yoctoproject.org/layerindex-web abrindle/recipe_search
http://git.yoctoproject.org/cgit.cgi/layerindex-web/log/?h=abrindle/recipe_search

Amanda Brindle (1):
recipes.html: Require keyword for recipe search

layerindex/views.py | 15 ++++++++++++---
templates/layerindex/classes.html | 3 ++-
templates/layerindex/distros.html | 3 ++-
templates/layerindex/machines.html | 3 ++-
templates/layerindex/recipes.html | 27 +++++++++++++++++++++------
5 files changed, 39 insertions(+), 12 deletions(-)

--
2.7.4


Re: KBUILD_DEFCONFIG_KMACHINE not used anywhere

Bruce Ashfield <bruce.ashfield@...>
 

On 11/07/2017 08:46 AM, Alan Martinovic wrote:
Hi,
I'm trying to get yocto to build the kernel with an in-tree defconfig.
For that I found references to the variable KBUILD_DEFCONFIG_KMACHINE.
However, I've been experiencing that the kernel is being built with
some default defconfig, and not the in-tree one that came with the
kernel and I defined with the KBUILD_DEFCONFIG_KMACHINE.
I've looked through all yocto sources for where the
KBUILD_DEFCONFIG_KMACHINE is actually used, and found it only in my
kernel recipe. So I decided to dissect my recipe.
What is your kernel recipe ? Something you wrote, or something
from a vendor ?

There is a:
inherit kernel
in my recipe for which, besides others, defines how the kernel config
will be selected.
Looking at the sources of oe/meta/classes/kernel.bbclass exposes how
the kernel configuration happens:
kernel_do_configure() {
# fixes extra + in /lib/modules/2.6.37+
# $ scripts/setlocalversion . => +
# $ make kernelversion => 2.6.37
# $ make kernelrelease => 2.6.37+
touch ${B}/.scmversion ${S}/.scmversion
if [ "${S}" != "${B}" ] && [ -f "${S}/.config" ] && [ ! -f
"${B}/.config" ]; then
mv "${S}/.config" "${B}/.config"
fi
# Copy defconfig to .config if .config does not exist. This allows
# recipes to manage the .config themselves in do_configure_prepend().
if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
cp "${WORKDIR}/defconfig" "${B}/.config"
fi
${KERNEL_CONFIG_COMMAND}
}
I'm planning a workaround by overriding the do_configure in my recipe
to select the correct defconfig from the kernel. It does seem however
like the KBUILD_DEFCONFIG_KMACHINE is exactly here to not have to do
the workarounds.
Anyone has experiences with successfully using KBUILD_DEFCONFIG_KMACHINE?
Is it a specific poky feature (I'm not using poky but specific open
embedded layers and bitbake)?
That is a feature of kernel-yocto, so if your recipe is inheriting
kernel-yocto you can use what you are looking for.

But note, in the documentation you are referencing you have to replace
KMACHINE with your actual machine .. not use the string KMACHINE.

i.e. in your recipe (or bbappend)

# for cases where the KMACHINE (KERNEL MACHINE) and bitbake
# machine match, just do this:
KMACHINE=$MACHINE

KBUILD_DEFCONFIG_${KMACHINE}="your defconfig"

i.e. it is just a standard bitbake variable with a machine OVERRIDE
to make it specific to the machine you are building.

Bruce

Be Well,
Alan
Ref.
https://www.yoctoproject.org/docs/2.2/kernel-dev/kernel-dev.html#using-an-in-tree-defconfig-file


Re: [meta-mono][PATCH] mono-4.xx: compiling mono 4 with btls requires cmake

Khem Raj
 

On Tue, Nov 7, 2017 at 5:26 AM, Pascal Bach <pascal.bach@...> wrote:



Mono requires cmake to build the bundled BoringSSL library. I didn't look why it works in detail but I currently assume that BoringSSL is standalone enough that no additional
CMake toolchain settings are required to make it work.
yeah that probably is a case of bundling which is on rise at app level
these days,

One option would be to disable it with `--disable-btls` but I fear that would disable TLS1.2 support (http://www.mono-project.com/docs/about-mono/releases/4.8.0/#tls-12-support).
But I have no way of checking that.
interesting, do they support any other TLS implementations ?
It is disabled in 5.x builds by default as it breaks the build e.g.

http://git.yoctoproject.org/cgit/cgit.cgi/meta-mono/tree/recipes-mono/mono/mono-5.4.0.201.inc

It's probably time to look at a working build with it re-enabled. Patches welcomed...

(I did have a quick look at inheriting cmake but that breaks the build too)
I did some more testing. And adding "cmake-native" still doesn't build btls. I guess it need cmake to figure that out. But this means it was never enabled in the first place.

So my proposal for the moment is to explicitly set "--disable-btls" for Mono 4 too, this way it builds and it is clear that it is disabled.
that seems reasonable


If somebody figures out how to enable it again. I will send an updated Patch.

Pascal


Minutes: Yocto Project Technical Team Meeting

Jolley, Stephen K <stephen.k.jolley@...>
 

Attendees: Stephen, Joshua L., Armin, Stephano, Michael, Brian, Richard, Joshua W., Mark, Patrick, Pascal, Randy, Saul, Manju,
 
Agenda:
 
* Yocto Project status - 5 min (Stephen/team)
  • YP 2.4 (Rocko) Final was released on Thursday Oct. 26th.  It provides a number of key new features including upgrades to the kernel, gcc, glibc, and many new recipes.  It also includes improvements to Python 3, go support, wic, devtool, Bitbake server and significant improvements to automated QA testing, both in coverage and performance.
  • YP 2.5 planning is in process, please get you enhancement requests into bugzilla.
  • YP 2.2.3 (Morty) is planned to be built and sent to QA shortly.
 
* Opens - 10 min
  • Richard – Discussed issues of intermittent failures on the AutoBuilder.  See Weekly Status report for details. Removed Fedora 25 build machines since it is EOL shortly and was failing. May have a fix for the SUSE builders’ intermittent failures.  Master and the other branches are not frozen, but it is making merging patches quite slow.
 
* Team Sharing - 10 min
  • Richard – Discussed focus for YP 2.5 but not yet finalized the themes yet.  Container improvements, YP compatible V2, Layer Setup efforts, Test automation improvements, software update tools.
  • Richard – Discussed removing gcc 6 from YP 2.5.
  • Randy – Discuss limiting supported kernels to 2 per release, but some have had 3 and Pyro had 4 which produced a lot of support issues.
  • Richard – Discussed distributed builds, but multi-config needs to be finished and we don’t have the resources to complete at this time and don’t want to do an incomplete job.
  • Richard – Would like to add more layers to our QA testing, but not sure we have the bandwidth at this time to do it.
 
Thanks,
 
Stephen K. Jolley
Yocto Project Program Manager
INTEL, MS JF1-255, 2111 N.E. 25th Avenue, Hillsboro, OR 97124
(   Work Telephone:             (503) 712-0534
(    Cell:                                      (208) 244-4460
* Email:                                stephen.k.jolley@...
 


Reminder: Yocto Project Technical Team Meeting

Jolley, Stephen K <stephen.k.jolley@...>
 

YPTM will be Nov. 7, 2017 at 8am PST.
 
We encourage people attending the meeting to logon and announce themselves on the Yocto Project IRC chancel during the meeting (optional):
 
 
 
Conference Details:
Company:           WIND RIVER SYS
- dial into: 1-800-262-0778/404-397-1527
- enter the bridge number: 88748961#
 
The international numbers are:
 
United States Toll      404-397-1527
US & Canada Toll Free   800-262-0778
Albania dial 008000010+ 8558142509
Angola dial 808000011+  8558142510
Anguilla Toll Free      18003004779
Argentina Toll  +541159844583
Argentina Toll Free     08004446354
Australia Toll  +610386580431
Australia Toll Free     1800347095
Austria Toll Free       080088668498
Bahamas Toll Free       18003890740
Bahrain Toll Free       80006770
Bangladesh dial 1570011+        8558142505
Barbados Toll Free      18002070056
Belarus Toll Free       882000110813
Belgium Toll    +3227925498
Belgium Toll Free       080029896
Belize Toll Free        18000130907
Bermuda Toll free       18002072792
Botswana Toll Free      002698003004981
Brazil Toll     +5501149497489
Brazil Toll Free        08008919885
British Virgin Islands Toll Free        18002075710
Brunei Toll Free        8014373
Bulgaria Toll   +359024916371
Bulgaria Toll Free      008001201170
Cambodia Toll Free      1800209578
Cambodia Toll Free      1800209361
Canada Toll     +14169810101
Cayman islands Toll Free        18444305771
Chile Toll      +56442080836
Chile Toll Free 12300206143
China Toll Free 4000342070
China Toll Free 8008709853
China Toll Free 4008877140
China Toll Free 8008768605
Colombia Toll   +5714864720
Colombia Toll Free      18000129671
Costa Rica Toll 40017415
Croatia Toll    +38517776838
Croatia Toll Free       08009975
Cuba dial 2935+ 8558142540
Cyprus Toll Free        80096877
Czech Republic Toll Free        0800701476
Denmark Toll    +4536927940
Denmark Toll Free       80251209
Dominica Toll Free      18003004904
Dominican Republic Toll Free    18887514588
Ecuador Toll Free       1800000314
Egypt Toll Free 08000009493
Estonia Toll    +3726867092
Estonia Toll Free       8000100708
Finland Toll    +3580923195770
Finland Toll Free       0800774585
France Toll     +33272249926
France Toll Free        0800947235
French Guiana Toll Free 0800910113
Germany Toll    +4930700150733
Germany Toll Free       08007238960
Ghana dial 0242426004+  8553944954
Greece Toll     +302111983414
Greece Toll Free        0080016122059757
Grenada Toll Free       18003004905
Guatemala dial 0019999190+      8553944634
Honduras Toll Free      80027919493
Hong Kong Toll  +85230507540
Hong Kong Toll Free     800961673
Hungary Toll    +40017789124
Hungary Toll Free       0680015494
India Toll      +914466747384
India Toll Free 18002090252
Indonesia Toll Free     0078030114912
Ireland Toll    +35316539376
Ireland Toll Free       1800948436
Israel Toll     +97233762260
Israel Toll Free        1809458778
Italy Toll      +390200617793
Italy Toll Free 0800187234
Jamaica Toll Free       18002196874
Japan Toll      +810345786573
Japan Toll Free 0120525303
Jordan Toll Free        080022545
Kenya Toll Free 0800723004
Latvia Toll Free        8002601
Lebanon dial 01426801+  8558142511
Lithuania Toll  +37052054804
Lithuania Toll Free     880031895
Luxembourg Toll +35228264835
Luxembourg Toll Free    80023986
Macedonia Toll Free     080094382
Malaysia Toll   +600377248228
Malta Toll      +35627781438
Malta Toll Free 80062568
Martinique Toll Free    0800910664
Mauritius Toll Free     8020440157
Mexico Toll     +52015515001053
Mexico Toll Free        018002530547
Moldavia Toll Free      080062305
Monaco Toll Free        80094215
Morocco dial 002110011+ 8558142537
Netherlands Toll        +310107994621
Netherlands Toll Free   08000200244
New Zealand Toll        +64042806288
New Zealand Toll Free   0800441743
Norway Toll     +4721034359
Norway Toll Free        80058604
Oman Toll Free  80074218
Pakistan Toll   +924238108753
Panama Toll     +5078323301
Panama Toll Free        008002267987
Paraguay Toll Free      009800110233
Peru Toll       +51017017728
Peru Toll Free  080078493
Philippines Toll        +6322312145
Philippines Toll Free   180011101073
Poland Toll     +480223060270
Poland Toll Free        800080328
Portugal Toll   +351707201563
Portugal Toll Free      800788629
Qatar Toll Free 00800100142
Romania Toll    +40215291752
Romania Toll Free       0800400068
Russia Toll     +74993504823
Russia Toll Free        81080026895011
Saudi Arabia Toll Free  8008442574
Saudi Arabia Toll Free  8008500370
Senegal dial 800103072+ 8558842521
Serbia Toll Free        0800190975
Singapore Toll  +6563494173
Singapore Toll Free     18005792882
Slovakia Toll   +4210268622038
Slovakia Toll Free      0800606692
Slovenia Toll   +38618281644
Slovenia Toll Free      080081438
South Africa Toll       +270214277972
South Africa Toll Free  0800994623
South Korea Toll        +827074882482
South Korea Toll Free   00308132034
Spain Mobile    900-828-467
Spain Toll      +34935451755
Spain Toll Free 900828467
Sri Lanka Toll  +94720910363
Sweden Toll     +460114966619
Sweden Toll Free        0201409738
Switzerland Toll        +41434569403
Switzerland Toll Free   800740310
Taiwan Toll     +8860287933075
Taiwan Toll Free        0800868159
Thailand Toll   +6621040574
Thailand Toll Free      0018001562038778
Trinidad and Tobago Toll Free   18002038778
Turkey Toll     +902129003723
Turks & Caicos Toll Free        18003000086
UK Toll +442030144000
UK Toll Free    08005283819
Ukraine Toll    +380893240452
Ukraine Toll Free       0800503625
United Arab Emirates Toll Free  800035703321
Uruguay Toll Free       00040190461
Venezuela Toll Free     08001004189
Vietnam Toll Free       12065242
 
 
 


use native (cross) toolchain instead of a populated nativesdk (cross-canadian) toolchain

Zhen LiWei <zhenlw@...>
 

Hi, I am working on a yocto 2.0 based distro and we usually populate_sdk and use the toolchain included in SDK.

 

But we also like to check the SDK into a SVN repo, and checkout it anywhere, and use it away right where it is checked out. And since the nativesdk binaries are based on a different glibc than native, and have the “dynamic loader” path hardcoded in them, I have to patch the toolchain binaries’ .interp secion to point to a common place, and update the loader into that common place automatically in some way. Other than this, things work very good for us.

 

Then I was thinking: is it a good practice, to use the native/cross toolchain directly from the tmp/sysroots/x86_64-native folder. I tried and succeeded, by just moving the sysroot to where the checked-out nativesdk toolchain was.

 

An extra bonus about this is that we got a more populated sysroot for native platform too, for example a openssl dev package at the same version as that on target, that we can actually use to make the native platform a closer-to-target dev env for some “workbench” build.

 

However I’m still wondering: is there any thing negative about this style? One thing known is that the SDK-using host need to be similar to the SDK-building host, but that is not an issue for us. But anything else, guys?


Re: [meta-mono][PATCH] mono-4.xx: compiling mono 4 with btls requires cmake

Alex Lennon <ajlennon@...>
 

On 07/11/2017 13:26, Pascal Bach wrote:

Mono requires cmake to build the bundled BoringSSL library. I didn't look why it works in detail but I currently assume that BoringSSL is standalone enough that no additional
CMake toolchain settings are required to make it work.
yeah that probably is a case of bundling which is on rise at app level
these days,

One option would be to disable it with `--disable-btls` but I fear that would disable TLS1.2 support (http://www.mono-project.com/docs/about-mono/releases/4.8.0/#tls-12-support).
But I have no way of checking that.
interesting, do they support any other TLS implementations ?
It is disabled in 5.x builds by default as it breaks the build e.g.

http://git.yoctoproject.org/cgit/cgit.cgi/meta-mono/tree/recipes-mono/mono/mono-5.4.0.201.inc

It's probably time to look at a working build with it re-enabled. Patches welcomed...

(I did have a quick look at inheriting cmake but that breaks the build too)
I did some more testing. And adding "cmake-native" still doesn't build btls. I guess it need cmake to figure that out. But this means it was never enabled in the first place.

So my proposal for the moment is to explicitly set "--disable-btls" for Mono 4 too, this way it builds and it is clear that it is disabled.

If somebody figures out how to enable it again. I will send an updated Patch.

Pascal

Pascal,

For now I've put a couple of commits into master which re-enable BTLS for 5.8.022 and 5.4.0.201. Both of these seem to build with your cmake dependency added.

After listening to the team at #OEDEM I've been working to add basic Image Test support to core-image-mono and to get the Yocto Auto Builder going so I can automate some testing of the yocto release vs mono version vs mono features matrix

That's finally coming together at which point I'm hoping to genericise a bit more.

There are currently just three basic run time tests which previous to the image test support I've been performing manually

ref: http://git.yoctoproject.org/cgit/cgit.cgi/meta-mono/tree/lib/oeqa/runtime/cases/mono.py

If you have suggestions/patches for an image test for TLS (or indeed any other tests) they'll be gratefully received.

At some point I want to extend this with ptest support for running the Mono test suite on the target { qemu / real hardware etc }

ref: http://www.mono-project.com/community/contributing/test-suite/

Cheers,

Alex


KBUILD_DEFCONFIG_KMACHINE not used anywhere

Alan
 

Hi,
I'm trying to get yocto to build the kernel with an in-tree defconfig.
For that I found references to the variable KBUILD_DEFCONFIG_KMACHINE.

However, I've been experiencing that the kernel is being built with
some default defconfig, and not the in-tree one that came with the
kernel and I defined with the KBUILD_DEFCONFIG_KMACHINE.

I've looked through all yocto sources for where the
KBUILD_DEFCONFIG_KMACHINE is actually used, and found it only in my
kernel recipe. So I decided to dissect my recipe.

There is a:

inherit kernel

in my recipe for which, besides others, defines how the kernel config
will be selected.
Looking at the sources of oe/meta/classes/kernel.bbclass exposes how
the kernel configuration happens:

kernel_do_configure() {
# fixes extra + in /lib/modules/2.6.37+
# $ scripts/setlocalversion . => +
# $ make kernelversion => 2.6.37
# $ make kernelrelease => 2.6.37+
touch ${B}/.scmversion ${S}/.scmversion

if [ "${S}" != "${B}" ] && [ -f "${S}/.config" ] && [ ! -f
"${B}/.config" ]; then
mv "${S}/.config" "${B}/.config"
fi

# Copy defconfig to .config if .config does not exist. This allows
# recipes to manage the .config themselves in do_configure_prepend().
if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
cp "${WORKDIR}/defconfig" "${B}/.config"
fi

${KERNEL_CONFIG_COMMAND}
}


I'm planning a workaround by overriding the do_configure in my recipe
to select the correct defconfig from the kernel. It does seem however
like the KBUILD_DEFCONFIG_KMACHINE is exactly here to not have to do
the workarounds.

Anyone has experiences with successfully using KBUILD_DEFCONFIG_KMACHINE?
Is it a specific poky feature (I'm not using poky but specific open
embedded layers and bitbake)?

Be Well,
Alan

Ref.
https://www.yoctoproject.org/docs/2.2/kernel-dev/kernel-dev.html#using-an-in-tree-defconfig-file


Re: [meta-mono][PATCH] mono-4.xx: compiling mono 4 with btls requires cmake

Pascal Bach <pascal.bach@...>
 


Mono requires cmake to build the bundled BoringSSL library. I didn't look why it works in detail but I currently assume that BoringSSL is standalone enough that no additional
CMake toolchain settings are required to make it work.
yeah that probably is a case of bundling which is on rise at app level
these days,

One option would be to disable it with `--disable-btls` but I fear that would disable TLS1.2 support (http://www.mono-project.com/docs/about-mono/releases/4.8.0/#tls-12-support).
But I have no way of checking that.
interesting, do they support any other TLS implementations ?
It is disabled in 5.x builds by default as it breaks the build e.g.

http://git.yoctoproject.org/cgit/cgit.cgi/meta-mono/tree/recipes-mono/mono/mono-5.4.0.201.inc

It's probably time to look at a working build with it re-enabled. Patches welcomed...

(I did have a quick look at inheriting cmake but that breaks the build too)
I did some more testing. And adding "cmake-native" still doesn't build btls. I guess it need cmake to figure that out. But this means it was never enabled in the first place.

So my proposal for the moment is to explicitly set "--disable-btls" for Mono 4 too, this way it builds and it is clear that it is disabled.

If somebody figures out how to enable it again. I will send an updated Patch.

Pascal


[meta-cgl][PATCH 1/1] pacemaker: disable autostart

kai
 

From: Kai Kang <kai.kang@...>

pacemaker requires corosync starts before it. But corosync could not start
without configuration and autostart is disabled. So disable autostart of
pacemaker too.

Signed-off-by: Kai Kang <kai.kang@...>
---
meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb | 2 ++
1 file changed, 2 insertions(+)

diff --git a/meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb b/meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb
index 3a4a848..37c3b53 100755
--- a/meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb
+++ b/meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb
@@ -88,6 +88,8 @@ FILES_${PN} += " ${datadir}/snmp \
FILES_${PN}-dbg += "${libdir}/corosync/lcrso/.debug"
RDEPENDS_${PN} = "bash python libqb"

+SYSTEMD_AUTO_ENABLE = "disable"
+
SYSTEMD_PACKAGES += "${PN}-remote"
SYSTEMD_SERVICE_${PN} += "pacemaker.service crm_mon.service"
SYSTEMD_SERVICE_${PN}-remote += "pacemaker_remote.service"
--
2.14.1


[meta-cgl][PATCH 0/1] Disable autostart of pacemaker

kai
 

From: Kai Kang <kai.kang@...>

Patch to disable autostart of corosync is in review.

Kai Kang (1):
pacemaker: disable autostart

meta-cgl-common/recipes-cgl/pacemaker/pacemaker_1.1.16.bb | 2 ++
1 file changed, 2 insertions(+)

--
2.14.1


Re: [layerindex-web][patch v2 1/1] recipes.html: Require keyword for recipe search

Paul Eggleton
 

On Tuesday, 7 November 2017 8:27:03 PM NZDT Paul Eggleton wrote:
I'm not sure <error> is a valid HTML tag. Looking at the bootstrap docs I
think we should actually be using its error state and help text
functionality (see "Validation states" on http://getbootstrap.com/2.3.2/
base-css.html#forms ). I tested it and to fix the layout apparently we need
to rearrange the tags so that <form> is immediately under the row-fluid div,
i.e. it should be:

<div class="row-fluid">
<form ...>
<div class="control-group">
<div class="controls" id="searchfield">
<div class="input-append">
<input ... />
<button ...>search</button>
</div>
<span class="help-inline" id="errortext">
</span>
</div>
</div>
</form>
</div>
Hmm, actually that's wrong, we want the id on the control-group div not the
controls one i.e.

<div class="row-fluid">
<form ...>
<div class="control-group" id="searchfield">
<div class="controls">
<div class="input-append">
<input ... />
<button ...>search</button>
</div>
<span class="help-inline" id="errortext"></span>
</div>
</div>
</form>
</div>

Cheers,
Paul

--

Paul Eggleton
Intel Open Source Technology Centre

18721 - 18740 of 57409