-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of bradt
Sent: Thursday, June 16, 2011 2:21 PM
To: [email protected]
Subject: [meego-commits] 21034: Changes to
MeeGo:1.2:oss:Testing/meegotouch-applauncherd
Hi,
I have made the following changes to meegotouch-applauncherd in project
MeeGo:1.2:oss:Testing. Please review and accept ASAP.
Thank You,
bradt
[This message was auto-generated]
---
Request #21034:
submit: devel:qt-mtf:MeeGo:1.2/meegotouch-applauncherd(r2) ->
MeeGo:1.2:oss:Testing/meegotouch-applauncherd
Message:
* Wed Jun 15 2011 Michael Leibowitz<[email protected]> -
0.30.0
- Update to v0.30.0
- Add lbooster patches
- Make subpackages for some boosters that interfere with each other
- All relate to BMC#19428
State: new 2011-06-16T14:20:57 bradt
Comment: None
changes files:
--------------
--- meegotouch-applauncherd.changes
+++ meegotouch-applauncherd.changes
@@ -0,0 +1,6 @@
+* Wed Jun 15 2011 Michael Leibowitz<[email protected]> - 0.30.0
+- Update to v0.30.0
+- Add lbooster patches
+- Make subpackages for some boosters that interfere with each other
+- All relate to BMC#19428
+
old:
----
meegotouch-applauncherd-0.18.1.tar.bz2
new:
----
0001-Changes-separate-link-dlopen-library-configuration-f.patch
0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
0002-Changes-lbooster-plugin-included-in-build.patch
0003-Changes-improved-booster-plugin-support-in-invoker.patch
0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
Makefile
meegotouch-applauncherd-0.30.0.tar.bz2
spec files:
-----------
--- meegotouch-applauncherd.spec
+++ meegotouch-applauncherd.spec
@@ -7,14 +7,19 @@
Name: meegotouch-applauncherd
Summary: Application launcher for fast startup
-Version: 0.18.1
+Version: 0.30.0
Release: 1
Group: System/Daemons
License: LGPLv2+
URL:
http://meego.gitorious.com/meegotouch/meegotouch-applauncherd
Source0: %{name}-%{version}.tar.bz2
Source100: meegotouch-applauncherd.yaml
-Patch0: BMC14389_add_X-MEEGO-IVI.patch
+Patch0: 0001-Changes-separate-link-dlopen-library-configuration-f.patch
+Patch1:
0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
+Patch2: 0002-Changes-lbooster-plugin-included-in-build.patch
+Patch3:
0003-Changes-improved-booster-plugin-support-in-invoker.patch
+Patch4:
0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
+Patch5: BMC14389_add_X-MEEGO-IVI.patch
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig
BuildRequires: pkgconfig(QtCore)
@@ -24,7 +29,10 @@
BuildRequires: pkgconfig(xextproto)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xext)
+BuildRequires: pkgconfig(mlite)
BuildRequires: cmake
+BuildRequires: meego-qml-launcher-devel
+BuildRequires: python
%description
@@ -34,6 +42,33 @@
+%package mbooster
+Summary: Booster for MTF based applications
+Group: Development/Tools
+Requires: %{name} = %{version}-%{release}
+
+%description mbooster
+Plugin to launch MTf based applications with applauncherd
+
+
+%package qdeclarativebooster
+Summary: Booster for plain QML based applications
+Group: Development/Tools
+Requires: %{name} = %{version}-%{release}
+
+%description qdeclarativebooster
+Plugin to launch plain QML applications with applauncherd
+
+
+%package lbooster
+Summary: Booster for plain MeeGo QML based applications
+Group: Development/Tools
+Requires: %{name} = %{version}-%{release}
+
+%description lbooster
+Plugin to launch MeeGo QML applications with applauncherd
+
+
%package devel
Summary: Development files for launchable applications
Group: Development/Tools
@@ -77,8 +112,18 @@
%prep
%setup -q -n %{name}-%{version}
-# BMC14389_add_X-MEEGO-IVI.patch
+# 0001-Changes-separate-link-dlopen-library-configuration-f.patch
%patch0 -p1
+# 0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
+%patch1 -p1
+# 0002-Changes-lbooster-plugin-included-in-build.patch
+%patch2 -p1
+# 0003-Changes-improved-booster-plugin-support-in-invoker.patch
+%patch3 -p1
+# 0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
+%patch4 -p1
+# BMC14389_add_X-MEEGO-IVI.patch
+%patch5 -p1
#>> setup
#<< setup
@@ -126,13 +171,21 @@
+
+
+
+
+
+
+
+
+
%files
%defattr(-,root,root,-)
%{_bindir}/invoker
%{_libdir}/applauncherd/libapplauncherd.so
-%{_libdir}/applauncherd/libmbooster.so
%{_libdir}/applauncherd/libqtbooster.so
-%{_libdir}/applauncherd/libqdeclarativebooster.so
+%{_libdir}/applauncherd/libebooster.so
%{_libdir}/libmdeclarativecache.so.0
%{_libdir}/libmdeclarativecache.so.0.1
%{_bindir}/applauncherd.bin
@@ -143,12 +196,32 @@
#<< files
+%files mbooster
+%defattr(-,root,root,-)
+%{_libdir}/applauncherd/libmbooster.so
+#>> files mbooster
+#<< files mbooster
+
+%files qdeclarativebooster
+%defattr(-,root,root,-)
+%{_libdir}/applauncherd/libqdeclarativebooster.so
+#>> files qdeclarativebooster
+#<< files qdeclarativebooster
+
+%files lbooster
+%defattr(-,root,root,-)
+%{_libdir}/applauncherd/libmqmllauncherbooster.so
+%doc %{_docdir}/applauncherd/README-LBOOSTER
+#>> files lbooster
+#<< files lbooster
+
%files devel
%defattr(-,root,root,-)
%{_libdir}/pkgconfig/meegotouch-boostable.pc
%{_libdir}/pkgconfig/qdeclarative-boostable.pc
%{_libdir}/pkgconfig/qt-boostable.pc
%{_includedir}/applauncherd/mdeclarativecache.h
+%{_includedir}/applauncherd/MDeclarativeCache
%{_datadir}/qt4/mkspecs/features/meegotouch-boostable.prf
%{_datadir}/qt4/mkspecs/features/qt-boostable.prf
%{_datadir}/qt4/mkspecs/features/qdeclarative-boostable.prf
@@ -177,30 +250,22 @@
%{_bindir}/fala_gettime_ms
%{_bindir}/fala_pixelchanged
%{_bindir}/fala_wl
-%{_bindir}/fala_wl.launch
%{_bindir}/fala_wol
-%{_bindir}/fala_wol.sh
%{_bindir}/fala_gettime
-%{_bindir}/fala_status.launch
%{_bindir}/fala_ft_hello1
%{_bindir}/fala_ft_hello2
-%{_bindir}/fala_ft_hello.launch
-%{_bindir}/fala_ft_hello1.launch
-%{_bindir}/fala_ft_hello2.launch
-%{_bindir}/fala_testapp
-%{_bindir}/fala_ft_themetest.launch
%{_bindir}/fala_ft_themetest
%{_bindir}/fala_windowid
%{_bindir}/fala_multi-instance
%{_bindir}/fala_qml_helloworld
-%{_bindir}/fala_qml_helloworld.launch
%{_bindir}/fala_qml_helloworld1
-%{_bindir}/fala_qml_helloworld1.launch
%{_bindir}/fala_qml_helloworld2
-%{_bindir}/fala_qml_helloworld2.launch
+%{_bindir}/fala_e_helloworld1
+%{_bindir}/fala_e_helloworld2
%{_bindir}/fala_qml_wl
-%{_bindir}/fala_qml_wl.launch
%{_bindir}/fala_qml_wol
+%{_bindir}/fala_focus
+%{_bindir}/fala_status
%{_bindir}/xsendevent
%{_datadir}/themes/base/meegotouch/fala_ft_themetest/svg/baa.svg
%{_datadir}/dbus-1/services/com.nokia.fala_testapp.service
@@ -221,22 +286,38 @@
%{_libdir}/applauncherd-tests/ut_connection
%{_libdir}/applauncherd-tests/ut_mbooster
%{_libdir}/applauncherd-tests/ut_qtbooster
+%{_libdir}/applauncherd-tests/ut_ebooster
%{_libdir}/applauncherd-tests/ut_socketmanager
%{_libdir}/applauncherd-tests/ut_dbooster
+%{_datadir}/applauncherd-testscripts/view.qml
+%{_datadir}/fala_images/landscape.jpg
+%{_datadir}/fala_images/portrait.jpg
%{_datadir}/applauncherd-M-testscripts/check_pipes.py
+%{_datadir}/applauncherd-M-testscripts/check_pipes.pyc
+%{_datadir}/applauncherd-M-testscripts/check_pipes.pyo
+%{_datadir}/applauncherd-M-testscripts/fala_wid
+%{_datadir}/applauncherd-M-testscripts/fala_xres_wl
+%{_datadir}/applauncherd-M-testscripts/fala_xres_wol
%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.py
+%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.pyc
+%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.pyo
%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.sh
%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.py
+%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.pyc
+%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.pyo
%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.sh
%{_datadir}/applauncherd-M-testscripts/tc_theming.rb
%{_datadir}/applauncherd-M-testscripts/test-func-launcher.py
+%{_datadir}/applauncherd-M-testscripts/test-func-launcher.pyc
+%{_datadir}/applauncherd-M-testscripts/test-func-launcher.pyo
%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.py
-%{_datadir}/applauncherd-M-testscripts/ts_prestartapp.rb
-%{_datadir}/applauncherd-M-testscripts/fala_wid
-%{_datadir}/applauncherd-M-testscripts/fala_xres_wl
-%{_datadir}/applauncherd-M-testscripts/fala_xres_wol
+%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.pyc
+%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.pyo
%{_datadir}/applauncherd-M-testscripts/test-perf.rb
+%{_datadir}/applauncherd-M-testscripts/ts_prestartapp.rb
%{_datadir}/applauncherd-M-testscripts/utils.py
+%{_datadir}/applauncherd-M-testscripts/utils.pyc
+%{_datadir}/applauncherd-M-testscripts/utils.pyo
%{_datadir}/themes/base/meegotouch/fala_ft_themetest/style/fala_ft_them
etest.css
%{_datadir}/applications/fala_wl.desktop
%{_datadir}/applications/fala_wol.desktop
other changes:
--------------
++++++ 0001-Changes-separate-link-dlopen-library-configuration-f.patch (new)
--- 0001-Changes-separate-link-dlopen-library-configuration-f.patch
+++ 0001-Changes-separate-link-dlopen-library-configuration-f.patch
+From 7acb0d1cfa4467ae0845373e0757eb6761c6081e Mon Sep 17 00:00:00
2001
+From: Antti Kervinen<[email protected]>
+Date: Thu, 9 Jun 2011 11:13:36 +0300
+Subject: [PATCH] Changes: separate link/dlopen library configuration for
MeeGo
+
+---
+ scripts/libraries_meego.py | 7 +++++++
+ scripts/library-helper.py | 10 +++++++++-
+ 2 files changed, 16 insertions(+), 1 deletions(-)
+ create mode 100644 scripts/libraries_meego.py
+
+diff --git a/scripts/libraries_meego.py b/scripts/libraries_meego.py
+new file mode 100644
+index 0000000..529ce63
+--- /dev/null
++++ b/scripts/libraries_meego.py
+@@ -0,0 +1,7 @@
++# Library statuses
++D = 0 # dlopen
++L = 1 # link
++
++libraries = [
++ (D, "/usr/lib/libmeegoqmllauncher.so.0",
"-lmeegoqmllauncher", "libmeegoqmllauncher", "meego-qml-launcher-devel"),
++]
+diff --git a/scripts/library-helper.py b/scripts/library-helper.py
+index d5a5855..4ad1118 100755
+--- a/scripts/library-helper.py
++++ b/scripts/library-helper.py
+@@ -28,7 +28,7 @@ real_runtime_deps = set(['${shlibs:Depends}',
+ D = 0 # dlopen
+ L = 1 # link
+
+-libraries = [
++libraries_nokia = [
+ # Library
Linker flags, Binary package, Dev package
+ #(L, "/usr/lib/libcontactsvoicemail.so.0",
"-lcontactsvoicemail", "libcontactsvoicemail0", "libcontactswidgets-dev"),
+ #(L, "/usr/lib/libmaemomeegotouchcalendarinterface.so.1",
"-lmaemomeegotouchcalendarinterface", "maemo-meegotouch-interfaces",
"maemo-meegotouch-interfaces-dev"),
+@@ -184,6 +184,14 @@ libraries = [
+ (L, "/lib/librt-2.10.1.so",
"-lrt-2.10.1", "libc6", "libc6"),
+ ]
+
++# Choose library list based on build environment
++libraries = libraries_nokia
++try:
++ if "MeeGo" in file("/etc/meego-release").read():
++ import libraries_meego
++ libraries=libraries_meego.libraries
++except: pass
++
+ import sys
+ import fileinput
+ import re
+--
+1.7.2.2
+
++++++ 0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
(new)
--- 0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
+++ 0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
+From a438ca6183251a30d7ab8bf1f9173a2ded94191d Mon Sep 17 00:00:00
2001
+From: Antti Kervinen<[email protected]>
+Date: Sun, 15 May 2011 13:33:04 -0700
+Subject: [PATCH 1/4] New: Type l booster for meego-qml-launcher QML
applications
+
+Note: lbooster is not automatically compiled, needs to be added
+ to src/CMakeLists.txt.
+---
+ src/ebooster/ebooster.cpp | 1 +
+ src/invoker/invokelib.h | 1 +
+ src/invoker/invoker.c | 8 ++-
+ src/launcherlib/booster.h | 6 +-
+ src/lbooster/CMakeLists.txt | 26 ++++++++
+ src/lbooster/README-LBOOSTER | 15 +++++
+ src/lbooster/mqmllauncherbooster.cpp | 105
++++++++++++++++++++++++++++++++++
+ src/lbooster/mqmllauncherbooster.h | 95
++++++++++++++++++++++++++++++
+ src/lbooster/pluginfactory.cpp | 45 ++++++++++++++
+ 9 files changed, 298 insertions(+), 4 deletions(-)
+ create mode 100644 src/lbooster/CMakeLists.txt
+ create mode 100644 src/lbooster/README-LBOOSTER
+ create mode 100644 src/lbooster/mqmllauncherbooster.cpp
+ create mode 100644 src/lbooster/mqmllauncherbooster.h
+ create mode 100644 src/lbooster/pluginfactory.cpp
+
+diff --git a/src/ebooster/ebooster.cpp b/src/ebooster/ebooster.cpp
+index fe911e4..745ad27 100644
+--- a/src/ebooster/ebooster.cpp
++++ b/src/ebooster/ebooster.cpp
+@@ -20,6 +20,7 @@
+ #include "ebooster.h"
+ #include "logger.h"
+
++#include<string.h>
+ #include<errno.h>
+
+ #ifdef HAVE_MCOMPONENTCACHE
+diff --git a/src/invoker/invokelib.h b/src/invoker/invokelib.h
+index 5af9584..2eb5b8e 100644
+--- a/src/invoker/invokelib.h
++++ b/src/invoker/invokelib.h
+@@ -31,5 +31,6 @@ void invoke_send_str(int fd, char *str);
+ #define INVOKER_QT_SOCK "/tmp/boostq"
+ #define INVOKER_QDECL_SOCK "/tmp/boostd"
+ #define INVOKER_EXEC_SOCK "/tmp/booste"
++#define INVOKER_QMLL_SOCK "/tmp/boostl"
+
+ #endif
+diff --git a/src/invoker/invoker.c b/src/invoker/invoker.c
+index 91c8910..410a887 100644
+--- a/src/invoker/invoker.c
++++ b/src/invoker/invoker.c
+@@ -68,7 +68,7 @@ static const unsigned char
EXIT_STATUS_APPLICATION_NOT_FOUND = 0x7f;
+ // QDECL_APP : QDeclarative (QML) application
+ // EXEC_APP : Executable generic application (can be used with splash
screen)
+ //
+-enum APP_TYPE { M_APP, QT_APP, QDECL_APP, EXEC_APP, UNKNOWN_APP };
++enum APP_TYPE { M_APP, QT_APP, QDECL_APP, EXEC_APP, QMLL_APP,
UNKNOWN_APP };
+
+ // Environment
+ extern char ** environ;
+@@ -234,6 +234,10 @@ static int invoker_init(enum APP_TYPE app_type)
+ {
+ strncpy(sun.sun_path, INVOKER_EXEC_SOCK, maxSize);
+ }
++ else if (app_type == QMLL_APP)
++ {
++ strncpy(sun.sun_path, INVOKER_QMLL_SOCK, maxSize);
++ }
+ else
+ {
+ die(1, "Unknown type of application: %d\n", app_type);
+@@ -770,6 +774,8 @@ int main(int argc, char *argv[])
+ app_type = QDECL_APP;
+ else if (strcmp(optarg, "e") == 0)
+ app_type = EXEC_APP;
++ else if (strcmp(optarg, "l") == 0)
++ app_type = QMLL_APP;
+ else
+ {
+ report(report_error, "Unknown application type: %s \n",
optarg);
+diff --git a/src/launcherlib/booster.h b/src/launcherlib/booster.h
+index 5bbc56d..4aa91b1 100644
+--- a/src/launcherlib/booster.h
++++ b/src/launcherlib/booster.h
+@@ -223,6 +223,9 @@ protected:
+ //! Reset out-of-memory killer adjustment
+ void resetOomAdj();
+
++ //! Data structure representing the application to be invoked
++ AppData* m_appData;
++
+ private:
+
+ //! Disable copy-constructor
+@@ -238,9 +241,6 @@ private:
+ //! Helper method: load the library and find out address for "main".
+ void* loadMain();
+
+- //! Data structure representing the application to be invoked
+- AppData* m_appData;
+-
+ //! Socket connection to invoker
+ Connection* m_connection;
+
+diff --git a/src/lbooster/CMakeLists.txt b/src/lbooster/CMakeLists.txt
+new file mode 100644
+index 0000000..3516e1c
+--- /dev/null
++++ b/src/lbooster/CMakeLists.txt
+@@ -0,0 +1,26 @@
++include(FindX11)
++
++# Qt support
++include(${QT_USE_FILE})
++
++set(LAUNCHER "${CMAKE_HOME_DIRECTORY}/src/launcherlib")
++set(COMMON "${CMAKE_HOME_DIRECTORY}/src/common")
++
++include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${COMMON}
${LAUNCHER} /usr/include/mlite /usr/include/meegoqmllauncher)
++
++# Set sources
++set(PLUGINSRC mqmllauncherbooster.cpp pluginfactory.cpp
${LAUNCHER}/appdata.cpp ${LAUNCHER}/booster.cpp
++${LAUNCHER}/connection.cpp ${LAUNCHER}/logger.cpp
++${LAUNCHER}/singleinstance.cpp ${LAUNCHER}/socketmanager.cpp
${COMMON}/eventhandler.cpp)
++set(MOC_HDRS ${COMMON}/eventhandler.h)
++qt4_wrap_cpp(MOC_SRC ${MOC_HDRS})
++
++# Set executables
++add_library(mqmllauncherbooster MODULE ${PLUGINSRC} ${MOC_SRC})
++set_target_properties(mqmllauncherbooster PROPERTIES
++ COMPILE_FLAGS -fvisibility=hidden)
++target_link_libraries(mqmllauncherbooster ${LIBDL} "-lmeegoqmllauncher")
++
++# Add install rule
++install(TARGETS mqmllauncherbooster DESTINATION /usr/lib/applauncherd/)
++install(FILES README-LBOOSTER DESTINATION
/usr/share/doc/applauncherd)
+diff --git a/src/lbooster/README-LBOOSTER
b/src/lbooster/README-LBOOSTER
+new file mode 100644
+index 0000000..459ad5f
+--- /dev/null
++++ b/src/lbooster/README-LBOOSTER
+@@ -0,0 +1,15 @@
++This File
++=========
++
++mqmlbooster speeds up launching pure QML applications which would
++otherwise be launched with meego-qml-launcher.
++
++Usage:
++
++Replace original launch command
++
++meego-qml-launcher --app appname --cmd cmd-to-app
++
++with
++
++invoker --type=l meego-qml-launcher --app appname --cmd cmd-to-app
+diff --git a/src/lbooster/mqmllauncherbooster.cpp
b/src/lbooster/mqmllauncherbooster.cpp
+new file mode 100644
+index 0000000..6f01c62
+--- /dev/null
++++ b/src/lbooster/mqmllauncherbooster.cpp
+@@ -0,0 +1,105 @@
++/*************************************************************
**************
++**
++** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
++** All rights reserved.
++** Contact: Nokia Corporation ([email protected])
++**
++** This file is part of applauncherd
++**
++** If you have questions regarding the use of this file, please contact
++** Nokia at [email protected].
++**
++** This library is free software; you can redistribute it and/or
++** modify it under the terms of the GNU Lesser General Public
++** License version 2.1 as published by the Free Software Foundation
++** and appearing in the file LICENSE.LGPL included in the packaging
++** of this file.
++**
++**************************************************************
**************/
++
++#include "mqmllauncherbooster.h"
++#include "connection.h"
++
++#include<meegoqmllauncher.h>
++
++const string MQMLLauncherBooster::m_socketId = "/tmp/boostl";
++const string MQMLLauncherBooster::m_temporaryProcessName =
"booster-l";
++
++const string& MQMLLauncherBooster::socketId() const
++{
++ return m_socketId;
++}
++
++const string& MQMLLauncherBooster::socketName()
++{
++ return m_socketId;
(225 more lines skipped)
++++++ 0002-Changes-lbooster-plugin-included-in-build.patch (new)
--- 0002-Changes-lbooster-plugin-included-in-build.patch
+++ 0002-Changes-lbooster-plugin-included-in-build.patch
+From 14a191ee160a1f219e6d3587f652334d90c52548 Mon Sep 17 00:00:00
2001
+From: Antti Kervinen<[email protected]>
+Date: Tue, 14 Jun 2011 16:09:20 +0300
+Subject: [PATCH 2/4] Changes: lbooster plugin included in build
+
+---
+ src/CMakeLists.txt | 3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index b228eab..d8f5d1e 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -19,6 +19,9 @@ add_subdirectory(qtbooster)
+ # Sub build: qdeclarativebooster plugin
+ add_subdirectory(qdeclarativebooster)
+
++# Sub build: lbooster plugin
++add_subdirectory(lbooster)
++
+ # Sub build: single-instance binary / library
+ add_subdirectory(single-instance)
+
+--
+1.7.2.2
+
++++++ 0003-Changes-improved-booster-plugin-support-in-invoker.patch (new)
--- 0003-Changes-improved-booster-plugin-support-in-invoker.patch
+++ 0003-Changes-improved-booster-plugin-support-in-invoker.patch
+From 93f957fee12367dfd110c3d1e90875fbb6858877 Mon Sep 17 00:00:00
2001
+From: Antti Kervinen<[email protected]>
+Date: Tue, 14 Jun 2011 16:23:20 +0300
+Subject: [PATCH 3/4] Changes: improved booster plugin support in invoker
+
+Invoker accepts any char as application type. If a string is
+given, the first char will define the type.
+---
+ src/invoker/invokelib.c | 1 -
+ src/invoker/invokelib.h | 6 ----
+ src/invoker/invoker.c | 67 +++++++++-------------------------------------
+ 3 files changed, 13 insertions(+), 61 deletions(-)
+
+diff --git a/src/invoker/invokelib.c b/src/invoker/invokelib.c
+index fb516c7..ff64d15 100644
+--- a/src/invoker/invokelib.c
++++ b/src/invoker/invokelib.c
+@@ -74,4 +74,3 @@ void invoke_send_str(int fd, char *str)
+ write(fd, str, size);
+ }
+ }
+-
+diff --git a/src/invoker/invokelib.h b/src/invoker/invokelib.h
+index 2eb5b8e..8d47efd 100644
+--- a/src/invoker/invokelib.h
++++ b/src/invoker/invokelib.h
+@@ -27,10 +27,4 @@ bool invoke_recv_msg(int fd, uint32_t *msg);
+
+ void invoke_send_str(int fd, char *str);
+
+-#define INVOKER_M_SOCK "/tmp/boostm"
+-#define INVOKER_QT_SOCK "/tmp/boostq"
+-#define INVOKER_QDECL_SOCK "/tmp/boostd"
+-#define INVOKER_EXEC_SOCK "/tmp/booste"
+-#define INVOKER_QMLL_SOCK "/tmp/boostl"
+-
+ #endif
+diff --git a/src/invoker/invoker.c b/src/invoker/invoker.c
+index 410a887..721b144 100644
+--- a/src/invoker/invoker.c
++++ b/src/invoker/invoker.c
+@@ -62,13 +62,7 @@ static const unsigned int MAX_RESPAWN_DELAY = 10;
+ static const unsigned char EXIT_STATUS_APPLICATION_CONNECTION_LOST =
0xfa;
+ static const unsigned char EXIT_STATUS_APPLICATION_NOT_FOUND = 0x7f;
+
+-// Enumeration of possible application types:
+-// M_APP : MeeGo Touch application
+-// QT_APP : Qt/generic application
+-// QDECL_APP : QDeclarative (QML) application
+-// EXEC_APP : Executable generic application (can be used with splash
screen)
+-//
+-enum APP_TYPE { M_APP, QT_APP, QDECL_APP, EXEC_APP, QMLL_APP,
UNKNOWN_APP };
++const char * sockPathPrefix = "/tmp/boost";
+
+ // Environment
+ extern char ** environ;
+@@ -203,10 +197,12 @@ static bool invoke_recv_ack(int fd)
+ }
+
+ // Inits a socket connection for the given application type
+-static int invoker_init(enum APP_TYPE app_type)
++static int invoker_init(char app_type)
+ {
+ int fd;
+ struct sockaddr_un sun;
++ const int maxSize = sizeof(sun.sun_path) - 1;
++ const int sockPathSize = strlen(sockPathPrefix) + 1;
+
+ fd = socket(PF_UNIX, SOCK_STREAM, 0);
+ if (fd< 0)
+@@ -217,34 +213,18 @@ static int invoker_init(enum APP_TYPE app_type)
+
+ sun.sun_family = AF_UNIX; //AF_FILE;
+
+- const int maxSize = sizeof(sun.sun_path) - 1;
+- if(app_type == M_APP)
++ // sun_path will be sockPathPrefix + app_type + '\0'
++ strncpy(sun.sun_path, sockPathPrefix, maxSize);
++ if (sockPathSize<= maxSize)
+ {
+- strncpy(sun.sun_path, INVOKER_M_SOCK, maxSize);
+- }
+- else if (app_type == QT_APP)
+- {
+- strncpy(sun.sun_path, INVOKER_QT_SOCK, maxSize);
+- }
+- else if (app_type == QDECL_APP)
+- {
+- strncpy(sun.sun_path, INVOKER_QDECL_SOCK, maxSize);
+- }
+- else if (app_type == EXEC_APP)
+- {
+- strncpy(sun.sun_path, INVOKER_EXEC_SOCK, maxSize);
+- }
+- else if (app_type == QMLL_APP)
+- {
+- strncpy(sun.sun_path, INVOKER_QMLL_SOCK, maxSize);
++ sun.sun_path[sockPathSize - 1] = app_type;
++ sun.sun_path[sockPathSize] = '\0';
+ }
+ else
+ {
+- die(1, "Unknown type of application: %d\n", app_type);
++ sun.sun_path[maxSize] = '\0';
+ }
+
+- sun.sun_path[maxSize] = '\0';
+-
+ if (connect(fd, (struct sockaddr *)&sun, sizeof(sun))< 0)
+ {
+ error("Failed to initiate connect on the socket.\n");
+@@ -656,7 +636,7 @@ static void invoke_fallback(char **prog_argv, char
*prog_name, bool wait_term)
+
+ // Invokes the given application
+ static int invoke(int prog_argc, char **prog_argv, char *prog_name,
+- enum APP_TYPE app_type, uint32_t magic_options,
bool wait_term, unsigned int respawn_delay,
++ char app_type, uint32_t magic_options, bool
wait_term, unsigned int respawn_delay,
+ char *splash_file, char *landscape_splash_file)
+ {
+ int status = 0;
+@@ -685,7 +665,7 @@ static int invoke(int prog_argc, char **prog_argv,
char *prog_name,
+
+ int main(int argc, char *argv[])
+ {
+- enum APP_TYPE app_type = UNKNOWN_APP;
++ char app_type = '\0';
+ int prog_argc = 0;
+ uint32_t magic_options = 0;
+ bool wait_term = true;
+@@ -766,21 +746,7 @@ int main(int argc, char *argv[])
+ break;
+
+ case 't':
+- if (strcmp(optarg, "m") == 0)
+- app_type = M_APP;
+- else if (strcmp(optarg, "q") == 0 || strcmp(optarg, "qt") == 0)
+- app_type = QT_APP;
+- else if (strcmp(optarg, "d") == 0)
+- app_type = QDECL_APP;
+- else if (strcmp(optarg, "e") == 0)
+- app_type = EXEC_APP;
+- else if (strcmp(optarg, "l") == 0)
+- app_type = QMLL_APP;
+- else
+- {
+- report(report_error, "Unknown application type: %s \n",
optarg);
+- usage(1);
+- }
++ app_type = optarg[0];
+ break;
+
+ case 'd':
+@@ -846,13 +812,6 @@ int main(int argc, char *argv[])
+ return EXIT_STATUS_APPLICATION_NOT_FOUND;
+ }
+
+- // Check if application type is unknown
+- if (app_type == UNKNOWN_APP)
+- {
+- report(report_error, "Application's type is unknown.\n");
+- usage(1);
+- }
+-
+ if (pipe(g_signal_pipe) == -1)
+ {
+ report(report_error, "Creating a pipe for Unix signals failed!\n");
+--
+1.7.2.2
+
++++++ 0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
(new)
--- 0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
+++ 0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
+From 5b24f900d46df8ced810be06b5ae38dd5a043d94 Mon Sep 17 00:00:00
2001
+From: Antti Kervinen<[email protected]>
+Date: Tue, 14 Jun 2011 16:25:23 +0300
+Subject: [PATCH 4/4] Hack: remove libmeegotouch dependency from the event
handler
+
+---
+ src/common/eventhandler.cpp | 12 ++++++------
+ 1 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/common/eventhandler.cpp b/src/common/eventhandler.cpp
+index be2d1e7..f44672b 100644
+--- a/src/common/eventhandler.cpp
++++ b/src/common/eventhandler.cpp
+@@ -1,6 +1,6 @@
+ #include<QtConcurrentRun>
+ #include<QApplication>
+-#include<MApplication>
++// #include<MApplication> changed to QCoreApplication
+
+ #include "coverage.h"
+ #include "eventhandler.h"
+@@ -23,8 +23,8 @@ void EventHandler::runEventLoop()
+ if (m_type == MEventHandler)
+ {
+ // Exit from event loop when invoker is ready to connect
+- connect(this, SIGNAL(connectionAccepted()),
MApplication::instance(), SLOT(quit()));
+- connect(this, SIGNAL(connectionRejected()),
MApplication::instance(), SLOT(quit()));
++ connect(this, SIGNAL(connectionAccepted()),
QCoreApplication::instance(), SLOT(quit()));
++ connect(this, SIGNAL(connectionRejected()),
QCoreApplication::instance(), SLOT(quit()));
+
+ // Enable theme change handler
+ m_item = new MGConfItem(MEEGOTOUCH_THEME_GCONF_KEY,
0);
+@@ -61,7 +61,7 @@ void EventHandler::runEventLoop()
+
+ // Run event loop so application instance can receive notifications
+ if (m_type == MEventHandler)
+- MApplication::exec();
++ QCoreApplication::exec();
+ else if (m_type == QEventHandler)
+ QApplication::exec();
+
+@@ -96,7 +96,7 @@ void EventHandler::notifyThemeChange()
+ #endif
+
+ // only MApplication is connected to this signal
+- MApplication::quit();
++ QCoreApplication::quit();
+ _exit(EXIT_SUCCESS);
+ }
+
+@@ -120,7 +120,7 @@ void EventHandler::handleSigHup()
+ #endif
+
+ if (m_type == MEventHandler)
+- MApplication::quit();
++ QCoreApplication::quit();
+ else if (m_type == QEventHandler)
+ QApplication::quit();
+
+--
+1.7.2.2
+
++++++ Makefile (new)
--- Makefile
+++ Makefile
+PKG_NAME := meegotouch-applauncherd
+SPECFILE = $(addsuffix .spec, $(PKG_NAME))
+YAMLFILE = $(addsuffix .yaml, $(PKG_NAME))
+
+
+include /usr/share/packaging-tools/Makefile.common
++++++ meegotouch-applauncherd-0.18.1.tar.bz2 ->
meegotouch-applauncherd-0.30.0.tar.bz2
26295 lines of diff (skipped)
++++++ meegotouch-applauncherd.yaml
--- meegotouch-applauncherd.yaml
+++ meegotouch-applauncherd.yaml
@@ -1,6 +1,6 @@
Name: meegotouch-applauncherd
Summary: Application launcher for fast startup
-Version: 0.18.1
+Version: 0.30.0
Release: 1
Group: System/Daemons
License: LGPLv2+
@@ -8,7 +8,12 @@
Sources:
- "%{name}-%{version}.tar.bz2"
Patches:
- - BMC14389_add_X-MEEGO-IVI.patch
+ - 0001-Changes-separate-link-dlopen-library-configuration-f.patch
+ - 0001-New-Type-l-booster-for-meego-qml-launcher-QML-applic.patch
+ - 0002-Changes-lbooster-plugin-included-in-build.patch
+ - 0003-Changes-improved-booster-plugin-support-in-invoker.patch
+ - 0004-Hack-remove-libmeegotouch-dependency-from-the-event-.patch
+ - BMC14389_add_X-MEEGO-IVI.patch
Description: |
Application invoker and launcher daemon that speed up
application startup time and share memory. Provides also
@@ -21,15 +26,17 @@
- xextproto
- xi
- xext
+ - mlite
PkgBR:
- cmake
+ - meego-qml-launcher-devel
+ - python
Builder: make
Files:
- "%{_bindir}/invoker"
- "%{_libdir}/applauncherd/libapplauncherd.so"
- - "%{_libdir}/applauncherd/libmbooster.so"
- "%{_libdir}/applauncherd/libqtbooster.so"
- - "%{_libdir}/applauncherd/libqdeclarativebooster.so"
+ - "%{_libdir}/applauncherd/libebooster.so"
- "%{_libdir}/libmdeclarativecache.so.0"
- "%{_libdir}/libmdeclarativecache.so.0.1"
- "%{_bindir}/applauncherd.bin"
@@ -37,6 +44,28 @@
- "%{_bindir}/single-instance"
- "%config %{_sysconfdir}/xdg/autostart/applauncherd.desktop"
SubPackages:
+ - Name: mbooster
+ Group: Development/Tools
+ Summary: Booster for MTF based applications
+ Description: |
+ Plugin to launch MTf based applications with applauncherd
+ Files:
+ - "%{_libdir}/applauncherd/libmbooster.so"
+ - Name: qdeclarativebooster
+ Group: Development/Tools
+ Summary: Booster for plain QML based applications
+ Description: |
+ Plugin to launch plain QML applications with applauncherd
+ Files:
+ - "%{_libdir}/applauncherd/libqdeclarativebooster.so"
+ - Name: lbooster
+ Group: Development/Tools
+ Summary: Booster for plain MeeGo QML based applications
+ Description: |
+ Plugin to launch MeeGo QML applications with applauncherd
+ Files:
+ - "%{_libdir}/applauncherd/libmqmllauncherbooster.so"
+ - "%doc %{_docdir}/applauncherd/README-LBOOSTER"
- Name: devel
Group: Development/Tools
Summary: Development files for launchable applications
@@ -48,6 +77,7 @@
- "%{_libdir}/pkgconfig/qdeclarative-boostable.pc"
- "%{_libdir}/pkgconfig/qt-boostable.pc"
- "%{_includedir}/applauncherd/mdeclarativecache.h"
+ - "%{_includedir}/applauncherd/MDeclarativeCache"
- "%{_datadir}/qt4/mkspecs/features/meegotouch-boostable.prf"
- "%{_datadir}/qt4/mkspecs/features/qt-boostable.prf"
- "%{_datadir}/qt4/mkspecs/features/qdeclarative-boostable.prf"
@@ -80,30 +110,22 @@
- "%{_bindir}/fala_gettime_ms"
- "%{_bindir}/fala_pixelchanged"
- "%{_bindir}/fala_wl"
- - "%{_bindir}/fala_wl.launch"
- "%{_bindir}/fala_wol"
- - "%{_bindir}/fala_wol.sh"
- "%{_bindir}/fala_gettime"
- - "%{_bindir}/fala_status.launch"
- "%{_bindir}/fala_ft_hello1"
- "%{_bindir}/fala_ft_hello2"
- - "%{_bindir}/fala_ft_hello.launch"
- - "%{_bindir}/fala_ft_hello1.launch"
- - "%{_bindir}/fala_ft_hello2.launch"
- - "%{_bindir}/fala_testapp"
- - "%{_bindir}/fala_ft_themetest.launch"
- "%{_bindir}/fala_ft_themetest"
- "%{_bindir}/fala_windowid"
- "%{_bindir}/fala_multi-instance"
- "%{_bindir}/fala_qml_helloworld"
- - "%{_bindir}/fala_qml_helloworld.launch"
- "%{_bindir}/fala_qml_helloworld1"
- - "%{_bindir}/fala_qml_helloworld1.launch"
- "%{_bindir}/fala_qml_helloworld2"
- - "%{_bindir}/fala_qml_helloworld2.launch"
+ - "%{_bindir}/fala_e_helloworld1"
+ - "%{_bindir}/fala_e_helloworld2"
- "%{_bindir}/fala_qml_wl"
- - "%{_bindir}/fala_qml_wl.launch"
- "%{_bindir}/fala_qml_wol"
+ - "%{_bindir}/fala_focus"
+ - "%{_bindir}/fala_status"
- "%{_bindir}/xsendevent"
-
"%{_datadir}/themes/base/meegotouch/fala_ft_themetest/svg/baa.svg"
- "%{_datadir}/dbus-1/services/com.nokia.fala_testapp.service"
@@ -116,39 +138,55 @@
Requires:
- "%{name}-testapps = %{version}-%{release}"
Files:
- - "%{_datadir}/applauncherd-M-art-tests/tests.xml"
- - "%{_datadir}/applauncherd-M-bug-tests/tests.xml"
- - "%{_datadir}/applauncherd-M-functional-tests/tests.xml"
- - "%{_datadir}/applauncherd-M-performance-tests/tests.xml"
- - "%{_datadir}/applauncherd-tests"
- - "%{_libdir}/applauncherd-tests/tests.xml"
- - "%{_libdir}/applauncherd-tests/ut_booster"
- - "%{_libdir}/applauncherd-tests/ut_boosterfactory"
- - "%{_libdir}/applauncherd-tests/ut_daemon"
- - "%{_libdir}/applauncherd-tests/ut_connection"
- - "%{_libdir}/applauncherd-tests/ut_mbooster"
- - "%{_libdir}/applauncherd-tests/ut_qtbooster"
- - "%{_libdir}/applauncherd-tests/ut_socketmanager"
- - "%{_libdir}/applauncherd-tests/ut_dbooster"
- - "%{_datadir}/applauncherd-M-testscripts/check_pipes.py"
- -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.py"
- -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.sh"
- -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.py"
- -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.sh"
- - "%{_datadir}/applauncherd-M-testscripts/tc_theming.rb"
- - "%{_datadir}/applauncherd-M-testscripts/test-func-launcher.py"
- - "%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.py"
- - "%{_datadir}/applauncherd-M-testscripts/ts_prestartapp.rb"
- - "%{_datadir}/applauncherd-M-testscripts/fala_wid"
- - "%{_datadir}/applauncherd-M-testscripts/fala_xres_wl"
- - "%{_datadir}/applauncherd-M-testscripts/fala_xres_wol"
- - "%{_datadir}/applauncherd-M-testscripts/test-perf.rb"
- - "%{_datadir}/applauncherd-M-testscripts/utils.py"
- -
"%{_datadir}/themes/base/meegotouch/fala_ft_themetest/style/fala_ft_them
etest.css"
- - "%{_datadir}/applications/fala_wl.desktop"
- - "%{_datadir}/applications/fala_wol.desktop"
- - "%{_datadir}/applications/fala_qml_wol.desktop"
- - "%{_datadir}/applications/fala_qml_wl.desktop"
- - "%{_datadir}/fala_qml_helloworld/main.qml"
- - "%{_datadir}/dbus-1/services/com.nokia.fala_wl.service"
- - "%{_datadir}/dbus-1/services/com.nokia.fala_wol.service"
+ - "%{_datadir}/applauncherd-M-art-tests/tests.xml"
+ - "%{_datadir}/applauncherd-M-bug-tests/tests.xml"
+ - "%{_datadir}/applauncherd-M-functional-tests/tests.xml"
+ - "%{_datadir}/applauncherd-M-performance-tests/tests.xml"
+ - "%{_datadir}/applauncherd-tests"
+ - "%{_libdir}/applauncherd-tests/tests.xml"
+ - "%{_libdir}/applauncherd-tests/ut_booster"
+ - "%{_libdir}/applauncherd-tests/ut_boosterfactory"
+ - "%{_libdir}/applauncherd-tests/ut_daemon"
+ - "%{_libdir}/applauncherd-tests/ut_connection"
+ - "%{_libdir}/applauncherd-tests/ut_mbooster"
+ - "%{_libdir}/applauncherd-tests/ut_qtbooster"
+ - "%{_libdir}/applauncherd-tests/ut_ebooster"
+ - "%{_libdir}/applauncherd-tests/ut_socketmanager"
+ - "%{_libdir}/applauncherd-tests/ut_dbooster"
+ - "%{_datadir}/applauncherd-testscripts/view.qml"
+ - "%{_datadir}/fala_images/landscape.jpg"
+ - "%{_datadir}/fala_images/portrait.jpg"
+ - "%{_datadir}/applauncherd-M-testscripts/check_pipes.py"
+ - "%{_datadir}/applauncherd-M-testscripts/check_pipes.pyc"
+ - "%{_datadir}/applauncherd-M-testscripts/check_pipes.pyo"
+ - "%{_datadir}/applauncherd-M-testscripts/fala_wid"
+ - "%{_datadir}/applauncherd-M-testscripts/fala_xres_wl"
+ - "%{_datadir}/applauncherd-M-testscripts/fala_xres_wol"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.py"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.pyc"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.pyo"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_m.sh"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.py"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.pyc"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.pyo"
+ -
"%{_datadir}/applauncherd-M-testscripts/signal-forward/fala_sf_qt.sh"
+ - "%{_datadir}/applauncherd-M-testscripts/tc_theming.rb"
+ - "%{_datadir}/applauncherd-M-testscripts/test-func-launcher.py"
+ - "%{_datadir}/applauncherd-M-testscripts/test-func-launcher.pyc"
+ - "%{_datadir}/applauncherd-M-testscripts/test-func-launcher.pyo"
+ - "%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.py"
+ - "%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.pyc"
+ - "%{_datadir}/applauncherd-M-testscripts/test-perf-mbooster.pyo"
+ - "%{_datadir}/applauncherd-M-testscripts/test-perf.rb"
+ - "%{_datadir}/applauncherd-M-testscripts/ts_prestartapp.rb"
+ - "%{_datadir}/applauncherd-M-testscripts/utils.py"
+ - "%{_datadir}/applauncherd-M-testscripts/utils.pyc"
+ - "%{_datadir}/applauncherd-M-testscripts/utils.pyo"
(8 more lines skipped)
_______________________________________________
MeeGo-commits mailing list
[email protected]
http://lists.meego.com/listinfo/meego-commits