All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] fix xcb-proto libxcb and source-highlight
@ 2016-10-12  6:31 Robert Yang
  2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  6:31 UTC (permalink / raw)
  To: openembedded-core

he following changes since commit 1a2311c8fa9a3703568cd390c44639fe3335023e:

  build-appliance-image: Update to master head revision (2016-10-11 23:43:20 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib rbt/4fixes
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/4fixes

Robert Yang (4):
  xcb-proto: create .pyc files for python2
  xcb-proto: fix for python3
  libxcb: use python3 to build it
  source-highlight: use with-boost-libdir

 .../Fix-inconsistent-use-of-tabs-vs.-space.patch   |  62 ++++++
 meta/recipes-graphics/xorg-lib/libxcb_1.12.bb      |   3 +
 .../0001-Make-whitespace-use-consistent.patch      | 215 +++++++++++++++++++++
 ...print-is-a-function-and-needs-parentheses.patch |  75 +++++++
 meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb |  13 +-
 .../source-highlight/source-highlight_3.1.8.bb     |   2 +-
 6 files changed, 368 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-lib/libxcb/Fix-inconsistent-use-of-tabs-vs.-space.patch
 create mode 100644 meta/recipes-graphics/xorg-proto/xcb-proto/0001-Make-whitespace-use-consistent.patch
 create mode 100644 meta/recipes-graphics/xorg-proto/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch

-- 
2.9.0



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/4] xcb-proto: create .pyc files for python2
  2016-10-12  6:31 [PATCH 0/4] fix xcb-proto libxcb and source-highlight Robert Yang
@ 2016-10-12  6:31 ` Robert Yang
  2016-10-12  8:00   ` Jussi Kukkonen
  2016-10-12 11:36   ` Burton, Ross
  2016-10-12  6:31 ` [PATCH 2/4] xcb-proto: fix for python3 Robert Yang
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  6:31 UTC (permalink / raw)
  To: openembedded-core

Its Makefile's do_install creates .pyc files for python3, now also
create them for python2 so that they will be recorded by manifest, and
can be cleaned correctly.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
index 8bdca32..54988fc 100644
--- a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
+++ b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
@@ -28,3 +28,11 @@ RDEPENDS_${PN}-dev = ""
 RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 BBCLASSEXTEND = "native nativesdk"
+
+do_install_append() {
+    # Makefile's do_install creates .pyc files for python3, now also create
+    # them for python2 so that they will be recorded by manifest, and can be
+    # cleaned correctly.
+    cd  ${D}${libdir}/xcb-proto/xcbgen
+    python -m py_compile *.py
+}
-- 
2.9.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/4] xcb-proto: fix for python3
  2016-10-12  6:31 [PATCH 0/4] fix xcb-proto libxcb and source-highlight Robert Yang
  2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
