All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/10] Fix multilib install conflicts
@ 2018-09-29  5:43 kai.kang
  2018-09-29  5:43 ` [PATCH 01/10] cups: fix multilib install file conflicts kai.kang
                   ` (9 more replies)
  0 siblings, 10 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

V2:
* add Upstream-Status for
  meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch

The following changes since commit 3bbbe25ae74e120f7d3452685f0cae2245d7b14d:

  glibc-package.inc: correct intention for deleting /usr/lib as needed (2018-09-27 23:41:41 +0100)

are available in the Git repository at:

  git://git.pokylinux.org/poky-contrib kangkai/ML-sep29
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kangkai/ML-sep29

Kai Kang (10):
  cups: fix multilib install file conflicts
  bind: fix multilib install file conflicts
  man-db: fix multilib install file conflict
  groff: fix multilib install file conflicts
  nss: move create blank certificates to pkg_postinst
  libcheck: avoid multilib install file conflict
  opkg-utils/update-alternatives: not warn same priorities for multilib
  os-release: fix install file conflict for multilib
  gobject-introspection: fix multilib install file conflicts
  vala: update vapigen-wrapper

 meta/recipes-connectivity/bind/bind_9.11.4.bb |  4 +-
 meta/recipes-core/os-release/os-release.bb    |  6 +-
 ...ot-warn-same-priorities-for-multilib.patch | 36 ++++++++++
 .../opkg-utils/opkg-utils_0.3.6.bb            |  1 +
 meta/recipes-devtools/vala/vala.inc           |  4 +-
 meta/recipes-extended/cups/cups.inc           |  3 +
 meta/recipes-extended/groff/groff_1.22.3.bb   |  4 +-
 meta/recipes-extended/man-db/man-db_2.8.3.bb  |  3 +
 ...nfigure.ac-make-GIR_DIR-configurable.patch | 65 +++++++++++++++++++
 .../gobject-introspection_1.58.0.bb           | 10 ++-
 .../libcheck/libcheck_0.12.0.bb               |  5 ++
 meta/recipes-support/nss/nss_3.38.bb          | 32 +++++----
 12 files changed, 153 insertions(+), 20 deletions(-)
 create mode 100644 meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch
 create mode 100644 meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch

-- 
2.18.0



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

