Skip to contentSkip to conversation

Fixes for multilib

PATCH New Yi Zhao 1 participant 10 messages Jun 11, 2015

lore
Share & tools
lore

Yi Zhao

author
#0 lore raw

cover Fixes for multilib

The following changes since commit a8b76a264155f4b9f6ba1bebe3ac87640a6f35ed:

cpufrequtils: Create proper symlinks to versioned library (2015-06-08 14:15:25 +0200)

are available in the git repository at:

git://git.openembedded.org/meta-openembedded-contrib yzhao/multilib-fixes
http://cgit.openembedded.org/cgit.cgi/meta-openembedded-contrib/log/?h=yzhao/multilib-fixes

Yi Zhao (9):
meta-oe: fix the install dir for udev rules and files
pm-qa: fix PN -> BPN for multilib
sip: fix PN -> BPN for multilib
engine-pkcs11: fix libdir for multilib
system-setup-keyboard: fix PN -> BPN for multilib
vboxguestdrivers: fix kernel modules install dir for multilib
openjpeg: pass correct libdir to cmake
xdotool: pass correct libdir to make tesseract-lang.inc: set ${S} to fix the QA warning

 .../recipes-connectivity/libmtp/libmtp_1.1.5.bb    |    6 +++---
 meta-oe/recipes-devtools/pm-qa/pm-qa_git.bb        |    6 +++---
 meta-oe/recipes-extended/sip/sip_4.16.4.bb         |    2 +-
 .../recipes-graphics/gphoto2/libgphoto2_2.4.11.bb  |    2 +-
 .../recipes-graphics/openjpeg/openjpeg_2.1.0.bb    |    3 ++-
 .../recipes-graphics/tesseract/tesseract-lang.inc  |    4 +++-
 .../xdotool/xdotool_1.20100416.2809.bb             |    2 +-
 .../engine-pkcs11/engine-pkcs11_0.1.8.bb           |    4 ++--
 .../system-setup-keyboard_0.8.8.bb                 |    2 +-
 meta-oe/recipes-support/udisks/udisks2_2.1.5.bb    |    7 ++++++-
 meta-oe/recipes-support/udisks/udisks_1.0.4.bb     |    4 ++--
 .../usb-modeswitch/usb-modeswitch_2.2.0.bb         |    2 +-
 .../vboxguestdrivers/vboxguestdrivers_4.3.22.bb    |    2 +-
 13 files changed, 27 insertions(+), 19 deletions(-)
Signature · 1 line
1.7.9.5
author
#1 lore raw

PATCH 1/9 meta-oe: fix the install dir for udev rules and files

When enable multilib, some packages try to install udev rules and related files into /lib64/udev/ directory. But these files should be installed in /lib/udev/ directory even on multilib. Use ${nonarch_base_libdir} instead of ${base_libdir} to fix it.

---
 .../recipes-connectivity/libmtp/libmtp_1.1.5.bb    |    6 +++---
 .../recipes-graphics/gphoto2/libgphoto2_2.4.11.bb  |    2 +-
 meta-oe/recipes-support/udisks/udisks2_2.1.5.bb    |    7 ++++++-
 meta-oe/recipes-support/udisks/udisks_1.0.4.bb     |    4 ++--
 .../usb-modeswitch/usb-modeswitch_2.2.0.bb         |    2 +-
 5 files changed, 13 insertions(+), 8 deletions(-)
meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb +3 -3
index de63c72..857895b 100644
@@ -49,13 +49,13 @@ PACKAGES =+ "libmtp-common libmtp-runtime mtp-tools"
 
 RDEPENDS_${PN} += "libmtp-common"
 RRECOMMENDS_${PN} += "libmtp-runtime mtp-tools"
-FILES_${PN}-dbg += "${base_libdir}/udev/.debug/*"
+FILES_${PN}-dbg += "${nonarch_base_libdir}/udev/.debug/*"
 PKG_${PN}-bin = "mtp-tools"
 SUMMARY_${PN}-bin = "Tools for communicating with MTP devices"
 DESCRIPTION_${PN}-bin = "${DESCRIPTION}\nThis package contains tools for communicating with MTP devices."
-FILES_libmtp-common = "${base_libdir}/udev/rules.d/*"
+FILES_libmtp-common = "${nonarch_base_libdir}/udev/rules.d/*"
 SUMMARY_libmtp-common = "The udev rules file for MTP devices"
-FILES_libmtp-runtime = "${base_libdir}/udev/mtp-probe"
+FILES_libmtp-runtime = "${nonarch_base_libdir}/udev/mtp-probe"
 DEPENDS_libmtp-runtime = "libmtp-common"
 SUMMARY_libmtp-runtime = "mtp-probe, used for the MTP udev rules"
 DESCRIPTION_libmtp-runtime = "This package provides mtp-probe, a program to probe newly connected device interfaces from userspace to determine if they are MTP devices, used for udev rules."
meta-oe/recipes-graphics/gphoto2/libgphoto2_2.4.11.bb +1 -1
index 523efa7..cd8fafb 100644
@@ -52,7 +52,7 @@ RDEPENDS_${PN} = "bash"
 
 FILES_libgphotoport = "${libdir}/libgphoto2_port.so.*"
 
-FILES_${PN} += "${base_libdir}/udev/* ${datadir}/hal"
+FILES_${PN} += "${nonarch_base_libdir}/udev/* ${datadir}/hal"
 FILES_${PN}-dbg += "${libdir}/*/*/.debug"
 FILES_${PN}-dev += "${libdir}/*/*/*.la"
 
meta-oe/recipes-support/udisks/udisks2_2.1.5.bb +6 -1
index 4ff6687..1c76d81 100644
@@ -6,6 +6,8 @@ DEPENDS = "libatasmart polkit udev dbus-glib glib-2.0 intltool-native gnome-comm
 
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
 
+RDEPENDS_${PN} = "acl"
+
 SRC_URI = "http://udisks.freedesktop.org/releases/udisks-${PV}.tar.bz2"
 SRC_URI[md5sum] = "73632501002e6de8244f831e38b2b98e"
 SRC_URI[sha256sum] = "2cfcf560447ea44cba2a683342c7062aaaf35e4eb554bed64ac2dd55a70a5fb6"
@@ -19,7 +21,8 @@ EXTRA_OECONF = "--disable-introspection --disable-man"
 FILES_${PN} += "${libdir}/polkit-1/extensions/*.so \
                 ${datadir}/dbus-1/ \
                 ${datadir}/polkit-1 \
-                ${base_libdir}/udev/* \
+                ${nonarch_base_libdir}/udev/* \
+                ${exec_prefix}${nonarch_base_libdir}/udisks2/* \
 "
 
 PACKAGES =+ "${PN}-libs"
@@ -27,5 +30,7 @@ PACKAGES =+ "${PN}-libs"
 FILES_${PN} += "${datadir}/bash-completion"
 FILES_${PN}-libs = "${libdir}/lib*${SOLIBS}"
 
+FILES_${PN}-dbg += "${exec_prefix}${nonarch_base_libdir}/udisks2/.debug"
+
 SYSTEMD_SERVICE_${PN} = "${BPN}.service"
 SYSTEMD_AUTO_ENABLE = "disable"
meta-oe/recipes-support/udisks/udisks_1.0.4.bb +2 -2
index e8a4e55..4bd65d3 100644
@@ -27,10 +27,10 @@ EXTRA_OECONF = "--disable-man-pages"
 FILES_${PN} += "${libdir}/polkit-1/extensions/*.so \
                 ${datadir}/dbus-1/ \
                 ${datadir}/polkit-1 \
-                ${base_libdir}/udev/* \
+                ${nonarch_base_libdir}/udev/* \
 "
 
-FILES_${PN}-dbg += "${base_libdir}/udev/.debug"
+FILES_${PN}-dbg += "${nonarch_base_libdir}/udev/.debug"
 
 RPROVIDES_${PN} += "${PN}-systemd"
 RREPLACES_${PN} += "${PN}-systemd"
meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.2.0.bb +1 -1
index 5e95bb9..52a2f56 100644
@@ -10,7 +10,7 @@ SRC_URI[sha256sum] = "2752103de171ed5f6c8d6a6e3e73e16c9ee3e8e394dd39c5991f7680eb
 
 EXTRA_OEMAKE = "TCL=${bindir}/tclsh"
 
-FILES_${PN} = "${bindir} ${sysconfdir} ${base_libdir}/udev/usb_modeswitch ${sbindir} ${localstatedir}/lib/usb_modeswitch"
+FILES_${PN} = "${bindir} ${sysconfdir} ${nonarch_base_libdir}/udev/usb_modeswitch ${sbindir} ${localstatedir}/lib/usb_modeswitch"
 RDEPENDS_${PN} = "tcl"
 RRECOMMENDS_${PN} = "usb-modeswitch-data"
 
