diff options
author | Martin Jansa <Martin.Jansa@gmail.com> | 2018-04-26 09:23:02 +0000 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2019-03-24 11:13:28 +0100 |
commit | e45f3d305e25ff2aef9e42697e583e6f69a9b6e6 (patch) | |
tree | 0bf698ed62d258d6e05d5a3129dea2e52b2d2121 /meta/classes/webos_qmake5.bbclass | |
parent | c44fc9b620f762ce68441f834e1a157288a488e6 (diff) | |
download | openembedded-core-contrib-e45f3d305e25ff2aef9e42697e583e6f69a9b6e6.tar.gz |
meta-webosose: import recipes which often reproduce Yocto #12434
* just temporary to make it easier to reproduce, import big part of meta-webosose
and some recipes from meta-oe
* luna-init: /luna-init-fonts/usr/share/fonts/PreludeCompWGL-Light.ttf is owned by uid 1001, which is the same as the user running bitbake. This may be due to host contamination
* qml-webos-framework: /qml-webos-framework/usr/share/dbus-1/system-services/com.webos.qml-app.service is owned by uid 1101, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated]
* to reproduce this you can try to use something like this:
export COMP=luna-init; for i in `seq -w 1 999`; do echo $i; bitbake -v -v -DDDD -f -c package ${COMP} 2>${COMP}-logerr.$i >${COMP}-log.$i; bitbake -v -v -DDDD -f -c package_qa ${COMP} 2>${COMP}-logerr.qa.$i >${COMP}-log.qa.$i || { cp -ra BUILD/work/i586-oe-linux/${COMP}/ ${COMP}-workdir-$i; bitbake -c cleansstate ${COMP} ; } done
export COMP=qml-webos-framework; for i in `seq -w 1 999`; do echo $i; bitbake -v -v -DDDD -f -c package ${COMP} 2>${COMP}-logerr.$i >${COMP}-log.$i; bitbake -v -v -DDDD -f -c package_qa ${COMP} 2>${COMP}-logerr.qa.$i >${COMP}-log.qa.$i || { cp -ra BUILD/work/i586-oe-linux/${COMP}/ ${COMP}-workdir-$i; bitbake -c cleansstate ${COMP} ; } done
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta/classes/webos_qmake5.bbclass')
-rw-r--r-- | meta/classes/webos_qmake5.bbclass | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/meta/classes/webos_qmake5.bbclass b/meta/classes/webos_qmake5.bbclass new file mode 100644 index 0000000000..38165a181f --- /dev/null +++ b/meta/classes/webos_qmake5.bbclass @@ -0,0 +1,78 @@ +# Copyright (c) 2013-2018 LG Electronics, Inc. + +inherit qmake5 +inherit webos_filesystem_paths + +# These are used in the luna-sysmgr recipe +export QT_CONFIGURE_PREFIX_PATH = "${OE_QMAKE_PATH_PREFIX}" +export QT_CONFIGURE_HEADERS_PATH = "${OE_QMAKE_PATH_QT_HEADERS}" +export QT_CONFIGURE_LIBRARIES_PATH = "${OE_QMAKE_PATH_LIBS}" +export QT_CONFIGURE_BINARIES_PATH = "${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}" + +# This is used in the webappmanager recipes +export STAGING_INCDIR + +# Set webOS specific locations for .pr* files to access +EXTRA_QMAKEVARS_PRE += "\ + WEBOS_STAGING_INCDIR=${STAGING_INCDIR} \ +" +# Used by mkspecs/features/webos-variables.prf +EXTRA_QMAKEVARS_PRE += "\ + WEBOS_INSTALL_BINS=${bindir} \ + WEBOS_INSTALL_LIBS=${libdir} \ + WEBOS_INSTALL_HEADERS=${includedir}/ \ + WEBOS_INSTALL_QML=${OE_QMAKE_PATH_QML} \ + WEBOS_INSTALL_QTPLUGINSDIR=${webos_qtpluginsdir} \ + WEBOS_INSTALL_WEBOS_APPLICATIONSDIR=${webos_applicationsdir} \ + WEBOS_PREFERENCESDIR=${webos_preferencesdir} \ + WEBOS_INSTALL_ROOT=${base_prefix} \ +" +# webos-variables.prf is using default value of ${prefix}, but here we use ${OE_QMAKE_PATH_PREFIX} +EXTRA_QMAKEVARS_PRE += "\ + WEBOS_INSTALL_PREFIX=${OE_QMAKE_PATH_PREFIX} \ + WEBOS_INSTALL_DATADIR=${datadir} \ + WEBOS_INSTALL_SYSCONFDIR=${sysconfdir} \ + WEBOS_INSTALL_SYSBUS_DATADIR=${sysbus_datadir} \ + WEBOS_INSTALL_UPSTARTCONFDIR=${webos_upstartconfdir} \ +" +# webos-variables.prf is using default value of webos_sysbus_servicesdir +# but the rest of the system is using singular servicedir +# webosSet(WEBOS_INSTALL_SYSBUS_SERVICESDIR, $$(webos_sysbus_servicesdir), $$WEBOS_INSTALL_SYSBUS_DATADIR/services.d) +# meta-webos/classes/webos_filesystem_paths.bbclass:webos_sysbus_servicedir = "${webos_sysbus_datadir}/services.d" +# Set both here from webos_sysbus_servicedir until PLAT-9971 is fixed +EXTRA_QMAKEVARS_PRE += "\ + WEBOS_INSTALL_SYSBUS_SERVICEDIR=${webos_sysbus_servicedir} \ + WEBOS_INSTALL_SYSBUS_SERVICESDIR=${webos_sysbus_servicedir} \ + WEBOS_INSTALL_SYSBUS_PUBSERVICESDIR=${webos_sysbus_pubservicesdir} \ + WEBOS_INSTALL_SYSBUS_PRVSERVICESDIR=${webos_sysbus_prvservicesdir} \ + WEBOS_INSTALL_SYSBUS_ROLESDIR=${webos_sysbus_rolesdir} \ + WEBOS_INSTALL_SYSBUS_PUBROLESDIR=${webos_sysbus_pubrolesdir} \ + WEBOS_INSTALL_SYSBUS_PRVROLESDIR=${webos_sysbus_prvrolesdir} \ + WEBOS_INSTALL_SYSBUS_APIDIR=${webos_sysbus_apipermissionsdir} \ + WEBOS_INSTALL_SYSBUS_PERMDIR=${webos_sysbus_permissionsdir} \ + WEBOS_INSTALL_SYSBUS_GROUPDIR=${webos_sysbus_groupsdir} \ +" + +# this value is exported in do_configure, so that project file can select MACHINE_NAME +WEBOS_QMAKE_MACHINE_ACTUAL ?= "${MACHINE}" +WEBOS_QMAKE_MACHINE ?= "${WEBOS_QMAKE_MACHINE_ACTUAL}" +# this value is defined only for make through EXTRA_OEMAKE +WEBOS_QMAKE_TARGET ?= "" + +# add only when WEBOS_QMAKE_MACHINE is defined (by default it equals MACHINE) +EXPORT_WEBOS_QMAKE_MACHINE += "${@ 'export MACHINE=${WEBOS_QMAKE_MACHINE}' if d.getVar('WEBOS_QMAKE_MACHINE', True) != '' and bb.data.inherits_class('webos_machine_dep', d) and not bb.data.inherits_class('native', d) else '' }" +EXPORT_WEBOS_QMAKE_MACHINE[vardepvalue] = "${EXPORT_WEBOS_QMAKE_MACHINE}" + +# add only when WEBOS_QMAKE_TARGET is defined (by default it's empty) +EXPORT_WEBOS_QMAKE_TARGET = "${@ 'MACHINE=${WEBOS_QMAKE_TARGET}' if d.getVar('WEBOS_QMAKE_TARGET', True) != '' and bb.data.inherits_class('webos_machine_dep', d) and not bb.data.inherits_class('native', d) else '' }" +EXPORT_WEBOS_QMAKE_TARGET[vardepvalue] = "${EXPORT_WEBOS_QMAKE_TARGET}" + +EXTRA_OEMAKE += "${EXPORT_WEBOS_QMAKE_TARGET}" + +# Add the the native tool in the paths as some project require rcc +# to be available +WEBOS_EXTRA_PATH .= "${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}:" + +do_configure_prepend() { + ${EXPORT_WEBOS_QMAKE_MACHINE} +} |