@ 2016-10-12  6:31 ` Robert Yang
  2016-10-12  6:31 ` [PATCH 3/4] libxcb: use python3 to build it Robert Yang
  2016-10-12  6:31 ` [PATCH 4/4] source-highlight: use with-boost-libdir Robert Yang
  3 siblings, 0 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  6:31 UTC (permalink / raw)
  To: openembedded-core

Backport two patches to make it py3 friendly.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 .../0001-Make-whitespace-use-consistent.patch      | 215 +++++++++++++++++++++
 ...print-is-a-function-and-needs-parentheses.patch |  75 +++++++
 meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb |   5 +-
 3 files changed, 294 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-graphics/xorg-proto/xcb-proto/0001-Make-whitespace-use-consistent.patch
 create mode 100644 meta/recipes-graphics/xorg-proto/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch

diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto/0001-Make-whitespace-use-consistent.patch b/meta/recipes-graphics/xorg-proto/xcb-proto/0001-Make-whitespace-use-consistent.patch
new file mode 100644
index 0000000..89ec666
--- /dev/null
+++ b/meta/recipes-graphics/xorg-proto/xcb-proto/0001-Make-whitespace-use-consistent.patch
@@ -0,0 +1,215 @@
+From ea7a3ac6c658164690e0febb55f4467cb9e0bcac Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <wiz@NetBSD.org>
+Date: Thu, 19 May 2016 17:30:04 +0200
+Subject: [PATCH 1/2] Make whitespace use consistent.
+
+At least python-3.5.x complains about this forcefully.
+
+Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+Signed-off-by: Uli Schlachter <psychon@znc.in>
+
+Upstream-Status: Backport
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ xcbgen/align.py | 96 ++++++++++++++++++++++++++++-----------------------------
+ 1 file changed, 48 insertions(+), 48 deletions(-)
+
+diff --git a/xcbgen/align.py b/xcbgen/align.py
+index 5e31838..d4c12ee 100644
+--- a/xcbgen/align.py
++++ b/xcbgen/align.py
+@@ -16,12 +16,12 @@ class Alignment(object):
+         return self.align == other.align and self.offset == other.offset
+ 
+     def __str__(self):
+-	return "(align=%d, offset=%d)" % (self.align, self.offset)
++        return "(align=%d, offset=%d)" % (self.align, self.offset)
+ 
+     @staticmethod
+     def for_primitive_type(size):
+-	# compute the required start_alignment based on the size of the type
+-	if size % 8 == 0:
++        # compute the required start_alignment based on the size of the type
++        if size % 8 == 0:
+             # do 8-byte primitives require 8-byte alignment in X11?
+             return Alignment(8,0)
+         elif size % 4 == 0:
+@@ -33,7 +33,7 @@ class Alignment(object):
+ 
+ 
+     def align_after_fixed_size(self, size):
+-	new_offset = (self.offset + size) % self.align
++        new_offset = (self.offset + size) % self.align
+         return Alignment(self.align, new_offset)
+ 
+ 
+@@ -41,7 +41,7 @@ class Alignment(object):
+         '''
+         Assuming the given external_align, checks whether
+         self is fulfilled for all cases.
+-	Returns True if yes, False otherwise.
++        Returns True if yes, False otherwise.
+         '''
+         if self.align == 1 and self.offset == 0:
+             # alignment 1 with offset 0 is always fulfilled
+@@ -55,9 +55,9 @@ class Alignment(object):
+             # the external align guarantees less alignment -> not guaranteed
+             return False
+ 
+-	if external_align.align % self.align != 0:
++        if external_align.align % self.align != 0:
+             # the external align cannot be divided by our align
+-	    # -> not guaranteed
++            # -> not guaranteed
+             # (this can only happen if there are alignments that are not
+             # a power of 2, which is highly discouraged. But better be
+             # safe and check for it)
+@@ -72,7 +72,7 @@ class Alignment(object):
+ 
+     def combine_with(self, other):
+         # returns the alignment that is guaranteed when
+-	# both, self or other, can happen
++        # both, self or other, can happen
+         new_align = gcd(self.align, other.align)
+         new_offset_candidate1 = self.offset % new_align
+         new_offset_candidate2 = other.offset % new_align
+@@ -83,8 +83,8 @@ class Alignment(object):
+             new_align = gcd(new_align, offset_diff)
+             new_offset_candidate1 = self.offset % new_align
+             new_offset_candidate2 = other.offset % new_align
+-	    assert new_offset_candidate1 == new_offset_candidate2
+-	    new_offset = new_offset_candidate1
++            assert new_offset_candidate1 == new_offset_candidate2
++            new_offset = new_offset_candidate1
+         # return the result
+         return Alignment(new_align, new_offset)
+ 
+@@ -92,44 +92,44 @@ class Alignment(object):
+ class AlignmentLog(object):
+ 
+     def __init__(self):
+-	self.ok_list = []
+-	self.fail_list = []
+-	self.verbosity = 1
++        self.ok_list = []
++        self.fail_list = []
++        self.verbosity = 1
+ 
+     def __str__(self):
+-	result = ""
++        result = ""
+ 
+-	# output the OK-list
+-	for (align_before, field_name, type_obj, callstack, align_after) in self.ok_list:
+-	    stacksize = len(callstack)
++        # output the OK-list
++        for (align_before, field_name, type_obj, callstack, align_after) in self.ok_list:
++            stacksize = len(callstack)
+             indent = '  ' * stacksize
+-	    if self.ok_callstack_is_relevant(callstack):
++            if self.ok_callstack_is_relevant(callstack):
+                 if field_name is None or field_name == "":
+-	            result += ("    %sok: %s:\n\t%sbefore: %s, after: %s\n"
+-		        % (indent, str(type_obj), indent, str(align_before), str(align_after)))
+-	        else:
+-		    result += ("    %sok: field \"%s\" in %s:\n\t%sbefore: %s, after: %s\n"
+-		        % (indent, str(field_name), str(type_obj),
+-		           indent, str(align_before), str(align_after)))
++                    result += ("    %sok: %s:\n\t%sbefore: %s, after: %s\n"
++                        % (indent, str(type_obj), indent, str(align_before), str(align_after)))
++                else:
++                    result += ("    %sok: field \"%s\" in %s:\n\t%sbefore: %s, after: %s\n"
++                        % (indent, str(field_name), str(type_obj),
++                           indent, str(align_before), str(align_after)))
+                 if self.verbosity >= 1:
+-		    result += self.callstack_to_str(indent, callstack)
++                    result += self.callstack_to_str(indent, callstack)
+ 
+-	# output the fail-list
+-	for (align_before, field_name, type_obj, callstack, reason) in self.fail_list:
+-	    stacksize = len(callstack)
++        # output the fail-list
++        for (align_before, field_name, type_obj, callstack, reason) in self.fail_list:
++            stacksize = len(callstack)
+             indent = '  ' * stacksize
+-	    if field_name is None or field_name == "":
+-	        result += ("    %sfail: align %s is incompatible with\n\t%s%s\n\t%sReason: %s\n"
+-		    % (indent, str(align_before), indent, str(type_obj), indent, reason))
+-	    else:
+-		result += ("    %sfail: align %s is incompatible with\n\t%sfield \"%s\" in %s\n\t%sReason: %s\n"
+-		    % (indent, str(align_before), indent, str(field_name), str(type_obj), indent, reason))
++            if field_name is None or field_name == "":
++                result += ("    %sfail: align %s is incompatible with\n\t%s%s\n\t%sReason: %s\n"
++                    % (indent, str(align_before), indent, str(type_obj), indent, reason))
++            else:
++                result += ("    %sfail: align %s is incompatible with\n\t%sfield \"%s\" in %s\n\t%sReason: %s\n"
++                    % (indent, str(align_before), indent, str(field_name), str(type_obj), indent, reason))
+ 
+             if self.verbosity >= 1:
+-	        result += self.callstack_to_str(indent, callstack)
++                result += self.callstack_to_str(indent, callstack)
+ 
+ 
+-	return result
++        return result
+ 
+ 
+     def callstack_to_str(self, indent, callstack):
+@@ -137,41 +137,41 @@ class AlignmentLog(object):
+         for stack_elem in callstack:
+             result += "\t  %s%s\n" % (indent, str(stack_elem))
+         result += "\t%s]\n" % indent
+-	return result
++        return result
+ 
+ 
+     def ok_callstack_is_relevant(self, ok_callstack):
+         # determine whether an ok callstack is relevant for logging
+-	if self.verbosity >= 2:
+-	    return True
++        if self.verbosity >= 2:
++            return True
+ 
+         # empty callstacks are always relevant
+-	if len(ok_callstack) == 0:
++        if len(ok_callstack) == 0:
+             return True
+ 
+-	# check whether the ok_callstack is a subset or equal to a fail_callstack
++        # check whether the ok_callstack is a subset or equal to a fail_callstack
+         for (align_before, field_name, type_obj, fail_callstack, reason) in self.fail_list:
+             if len(ok_callstack) <= len(fail_callstack):
+                 zipped = zip(ok_callstack, fail_callstack[:len(ok_callstack)])
+-		is_subset = all([i == j for i, j in zipped])
+-		if is_subset:
++                is_subset = all([i == j for i, j in zipped])
++                if is_subset:
+                     return True
+ 
+         return False
+ 
+ 
+     def ok(self, align_before, field_name, type_obj, callstack, align_after):
+-	self.ok_list.append((align_before, field_name, type_obj, callstack, align_after))
++        self.ok_list.append((align_before, field_name, type_obj, callstack, align_after))
+ 
+     def fail(self, align_before, field_name, type_obj, callstack, reason):
+-	self.fail_list.append((align_before, field_name, type_obj, callstack, reason))
++        self.fail_list.append((align_before, field_name, type_obj, callstack, reason))
+ 
+     def append(self, other):
+-	self.ok_list.extend(other.ok_list)
+-	self.fail_list.extend(other.fail_list)
++        self.ok_list.extend(other.ok_list)
++        self.fail_list.extend(other.fail_list)
+ 
+     def ok_count(self):
+-	return len(self.ok_list)
++        return len(self.ok_list)
+ 
+ 
+ 
+-- 
+2.9.0
+
diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch b/meta/recipes-graphics/xorg-proto/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch
new file mode 100644
index 0000000..542acb8
--- /dev/null
+++ b/meta/recipes-graphics/xorg-proto/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch
@@ -0,0 +1,75 @@
+From bea5e1c85bdc0950913790364e18228f20395a3d Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <wiz@NetBSD.org>
+Date: Thu, 19 May 2016 17:30:05 +0200
+Subject: [PATCH 2/2] print() is a function and needs parentheses.
+
+Fixes build with python-3.x.
+
+Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+Signed-off-by: Uli Schlachter <psychon@znc.in>
+
+Upstream-Status: Backport
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ xcbgen/xtypes.py | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/xcbgen/xtypes.py b/xcbgen/xtypes.py
+index c3b5758..b83b119 100644
+--- a/xcbgen/xtypes.py
++++ b/xcbgen/xtypes.py
+@@ -501,7 +501,7 @@ class ComplexType(Type):
+                 int(required_start_align_element.get('align', "4"), 0),
+                 int(required_start_align_element.get('offset', "0"), 0))
+             if verbose_align_log:
+-                print "Explicit start-align for %s: %s\n" % (self, self.required_start_align)
++                print ("Explicit start-align for %s: %s\n" % (self, self.required_start_align))
+ 
+     def resolve(self, module):
+         if self.resolved:
+@@ -592,7 +592,7 @@ class ComplexType(Type):
+                 if verbose_align_log:
+                     print ("calc_required_start_align: %s has start-align %s"
+                         % (str(self), str(self.required_start_align)))
+-                    print "Details:\n" + str(log)
++                    print ("Details:\n" + str(log))
+                 if self.required_start_align.offset != 0:
+                     print (("WARNING: %s\n\thas start-align with non-zero offset: %s"
+                         + "\n\tsuggest to add explicit definition with:"
+@@ -619,12 +619,12 @@ class ComplexType(Type):
+             for offset in range(0,align):
+                 align_candidate = Alignment(align, offset)
+                 if verbose_align_log:
+-                    print "trying %s for %s" % (str(align_candidate), str(self))
++                    print ("trying %s for %s" % (str(align_candidate), str(self)))
+                 my_log = AlignmentLog()
+                 if self.is_possible_start_align(align_candidate, callstack, my_log):
+                     log.append(my_log)
+                     if verbose_align_log:
+-                        print "found start-align %s for %s" % (str(align_candidate), str(self))
++                        print ("found start-align %s for %s" % (str(align_candidate), str(self)))
+                     return align_candidate
+                 else:
+                     my_ok_count = my_log.ok_count()
+@@ -641,7 +641,7 @@ class ComplexType(Type):
+         # none of the candidates applies
+         # this type has illegal internal aligns for all possible start_aligns
+         if verbose_align_log:
+-            print "didn't find start-align for %s" % str(self)
++            print ("didn't find start-align for %s" % str(self))
+         log.append(best_log)
+         return None
+ 
+@@ -900,7 +900,7 @@ class SwitchType(ComplexType):
+     # aux function for unchecked_get_alignment_after
+     def get_align_for_selected_case_field(self, case_field, start_align, callstack, log):
+         if verbose_align_log:
+-            print "get_align_for_selected_case_field: %s, case_field = %s" % (str(self), str(case_field))
++            print ("get_align_for_selected_case_field: %s, case_field = %s" % (str(self), str(case_field)))
+         total_align = start_align
+         for field in self.bitcases:
+             my_callstack = callstack[:]
+-- 
+2.9.0
+
diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
index 54988fc..bbb3173 100644
--- a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
+++ b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
@@ -12,7 +12,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \
                     file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65"
 
 SRC_URI = "http://xcb.freedesktop.org/dist/xcb-proto-${PV}.tar.bz2 \
-           file://no-python-native.patch"
+           file://no-python-native.patch \
+           file://0001-Make-whitespace-use-consistent.patch \
+           file://0002-print-is-a-function-and-needs-parentheses.patch \
+           "
 SRC_URI[md5sum] = "14e60919f859560f28426a685a555962"
 SRC_URI[sha256sum] = "5922aba4c664ab7899a29d92ea91a87aa4c1fc7eb5ee550325c3216c480a4906"
 
-- 
2.9.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/4] libxcb: use python3 to build it
  2016-10-12  6:31 [PATCH 0/4] fix xcb-proto libxcb and source-highlight Robert Yang
  2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
  2016-10-12  6:31 ` [PATCH 2/4] xcb-proto: fix for python3 Robert Yang