* [PATCH 01/10] cups: fix multilib install file conflicts
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29  5:43 ` [PATCH 02/10] bind: " kai.kang
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

There are comments which contains path of ${libdir} in configure files.
It causes install file conflicts when intall cups and lib32-cups at same
time.

Replace ${libdir} with {nonarch_libdir} of the comment lines in config
files to fix the issue.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-extended/cups/cups.inc | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta/recipes-extended/cups/cups.inc b/meta/recipes-extended/cups/cups.inc
index 717eef03a7..b8ad1e09e5 100644
--- a/meta/recipes-extended/cups/cups.inc
+++ b/meta/recipes-extended/cups/cups.inc
@@ -78,6 +78,9 @@ do_install () {
 	    rm -rf ${D}${sysconfdir}/init.d/
 	    rm -rf ${D}${sysconfdir}/rc*
 	fi
+
+	# workaround for multilib install file conflicts
+	sed -i "s:\(^#.*\)${libdir}:\1${nonarch_libdir}:" ${D}${sysconfdir}/cups/cups-files.conf*
 }
 
 PACKAGES =+ "${PN}-lib ${PN}-libimage"
-- 
2.18.0



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

* [PATCH 02/10] bind: fix multilib install file conflicts
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
  2018-09-29  5:43 ` [PATCH 01/10] cups: fix multilib install file conflicts kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29  5:43 ` [PATCH 03/10] man-db: fix multilib install file conflict kai.kang
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

It adds ${libdir} to linker options in scripts bind9-config and
isc-config.sh. And then causes install file conflicts when install bind
andl ib32-bind both.

Inherit multilib_script.bbclass to fix this issue.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-connectivity/bind/bind_9.11.4.bb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-connectivity/bind/bind_9.11.4.bb b/meta/recipes-connectivity/bind/bind_9.11.4.bb
index 23c3aadf9c..63d8b0baa8 100644
--- a/meta/recipes-connectivity/bind/bind_9.11.4.bb
+++ b/meta/recipes-connectivity/bind/bind_9.11.4.bb
@@ -28,7 +28,9 @@ SRC_URI[sha256sum] = "595070b031f869f8939656b5a5d11b121211967f15f6afeafa895df745
 UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
 UPSTREAM_CHECK_REGEX = "(?P<pver>9(\.\d+)+(-P\d+)*)/"
 
-inherit autotools update-rc.d systemd useradd pkgconfig
+inherit autotools update-rc.d systemd useradd pkgconfig multilib_script
+
+MULTILIB_SCRIPTS = "${PN}:${bindir}/bind9-config ${PN}:${bindir}/isc-config.sh"
 
 # PACKAGECONFIGs readline and libedit should NOT be set at same time
 PACKAGECONFIG ?= "readline"
-- 
2.18.0



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

* [PATCH 03/10] man-db: fix multilib install file conflict
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
  2018-09-29  5:43 ` [PATCH 01/10] cups: fix multilib install file conflicts kai.kang
  2018-09-29  5:43 ` [PATCH 02/10] bind: " kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:44   ` Richard Purdie
  2018-09-29  5:43 ` [PATCH 04/10] groff: fix multilib install file conflicts kai.kang
                   ` (6 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

The first line of config file man_db.conf is the package name. It causes
multilib install file conflict. So remove the first line.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-extended/man-db/man-db_2.8.3.bb | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta/recipes-extended/man-db/man-db_2.8.3.bb b/meta/recipes-extended/man-db/man-db_2.8.3.bb
index 97e5a3d6fb..da6d291011 100644
--- a/meta/recipes-extended/man-db/man-db_2.8.3.bb
+++ b/meta/recipes-extended/man-db/man-db_2.8.3.bb
@@ -26,6 +26,9 @@ do_install() {
 	        install -d ${D}/etc/default/volatiles
 		install -m 0644 ${WORKDIR}/99_mandb ${D}/etc/default/volatiles
 	fi
+
+    # the 1st line of man_db.conf is package name which causes multilib install file conflict
+    sed -i '1d' ${D}${sysconfdir}/man_db.conf
 }
 
 do_install_append_libc-musl() {
-- 
2.18.0



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

* [PATCH 04/10] groff: fix multilib install file conflicts
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (2 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 03/10] man-db: fix multilib install file conflict kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29  5:43 ` [PATCH 05/10] nss: move create blank certificates to pkg_postinst kai.kang
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

Perl scripts ${bindir}/{gpinyin, groffer, grog} are ${libdir} related
and cause multilib install file conflicts:

| Error: Transaction check error:
|  file /usr/bin/gpinyin conflicts between attempted installs of groff-1.22.3-r0.core2_64 and lib32-groff-1.22.3-r0.x86
|  file /usr/bin/groffer conflicts between attempted installs of groff-1.22.3-r0.core2_64 and lib32-groff-1.22.3-r0.x86
|  file /usr/bin/grog conflicts between attempted installs of groff-1.22.3-r0.core2_64 and lib32-groff-1.22.3-r0.x86

Inherit multilib_script.bbclass to fix the errors.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-extended/groff/groff_1.22.3.bb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/groff/groff_1.22.3.bb b/meta/recipes-extended/groff/groff_1.22.3.bb
index 7472f59825..ce7ce3e791 100644
--- a/meta/recipes-extended/groff/groff_1.22.3.bb
+++ b/meta/recipes-extended/groff/groff_1.22.3.bb
@@ -20,7 +20,9 @@ DEPENDS = "groff-native"
 DEPENDS_class-native = ""
 RDEPENDS_${PN} += "perl sed"
 
-inherit autotools texinfo
+inherit autotools texinfo multilib_script
+
+MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/groffer ${PN}:${bindir}/grog"
 
 EXTRA_OECONF = "--without-x"
 PARALLEL_MAKE = ""
-- 
2.18.0



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

* [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (3 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 04/10] groff: fix multilib install file conflicts kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:44   ` Richard Purdie
  2018-09-29  5:43 ` [PATCH 06/10] libcheck: avoid multilib install file conflict kai.kang
                   ` (4 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

There is a multilib install file conflict of nss:
| file /etc/pki/nssdb/key4.db conflicts between attempted installs of
| lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64

Move the creation of blank certificates to pkg_postinst. And check if
certificates exist already, don't re-create them.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++-----------
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/meta/recipes-support/nss/nss_3.38.bb b/meta/recipes-support/nss/nss_3.38.bb
index 904b621a07..74145360b5 100644
--- a/meta/recipes-support/nss/nss_3.38.bb
+++ b/meta/recipes-support/nss/nss_3.38.bb
@@ -211,20 +211,20 @@ do_install_append() {
     sed -i s:OEINCDIR:${includedir}/nss3:g ${D}${libdir}/pkgconfig/nss.pc
 }
 
-do_install_append_class-target() {
-    # Create a blank certificate
-    mkdir -p ${D}${sysconfdir}/pki/nssdb/
-    touch ./empty_password
-    certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password
-    chmod 644 ${D}${sysconfdir}/pki/nssdb/*.db
-    rm ./empty_password
-    # Remove build path prefix
-    sed -i "s:${D}::g"  ${D}${sysconfdir}/pki/nssdb/pkcs11.txt
-}
-
 PACKAGE_WRITE_DEPS += "nss-native"
 pkg_postinst_${PN} () {
     if [ -n "$D" ]; then
+        if [ ! -d $D${sysconfdir}/pki/nssdb/ ]; then
+            # Create a blank certificate
+            mkdir -p $D${sysconfdir}/pki/nssdb/
+            touch $D/empty_password
+            certutil -N -d sql:$D${sysconfdir}/pki/nssdb/ -f $D/empty_password
+            chmod 644 $D${sysconfdir}/pki/nssdb/*.db
+            rm $D/empty_password
+            # Remove build path prefix
+            sed -i "s:$D::g"  $D${sysconfdir}/pki/nssdb/pkcs11.txt
+        fi
+
         for I in $D${libdir}/lib*.chk; do
             DN=`dirname $I`
             BN=`basename $I .chk`
@@ -235,6 +235,15 @@ pkg_postinst_${PN} () {
             fi
         done
     else
+        if [ ! -d ${sysconfdir}/pki/nssdb ]; then
+            # Create a blank certificate
+            mkdir -p ${sysconfdir}/pki/nssdb
+            empty_password=`mktemp`
+            certutil -N -d sql:$D${sysconfdir}/pki/nssdb/ -f $empty_password
+            chmod 644 $D${sysconfdir}/pki/nssdb/*.db
+            rm $empty_password
+        fi
+
         signlibs.sh
     fi
 }
@@ -244,7 +253,6 @@ FILES_${PN}-smime = "\
     ${bindir}/smime \
 "
 FILES_${PN} = "\
-    ${sysconfdir} \
     ${bindir} \
     ${libdir}/lib*.chk \
     ${libdir}/lib*.so \
-- 
2.18.0



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

* [PATCH 06/10] libcheck: avoid multilib install file conflict
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (4 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 05/10] nss: move create blank certificates to pkg_postinst kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:42   ` Richard Purdie
  2018-09-29  5:43 ` [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib kai.kang
                   ` (3 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

It has one line different which is a comment in check_stdint.h between
libcheck multilib packages. And then causes install file conflict when
install libcheck and lib32-libcheck at same time.

Remove the comment line from check_stdint.h to fix the issue.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-support/libcheck/libcheck_0.12.0.bb | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-support/libcheck/libcheck_0.12.0.bb b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
index e646d43968..9969e27054 100644
--- a/meta/recipes-support/libcheck/libcheck_0.12.0.bb
+++ b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
@@ -16,6 +16,11 @@ inherit autotools pkgconfig texinfo
 
 CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
 
+do_install_append_class-target () {
+    # remove the only one line comment which causes multilib install file conflict
+    sed -i '/^\/\*/ d' ${D}${includedir}/check_stdint.h
+}
+
 RREPLACES_${PN} = "check (<= 0.9.5)"
 RDEPENDS_${PN} += "gawk"
 RDEPENDS_${PN}_class-native = ""
-- 
2.18.0



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

* [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (5 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 06/10] libcheck: avoid multilib install file conflict kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:40   ` Richard Purdie
  2018-09-29  5:43 ` [PATCH 08/10] os-release: fix install file conflict " kai.kang
                   ` (2 subsequent siblings)
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

update-alternatives is used to handle install file conflicts of multilib
packages in multilib_script.bbclass. And the default priority is used
for the alternatives which causes QA warning:

| WARNING: core-image-minimal-1.0-r0 do_rootfs: [log_check] core-image-minimal: found 1 warning message in the logfile
| [log_check] Warn: update-alternatives: libtool has multiple providers with the same priority, please check
| .../core-image-minimal/1.0-r0/rootfs/usr/lib/opkg/alternatives/libtool for details

The same priorities of alternatives are by design, so eliminate the
warning for alternatives from multilib packages.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 ...ot-warn-same-priorities-for-multilib.patch | 36 +++++++++++++++++++
 .../opkg-utils/opkg-utils_0.3.6.bb            |  1 +
 2 files changed, 37 insertions(+)
 create mode 100644 meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch

diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch b/meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch
new file mode 100644
index 0000000000..c187119b80
--- /dev/null
+++ b/meta/recipes-devtools/opkg-utils/opkg-utils/update-alternatives-not-warn-same-priorities-for-multilib.patch
@@ -0,0 +1,36 @@
+From 5d9ab3a3575267517c3c8fd9847b68f5987a4820 Mon Sep 17 00:00:00 2001
+From: Kai Kang <kai.kang@windriver.com>
+Date: Tue, 18 Sep 2018 04:35:54 -0400
+Subject: [PATCH] update-alternatives: not warn same priorities for multilib
+
+The same priorities of alternatives used in multilib_script.bbclass are
+by design, so eliminate the warning of same priorities for alternatives
+from multilib packages.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ update-alternatives | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/update-alternatives b/update-alternatives
+index 89a440b..61b7ef5 100644
+--- a/update-alternatives
++++ b/update-alternatives
+@@ -94,7 +94,11 @@ add_alt() {
+ 	local priority="$3"
+ 	remove_alt $name $path
+ 	if grep -qw "$priority" $ad/$name; then
+-		echo "Warn: update-alternatives: $name has multiple providers with the same priority, please check $ad/$name for details"
++		target=`head -1 $ad/$name`
++		# not warn same priorities from multilib packages
++		if grep -w "$priority" $ad/$name | grep -qv "^$target"; then
++			echo "Warn: update-alternatives: $name has multiple providers with the same priority, please check $ad/$name for details"
++		fi
+ 	fi
+ 	echo "$path $priority" >> $ad/$name
+ }
+-- 
+2.19.0.rc2
+
diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb b/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
index 0487c5f305..ee002845a5 100644
--- a/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
+++ b/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
@@ -12,6 +12,7 @@ SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV
            file://0001-Only-use-sort-name-on-versions-of-tar-which-support-.patch \
            file://0002-opkg-build-Use-local-time-for-build_date-since-opkg-.patch \
            file://threaded-xz.patch \
+           file://update-alternatives-not-warn-same-priorities-for-multilib.patch \
 "
 SRC_URI_append_class-native = " file://tar_ignore_error.patch"
 UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/"
-- 
2.18.0



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

* [PATCH 08/10] os-release: fix install file conflict for multilib
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (6 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:37   ` Richard Purdie
  2018-09-29  5:43 ` [PATCH 09/10] gobject-introspection: fix multilib install file conflicts kai.kang
  2018-09-29  5:43 ` [PATCH 10/10] vala: update vapigen-wrapper kai.kang
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

It fails to create image when install os-release and lib32-os-release both:

| file /etc/os-release conflicts between attempted installs of
| os-release-1.0-r0.core2_64 and lib32-os-release-1.0-r0.x86

The /etc/os-release is a symlink link to ${libdir}/os-release. Actually
the content of files are identical and make /etc/os-release to be hard
link could fix the issue. But according to os-release (5), symlink link
is necessary for initrd environment such as dracut.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-core/os-release/os-release.bb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/os-release/os-release.bb b/meta/recipes-core/os-release/os-release.bb
index bf4f815a10..4d5487c06d 100644
--- a/meta/recipes-core/os-release/os-release.bb
+++ b/meta/recipes-core/os-release/os-release.bb
@@ -1,10 +1,12 @@
-inherit allarch
-
 SUMMARY = "Operating system identification"
 DESCRIPTION = "The /usr/lib/os-release file contains operating system identification data."
 LICENSE = "MIT"
 INHIBIT_DEFAULT_DEPS = "1"
 
+inherit allarch multilib_script
+
+MULTILIB_SCRIPTS = "${PN}:${sysconfdir}/os-release"
+
 do_fetch[noexec] = "1"
 do_unpack[noexec] = "1"
 do_patch[noexec] = "1"
-- 
2.18.0



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

* [PATCH 09/10] gobject-introspection: fix multilib install file conflicts
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (7 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 08/10] os-release: fix install file conflict " kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29  5:43 ` [PATCH 10/10] vala: update vapigen-wrapper kai.kang
  9 siblings, 0 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

Fix multilib isntall file conflicts for gobject-introspection.
* use multilib_script.bbclass to handle ${bindir}/g-ir-annotation-tool
  and ${bindir}/g-ir-scanner
* add configure option to install .gir files to an alternative path

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 ...nfigure.ac-make-GIR_DIR-configurable.patch | 65 +++++++++++++++++++
 .../gobject-introspection_1.58.0.bb           | 10 ++-
 2 files changed, 72 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch

diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch
new file mode 100644
index 0000000000..07fb20ed29
--- /dev/null
+++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch
@@ -0,0 +1,65 @@
+configure.ac: make GIR_DIR configurable
+
+.gir files are arch related which contain such as lengths of pointers
+that they are different for 64 and 32 bits target. It causes install
+file conflicts for multilib when intall gobject-introspection and
+lib32-gobject-introspection both.
+
+Add configure option 'with-gir-dir-prefix' to make .gir could be
+installed to a configured path such as ${libdir}. And update girdir in
+.pc files as well.
+
+Upstream-Status: Submitted [https://github.com/GNOME/gobject-introspection/pull/17]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ configure.ac                              | 5 ++++-
+ gobject-introspection-1.0.pc.in           | 2 +-
+ gobject-introspection-no-export-1.0.pc.in | 2 +-
+ 3 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index b4294c57..dc78b832 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -114,7 +114,10 @@ GIR_SUFFIX="gir-1.0"
+ AC_SUBST(GIR_SUFFIX)
+ AC_DEFINE_UNQUOTED(GIR_SUFFIX, "$GIR_SUFFIX", [Name of the gir directory])
+ 
+-GIR_DIR="$EXPANDED_DATADIR/$GIR_SUFFIX"
++AC_ARG_WITH(gir-dir-prefix,
++		AS_HELP_STRING([--with-gir-dir-prefix], [Director prefix for gir installation]),
++		[GIR_DIR_PREFIX="$withval"], [GIR_DIR_PREFIX="$EXPANDED_DATADIR"])
++GIR_DIR="$GIR_DIR_PREFIX/$GIR_SUFFIX"
+ AC_SUBST(GIR_DIR)
+ AC_DEFINE_UNQUOTED(GIR_DIR, "$GIR_DIR", [Director prefix for gir installation])
+ 
+diff --git a/gobject-introspection-1.0.pc.in b/gobject-introspection-1.0.pc.in
+index a08b5d27..3409856c 100644
+--- a/gobject-introspection-1.0.pc.in
++++ b/gobject-introspection-1.0.pc.in
+@@ -10,7 +10,7 @@ g_ir_scanner=${bindir}/g-ir-scanner
+ g_ir_compiler=${bindir}/g-ir-compiler@EXEEXT@
+ g_ir_generate=${bindir}/g-ir-generate@EXEEXT@
+ gidatadir=${datadir}/gobject-introspection-1.0
+-girdir=${datadir}/gir-1.0
++girdir=@GIR_DIR@
+ typelibdir=${libdir}/girepository-1.0
+ 
+ Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@
+diff --git a/gobject-introspection-no-export-1.0.pc.in b/gobject-introspection-no-export-1.0.pc.in
+index d214d22d..745aaade 100644
+--- a/gobject-introspection-no-export-1.0.pc.in
++++ b/gobject-introspection-no-export-1.0.pc.in
+@@ -9,7 +9,7 @@ includedir=@includedir@
+ g_ir_scanner=${bindir}/g-ir-scanner
+ g_ir_compiler=${bindir}/g-ir-compiler@EXEEXT@
+ g_ir_generate=${bindir}/g-ir-generate@EXEEXT@
+-girdir=${datadir}/gir-1.0
++girdir=@GIR_DIR@
+ typelibdir=${libdir}/girepository-1.0
+ 
+ Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@
+-- 
+2.19.0.rc2
+
diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb
index de898a788b..67817049a5 100644
--- a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb
+++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.0.bb
@@ -17,6 +17,7 @@ SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-$
            file://0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \
            file://0001-giscanner-add-a-lib-dirs-envvar-option.patch \
            file://0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch \
+           file://0001-configure.ac-make-GIR_DIR-configurable.patch \
            "
 
 SRC_URI[md5sum] = "94fec875276262037bfcd51226db12fe"
@@ -24,7 +25,9 @@ SRC_URI[sha256sum] = "27c1590a32749de0a5481ce897772547043e94bccba4bc0a7edb3d8513
 
 SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch"
 
-inherit autotools pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even
+inherit autotools pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script
+
+MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner"
 
 DEPENDS_append = " libffi zlib glib-2.0 python3 flex-native bison-native autoconf-archive"
 
@@ -51,6 +54,7 @@ EXTRA_OECONF_class-target = " \
     --enable-gi-ldd-wrapper=${B}/g-ir-scanner-lddwrapper \
     ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection-data', '--disable-introspection-data', d)} \
 "
+EXTRA_OECONF_append = " --with-gir-dir-prefix=${libdir}"
 
 # Need to ensure ld.so.conf exists so prelink-native works
 # both before we build and if we install from sstate
@@ -94,7 +98,7 @@ EOF
 # This prevents g-ir-scanner from writing cache data to $HOME
 export GI_SCANNER_DISABLE_CACHE=1
 
-g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 "\$@"
+g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@"
 EOF
         chmod +x ${B}/g-ir-scanner-wrapper
 
@@ -178,7 +182,7 @@ FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib"
 
 # .gir files go to dev package, as they're needed for developing (but not for running)
 # things that depends on introspection.
-FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir"
+FILES_${PN}-dev_append = " ${libdir}/gir-*/*.gir"
 FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc"
 
 # These are used by gobject-based packages
-- 
2.18.0



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

* [PATCH 10/10] vala: update vapigen-wrapper
  2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
                   ` (8 preceding siblings ...)
  2018-09-29  5:43 ` [PATCH 09/10] gobject-introspection: fix multilib install file conflicts kai.kang
@ 2018-09-29  5:43 ` kai.kang
  2018-09-29 12:33   ` Richard Purdie
  9 siblings, 1 reply; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:43 UTC (permalink / raw)
  To: openembedded-core

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

gobject-introspection has changed installation paths of .gir files.
Update vapigen-wrapper accordingly.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-devtools/vala/vala.inc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/vala/vala.inc b/meta/recipes-devtools/vala/vala.inc
index b22faad780..9f2f9bb996 100644
--- a/meta/recipes-devtools/vala/vala.inc
+++ b/meta/recipes-devtools/vala/vala.inc
@@ -29,7 +29,7 @@ do_configure_prepend_class-target() {
         # The wrapper will call a native vapigen
         cat > ${B}/vapigen-wrapper << EOF
 #!/bin/sh
-vapigen-${SHRT_VER} "\$@"
+vapigen-${SHRT_VER} --girdir=${STAGING_LIBDIR}/gir-1.0 "\$@"
 EOF
         chmod +x ${B}/vapigen-wrapper
 }
@@ -55,3 +55,5 @@ vapigen_sysroot_preprocess() {
            -e "s|vapigen=.*|vapigen=${bindir}/vapigen-wrapper|" \
            ${SYSROOT_DESTDIR}${libdir}/pkgconfig/vapigen-${SHRT_VER}.pc
 }
+
+SSTATE_SCAN_FILES += "vapigen-wrapper"
-- 
2.18.0



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

* Re: [PATCH 10/10] vala: update vapigen-wrapper
  2018-09-29  5:43 ` [PATCH 10/10] vala: update vapigen-wrapper kai.kang
@ 2018-09-29 12:33   ` Richard Purdie
  2018-09-30  1:26     ` Kang Kai
  0 siblings, 1 reply; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:33 UTC (permalink / raw)
  To: kai.kang, openembedded-core, Alexander Kanavin

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> gobject-introspection has changed installation paths of .gir files.

gobject-introspection has not changed. *We* have changed it.

This is basically why I really don't want to start messing with
upstream code like this as I'm guessing this will be the first of many
such problems.

Has anyone discussed the gobject-introspection gir path issue with
upstream? If data is arch specific, it shouldn't be going into datadir
but into libexec iirc. I'd like to understand the upstream response
before we start hacking around this in OE in a way which will generate
a ton of patches and incompatibility.

Cheers,

Richard



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

* Re: [PATCH 08/10] os-release: fix install file conflict for multilib
  2018-09-29  5:43 ` [PATCH 08/10] os-release: fix install file conflict " kai.kang
@ 2018-09-29 12:37   ` Richard Purdie
  2018-09-30  1:07     ` Kang Kai
  0 siblings, 1 reply; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:37 UTC (permalink / raw)
  To: kai.kang, openembedded-core

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> It fails to create image when install os-release and lib32-os-release 
> both:
> 
> > file /etc/os-release conflicts between attempted installs of
> > os-release-1.0-r0.core2_64 and lib32-os-release-1.0-r0.x86
> 
> The /etc/os-release is a symlink link to ${libdir}/os-release.
> Actually
> the content of files are identical and make /etc/os-release to be
> hard
> link could fix the issue. But according to os-release (5), symlink
> link
> is necessary for initrd environment such as dracut.
> 
> Signed-off-by: Kai Kang <kai.kang@windriver.com>
> ---
>  meta/recipes-core/os-release/os-release.bb | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-core/os-release/os-release.bb
> b/meta/recipes-core/os-release/os-release.bb
> index bf4f815a10..4d5487c06d 100644
> --- a/meta/recipes-core/os-release/os-release.bb
> +++ b/meta/recipes-core/os-release/os-release.bb
> @@ -1,10 +1,12 @@
> -inherit allarch
> -
>  SUMMARY = "Operating system identification"
>  DESCRIPTION = "The /usr/lib/os-release file contains operating
> system identification data."
>  LICENSE = "MIT"
>  INHIBIT_DEFAULT_DEPS = "1"
>  
> +inherit allarch multilib_script
> +
> +MULTILIB_SCRIPTS = "${PN}:${sysconfdir}/os-release"

This is exactly the kind of thing I did not want to see
MUTLILIB_SCRIPTS used for. Its now being proposed everywhere you have
an issue with conflicting files without consideration about what
actually makes sense.

What might make more sense here is only to build os-release for the
main namespace and not any of the multilibs. It could RPROVIDE if
necessary.

Cheers,

Richard



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

* Re: [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib
  2018-09-29  5:43 ` [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib kai.kang
@ 2018-09-29 12:40   ` Richard Purdie
  0 siblings, 0 replies; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:40 UTC (permalink / raw)
  To: kai.kang, openembedded-core

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> update-alternatives is used to handle install file conflicts of
> multilib
> packages in multilib_script.bbclass. And the default priority is used
> for the alternatives which causes QA warning:
> 
> > WARNING: core-image-minimal-1.0-r0 do_rootfs: [log_check] core-
> > image-minimal: found 1 warning message in the logfile
> > [log_check] Warn: update-alternatives: libtool has multiple
> > providers with the same priority, please check
> > .../core-image-minimal/1.0-
> > r0/rootfs/usr/lib/opkg/alternatives/libtool for details
> 
> The same priorities of alternatives are by design, so eliminate the
> warning for alternatives from multilib packages.
> 
> Signed-off-by: Kai Kang <kai.kang@windriver.com>

Sorry, no, this isn't right either :(

If we read the patch where multilib_scripts were introduced:

http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=e3497cc22b969e02efa54e4e54e087dbb91d8ced

it says "standardisation amongst the multilibs on how the alternatives
are named and prioritiesd. The priotitisation code needs to be added
but this change means there is somewhere to add it."

so the intent was to allow the user to define which multilib should be
the higher priority and add in some prioritisation code.

The correct way to fix these warning is to add such code, allowing the
user to specify the order of priorities of the multilibs.

Cheers,

Richard




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

* Re: [PATCH 06/10] libcheck: avoid multilib install file conflict
  2018-09-29  5:43 ` [PATCH 06/10] libcheck: avoid multilib install file conflict kai.kang
@ 2018-09-29 12:42   ` Richard Purdie
  2018-09-30  1:03     ` Kang Kai
  0 siblings, 1 reply; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:42 UTC (permalink / raw)
  To: kai.kang, openembedded-core

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> It has one line different which is a comment in check_stdint.h
> between libcheck multilib packages. And then causes install file
> conflict when install libcheck and lib32-libcheck at same time.
> 
> Remove the comment line from check_stdint.h to fix the issue.
> 
> Signed-off-by: Kai Kang <kai.kang@windriver.com>
> ---
>  meta/recipes-support/libcheck/libcheck_0.12.0.bb | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/meta/recipes-support/libcheck/libcheck_0.12.0.bb
> b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
> index e646d43968..9969e27054 100644
> --- a/meta/recipes-support/libcheck/libcheck_0.12.0.bb
> +++ b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
> @@ -16,6 +16,11 @@ inherit autotools pkgconfig texinfo
>  
>  CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
>  
> +do_install_append_class-target () {
> +    # remove the only one line comment which causes multilib install
> file conflict
> +    sed -i '/^\/\*/ d' ${D}${includedir}/check_stdint.h
> +}

Please do this with a patch, not a sed expression.

The sed expressions are a maintenance nightmare since we don't know
if/when the header may change, or if/when this expression stops
working.

Cheers,

Richard



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

* Re: [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-09-29  5:43 ` [PATCH 05/10] nss: move create blank certificates to pkg_postinst kai.kang
@ 2018-09-29 12:44   ` Richard Purdie
  2018-10-02 15:29     ` Kang Kai
  0 siblings, 1 reply; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:44 UTC (permalink / raw)
  To: kai.kang, openembedded-core

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> There is a multilib install file conflict of nss:
> > file /etc/pki/nssdb/key4.db conflicts between attempted installs of
> > lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64
> 
> Move the creation of blank certificates to pkg_postinst. And check if
> certificates exist already, don't re-create them.
> 
> Signed-off-by: Kai Kang <kai.kang@windriver.com>
> ---
>  meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++---------
> --
>  1 file changed, 20 insertions(+), 12 deletions(-)

This does raise a question - why aren't the generated files the same?
Is there a determinism problem here? This sounds like the image would
change with each build and couldn't be reproduced so we have a bigger
problem?

Cheers,

Richard


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

* Re: [PATCH 03/10] man-db: fix multilib install file conflict
  2018-09-29  5:43 ` [PATCH 03/10] man-db: fix multilib install file conflict kai.kang
@ 2018-09-29 12:44   ` Richard Purdie
  2018-09-30  1:02     ` Kang Kai
  0 siblings, 1 reply; 26+ messages in thread
From: Richard Purdie @ 2018-09-29 12:44 UTC (permalink / raw)
  To: kai.kang, openembedded-core

On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> The first line of config file man_db.conf is the package name. It
> causes
> multilib install file conflict. So remove the first line.
> 
> Signed-off-by: Kai Kang <kai.kang@windriver.com>
> ---
>  meta/recipes-extended/man-db/man-db_2.8.3.bb | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/meta/recipes-extended/man-db/man-db_2.8.3.bb
> b/meta/recipes-extended/man-db/man-db_2.8.3.bb
> index 97e5a3d6fb..da6d291011 100644
> --- a/meta/recipes-extended/man-db/man-db_2.8.3.bb
> +++ b/meta/recipes-extended/man-db/man-db_2.8.3.bb
> @@ -26,6 +26,9 @@ do_install() {
>  	        install -d ${D}/etc/default/volatiles
>  		install -m 0644 ${WORKDIR}/99_mandb
> ${D}/etc/default/volatiles
>  	fi
> +
> +    # the 1st line of man_db.conf is package name which causes
> multilib install file conflict
> +    sed -i '1d' ${D}${sysconfdir}/man_db.conf
>  }

Please do this with a patch, not a sed expression.

The sed expressions are a maintenance nightmare since we don't know
if/when the config file may change, or if/when this expression stops
working.

Cheers,

Richard



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

* Re: [PATCH 03/10] man-db: fix multilib install file conflict
  2018-09-29 12:44   ` Richard Purdie
@ 2018-09-30  1:02     ` Kang Kai
  0 siblings, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-09-30  1:02 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

On 2018年09月29日 20:44, Richard Purdie wrote:
> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>> From: Kai Kang <kai.kang@windriver.com>
>>
>> The first line of config file man_db.conf is the package name. It
>> causes
>> multilib install file conflict. So remove the first line.
>>
>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> ---
>>   meta/recipes-extended/man-db/man-db_2.8.3.bb | 3 +++
>>   1 file changed, 3 insertions(+)
>>
>> diff --git a/meta/recipes-extended/man-db/man-db_2.8.3.bb
>> b/meta/recipes-extended/man-db/man-db_2.8.3.bb
>> index 97e5a3d6fb..da6d291011 100644
>> --- a/meta/recipes-extended/man-db/man-db_2.8.3.bb
>> +++ b/meta/recipes-extended/man-db/man-db_2.8.3.bb
>> @@ -26,6 +26,9 @@ do_install() {
>>   	        install -d ${D}/etc/default/volatiles
>>   		install -m 0644 ${WORKDIR}/99_mandb
>> ${D}/etc/default/volatiles
>>   	fi
>> +
>> +    # the 1st line of man_db.conf is package name which causes
>> multilib install file conflict
>> +    sed -i '1d' ${D}${sysconfdir}/man_db.conf
>>   }
> Please do this with a patch, not a sed expression.
>
> The sed expressions are a maintenance nightmare since we don't know
> if/when the config file may change, or if/when this expression stops
> working.

Got it.

--Kai

>
> Cheers,
>
> Richard
>
>

-- 
Regards,
Neil | Kai Kang



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

* Re: [PATCH 06/10] libcheck: avoid multilib install file conflict
  2018-09-29 12:42   ` Richard Purdie
@ 2018-09-30  1:03     ` Kang Kai
  0 siblings, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-09-30  1:03 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

On 2018年09月29日 20:42, Richard Purdie wrote:
> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>> From: Kai Kang <kai.kang@windriver.com>
>>
>> It has one line different which is a comment in check_stdint.h
>> between libcheck multilib packages. And then causes install file
>> conflict when install libcheck and lib32-libcheck at same time.
>>
>> Remove the comment line from check_stdint.h to fix the issue.
>>
>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> ---
>>   meta/recipes-support/libcheck/libcheck_0.12.0.bb | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/meta/recipes-support/libcheck/libcheck_0.12.0.bb
>> b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
>> index e646d43968..9969e27054 100644
>> --- a/meta/recipes-support/libcheck/libcheck_0.12.0.bb
>> +++ b/meta/recipes-support/libcheck/libcheck_0.12.0.bb
>> @@ -16,6 +16,11 @@ inherit autotools pkgconfig texinfo
>>   
>>   CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
>>   
>> +do_install_append_class-target () {
>> +    # remove the only one line comment which causes multilib install
>> file conflict
>> +    sed -i '/^\/\*/ d' ${D}${includedir}/check_stdint.h
>> +}
> Please do this with a patch, not a sed expression.
>
> The sed expressions are a maintenance nightmare since we don't know
> if/when the header may change, or if/when this expression stops
> working.

Got it. Thanks.

--Kai

>
> Cheers,
>
> Richard
>
>

-- 
Regards,
Neil | Kai Kang



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

* Re: [PATCH 08/10] os-release: fix install file conflict for multilib
  2018-09-29 12:37   ` Richard Purdie
@ 2018-09-30  1:07     ` Kang Kai
  0 siblings, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-09-30  1:07 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

On 2018年09月29日 20:37, Richard Purdie wrote:
> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>> From: Kai Kang <kai.kang@windriver.com>
>>
>> It fails to create image when install os-release and lib32-os-release
>> both:
>>
>>> file /etc/os-release conflicts between attempted installs of
>>> os-release-1.0-r0.core2_64 and lib32-os-release-1.0-r0.x86
>> The /etc/os-release is a symlink link to ${libdir}/os-release.
>> Actually
>> the content of files are identical and make /etc/os-release to be
>> hard
>> link could fix the issue. But according to os-release (5), symlink
>> link
>> is necessary for initrd environment such as dracut.
>>
>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> ---
>>   meta/recipes-core/os-release/os-release.bb | 6 ++++--
>>   1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/recipes-core/os-release/os-release.bb
>> b/meta/recipes-core/os-release/os-release.bb
>> index bf4f815a10..4d5487c06d 100644
>> --- a/meta/recipes-core/os-release/os-release.bb
>> +++ b/meta/recipes-core/os-release/os-release.bb
>> @@ -1,10 +1,12 @@
>> -inherit allarch
>> -
>>   SUMMARY = "Operating system identification"
>>   DESCRIPTION = "The /usr/lib/os-release file contains operating
>> system identification data."
>>   LICENSE = "MIT"
>>   INHIBIT_DEFAULT_DEPS = "1"
>>   
>> +inherit allarch multilib_script
>> +
>> +MULTILIB_SCRIPTS = "${PN}:${sysconfdir}/os-release"
> This is exactly the kind of thing I did not want to see
> MUTLILIB_SCRIPTS used for. Its now being proposed everywhere you have
> an issue with conflicting files without consideration about what
> actually makes sense.
>
> What might make more sense here is only to build os-release for the
> main namespace and not any of the multilibs. It could RPROVIDE if
> necessary.

Robert's patch about "multilib: avoid expanding grub and grub-efi to 
multilib' has been merged to master-next,
I'll do it base on his patch.

Regards,
Kai

>
> Cheers,
>
> Richard
>
>

-- 
Regards,
Neil | Kai Kang



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

* Re: [PATCH 10/10] vala: update vapigen-wrapper
  2018-09-29 12:33   ` Richard Purdie
@ 2018-09-30  1:26     ` Kang Kai
  0 siblings, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-09-30  1:26 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core, Alexander Kanavin

On 2018年09月29日 20:33, Richard Purdie wrote:
> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>> From: Kai Kang <kai.kang@windriver.com>
>>
>> gobject-introspection has changed installation paths of .gir files.
> gobject-introspection has not changed. *We* have changed it.
>
> This is basically why I really don't want to start messing with
> upstream code like this as I'm guessing this will be the first of many
> such problems.
>
> Has anyone discussed the gobject-introspection gir path issue with
> upstream? If data is arch specific, it shouldn't be going into datadir
> but into libexec iirc. I'd like to understand the upstream response
> before we start hacking around this in OE in a way which will generate
> a ton of patches and incompatibility.

I have sent the patch to 
https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/63. 
It seems
no objection but can't build pass for VS2017, so not merged yet.

--Kai


>
> Cheers,
>
> Richard
>
>

-- 
Regards,
Neil | Kai Kang



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

* Re: [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-09-29 12:44   ` Richard Purdie
@ 2018-10-02 15:29     ` Kang Kai
  2018-10-02 15:53       ` richard.purdie
  0 siblings, 1 reply; 26+ messages in thread
From: Kang Kai @ 2018-10-02 15:29 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

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

On 2018年09月29日 20:44, Richard Purdie wrote:
> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>> From: Kai Kang <kai.kang@windriver.com>
>>
>> There is a multilib install file conflict of nss:
>>> file /etc/pki/nssdb/key4.db conflicts between attempted installs of
>>> lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64
>> Move the creation of blank certificates to pkg_postinst. And check if
>> certificates exist already, don't re-create them.
>>
>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> ---
>>   meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++---------
>> --
>>   1 file changed, 20 insertions(+), 12 deletions(-)
> This does raise a question - why aren't the generated files the same?
> Is there a determinism problem here? This sounds like the image would
> change with each build and couldn't be reproduced so we have a bigger
> problem?

It calls certutil to create blank certificates:

certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password

It should be current time related that create blank certificates in 
current directory, the key4.db files are different:

kkang@msp-lpggp1:~/buildarea/bar-build
$ touch empty
kkang@msp-lpggp1:~/buildarea/bar-build
$ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d 
sql:./ -f ./empty
password file contains no data
kkang@msp-lpggp1:~/buildarea/bar-build
$ md5sum *.db
1de1260b3f38349a8633d33acd4e4de7  cert9.db
*7fea1d4dbc99db3ba1b72e30428eb5dc  key4.db*
kkang@msp-lpggp1:~/buildarea/bar-build
$ rm *.db
kkang@msp-lpggp1:~/buildarea/bar-build
$ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d 
sql:./ -f ./empty
password file contains no data
kkang@msp-lpggp1:~/buildarea/bar-build
$ md5sum *.db
1de1260b3f38349a8633d33acd4e4de7  cert9.db
*9fbbae3e2d65d29f51e357a2dc4650a2  key4.db*


Regards,
Kai


>
> Cheers,
>
> Richard
>

-- 
Regards,
Neil | Kai Kang


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

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

* Re: [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-10-02 15:29     ` Kang Kai
@ 2018-10-02 15:53       ` richard.purdie
  2018-10-02 16:33         ` Kang Kai
  2018-10-11  7:55         ` Kang Kai
  0 siblings, 2 replies; 26+ messages in thread
From: richard.purdie @ 2018-10-02 15:53 UTC (permalink / raw)
  To: Kang Kai, openembedded-core

On Tue, 2018-10-02 at 23:29 +0800, Kang Kai wrote:
> On 2018年09月29日 20:44, Richard Purdie wrote:
> > On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
> > > From: Kai Kang <kai.kang@windriver.com>
> > > 
> > > There is a multilib install file conflict of nss:
> > > > file /etc/pki/nssdb/key4.db conflicts between attempted
> > > > installs of
> > > > lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64
> > > 
> > > Move the creation of blank certificates to pkg_postinst. And
> > > check if
> > > certificates exist already, don't re-create them.
> > > 
> > > Signed-off-by: Kai Kang <kai.kang@windriver.com>
> > > ---
> > >  meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++-----
> > > ----
> > > --
> > >  1 file changed, 20 insertions(+), 12 deletions(-)
> > 
> > This does raise a question - why aren't the generated files the
> > same?
> > Is there a determinism problem here? This sounds like the image
> > would
> > change with each build and couldn't be reproduced so we have a
> > bigger
> > problem?
>  
> It calls certutil to create blank certificates: 
> 
> certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password
> 
> It should be current time related that create blank certificates in
> current directory, the key4.db files are different:
> 
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ touch empty
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
> sql:./ -f ./empty 
> password file contains no data
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ md5sum *.db
> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
> *7fea1d4dbc99db3ba1b72e30428eb5dc  key4.db*
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ rm *.db
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
> sql:./ -f ./empty 
> password file contains no data
> kkang@msp-lpggp1:~/buildarea/bar-build
> $ md5sum *.db
> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
> *9fbbae3e2d65d29f51e357a2dc4650a2  key4.db*

Can we generate them with a known standard time then? Is there some way
to specify that or can we add one?

Cheers,

Richard


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

* Re: [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-10-02 15:53       ` richard.purdie
@ 2018-10-02 16:33         ` Kang Kai
  2018-10-11  7:55         ` Kang Kai
  1 sibling, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-10-02 16:33 UTC (permalink / raw)
  To: richard.purdie, openembedded-core

On 2018年10月02日 23:53, richard.purdie@linuxfoundation.org wrote:
> On Tue, 2018-10-02 at 23:29 +0800, Kang Kai wrote:
>> On 2018年09月29日 20:44, Richard Purdie wrote:
>>> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>>>> From: Kai Kang <kai.kang@windriver.com>
>>>>
>>>> There is a multilib install file conflict of nss:
>>>>> file /etc/pki/nssdb/key4.db conflicts between attempted
>>>>> installs of
>>>>> lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64
>>>> Move the creation of blank certificates to pkg_postinst. And
>>>> check if
>>>> certificates exist already, don't re-create them.
>>>>
>>>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>>> ---
>>>>   meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++-----
>>>> ----
>>>> --
>>>>   1 file changed, 20 insertions(+), 12 deletions(-)
>>> This does raise a question - why aren't the generated files the
>>> same?
>>> Is there a determinism problem here? This sounds like the image
>>> would
>>> change with each build and couldn't be reproduced so we have a
>>> bigger
>>> problem?
>>   
>> It calls certutil to create blank certificates:
>>
>> certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password
>>
>> It should be current time related that create blank certificates in
>> current directory, the key4.db files are different:
>>
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ touch empty
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
>> sql:./ -f ./empty
>> password file contains no data
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ md5sum *.db
>> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
>> *7fea1d4dbc99db3ba1b72e30428eb5dc  key4.db*
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ rm *.db
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
>> sql:./ -f ./empty
>> password file contains no data
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ md5sum *.db
>> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
>> *9fbbae3e2d65d29f51e357a2dc4650a2  key4.db*
> Can we generate them with a known standard time then? Is there some way
> to specify that or can we add one?

The md5sum of cert9.db are same but key4.db are different, so I have 
been checking the source code of nss but no conclusion yet.

Regards,
Kai

>
> Cheers,
>
> Richard
>

-- 
Regards,
Neil | Kai Kang



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

* Re: [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-10-02 15:53       ` richard.purdie
  2018-10-02 16:33         ` Kang Kai
@ 2018-10-11  7:55         ` Kang Kai
  1 sibling, 0 replies; 26+ messages in thread
From: Kang Kai @ 2018-10-11  7:55 UTC (permalink / raw)
  To: richard.purdie, openembedded-core

On 2018年10月02日 23:53, richard.purdie@linuxfoundation.org wrote:
> On Tue, 2018-10-02 at 23:29 +0800, Kang Kai wrote:
>> On 2018年09月29日 20:44, Richard Purdie wrote:
>>> On Sat, 2018-09-29 at 13:43 +0800, kai.kang@windriver.com wrote:
>>>> From: Kai Kang <kai.kang@windriver.com>
>>>>
>>>> There is a multilib install file conflict of nss:
>>>>> file /etc/pki/nssdb/key4.db conflicts between attempted
>>>>> installs of
>>>>> lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64
>>>> Move the creation of blank certificates to pkg_postinst. And
>>>> check if
>>>> certificates exist already, don't re-create them.
>>>>
>>>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>>> ---
>>>>   meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++-----
>>>> ----
>>>> --
>>>>   1 file changed, 20 insertions(+), 12 deletions(-)
>>> This does raise a question - why aren't the generated files the
>>> same?
>>> Is there a determinism problem here? This sounds like the image
>>> would
>>> change with each build and couldn't be reproduced so we have a
>>> bigger
>>> problem?
>>   
>> It calls certutil to create blank certificates:
>>
>> certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password
>>
>> It should be current time related that create blank certificates in
>> current directory, the key4.db files are different:
>>
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ touch empty
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
>> sql:./ -f ./empty
>> password file contains no data
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ md5sum *.db
>> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
>> *7fea1d4dbc99db3ba1b72e30428eb5dc  key4.db*
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ rm *.db
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ ./tmp/sysroots-components/x86_64/nss-native/usr/bin/certutil -N -d
>> sql:./ -f ./empty
>> password file contains no data
>> kkang@msp-lpggp1:~/buildarea/bar-build
>> $ md5sum *.db
>> 1de1260b3f38349a8633d33acd4e4de7  cert9.db
>> *9fbbae3e2d65d29f51e357a2dc4650a2  key4.db*
> Can we generate them with a known standard time then? Is there some way
> to specify that or can we add one?

Unfortunately there is no such option for certutil when create new 
databases.

For Fedora, it provides pre-created blank database files. If provide 
blank db files is ok, I'll verify it for all archs.

Regards,
Kai


>
> Cheers,
>
> Richard
>

-- 
Regards,
Neil | Kai Kang



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

* [PATCH 05/10] nss: move create blank certificates to pkg_postinst
  2018-09-29  5:01 [PATCH 00/10] Fix multilib install conflicts kai.kang
@ 2018-09-29  5:01 ` kai.kang
  0 siblings, 0 replies; 26+ messages in thread
From: kai.kang @ 2018-09-29  5:01 UTC (permalink / raw)
  To: openembedded-core

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

There is a multilib install file conflict of nss:
| file /etc/pki/nssdb/key4.db conflicts between attempted installs of
| lib32-nss-3.38-r0.corei7_32 and nss-3.38-r0.corei7_64

Move the creation of blank certificates to pkg_postinst. And check if
certificates exist already, don't re-create them.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-support/nss/nss_3.38.bb | 32 +++++++++++++++++-----------
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/meta/recipes-support/nss/nss_3.38.bb b/meta/recipes-support/nss/nss_3.38.bb
index 904b621a07..74145360b5 100644
--- a/meta/recipes-support/nss/nss_3.38.bb
+++ b/meta/recipes-support/nss/nss_3.38.bb
@@ -211,20 +211,20 @@ do_install_append() {
     sed -i s:OEINCDIR:${includedir}/nss3:g ${D}${libdir}/pkgconfig/nss.pc
 }
 
-do_install_append_class-target() {
-    # Create a blank certificate
-    mkdir -p ${D}${sysconfdir}/pki/nssdb/
-    touch ./empty_password
-    certutil -N -d sql:${D}${sysconfdir}/pki/nssdb/ -f ./empty_password
-    chmod 644 ${D}${sysconfdir}/pki/nssdb/*.db
-    rm ./empty_password
-    # Remove build path prefix
-    sed -i "s:${D}::g"  ${D}${sysconfdir}/pki/nssdb/pkcs11.txt
-}
-
 PACKAGE_WRITE_DEPS += "nss-native"
 pkg_postinst_${PN} () {
     if [ -n "$D" ]; then
+        if [ ! -d $D${sysconfdir}/pki/nssdb/ ]; then
+            # Create a blank certificate
+            mkdir -p $D${sysconfdir}/pki/nssdb/
+            touch $D/empty_password
+            certutil -N -d sql:$D${sysconfdir}/pki/nssdb/ -f $D/empty_password
+            chmod 644 $D${sysconfdir}/pki/nssdb/*.db
+            rm $D/empty_password
+            # Remove build path prefix
+            sed -i "s:$D::g"  $D${sysconfdir}/pki/nssdb/pkcs11.txt
+        fi
+
         for I in $D${libdir}/lib*.chk; do
             DN=`dirname $I`
             BN=`basename $I .chk`
@@ -235,6 +235,15 @@ pkg_postinst_${PN} () {
             fi
         done
     else
+        if [ ! -d ${sysconfdir}/pki/nssdb ]; then
+            # Create a blank certificate
+            mkdir -p ${sysconfdir}/pki/nssdb
+            empty_password=`mktemp`
+            certutil -N -d sql:$D${sysconfdir}/pki/nssdb/ -f $empty_password
+            chmod 644 $D${sysconfdir}/pki/nssdb/*.db
+            rm $empty_password
+        fi
+
         signlibs.sh
     fi
 }
@@ -244,7 +253,6 @@ FILES_${PN}-smime = "\
     ${bindir}/smime \
 "
 FILES_${PN} = "\
-    ${sysconfdir} \
     ${bindir} \
     ${libdir}/lib*.chk \
     ${libdir}/lib*.so \
-- 
2.18.0



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

end of thread, other threads:[~2018-10-11  8:00 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-29  5:43 [PATCH v2 00/10] Fix multilib install conflicts kai.kang
2018-09-29  5:43 ` [PATCH 01/10] cups: fix multilib install file conflicts kai.kang
2018-09-29  5:43 ` [PATCH 02/10] bind: " kai.kang
2018-09-29  5:43 ` [PATCH 03/10] man-db: fix multilib install file conflict kai.kang
2018-09-29 12:44   ` Richard Purdie
2018-09-30  1:02     ` Kang Kai
2018-09-29  5:43 ` [PATCH 04/10] groff: fix multilib install file conflicts kai.kang
2018-09-29  5:43 ` [PATCH 05/10] nss: move create blank certificates to pkg_postinst kai.kang
2018-09-29 12:44   ` Richard Purdie
2018-10-02 15:29     ` Kang Kai
2018-10-02 15:53       ` richard.purdie
2018-10-02 16:33         ` Kang Kai
2018-10-11  7:55         ` Kang Kai
2018-09-29  5:43 ` [PATCH 06/10] libcheck: avoid multilib install file conflict kai.kang
2018-09-29 12:42   ` Richard Purdie
2018-09-30  1:03     ` Kang Kai
2018-09-29  5:43 ` [PATCH 07/10] opkg-utils/update-alternatives: not warn same priorities for multilib kai.kang
2018-09-29 12:40   ` Richard Purdie
2018-09-29  5:43 ` [PATCH 08/10] os-release: fix install file conflict " kai.kang
2018-09-29 12:37   ` Richard Purdie
2018-09-30  1:07     ` Kang Kai
2018-09-29  5:43 ` [PATCH 09/10] gobject-introspection: fix multilib install file conflicts kai.kang
2018-09-29  5:43 ` [PATCH 10/10] vala: update vapigen-wrapper kai.kang
2018-09-29 12:33   ` Richard Purdie
2018-09-30  1:26     ` Kang Kai
  -- strict thread matches above, loose matches on Subject: below --
2018-09-29  5:01 [PATCH 00/10] Fix multilib install conflicts kai.kang
2018-09-29  5:01 ` [PATCH 05/10] nss: move create blank certificates to pkg_postinst kai.kang

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.