Re: [yocto] [PATCH] mono-4.xx.inc: disable parallel make

2015-07-09 Thread Alex J Lennon


On 08/07/2015 21:07, Chris Morgan wrote:
> On Wed, Jul 8, 2015 at 6:49 AM, Alex J Lennon
>  wrote:
>>
>> On 07/07/2015 21:17, Richard Tollerton wrote:
>>> A race was observed during `make install` of mono-native under
>>> PARALLEL_MAKE=-j6:
>> Thanks Richard - patch applied
>>
>> Chris - I wasn't able to replicate the failure you see under Fedora F22
>> with PARALLEL_MAKE="-j 6". The build works for me here.
>> Can you confirm Richard's patch fixes the issue you see on your system?
>>
>> Thanks,
>>
>> Alex
>>
> Hi Alex.
>
> I can confirm that it fixes the build for me here under F22 on an 8
> core machine, although it takes a long time to fail.
>
> Seems like something that should be reported upstream to mono. I
> copied them on Richard's email but haven't seen any response yet.
>

Hi Chris,

Thanks for coming back to me, at least we have an interim workaround then.

You might consider putting a bug report up on Xamarin's bugzilla?

http://www.mono-project.com/community/bugs/

Cheers, Alex

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


[yocto] [PATCH 1/1][meta-selinux] audit: correct syscall rule arch usage for arm

2015-07-09 Thread wenzong.fan
From: He Zhe 

For all arm arch, kernel uses AUDIT_ARCH_ARM as its arch to filter
syscalls. But userspace audit uses AUDIT_ARCH_ARMEB when creating audit
rules, if arch=b32 is specified for auditctl. This causes kernel not to
record all arm syscalls.

This patch change audit rule arch from AUDIT_ARCH_ARMEB to
AUDIT_ARCH_ARM.

Signed-off-by: He Zhe 
---
 .../audit/arm-correct-audit-rule-arch-usage.patch  | 35 ++
 recipes-security/audit/audit_2.3.2.bb  |  1 +
 2 files changed, 36 insertions(+)
 create mode 100644 
recipes-security/audit/audit/arm-correct-audit-rule-arch-usage.patch

diff --git 
a/recipes-security/audit/audit/arm-correct-audit-rule-arch-usage.patch 
b/recipes-security/audit/audit/arm-correct-audit-rule-arch-usage.patch
new file mode 100644
index 000..a2e058b
--- /dev/null
+++ b/recipes-security/audit/audit/arm-correct-audit-rule-arch-usage.patch
@@ -0,0 +1,35 @@
+From 11b3b7628ba9c33ca7a89ba12cf45d3917441ff0 Mon Sep 17 00:00:00 2001
+From: He Zhe 
+Date: Tue, 10 Mar 2015 16:03:36 +0800
+Subject: [PATCH] arm: Correct arch usage
+
+Upstream Status: Pending
+
+For all arm arch, kernel uses AUDIT_ARCH_ARM as its arch to filter syscalls.
+But userspace audit uses AUDIT_ARCH_ARMEB when creating audit rules, if
+arch=b32 is specified for auditctl. This causes kernel not to record all
+arm syscalls.
+
+This patch change audit rule arch from AUDIT_ARCH_ARMEB to AUDIT_ARCH_ARM.
+
+Signed-off-by: He Zhe 
+---
+ lib/lookup_table.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/lookup_table.c b/lib/lookup_table.c
+index 4f4c0ae..f79c6ee 100644
+--- a/lib/lookup_table.c
 b/lib/lookup_table.c