Signature · 1 line
1.7.9.5
author
#2 lore raw

PATCH 2/9 pm-qa: fix PN -> BPN for multilib

In reply to Yi Zhao
---
 meta-oe/recipes-devtools/pm-qa/pm-qa_git.bb |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
meta-oe/recipes-devtools/pm-qa/pm-qa_git.bb +3 -3
index 66804dd..7322df8 100644
@@ -28,7 +28,7 @@ do_compile () {
 
 do_install () {
     install -d ${D}${bindir}
-    install -d ${D}${libdir}/${PN}
+    install -d ${D}${libdir}/${BPN}
 
     # Install the compiled binaries that were built in the previous step
     for x in `find . -name "*.c"`
@@ -45,7 +45,7 @@ do_install () {
         sed -i -e 's#..\/utils\/##' ${script}
 
         script_basename=`basename ${script}`
-        install -m 0755 $script ${D}${libdir}/${PN}/${script_basename}
+        install -m 0755 $script ${D}${libdir}/${BPN}/${script_basename}
     done
 
     # Install the shell scripts NOT in the $libdir directory since those
@@ -55,7 +55,7 @@ do_install () {
         # if the script includes any helper scripts from the $libdir
         # directory then change the source path to the absolute path
         # to reflect the install location of the helper scripts.
-        sed -i -e "s#source ../include#source ${libdir}/${PN}#g" ${script}
+        sed -i -e "s#source ../include#source ${libdir}/${BPN}#g" ${script}
         # Remove hardcoded relative paths
         sed -i -e 's#..\/utils\/##' ${script}
 
Signature · 1 line
1.7.9.5
author
#3 lore raw

PATCH 3/9 sip: fix PN -> BPN for multilib

In reply to Yi Zhao
---
 meta-oe/recipes-extended/sip/sip_4.16.4.bb |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta-oe/recipes-extended/sip/sip_4.16.4.bb +1 -1
index 780ccdc..032d125 100644
@@ -49,6 +49,6 @@ do_install() {
     oe_runmake install
 }
 
-FILES_python-${PN} = "${libdir}/${PYTHON_DIR}/site-packages/"
+FILES_python-${BPN} = "${libdir}/${PYTHON_DIR}/site-packages/"
 FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/.debug"
 
Signature · 1 line
1.7.9.5
author
#4 lore raw

PATCH 4/9 engine-pkcs11: fix libdir for multilib

In reply to Yi Zhao
---
 .../engine-pkcs11/engine-pkcs11_0.1.8.bb           |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta-oe/recipes-support/engine-pkcs11/engine-pkcs11_0.1.8.bb +2 -2
index d665242..a511cfb 100644
@@ -25,5 +25,5 @@ do_install_append () {
     rm -f ${D}${libdir}/openssl/engines/engine_pkcs11.la
 }
 
-FILES_${PN} += "/usr/lib/openssl/engines/engine_pkcs11.so*"
-FILES_${PN}-dbg += "/usr/lib/openssl/engines/.debug/*"
+FILES_${PN} += "${libdir}/openssl/engines/engine_pkcs11.so*"
+FILES_${PN}-dbg += "${libdir}/openssl/engines/.debug/*"
Signature · 1 line
1.7.9.5
author
#5 lore raw

PATCH 5/9 system-setup-keyboard: fix PN -> BPN for multilib

In reply to Yi Zhao
---
 .../system-setup-keyboard_0.8.8.bb                 |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb +1 -1
index d2199c2..8e913c4 100644
@@ -26,4 +26,4 @@ do_install() {
     touch ${D}/etc/X11/xorg.conf.d/00-system-setup-keyboard.conf
 }
 
-FILES_${PN} += "${systemd_unitdir}/system/${PN}.service"
+FILES_${PN} += "${systemd_unitdir}/system/${BPN}.service"
Signature · 1 line
1.7.9.5
author
#6 lore raw

PATCH 6/9 vboxguestdrivers: fix kernel modules install dir for multilib

In reply to Yi Zhao
---
 .../vboxguestdrivers/vboxguestdrivers_4.3.22.bb    |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.22.bb +1 -1
index 46a7be1..270bdd3 100644
@@ -44,7 +44,7 @@ do_compile_append() {
 }
 
 module_do_install() {
-    MODULE_DIR=${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/misc
+    MODULE_DIR=${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/misc
     install -d $MODULE_DIR
     install -m 644 vboxguest.ko $MODULE_DIR
     install -m 644 vboxsf.ko $MODULE_DIR
Signature · 1 line
1.7.9.5
author
#7 lore raw

PATCH 7/9 openjpeg: pass correct libdir to cmake

In reply to Yi Zhao

When MACHINE=qemux86-64 and enable multilib:
ERROR: QA Issue: openjpeg: Files/directories were installed but not
shipped in any package:
/usr/lib
/usr/lib/libopenjp2.so
/usr/lib/libopenjp2.so.2.1.0
/usr/lib/libopenjp2.so.7
/usr/lib/.debug
/usr/lib/pkgconfig
/usr/lib/.debug/libopenjp2.so.2.1.0
/usr/lib/pkgconfig/libopenjp2.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. [installed-vs-shipped]

Pass the correct libdir configuration option to cmake.

---
 .../recipes-graphics/openjpeg/openjpeg_2.1.0.bb    |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
meta-oe/recipes-graphics/openjpeg/openjpeg_2.1.0.bb +2 -1
index 9f6dd57..d28a865 100644
@@ -13,6 +13,7 @@ inherit cmake
 DEPENDS = "libpng tiff lcms"
 
 # standard path for *.cmake
-EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_PACKAGE_DIR=${baselib}/cmake"
+EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_PACKAGE_DIR=${baselib}/cmake \
+                  -DOPENJPEG_INSTALL_LIB_DIR:PATH=${libdir}"
 
 FILES_${PN}-dev += "${libdir}/cmake/*.cmake"
Signature · 1 line
1.7.9.5
author
#8 lore raw

PATCH 8/9 xdotool: pass correct libdir to make

In reply to Yi Zhao

When MACHINE=qemux86-64 and enable multilib:
ERROR: QA Issue: xdotool: Files/directories were installed but not shipped in any package:
/usr/lib
/usr/lib/libxdo.so
/usr/lib/libxdo.so.1
/usr/lib/.debug
/usr/lib/.debug/libxdo.so.1
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. [installed-vs-shipped]

Pass the correct libdir to make, otherwise it assumes $prefix/lib even on multilib.

---
 .../xdotool/xdotool_1.20100416.2809.bb             |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb +1 -1
index 43e6fda..474d298 100644
@@ -15,7 +15,7 @@ SRC_URI = "http://semicomplete.googlecode.com/files/xdotool-${PV}.tar.gz"
 SRC_URI[md5sum] = "1d5be641e512c343abfe5f78b39e6f19"
 SRC_URI[sha256sum] = "42d7271fbc796e53db71bb221f311b9ff3c51d90a71c9487a9bd3101ca39894f"
 
-EXTRA_OEMAKE = "PREFIX=${prefix} INSTALLMAN=${mandir}"
+EXTRA_OEMAKE = "PREFIX=${prefix} INSTALLLIB=${libdir} INSTALLMAN=${mandir}"
 
 do_install() {
     oe_runmake -e install DESTDIR=${D} PREFIX=${prefix}
Signature · 1 line
1.7.9.5
author
#9 lore raw

PATCH 9/9 tesseract-lang.inc: set ${S} to fix the QA warning

In reply to Yi Zhao

The ${S} is not set in the recipe cause the QA warning:
WARNING: tesseract-lang-eng: the directory ${WORKDIR}/${BP} (/buildarea2/build/tmp/work/all-poky-linux/tesseract-lang-eng/3.02-r0/tesseract-lang-eng-3.02)
pointed to by the S variable doesn't exist - please set S within the recipe to point to where the source has been unpacked to

---
 .../recipes-graphics/tesseract/tesseract-lang.inc  |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
meta-oe/recipes-graphics/tesseract/tesseract-lang.inc +3 -1
index 7f69eb1..c40c71d 100644
@@ -3,11 +3,13 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5
 
 SRC_URI = "https://tesseract-ocr.googlecode.com/files/tesseract-ocr-${PV}.${TESSERACT_LANG}.tar.gz"
 
+S = "${WORKDIR}/tesseract-ocr"
+
 inherit allarch
 
 do_install() {
     install -d ${D}${datadir}/tessdata
-    cp ${WORKDIR}/tesseract-ocr/tessdata/${TESSERACT_LANG}.traineddata ${D}${datadir}/tessdata
+    cp ${S}/tessdata/${TESSERACT_LANG}.traineddata ${D}${datadir}/tessdata
 }
 
 FILES_${PN} += "${datadir}/tessdata"
Signature · 1 line
1.7.9.5