@ 2016-10-12  6:31 ` Robert Yang
  2016-10-12  6:31 ` [PATCH 4/4] source-highlight: use with-boost-libdir Robert Yang
  3 siblings, 0 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  6:31 UTC (permalink / raw)
  To: openembedded-core

Backport Fix-inconsistent-use-of-tabs-vs.-space.patch to make it can be
built by python3.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 .../Fix-inconsistent-use-of-tabs-vs.-space.patch   | 62 ++++++++++++++++++++++
 meta/recipes-graphics/xorg-lib/libxcb_1.12.bb      |  3 ++
 2 files changed, 65 insertions(+)
 create mode 100644 meta/recipes-graphics/xorg-lib/libxcb/Fix-inconsistent-use-of-tabs-vs.-space.patch

diff --git a/meta/recipes-graphics/xorg-lib/libxcb/Fix-inconsistent-use-of-tabs-vs.-space.patch b/meta/recipes-graphics/xorg-lib/libxcb/Fix-inconsistent-use-of-tabs-vs.-space.patch
new file mode 100644
index 0000000..8992386
--- /dev/null
+++ b/meta/recipes-graphics/xorg-lib/libxcb/Fix-inconsistent-use-of-tabs-vs.-space.patch
@@ -0,0 +1,62 @@
+From 8740a288ca468433141341347aa115b9544891d3 Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <wiz@NetBSD.org>
+Date: Thu, 19 May 2016 17:31:18 +0200
+Subject: [PATCH] Fix inconsistent use of tabs vs. space.
+
+Needed for at least python-3.5.x.
+
+Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+Signed-off-by: Uli Schlachter <psychon@znc.in>
+
+Upstream-Status: Backport
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ src/c_client.py | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/c_client.py b/src/c_client.py
+index 57de3fb..043338d 100644
+--- a/src/c_client.py
++++ b/src/c_client.py
+@@ -1364,7 +1364,7 @@ def _c_serialize(context, self):
+             _c('    unsigned int xcb_align_to = 0;')
+         if self.is_switch:
+             _c('    unsigned int xcb_padding_offset = %d;',
+-	       self.get_align_offset() )
++               self.get_align_offset() )
+         prefix = [('_aux', '->', self)]
+         aux_ptr = 'xcb_out'
+ 
+@@ -1390,7 +1390,7 @@ def _c_serialize(context, self):
+         _c('    unsigned int xcb_align_to = 0;')
+         if self.is_switch:
+             _c('    unsigned int xcb_padding_offset = %d;',
+-	       self.get_align_offset() )
++               self.get_align_offset() )
+ 
+     elif 'sizeof' == context:
+         param_names = [p[2] for p in params]
+@@ -1930,14 +1930,14 @@ def _c_accessors_list(self, field):
+                     # from the request size and divide that by the member size
+                     return '(((R->length * 4) - sizeof('+ self.c_type + '))/'+'sizeof('+field.type.member.c_wiretype+'))'
+                 else:
+-		    # use the accessor to get the start of the list, then
+-		    # compute the length of it by subtracting it from
++                    # use the accessor to get the start of the list, then
++                    # compute the length of it by subtracting it from
+                     # the adress of the first byte after the end of the
+                     # request
+-		    after_end_of_request = '(((char*)R) + R->length * 4)'
+-		    start_of_list = '%s(R)' % (field.c_accessor_name)
++                    after_end_of_request = '(((char*)R) + R->length * 4)'
++                    start_of_list = '%s(R)' % (field.c_accessor_name)
+                     bytesize_of_list = '%s - (char*)(%s)' % (after_end_of_request, start_of_list)
+-		    return '(%s) / sizeof(%s)' % (bytesize_of_list, field.type.member.c_wiretype)
++                    return '(%s) / sizeof(%s)' % (bytesize_of_list, field.type.member.c_wiretype)
+             else:
+                 raise Exception(
+                     "lengthless lists with varsized members are not supported. Fieldname '%s'"
+-- 
+2.9.0
+
diff --git a/meta/recipes-graphics/xorg-lib/libxcb_1.12.bb b/meta/recipes-graphics/xorg-lib/libxcb_1.12.bb
index 62b8bab..a38bdea 100644
--- a/meta/recipes-graphics/xorg-lib/libxcb_1.12.bb
+++ b/meta/recipes-graphics/xorg-lib/libxcb_1.12.bb
@@ -13,6 +13,7 @@ SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2 \
            file://xcbincludedir.patch \
            file://disable-check.patch \
            file://gcc-mips-pr68302-mips-workaround.patch \
+           file://Fix-inconsistent-use-of-tabs-vs.-space.patch \
           "
 SRC_URI[md5sum] = "28e552bd78bc1050b6b26ca1db0e5bb6"
 SRC_URI[sha256sum] = "4adfb1b7c67e99bc9c2ccb110b2f175686576d2f792c8a71b9c8b19014057b5b"
@@ -31,6 +32,8 @@ inherit autotools pkgconfig distro_features_check
 REQUIRED_DISTRO_FEATURES = "x11"
 REQUIRED_DISTRO_FEATURES_class-native = ""
 
+export PYTHON = "python3"
+
 python populate_packages_prepend () {
     do_split_packages(d, '${libdir}', '^libxcb-(.*)\.so\..*$', 'libxcb-%s', 'XCB library module for %s', allow_links=True)
 }
-- 
2.9.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/4] source-highlight: use with-boost-libdir
  2016-10-12  6:31 [PATCH 0/4] fix xcb-proto libxcb and source-highlight Robert Yang
                   ` (2 preceding siblings ...)
  2016-10-12  6:31 ` [PATCH 3/4] libxcb: use python3 to build it Robert Yang
@ 2016-10-12  6:31 ` Robert Yang
  3 siblings, 0 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  6:31 UTC (permalink / raw)
  To: openembedded-core

Without with-boost-libdir, it checks lib64 libx32 lib lib64 in
sysroot/usr/ and set it as boost lib path if it exist, this is
unreliable when build with multilib.

Fixed when switch baselib from lib64 to lib, for example, when we build
qemux86-64 + multilib setting, the baselib is lib64, and when disable
multilib, it would be lib, then we may see the error when
do_configure since lib64 may exist during build source-highlight:

configure: error: Could not find a version of the Boost::Regex library!

Steps to reproduce:
MACHINE = "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake world

Then:
MACHINE = "qemux86-64"
$ bitbake source-highlight

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/recipes-support/source-highlight/source-highlight_3.1.8.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-support/source-highlight/source-highlight_3.1.8.bb b/meta/recipes-support/source-highlight/source-highlight_3.1.8.bb
index 37d2fa9..85923e4 100644
--- a/meta/recipes-support/source-highlight/source-highlight_3.1.8.bb
+++ b/meta/recipes-support/source-highlight/source-highlight_3.1.8.bb
@@ -15,7 +15,7 @@ DEPENDS_append = " boost"
 
 DEPENDS_append_class-target = " source-highlight-native"
 
-EXTRA_OECONF = "--with-boost=${PKG_CONFIG_SYSROOT_DIR}/${prefix}"
+EXTRA_OECONF = "--with-boost=yes --with-boost-libdir=${STAGING_DIR_TARGET}${libdir}"
 
 BBCLASSEXTEND = "native"
 
-- 
2.9.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/4] xcb-proto: create .pyc files for python2
  2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
@ 2016-10-12  8:00   ` Jussi Kukkonen
  2016-10-12  8:20     ` Robert Yang
  2016-10-12 11:36   ` Burton, Ross
  1 sibling, 1 reply; 9+ messages in thread