+@@ -77,7 +77,7 @@ static const struct int_transtab elftab[] = {
+ { MACH_ALPHA,   AUDIT_ARCH_ALPHA  },
+ #endif
+ #ifdef WITH_ARMEB
+-{ MACH_ARMEB,   AUDIT_ARCH_ARMEB  },
++{ MACH_ARMEB,   AUDIT_ARCH_ARM},
+ #endif
+ #ifdef WITH_AARCH64
+ { MACH_AARCH64, AUDIT_ARCH_AARCH64},
+-- 
+1.8.3.1
+
diff --git a/recipes-security/audit/audit_2.3.2.bb 
b/recipes-security/audit/audit_2.3.2.bb
index 1d7ea0f..2eeb1e0 100644
--- a/recipes-security/audit/audit_2.3.2.bb
+++ b/recipes-security/audit/audit_2.3.2.bb
@@ -17,6 +17,7 @@ SRC_URI = 
"http://people.redhat.com/sgrubb/audit/audit-${PV}.tar.gz \
   file://fix-swig-host-contamination.patch \
   file://auditd.service \
   file://audit-volatile.conf \
+  file://arm-correct-audit-rule-arch-usage.patch \
 "
 SRC_URI_append_arm = "file://add-system-call-table-for-ARM.patch"
 
-- 
1.9.1

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


[yocto] [PATCH 1/1][meta-selinux] refpolicy: correct SELINUX_DEVEL_PATH

2015-07-09 Thread wenzong.fan
From: Wenzong Fan 

The sepolgen.conf should be installed with devel package to correct
the default value of SELINUX_DEVEL_PATH, Makefile will be searched from
that path while building policies on target.

Signed-off-by: Wenzong Fan 
---
 recipes-security/refpolicy/refpolicy_common.inc | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/recipes-security/refpolicy/refpolicy_common.inc 
b/recipes-security/refpolicy/refpolicy_common.inc
index 0dc055e..620e7c0 100644
--- a/recipes-security/refpolicy/refpolicy_common.inc
+++ b/recipes-security/refpolicy/refpolicy_common.inc
@@ -15,7 +15,10 @@ FILES_${PN} = " \
${sysconfdir}/selinux/${POLICY_NAME}/ \
${datadir}/selinux/${POLICY_NAME}/*.pp \
"
-FILES_${PN}-dev =+ "${datadir}/selinux/${POLICY_NAME}/include/"
+FILES_${PN}-dev =+ " \
+${datadir}/selinux/${POLICY_NAME}/include/ \
+${sysconfdir}/selinux/sepolgen.conf \
+"
 
 DEPENDS += "checkpolicy-native policycoreutils-native m4-native"
 RDEPENDS_${PN} += "selinux-config"
@@ -122,3 +125,8 @@ do_install () {
rebuild_policy
install_misc_files
 }
+
+do_install_append(){
+   # While building policies on target, Makefile will be searched from 
SELINUX_DEVEL_PATH
+   echo "SELINUX_DEVEL_PATH=${datadir}/selinux/${POLICY_NAME}/include" > 
${D}${sysconfdir}/selinux/sepolgen.conf
+}
-- 
1.9.1

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


[yocto] [PATCH 1/1][meta-selinux] policycoreutils: install /var/lib/selinux

2015-07-09 Thread wenzong.fan
From: Wenzong Fan 

This dir is required for running command:

$ semanage permissive [OPTS]

Signed-off-by: Wenzong Fan 
---
 recipes-security/selinux/policycoreutils.inc | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/recipes-security/selinux/policycoreutils.inc 
b/recipes-security/selinux/policycoreutils.inc
index 4846683..9fdc56f 100644
--- a/recipes-security/selinux/policycoreutils.inc
+++ b/recipes-security/selinux/policycoreutils.inc
@@ -268,4 +268,10 @@ do_install_append_class-target() {
install -d ${D}${sysconfdir}/pam.d/
install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
fi
+
+   # /var/lib/selinux is involved by seobject.py:
+   #   + dirname = "/var/lib/selinux"
+   # and it's required for running command:
+   #   $ semanage permissive [OPTS]
+   install -d ${D}${localstatedir}/lib/selinux
 }
-- 
1.9.1

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


[yocto] [PATCH 1/1][meta-selinux] initscripts: fix contexts for /etc/resolv.conf, adjtime

2015-07-09 Thread wenzong.fan
From: Wenzong Fan 

Restore contexts for /etc/{resolv.conf, adjtime}, they are created
dynamically and the incorrect contexts maybe prevent some programs
from valid accessing.

  /etc/resolv.conf: etc_t:SystemHigh -> etc_t:SystemLow
  /etc/adjtime: etc_t:SystemHigh -> adjtime_t:SystemLow

Signed-off-by: Wenzong Fan 
---
 recipes-core/initscripts/initscripts_1.0.bbappend | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/recipes-core/initscripts/initscripts_1.0.bbappend 
b/recipes-core/initscripts/initscripts_1.0.bbappend
index 462db6f..f17cf07 100644
--- a/recipes-core/initscripts/initscripts_1.0.bbappend
+++ b/recipes-core/initscripts/initscripts_1.0.bbappend
@@ -5,7 +5,8 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
 do_install_append () {
cat <<-EOF >> ${D}${sysconfdir}/init.d/populate-volatile.sh
 touch /var/log/lastlog
-test ! -x /sbin/restorecon || /sbin/restorecon -RF /var/volatile/ /var/lib /run
+test ! -x /sbin/restorecon || /sbin/restorecon -RF /var/volatile/ /var/lib 
/run \
+/etc/resolv.conf /etc/adjtime
 EOF
sed -i '/mount -n -o remount,$rootmode/i\test ! -x /sbin/restorecon || 
/sbin/restorecon -RF /run' \
${D}${sysconfdir}/init.d/checkroot.sh
-- 
1.9.1

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


Re: [yocto] fixed: using shared state cache from other machine

2015-07-09 Thread Kurt Van Dijck
--- Original message ---
> Date: Tue, 07 Jul 2015 23:40:49 +0100
> From: Paul Eggleton 
> On Tuesday 07 July 2015 14:59:37 Andre McCurdy wrote:
> > On Tue, Jul 7, 2015 at 6:07 AM, Kurt Van Dijck
> >  wrote:
> > > I started to re-use the shared state cache from a build machine.
> > > If I clean everything locally, I still spend time building.
> > > So, can everything be re-used, or only the target packages.
> > > How different may the build machine & may host be.
> > > The build machine is a (recent) ubuntu. My machine is debian squeeze+sid
> > > mixed version. Is that a problem?
> > 
> > You can try it, but no guarantees.
> > 
> > I have a build machine running Ubuntu 14.04 and a laptop running Linux
> > Mint 17.1 and I regularly rsync sstate from the build server to the
> > laptop without any issues (as expected, since Linux Mint uses Ubuntu
> > packages). 

I defined the mirror over http, so I skip the rsync.

> 
> The theory is this should work provided the distro you use the native sstate 
> artifacts on has the same or newer glibc version as the one on which they 
> were 
> originally built.

I needed to upgrade locally.

> 
> > The trick to avoid rebuilding all native packages is to
> > rename sstate-cache/Ubuntu-14.04 -> sstate-cache/LinuxMint-17.1 after
> > each rsync.
> 
> Rather than renaming, you can simply create a symlink from the other 
> distribution to the one which was used to do the build.

Due to the http retrieval, I put the symlink on the build server.

Now, I just built a basic image in 10 minutes.
Thank you for the support,
thank you Gigabit ethernet & thank you SSD.

Kind regards,
Kurt
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] [PATCH] mono-4.xx.inc: disable parallel make

2015-07-09 Thread Chris Morgan
On Thu, Jul 9, 2015 at 4:03 AM, Alex J Lennon
 wrote:
>
>
> On 08/07/2015 21:07, Chris Morgan wrote:
>> On Wed, Jul 8, 2015 at 6:49 AM, Alex J Lennon
>>  wrote:
>>>
>>> On 07/07/2015 21:17, Richard Tollerton wrote:
 A race was observed during `make install` of mono-native under
 PARALLEL_MAKE=-j6:
>>> Thanks Richard - patch applied
>>>
>>> Chris - I wasn't able to replicate the failure you see under Fedora F22
>>> with PARALLEL_MAKE="-j 6". The build works for me here.
>>> Can you confirm Richard's patch fixes the issue you see on your system?
>>>
>>> Thanks,
>>>
>>> Alex
>>>
>> Hi Alex.
>>
>> I can confirm that it fixes the build for me here under F22 on an 8
>> core machine, although it takes a long time to fail.
>>
>> Seems like something that should be reported upstream to mono. I
>> copied them on Richard's email but haven't seen any response yet.
>>
>
> Hi Chris,
>
> Thanks for coming back to me, at least we have an interim workaround then.
>
> You might consider putting a bug report up on Xamarin's bugzilla?
>
> http://www.mono-project.com/community/bugs/
>
> Cheers, Alex
>

I submitted it under "compilers" with the content of Richard's email
and a note at the time. There doesn't appear to be a component for the
build portion of mono.

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


[yocto] libtool issue

2015-07-09 Thread Sravan K
Hi All,

I am trying to cross compile libsoup and few other opensource libraries for
arm on  my ubuntu.

I facing an issue while build libsoup.

Error:


| /bin/grep: /usr/lib/libgobject-2.0.la: No such file or directory
| sed: can't read /usr/lib/libgobject-2.0.la: No such file or directory
| libtool: link: `/usr/lib/libgobject-2.0.la' is not a valid libtool archive
| make[3]: *** [libsoup-2.4.la] Error 1



Versions:

libsoup 2.35.90
libsoup libtool (GNU libtool) 2.4

glib 2.29.18
glib libtool (GNU libtool) 2.4.2


The path is specified as "/usr/lib/libgobject-2.0.la" instead of
"{sysroot}/usr/lib/libgobject-2.0.la" in libgio-2.0.la

./tmp/sysroots/xxx/usr/lib/libgio-2.0.la:dependency_libs=' /usr/lib/
libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread /usr/lib/libffi.la
/usr/lib/libgmodule-2.0.la -ldl /usr/lib/libglib-2.0.la -lresolv
-L/home/local/.../build/tmp/sysroots/xxx/usr/lib -lz'


After some investigation found that Libsoup' libtool is unable to translate
the path to sysroot.
Found that the patch
http://git.yoctoproject.org/cgit.cgi/poky/plain/meta/recipes-devtools/libtool/libtool/resolve-sysroot.patch?h=bernard
could help..but  this patch only translated "=*" to "{sysroot/*}"

So modified this path slightly to translate "/usr/lib/" and "/lib" to
"{sysroot/usr/lib}" and "${sysroot}/lib" respectively.


Though this worked for me for now, I am interested in know if there is
existing patch which can do this.


Thanks in advance
-Sravan
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] [rrs][PATCH 0/3] Change behavior of the percentage done

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

This patches changes the behavior of the percentage done to
display the percentage of out to date recipes that were
updated in the period.

models.py: Added SQL queries
views.py: Changed the behavior
base_toplevel.html: Changed format of the webpage

Mariano Lopez (3):
  models.py: Added Raw SQL for percentage updated
  views.py: Changed the behavior of percentage done
  base_toplevel.html: Changed format of percentage done

 rrs/models.py| 44 
 rrs/views.py | 33 ++
 templates/rrs/base_toplevel.html |  2 +-
 3 files changed, 69 insertions(+), 10 deletions(-)

-- 
1.9.1

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


[yocto] [rrs][PATCH 1/3] models.py: Added Raw SQL for percentage updated

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

This adds SQL queries that will be used for the
percentage of recipes updated in a period.

Signed-off-by: Mariano Lopez 
---
 rrs/models.py | 44 
 1 file changed, 44 insertions(+)

diff --git a/rrs/models.py b/rrs/models.py
index 4608f9f..1ce63df 100644
--- a/rrs/models.py
+++ b/rrs/models.py
@@ -235,6 +235,16 @@ class RecipeUpstreamHistory(models.Model):
 return None
 
 @staticmethod
+def get_first_by_date_range(start, end):
+history = RecipeUpstreamHistory.objects.filter(start_date__gte = start,
+start_date__lte = end).order_by('start_date')
+
+if history:
+return history[0]
+else:
+return None
+
+@staticmethod
 def get_last():
 history = 
RecipeUpstreamHistory.objects.filter().order_by('-start_date')
 
@@ -475,6 +485,40 @@ class Raw():
 return Raw.dictfetchall(cur)
 
 @staticmethod
+def get_reup_by_date(date_id):
+cur = connection.cursor()
+cur.execute("""SELECT DISTINCT recipe_id
+FROM rrs_RecipeUpstream
+WHERE status = 'N'
+AND history_id = %s
+""", [date_id])
+return [i[0] for i in cur.fetchall()]
+
+@staticmethod
+def get_reupg_by_dates(start_date, end_date):
+cur = connection.cursor()
+cur.execute("""SELECT id, recipe_id, maintainer_id, author_date, 
commit_date
+FROM rrs_recipeupgrade
+WHERE commit_date >= %s
+AND commit_date <= %s
+ORDER BY commit_date DESC;
+""", [start_date, end_date])
+return Raw.dictfetchall(cur)
+
+@staticmethod
+def get_reupg_by_dates_and_recipes(start_date, end_date, recipes_id):
+recipes = str(recipes_id).strip('[]')
+
+cur = connection.cursor()
+qry = """SELECT DISTINCT recipe_id
+FROM rrs_RecipeUpgrade"""
+qry += "\nWHERE commit_date >= '%s'" % str(start_date)
+qry += "\nAND commit_date <= '%s'" % str(end_date)
+qry += "\nAND recipe_id IN (%s);" % recipes
+cur.execute(qry)
+return Raw.dictfetchall(cur)
+
+@staticmethod
 def dictfetchall(cursor):
 "Returns all rows from a cursor as a dict"
 desc = cursor.description
-- 
1.9.1

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


[yocto] [rrs][PATCH 2/3] views.py: Changed the behavior of percentage done

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

This changes the percetage done from recipes up to date
in the period to percentage of not updated recipes that
were updated in the period.

Signed-off-by: Mariano Lopez 
---
 rrs/views.py | 33 -
 1 file changed, 24 insertions(+), 9 deletions(-)

diff --git a/rrs/views.py b/rrs/views.py
index fc43d7d..8716753 100644
--- a/rrs/views.py
+++ b/rrs/views.py
@@ -40,10 +40,26 @@ def _get_milestone_statistics(milestone, 
maintainer_name=None):
 milestone.start_date,
 milestone.end_date
 )
+recipe_upstream_history_first = \
+RecipeUpstreamHistory.get_first_by_date_range(
+milestone.start_date,
+milestone.end_date,
+)
 
 if maintainer_name is None:
-milestone_statistics['all'] = \
-RecipeUpstream.get_all_recipes(recipe_upstream_history).count()
+if recipe_upstream_history_first:
+recipes_not_upgraded = \
+Raw.get_reup_by_date(recipe_upstream_history_first.id)
+recipes_upgraded = \
+Raw.get_reupg_by_dates_and_recipes(
+milestone.start_date, milestone.end_date, 
recipes_not_upgraded)
+milestone_statistics['all'] = \
+float(len(recipes_upgraded))/float(len(recipes_not_upgraded))
+else:
+milestone_statistics['all'] = 0
+
+milestone_statistics['percentage'] = "%.0f" % \
+(float(milestone_statistics['all']) * 100.0)
 milestone_statistics['up_to_date'] = \
 
RecipeUpstream.get_recipes_up_to_date(recipe_upstream_history).count()
 milestone_statistics['not_updated'] = \
@@ -79,13 +95,12 @@ def _get_milestone_statistics(milestone, 
maintainer_name=None):
 milestone_statistics['cant_be_updated'] += 1
 else:
 milestone_statistics['unknown'] += 1
-
-if milestone_statistics['all'] == 0:
-milestone_statistics['percentage'] = 0
-else:
-milestone_statistics['percentage'] = "%.0f" % \
-((float(milestone_statistics['up_to_date']) /
-float(milestone_statistics['all'])) * 100)
+if milestone_statistics['all'] == 0:
+milestone_statistics['percentage'] = '0'
+else:
+milestone_statistics['percentage'] = "%.0f" % \
+((float(milestone_statistics['up_to_date']) /
+float(milestone_statistics['all'])) * 100)
 
 return milestone_statistics
 
-- 
1.9.1

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


[yocto] [rrs][PATCH 3/3] base_toplevel.html: Changed format of percentage done

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

Changed the text of percentage done to updated. Also
added a tooltip that shows how this percentage is calculated.

Signed-off-by: Mariano Lopez 
---
 templates/rrs/base_toplevel.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/templates/rrs/base_toplevel.html b/templates/rrs/base_toplevel.html
index 9804c03..fd0c96c 100644
--- a/templates/rrs/base_toplevel.html
+++ b/templates/rrs/base_toplevel.html
@@ -66,7 +66,7 @@
 
 
 
-{{ 
recipes_percentage }}% done
+{{ recipes_percentage }}% Updated
 
 Up-to-date: 
{{ recipes_up_to_date }}
 
-- 
1.9.1

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


[yocto] [rrs][PATCHv2 2/3] views.py: Changed the behavior of percentage done

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

This changes the percetage done from recipes up to date
in the period to percentage of not updated recipes that
were updated in the period.

Signed-off-by: Mariano Lopez 
---
 rrs/views.py | 36 +++-
 1 file changed, 27 insertions(+), 9 deletions(-)

diff --git a/rrs/views.py b/rrs/views.py
index fc43d7d..7fd2e8f 100644
--- a/rrs/views.py
+++ b/rrs/views.py
@@ -40,10 +40,29 @@ def _get_milestone_statistics(milestone, 
maintainer_name=None):
 milestone.start_date,
 milestone.end_date
 )
+recipe_upstream_history_first = \
+RecipeUpstreamHistory.get_first_by_date_range(
+milestone.start_date,
+milestone.end_date,
+)
 
 if maintainer_name is None:
-milestone_statistics['all'] = \
-RecipeUpstream.get_all_recipes(recipe_upstream_history).count()
+if recipe_upstream_history_first:
+recipes_not_upgraded = \
+Raw.get_reup_by_date(recipe_upstream_history_first.id)
+if recipes_not_upgraded:
+recipes_upgraded = \
+Raw.get_reupg_by_dates_and_recipes(
+milestone.start_date, milestone.end_date, 
recipes_not_upgraded)
+milestone_statistics['all'] = \
+
float(len(recipes_upgraded))/float(len(recipes_not_upgraded))
+else:
+milestone_statistics['all'] = 0
+else:
+milestone_statistics['all'] = 0
+
+milestone_statistics['percentage'] = "%.0f" % \
+(float(milestone_statistics['all']) * 100.0)
 milestone_statistics['up_to_date'] = \
 
RecipeUpstream.get_recipes_up_to_date(recipe_upstream_history).count()
 milestone_statistics['not_updated'] = \
@@ -79,13 +98,12 @@ def _get_milestone_statistics(milestone, 
maintainer_name=None):
 milestone_statistics['cant_be_updated'] += 1
 else:
 milestone_statistics['unknown'] += 1
-
-if milestone_statistics['all'] == 0:
-milestone_statistics['percentage'] = 0
-else:
-milestone_statistics['percentage'] = "%.0f" % \
-((float(milestone_statistics['up_to_date']) /
-float(milestone_statistics['all'])) * 100)
+if milestone_statistics['all'] == 0:
+milestone_statistics['percentage'] = '0'
+else:
+milestone_statistics['percentage'] = "%.0f" % \
+((float(milestone_statistics['up_to_date']) /
+float(milestone_statistics['all'])) * 100)
 
 return milestone_statistics
 
-- 
1.9.1

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


Re: [yocto] [meta-raspberrypi][PATCH] firmware.inc: Fetch a zip instead of cloning a git repo

2015-07-09 Thread Andrei Gherzan
Finally I hop on to this discussion too.

On Mon, Jul 6, 2015 at 12:58 PM, Paul Eggleton <
paul.eggle...@linux.intel.com> wrote:

> On Monday 06 July 2015 12:48:50 Nikolay Dimitrov wrote:
> > One issue with the regularly changing tarball checksums is that people
> > start to get used to thes changes (e.g. everything looks like false
> > positive). Currently the tarball checksums and SCM revisions are
> > probably the most important tool for builds traceability. If we get
> > used to think about these checksums as "unreliable", it will be much
> > easier to miss an important component change, which would otherwise
> > ring a bell.
>
> Fully agreed.
>
> There are a couple of things I think we can do here:
>
> 1) Implement shallow cloning in bitbake's git fetcher as suggested. This
> shouldn't be too tricky. I've filed a bug to track this:
>
>   https://bugzilla.yoctoproject.org/show_bug.cgi?id=7958
>
> (Richard is the default assignee, but anyone could potentially work on
> this).
>
>
This should be the fix that would really fix the issue. And would be a
useful feature for many other BSPs / layers out there.


> 2) In the mean time we could consider upload git mirror tarballs to a
> source
> mirror that gets enabled through meta-raspberrypi (would need to be via
> PREMIRRORS to actually solve the issue). This has the advantage that it
> wouldn't require any changes to the kernel recipe itself, but new tarballs
> would of course need to be uploaded every time SRCREV is changed in the
> recipe.
>
>
And until 1) is done, we can have a premirror. Paul, can you upload a
tarball? Can I help you with anything for having this up? After we have
this, can we force premirrors when using a specific layer? Was thinking of
forcing it by adding PREMIRRORS to layer.conf.

Using github snapshots is not a good idea. Most of the issues you guys
pointed out above I experienced as well. In my opinion we should combine
Paul's solutions in order to address this problem.

One more thing. Given the fact the the repository we are talking about is
not under our control, we shouldn't rely on releases or other things from
the remote repository.

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


Re: [yocto] [meta-raspberrypi][PATCH] firmware.inc: fetch from SVN instead of Git

2015-07-09 Thread Andrei Gherzan
On Mon, Jul 6, 2015 at 6:59 PM, Nikolay Dimitrov  wrote:

> Hi Ross,
>
> On 07/06/2015 07:58 PM, Nikolay Dimitrov wrote:
>
>> Hi Ross,
>>
>> On 07/06/2015 07:26 PM, Burton, Ross wrote:
>>
>>>
>>> On 6 July 2015 at 17:23, Burton, Ross >> > wrote:
>>>
>>> How latest, remembering that oe-core supports LTS distros which are
>>> likely to have old releases of git.
>>>
>>>
>>> Assuming I'm driving it correctly:
>>>
>>> [git init, git remote add origin ...]
>>> $ git fetch  --depth=1 origin beeafee030a38380c65a9a664003ba50f87aefbf
>>> error: no such remote ref beeafee030a38380c65a9a664003ba50f87aefbf
>>> $ git --version
>>> git version 2.1.4
>>>
>>> That's with the latest Debian release.
>>>
>>> Ross
>>>
>>
>> Well, the commits that add this feature are from May-June.2015. I fully
>> agree with you that LTS is a factor that can't be ignored.
>>
>> Kind regards,
>> Nikolay
>>
>
> Forgot to answer you question - the expected versions to include this
> feature are 2.5.0/2.5.1.
>
>
So there is no support for depth clones until 2.5.0? I didn't really
understand.

--
Andrei Gherzan
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] [meta-raspberrypi] libepoxy do_configure fails

2015-07-09 Thread Andrei Gherzan
On Thu, Jul 2, 2015 at 8:20 PM, Jussi Kukkonen 
wrote:

> On 2 July 2015 at 12:47, Tobias Boström  wrote:
>
>>
>> Hello!
>>
>>  I'm currently trying to build the core-image-x11 for the raspberry
>> pi.However, when doing the task responsible for configuring libepoxy,
>> bitbake fails. The error message i get is "no package 'egl' found". Below
>> is parts error messages I received. Anyone got any ideas on what the
>> problem might be?
>>
>>  Best regards,
>> Tobias Boström
>>
>>  | checking whether -lc should be explicitly linked in... no
>>  | checking dynamic linker characteristics... GNU/Linux ld.so
>>  | checking how to hardcode library paths into programs... immediate
>>  | checking whether stripping libraries is possible... yes
>>  | checking if libtool supports shared libraries... yes
>>  | checking whether to build shared libraries... yes
>>  | checking whether to build static libraries... no
>>  | checking for special C compiler options needed for large files... no
>>  | checking for _FILE_OFFSET_BITS value needed for large files... 64
>>  | checking KHR/khrplatform.h usability... yes
>>  | checking KHR/khrplatform.h presence... yes
>>  | checking for KHR/khrplatform.h... yes
>>  | checking if arm-poky-linux-gnueabi-gcc  -march=armv7-a -marm
>>  -mthumb-interwork -mfloat-abi=hard -mfpu=neon-vfpv4 -mtune=cortex-a7
>> --sysroot=/home/tobiasb/Development/build/tmp/sysroots/raspberrypi2
>> -std=gnu99 supports -Wno-int-conversion... yes
>>  | checking for X11... yes
>>  | checking for EGL... no
>>  | configure: error: Package requirements (egl) were not met:
>>  |
>>  | No package 'egl' found
>>  |
>>  | Consider adjusting the PKG_CONFIG_PATH environment variable if you
>>  | installed software in a non-standard prefix.
>>  |
>>  | Alternatively, you may set the environment variables EGL_CFLAGS
>>  | and EGL_LIBS to avoid the need to call pkg-config.
>>
>
>
> libepoxy expects something to provide a 'egl.pc' pkg-config file, and
> apparently the virtual/egl provider on the raspberry ("userland") doesn't
> do that. That may be an optimistic expectation on epoxys part but it's not
> alone: at least weston has as similar check.
>
> Upstream issue is here: https://github.com/raspberrypi/userland/issues/245
> . It links to some pkg-config files that could be used in the userland
> recipe in the meanwhile.
>
>
>

I remember  seeing some patches in the past which addressed these pc files.
Unfortunately we lost these patches with our gerrit transition. Would you
be able to push patches for this? (hint:
https://github.com/heiher/raspberrypi-firmware-pkgconfig/tree/master/pkgconfig
)

--
Andrei Gherzan
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] [rrs][PATCH 0/2] Add Last Updated column

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

These patches a column in the recipe view that
show when a out dated recipes was updated the
last time. Also changes the date formats to iso.

views.py: Changed dates to iso
recipes.html: Add the Last updated column

Mariano Lopez (2):
  views.py: Changed date format to iso
  recipes.html: Add Last Updated column

 rrs/views.py   |  7 ---
 templates/rrs/recipes.html | 17 +
 2 files changed, 17 insertions(+), 7 deletions(-)

-- 
1.9.1

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


[yocto] [rrs][PATCH 1/2] views.py: Changed date format to iso

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

Changed the day format to iso. Also, the outdated
field in the recipes views was changed from days
to the date the recipe was last updated.

Signed-off-by: Mariano Lopez 
---
 rrs/views.py | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/rrs/views.py b/rrs/views.py
index 7fd2e8f..d583acb 100644
--- a/rrs/views.py
+++ b/rrs/views.py
@@ -207,7 +207,7 @@ def _get_recipe_list(milestone):
 recipe_last_updated_dict_all.get(recipe['id'])
 if recipe_last_updated:
 recipe_date = recipe_last_updated['date']
-outdated = (current_date - recipe_date.date()).days
+outdated = recipe_date.date().isoformat()
 else:
 outdated = 'Unknown'
 else:
@@ -360,13 +360,14 @@ def _get_recipe_upgrade_detail(recipe_upgrade):
 .count() > 0:
 is_recipe_maintainer = True
 
+commit_date = recipe_upgrade.commit_date.date().isoformat()
 commit = recipe_upgrade.sha1[:10]
 commit_url = recipe_upgrade.recipe.layerbranch.layer.vcs_web_url + \
 '/commit/?id=' + recipe_upgrade.sha1
 
 rud = RecipeUpgradeDetail(recipe_upgrade.title, recipe_upgrade.version, \
-release_name, milestone_name, recipe_upgrade.commit_date, \
-maintainer_name, is_recipe_maintainer, commit, commit_url)
+release_name, milestone_name, commit_date, maintainer_name, \
+is_recipe_maintainer, commit, commit_url)
 
 return rud
 
-- 
1.9.1

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


[yocto] [rrs][PATCH 2/2] recipes.html: Add Last Updated column

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

Added a column in the recipes view that show
the last time a recipe was updated when is
not up-to-date

Signed-off-by: Mariano Lopez 
---
 templates/rrs/recipes.html | 17 +
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/templates/rrs/recipes.html b/templates/rrs/recipes.html
index ca3c93e..a69ff0f 100644
--- a/templates/rrs/recipes.html
+++ b/templates/rrs/recipes.html
@@ -76,6 +76,7 @@
 Version
 Upstream version
 Upstream status
+Last Updated
 Maintainer
 Summary
 No update reason
@@ -88,16 +89,24 @@
 {{ r.version }}
 {{ r.upstream_version }}
 {% if r.upstream_status == "Up-to-date" %}
-
+
 {% elif r.upstream_status == "Not updated" %}
-
+
 {% elif r.upstream_status == "Can't be updated" %}
-
+
 {% else %}
-
+
 {% endif %}
 {{ r.upstream_status }}
 
+{% if r.outdated == "Up-to-date" %}
+
+{% elif r.outdated == "Unknown" %}
+
+{% else %}
+
+{% endif %}
+{{r.outdated}}
 {{ r.maintainer_name }}
 {{ r.summary }}
 {{ 
r.no_update_reason }}
-- 
1.9.1

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


[yocto] [layerindex-web]

2015-07-09 Thread Brian Avery
For the update script you also need python-git. Since we are already
using a virtenv, why not add it to requirements :).

yolk lists the following as being available so I fairly arbitrarily
picked 0.3.7 on the assumption it was the "best" of the 0.3 line...

GitPython 1.0.1
GitPython 1.0.0
GitPython 0.3.7
GitPython 0.3.6


-bavery

diff --git a/requirements.txt b/requirements.txt
index b88ab2b..ea52994 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -17,3 +17,4 @@ python-nvd3==0.12.2
 regex==2014.06.28
 six==1.7.3
 wsgiref==0.1.2
+gitpython==0.3.7
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] [PATCH] models.py: Code cleanup

2015-07-09 Thread mariano . lopez
From: Mariano Lopez 

Cleaned up the class Raw to have better readability.
Also added docstring to methods in this class.

Signed-off-by: Mariano Lopez 
---
 rrs/models.py | 176 +-
 1 file changed, 99 insertions(+), 77 deletions(-)

diff --git a/rrs/models.py b/rrs/models.py
index 1ce63df..2631cce 100644
--- a/rrs/models.py
+++ b/rrs/models.py
@@ -371,55 +371,57 @@ class RecipeUpgrade(models.Model):
 self.commit_date)
 
 class Raw():
+""" Raw SQL call to improve performance
+
+Table abbrevations:
+re: Recipe
+ma: Maintainer
+reup:   Recipe Upstream
+reupg:  Recipe Ugrade
+rema:   Recipe Maintainer
+remahi: Recipe Maintainer History
+"""
 
 @staticmethod
-def get_remahi_by_end_date(date):
+def get_re_all():
+""" Get all Recipes """
 cur = connection.cursor()
-
-cur.execute("""SELECT id
-FROM rrs_RecipeMaintainerHistory
-WHERE date <= %s
-ORDER BY date DESC
-LIMIT 1;
-""", [str(date)])
-
-ret = cur.fetchone()
-
-if not ret:
-cur.execute("""SELECT id
-FROM rrs_RecipeMaintainerHistory
-ORDER BY date
-LIMIT 1;""")
-ret = cur.fetchone()
-
-return ret
+cur.execute("""SELECT id, pn, pv, summary
+FROM layerindex_Recipe;
+""")
+return Raw.dictfetchall(cur)
 
 @staticmethod
 def get_re_by_mantainer_and_date(maintainer, date_id):
+""" Get Recipes based on Maintainer and Recipe Maintainer History """
 recipes = []
 cur = connection.cursor()
 
 cur.execute("""SELECT DISTINCT rema.recipe_id
-FROM rrs_RecipeMaintainer as rema
-INNER JOIN rrs_maintainer AS ma
-ON rema.maintainer_id = ma.id
-WHERE rema.history_id = %s AND ma.name = %s;
-""", [date_id, maintainer])
+FROM rrs_RecipeMaintainer AS rema
+INNER JOIN rrs_maintainer AS ma
+ON rema.maintainer_id = ma.id
+WHERE rema.history_id = %s 
+AND ma.name = %s;
+""", [date_id, maintainer])
 
 for re in cur.fetchall():
 recipes.append(re[0])
 return recipes
 
 @staticmethod
-def get_reup_by_recipes_and_date(recipes_id, date_id=None):
+def get_ma_by_recipes_and_date(recipes_id, date_id=None):
+""" Get Maintainer based on Recipes and Recipe Upstream History """
 stats = []
 recipes = str(recipes_id).strip('[]')
 
 if date_id:
-qry = """SELECT recipe_id, status, no_update_reason, version
-FROM rrs_RecipeUpstream"""
-qry += "\nWHERE history_id = '%s' AND" % str(date_id)
-qry += "\nrecipe_id IN (%s)\n" % recipes
+qry = """SELECT rema.recipe_id, ma.name
+FROM rrs_RecipeMaintainer AS rema
+INNER JOIN rrs_Maintainer AS ma
+ON rema.maintainer_id = ma.id"""
+qry += "\nWHERE rema.history_id = '%s'" % str(date_id)
+qry += "\nAND rema.recipe_id IN (%s);" % recipes
 cur = connection.cursor()
 cur.execute(qry)
 stats = Raw.dictfetchall(cur)
@@ -427,17 +429,16 @@ class Raw():
 return stats
 
 @staticmethod
-def get_ma_by_recipes_and_date(recipes_id, date_id=None):
+def get_reup_by_recipes_and_date(recipes_id, date_id=None):
+""" Get Recipe Upstream based on Recipes and Recipe Upstream History 
"""
 stats = []
 recipes = str(recipes_id).strip('[]')
 
 if date_id:
-qry = """SELECT rema.recipe_id, ma.name
-FROM rrs_RecipeMaintainer AS rema
-INNER JOIN rrs_Maintainer AS ma
-ON rema.maintainer_id = ma.id"""
-qry += "\nWHERE rema.history_id = '%s' AND" % str(date_id)
-qry += "\nrema.recipe_id IN (%s)\n" % recipes
+qry = """SELECT recipe_id, status, no_update_reason, version
+FROM rrs_RecipeUpstream"""
+qry += "\nWHERE history_id = '%s'" % str(date_id)
+qry += "\nAND recipe_id IN (%s);" % recipes
 cur = connection.cursor()
 cur.execute(qry)
 stats = Raw.dictfetchall(cur)
@@ -445,68 +446,65 @@ class Raw():
 return stats
 
 @staticmethod
-def get_re_all():
-cur = connection.cursor()
-cur.execute("""SELECT id, pn, pv, summary
-FROM layerindex_recipe""")
-return Raw.dictfetchall(cur)
-
-@staticmethod
-def get_reupg_by_date(date):
-cur = connection.cursor()
-cur.exe

[yocto] Masking out hddimg in bootimg bbclass

2015-07-09 Thread Andrei Gherzan
Hello,

Reading the bootimg bbclass, I see that iso and hddimg fstypes are masked.
Any reason why? The log doesn't really help much:
http://lists.openembedded.org/pipermail/openembedded-core/2014-February/089634.html

--
Andrei Gherzan
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto