[meta-freescale] [meta-fsl-demos][PATCH 1/2] qt-in-industrial-embedded-common: add init script for the smarthome demo
Mario Domenech Goulart
mario at ossystems.com.br
Fri Jan 31 05:26:07 PST 2014
Hi Eric,
Sorry for taking so long to reply. Please, see some comments below.
On Mon, 27 Jan 2014 17:41:37 -0700 Eric Nelson <eric.nelson at boundarydevices.com> wrote:
> On 01/17/2014 07:02 AM, Mario Domenech Goulart wrote:
>> Currently, qt-in-industrial-embedded starts no demo automatically when
>> installed. This patch adds an init script so that the smarthome demo
>> can be automatically started on boot.
>>
>> Signed-off-by: Mario Domenech Goulart <mario at ossystems.com.br>
>> ---
>> recipes-qt/qt-in-use/files/smarthome | 37 ++++++++++++++++++++
>> .../qt-in-use/qt-in-industrial-embedded-common.inc | 13 +++++--
>> 2 files changed, 48 insertions(+), 2 deletions(-)
>> create mode 100644 recipes-qt/qt-in-use/files/smarthome
>>
>> diff --git a/recipes-qt/qt-in-use/files/smarthome b/recipes-qt/qt-in-use/files/smarthome
>> new file mode 100644
>> index 0000000..c0aa575
>> --- /dev/null
>> +++ b/recipes-qt/qt-in-use/files/smarthome
>> @@ -0,0 +1,37 @@
>> +#!/bin/sh
>> +
>> +set -e
>> +
>> +SMARTHOME="smarthome"
>> +SMARTHOME_ARGS="`[ -x '__BINDIR__/X' ] && echo '' || echo '-qws'`"
>> +
>> +case "$1" in
>> + start)
>> + echo "Starting $SMARTHOME"
>> + if [ -f __SYSCONFDIR__/profile.d/tslib.sh ]; then
>> + . __SYSCONFDIR__/profile.d/tslib.sh
>> + fi
>> + if [ -e "$TSLIB_TSDEVICE" ]; then
>> + if [ ! -f __SYSCONFDIR__/pointercal ]; then
>> + __BINDIR__/ts_calibrate
>> + fi
>> + QWS_MOUSE_PROTO=tslib:$TSLIB_TSDEVICE $SMARTHOME $SMARTHOME_ARGS &
>> + else
>> + $SMARTHOME $SMARTHOME_ARGS &
>> + fi
>> + ;;
>> + stop)
>> + echo "Stopping $SMARTHOME"
>> + killall $SMARTHOME
>> + ;;
>> + restart)
>> + $0 stop
>> + $0 start
>> + ;;
>> + *)
>> + echo "usage: $0 { start | stop | restart }" >&2
>> + exit 1
>> + ;;
>> +esac
>> +
>> +exit 0
>> diff --git a/recipes-qt/qt-in-use/qt-in-industrial-embedded-common.inc b/recipes-qt/qt-in-use/qt-in-industrial-embedded-common.inc
>> index ea4feef..ad879c5 100644
>> --- a/recipes-qt/qt-in-use/qt-in-industrial-embedded-common.inc
>> +++ b/recipes-qt/qt-in-use/qt-in-industrial-embedded-common.inc
>> @@ -1,10 +1,12 @@
>> DESCRIPTION = "Demos from the industrial embedded segment"
>>
>> -inherit autotools
>> +inherit autotools update-rc.d
>>
>> PV = "0.0+gitr${SRCPV}"
>> SRCREV = "4b10cbfd32391c83251bbc61520eeab03461db0a"
>> -SRC_URI = "git://gitorious.org/qt-in-use/qt-in-industrial-embedded.git"
>> +SRC_URI = "git://gitorious.org/qt-in-use/qt-in-industrial-embedded.git \
>> + file://smarthome \
>> + "
>>
>> PR = "r3"
>>
>> @@ -18,6 +20,10 @@ do_configure_prepend() {
>> do_install_append () {
>> # Set the correct smarthome binary path
>> sed -i -e 's:Exec=.*:Exec=${bindir}/smarthome:g' ${D}${datadir}/applications/smarthome.desktop
>
> This should only be installed when not using X, right?
I'm not sure. I actually haven't touched that recipe part.
>> +
>> + install -d ${D}${sysconfdir}/init.d
>> + install -m 755 ${WORKDIR}/smarthome ${D}${sysconfdir}/init.d/
>> + sed -i -e 's:__BINDIR__:${bindir}:g; s:__SYSCONFDIR__:${sysconfdir}:g' ${D}${sysconfdir}/init.d/smarthome
>> }
>>
>
> When testing using fsl-image-gui on the master branch today, I
> immediately got a ts_calibrate prompt on my HDMI monitor, which was
> frustrating since it doesn't happen to have a touch screen.
>
> Please advise,
It seems that packagegroup-core-tools-testapps is dragging
tslib-calibrate into the image (via RDEPENDS).
packagegroup-core-tools-testapps is added to the image because
fsl-image-gui.bb has
SOC_EXTRA_IMAGE_FEATURES ?= "tools-testapps"
EXTRA_IMAGE_FEATURES += " \
${SOC_EXTRA_IMAGE_FEATURES} \
...
The "tools-testapps" feature makes core-image.bbclass add
packagegroup-core-tools-testapps to the image.
To work around that, you can add
EXTRA_IMAGE_FEATURES_remove = "tools-testapps"
to local.conf. However, a bunch of other packages will be removed from
the image (don't know if they are relevant for your purposes, though --
they sould be "testapps").
I suppose packagegroup-core-tools-testapps should check for
"touchscreen" in MACHINE_FEATURES to avoid the dependency on tslib for
boards that don't have touch devices.
Best wishes.
Mario
--
http://www.ossystems.com.br
More information about the meta-freescale
mailing list