From: Jussi Kukkonen @ 2016-10-12  8:00 UTC (permalink / raw)
  To: Robert Yang; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 1729 bytes --]

On 12 October 2016 at 09:31, Robert Yang <liezhi.yang@windriver.com> wrote:

> Its Makefile's do_install creates .pyc files for python3, now also
> create them for python2 so that they will be recorded by manifest, and
> can be cleaned correctly.


So this is about autotools byte-compiling for python3 at install time and
then something using those python modules with python2 during the build?

I wonder if this is something that should/can be solved in a more generic
way? Alternatively, is the xcbgen user something in oe-core and can we tell
it to not use python2?

- Jussi



>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
> ---
>  meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
> b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
> index 8bdca32..54988fc 100644
> --- a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
> +++ b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
> @@ -28,3 +28,11 @@ RDEPENDS_${PN}-dev = ""
>  RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
>
>  BBCLASSEXTEND = "native nativesdk"
> +
> +do_install_append() {
> +    # Makefile's do_install creates .pyc files for python3, now also
> create
> +    # them for python2 so that they will be recorded by manifest, and can
> be
> +    # cleaned correctly.
> +    cd  ${D}${libdir}/xcb-proto/xcbgen
> +    python -m py_compile *.py
> +}
> --
> 2.9.0
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 3213 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/4] xcb-proto: create .pyc files for python2
  2016-10-12  8:00   ` Jussi Kukkonen
@ 2016-10-12  8:20     ` Robert Yang
  0 siblings, 0 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-12  8:20 UTC (permalink / raw)
  To: Jussi Kukkonen; +Cc: Patches and discussions about the oe-core layer



On 10/12/2016 04:00 PM, Jussi Kukkonen wrote:
> On 12 October 2016 at 09:31, Robert Yang <liezhi.yang@windriver.com
> <mailto:liezhi.yang@windriver.com>> wrote:
>
>     Its Makefile's do_install creates .pyc files for python3, now also
>     create them for python2 so that they will be recorded by manifest, and
>     can be cleaned correctly.
>
>
> So this is about autotools byte-compiling for python3 at install time and then
> something using those python modules with python2 during the build?

Yes.

>
> I wonder if this is something that should/can be solved in a more generic way?
> Alternatively, is the xcbgen user something in oe-core and can we tell it to not
> use python2?

The only one in oe-core which used python2 to invoke xcb-proto's python
modules was libxcb, and I've fixed it to use python3, but we don't know
which one uses python2 out of oe-core, so I also fix xcb-proto for python2.

// Robert

>
> - Jussi
>
>
>
>
>     Signed-off-by: Robert Yang <liezhi.yang@windriver.com
>     <mailto:liezhi.yang@windriver.com>>
>     ---
>      meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
>     <http://xcb-proto_1.12.bb> | 8 ++++++++
>      1 file changed, 8 insertions(+)
>
>     diff --git a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
>     <http://xcb-proto_1.12.bb>
>     b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb <http://xcb-proto_1.12.bb>
>     index 8bdca32..54988fc 100644
>     --- a/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
>     <http://xcb-proto_1.12.bb>
>     +++ b/meta/recipes-graphics/xorg-proto/xcb-proto_1.12.bb
>     <http://xcb-proto_1.12.bb>
>     @@ -28,3 +28,11 @@ RDEPENDS_${PN}-dev = ""
>      RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
>
>      BBCLASSEXTEND = "native nativesdk"
>     +
>     +do_install_append() {
>     +    # Makefile's do_install creates .pyc files for python3, now also create
>     +    # them for python2 so that they will be recorded by manifest, and can be
>     +    # cleaned correctly.
>     +    cd  ${D}${libdir}/xcb-proto/xcbgen
>     +    python -m py_compile *.py
>     +}
>     --
>     2.9.0
>
>     --
>     _______________________________________________
>     Openembedded-core mailing list
>     Openembedded-core@lists.openembedded.org
>     <mailto:Openembedded-core@lists.openembedded.org>
>     http://lists.openembedded.org/mailman/listinfo/openembedded-core
>     <http://lists.openembedded.org/mailman/listinfo/openembedded-core>
>
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/4] xcb-proto: create .pyc files for python2
  2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
  2016-10-12  8:00   ` Jussi Kukkonen
@ 2016-10-12 11:36   ` Burton, Ross
  2016-10-13  3:19     ` Robert Yang
  1 sibling, 1 reply; 9+ messages in thread
From: Burton, Ross @ 2016-10-12 11:36 UTC (permalink / raw)
  To: Robert Yang; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 236 bytes --]

On 12 October 2016 at 07:31, Robert Yang <liezhi.yang@windriver.com> wrote:

> +    cd  ${D}${libdir}/xcb-proto/xcbgen
> +    python -m py_compile *.py
>

The cd is redundant as you can pass absolute paths to py_compile.

Ross

[-- Attachment #2: Type: text/html, Size: 655 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/4] xcb-proto: create .pyc files for python2
  2016-10-12 11:36   ` Burton, Ross
@ 2016-10-13  3:19     ` Robert Yang
  0 siblings, 0 replies; 9+ messages in thread
From: Robert Yang @ 2016-10-13  3:19 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core



On 10/12/2016 07:36 PM, Burton, Ross wrote:
>
> On 12 October 2016 at 07:31, Robert Yang <liezhi.yang@windriver.com
> <mailto:liezhi.yang@windriver.com>> wrote:
>
>     +    cd  ${D}${libdir}/xcb-proto/xcbgen
>     +    python -m py_compile *.py
>
>
> The cd is redundant as you can pass absolute paths to py_compile.

Thanks, updated in the repo:

   git://git.openembedded.org/openembedded-core-contrib rbt/4fixes
   http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/4fixes

Robert Yang (4):
   xcb-proto: create .pyc files for python2
   xcb-proto: fix for python3
   libxcb: use python3 to build it
   source-highlight: use with-boost-libdir

// Robert

>
> Ross


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-10-13  3:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-12  6:31 [PATCH 0/4] fix xcb-proto libxcb and source-highlight Robert Yang
2016-10-12  6:31 ` [PATCH 1/4] xcb-proto: create .pyc files for python2 Robert Yang
2016-10-12  8:00   ` Jussi Kukkonen
2016-10-12  8:20     ` Robert Yang
2016-10-12 11:36   ` Burton, Ross
2016-10-13  3:19     ` Robert Yang
2016-10-12  6:31 ` [PATCH 2/4] xcb-proto: fix for python3 Robert Yang
2016-10-12  6:31 ` [PATCH 3/4] libxcb: use python3 to build it Robert Yang
2016-10-12  6:31 ` [PATCH 4/4] source-highlight: use with-boost-libdir Robert Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.