Add 'meta-qt5/' from commit '5cd79448e4b5a730922c0c63161a5b2ee5f0b344'

git-subtree-dir: meta-qt5
git-subtree-mainline: 97ae37a446
git-subtree-split: 5cd79448e4
set-pr-number
Holger Hans Peter Freyther 8 years ago
commit 1772239406
  1. 17
      meta-qt5/COPYING.MIT
  2. 32
      meta-qt5/README
  3. 33
      meta-qt5/classes/cmake_qt5.bbclass
  4. 56
      meta-qt5/classes/populate_sdk_qt5.bbclass
  5. 15
      meta-qt5/classes/qmake5.bbclass
  6. 186
      meta-qt5/classes/qmake5_base.bbclass
  7. 41
      meta-qt5/classes/qmake5_paths.bbclass
  8. 23
      meta-qt5/conf/distro/include/qt5-versions.inc
  9. 28
      meta-qt5/conf/layer.conf
  10. 628
      meta-qt5/licenses/DIGIA-TPLA-2.4
  11. 20
      meta-qt5/recipes-devtools/cmake/cmake-native_2.8.11.2.bbappend
  12. 20
      meta-qt5/recipes-devtools/cmake/cmake_2.8.11.2.bbappend
  13. 40
      meta-qt5/recipes-qt/examples/cinematicexperience_1.0.bb
  14. 71
      meta-qt5/recipes-qt/libsystemd-qt/files/0001-Add-wrapper-for-the-resetFailedUnit-command.patch
  15. 18
      meta-qt5/recipes-qt/libsystemd-qt/files/fix-pkgconfig.patch
  16. 20
      meta-qt5/recipes-qt/libsystemd-qt/libsystemd-qt_git.bb
  17. 34
      meta-qt5/recipes-qt/maliit/maliit-framework-qt5/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
  18. 34
      meta-qt5/recipes-qt/maliit/maliit-framework-qt5/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
  19. 23
      meta-qt5/recipes-qt/maliit/maliit-framework-qt5/0001-Link-to-libmaliit-1-0-in-inputcontext-plugin.patch
  20. 6
      meta-qt5/recipes-qt/maliit/maliit-framework-qt5/maliit-server.desktop
  21. 94
      meta-qt5/recipes-qt/maliit/maliit-framework-qt5_git.bb
  22. 35
      meta-qt5/recipes-qt/maliit/maliit-plugins-qt5_git.bb
  23. 7
      meta-qt5/recipes-qt/meta/meta-toolchain-qt5.bb
  24. 14
      meta-qt5/recipes-qt/packagegroups/nativesdk-packagegroup-qt5-toolchain-host.bb
  25. 16
      meta-qt5/recipes-qt/packagegroups/packagegroup-qt5-qtcreator-debug.bb
  26. 40
      meta-qt5/recipes-qt/packagegroups/packagegroup-qt5-toolchain-target.bb
  27. 28
      meta-qt5/recipes-qt/qsiv/qsiv_1.1.bb
  28. 12
      meta-qt5/recipes-qt/qt5/nativesdk-qt5.inc
  29. 223
      meta-qt5/recipes-qt/qt5/nativesdk-qtbase.inc
  30. 5
      meta-qt5/recipes-qt/qt5/nativesdk-qtbase_5.2.1.bb
  31. 34
      meta-qt5/recipes-qt/qt5/nativesdk-qttools.inc
  32. 5
      meta-qt5/recipes-qt/qt5/nativesdk-qttools_5.2.1.bb
  33. 16
      meta-qt5/recipes-qt/qt5/qt3d.inc
  34. 14
      meta-qt5/recipes-qt/qt5/qt3d_git.bb
  35. 19
      meta-qt5/recipes-qt/qt5/qt5-5.2.1.inc
  36. 23
      meta-qt5/recipes-qt/qt5/qt5-git.inc
  37. 19
      meta-qt5/recipes-qt/qt5/qt5-native.inc
  38. 161
      meta-qt5/recipes-qt/qt5/qt5.inc
  39. 107
      meta-qt5/recipes-qt/qt5/qtbase-native.inc
  40. 11
      meta-qt5/recipes-qt/qt5/qtbase-native_5.2.1.bb
  41. 12
      meta-qt5/recipes-qt/qt5/qtbase-native_git.bb
  42. 247
      meta-qt5/recipes-qt/qt5/qtbase.inc
  43. 304
      meta-qt5/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
  44. 36
      meta-qt5/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch
  45. 228
      meta-qt5/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch
  46. 29
      meta-qt5/recipes-qt/qt5/qtbase/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch
  47. 99
      meta-qt5/recipes-qt/qt5/qtbase/0005-qt_module-Fix-pkgconfig-replacement.patch
  48. 43
      meta-qt5/recipes-qt/qt5/qtbase/0006-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch
  49. 37
      meta-qt5/recipes-qt/qt5/qtbase/0007-configure.prf-Allow-to-add-extra-arguments-to-make.patch
  50. 52
      meta-qt5/recipes-qt/qt5/qtbase/0008-configure-make-pulseaudio-alsa-freetype-a-configurab.patch
  51. 85
      meta-qt5/recipes-qt/qt5/qtbase/0009-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch
  52. 38
      meta-qt5/recipes-qt/qt5/qtbase/0010-Always-build-uic.patch
  53. 30
      meta-qt5/recipes-qt/qt5/qtbase/0010-qmake-is-already-built-in-qtbase-native.patch
  54. 30
      meta-qt5/recipes-qt/qt5/qtbase/0011-Allow-building-a-separate-qmake-for-the-target.patch
  55. 30
      meta-qt5/recipes-qt/qt5/qtbase/0011-configure-preserve-built-qmake-and-swap-with-native-.patch
  56. 29
      meta-qt5/recipes-qt/qt5/qtbase/0012-configure-bump-path-length-from-256-to-512-character.patch
  57. 154
      meta-qt5/recipes-qt/qt5/qtbase/0013-QOpenGLPaintDevice-sub-area-support.patch
  58. 63
      meta-qt5/recipes-qt/qt5/qtbase/0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch
  59. 42
      meta-qt5/recipes-qt/qt5/qtbase/0015-Fix-linuxfb-argument-mmsize-parsing.patch
  60. 39
      meta-qt5/recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch
  61. 7
      meta-qt5/recipes-qt/qt5/qtbase_5.2.1.bb
  62. 6
      meta-qt5/recipes-qt/qt5/qtbase_git.bb
  63. 13
      meta-qt5/recipes-qt/qt5/qtconnectivity.inc
  64. 5
      meta-qt5/recipes-qt/qt5/qtconnectivity_5.2.1.bb
  65. 6
      meta-qt5/recipes-qt/qt5/qtconnectivity_git.bb
  66. 18
      meta-qt5/recipes-qt/qt5/qtdeclarative.inc
  67. 88
      meta-qt5/recipes-qt/qt5/qtdeclarative/0001-qmltestexample-fix-link.patch
  68. 41
      meta-qt5/recipes-qt/qt5/qtdeclarative/0003-Fix-wrong-calculation-of-viewPort-for-transitions.patch
  69. 9
      meta-qt5/recipes-qt/qt5/qtdeclarative_5.2.1.bb
  70. 6
      meta-qt5/recipes-qt/qt5/qtdeclarative_git.bb
  71. 5
      meta-qt5/recipes-qt/qt5/qtgraphicaleffects.inc
  72. 5
      meta-qt5/recipes-qt/qt5/qtgraphicaleffects_5.2.1.bb
  73. 6
      meta-qt5/recipes-qt/qt5/qtgraphicaleffects_git.bb
  74. 3
      meta-qt5/recipes-qt/qt5/qtimageformats.inc
  75. 5
      meta-qt5/recipes-qt/qt5/qtimageformats_5.2.1.bb
  76. 6
      meta-qt5/recipes-qt/qt5/qtimageformats_git.bb
  77. 4
      meta-qt5/recipes-qt/qt5/qtlocation.inc
  78. 5
      meta-qt5/recipes-qt/qt5/qtlocation_5.2.1.bb
  79. 6
      meta-qt5/recipes-qt/qt5/qtlocation_git.bb
  80. 17
      meta-qt5/recipes-qt/qt5/qtmultimedia.inc
  81. 5
      meta-qt5/recipes-qt/qt5/qtmultimedia_5.2.1.bb
  82. 6
      meta-qt5/recipes-qt/qt5/qtmultimedia_git.bb
  83. 4
      meta-qt5/recipes-qt/qt5/qtquick1.inc
  84. 5
      meta-qt5/recipes-qt/qt5/qtquick1_5.2.1.bb
  85. 6
      meta-qt5/recipes-qt/qt5/qtquick1_git.bb
  86. 5
      meta-qt5/recipes-qt/qt5/qtquickcontrols.inc
  87. 6
      meta-qt5/recipes-qt/qt5/qtquickcontrols_5.2.1.bb
  88. 6
      meta-qt5/recipes-qt/qt5/qtquickcontrols_git.bb
  89. 3
      meta-qt5/recipes-qt/qt5/qtscript.inc
  90. 5
      meta-qt5/recipes-qt/qt5/qtscript_5.2.1.bb
  91. 6
      meta-qt5/recipes-qt/qt5/qtscript_git.bb
  92. 3
      meta-qt5/recipes-qt/qt5/qtsensors.inc
  93. 5
      meta-qt5/recipes-qt/qt5/qtsensors_5.2.1.bb
  94. 6
      meta-qt5/recipes-qt/qt5/qtsensors_git.bb
  95. 9
      meta-qt5/recipes-qt/qt5/qtserialport.inc
  96. 5
      meta-qt5/recipes-qt/qt5/qtserialport_5.2.1.bb
  97. 6
      meta-qt5/recipes-qt/qt5/qtserialport_git.bb
  98. 3
      meta-qt5/recipes-qt/qt5/qtsvg.inc
  99. 6
      meta-qt5/recipes-qt/qt5/qtsvg_5.2.1.bb
  100. 6
      meta-qt5/recipes-qt/qt5/qtsvg_git.bb
  101. Some files were not shown because too many files have changed in this diff Show More

@ -0,0 +1,17 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

@ -0,0 +1,32 @@
This layer depends on:
URI: git://github.com/openembedded/oe-core.git
branch: master
revision: HEAD
URI: git://github.com/openembedded/meta-oe.git
layers: meta-ruby
branch: master
revision: HEAD
When building stuff like qtdeclarative, qtquick, qtwebkit, make sure that
you have required PACKAGECONFIG options enabled in qtbase build, see qtbase.inc
for detail.
Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-qt5]' in the subject'
When sending single patches, please using something like:
'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-qt5][PATCH'
You are encouraged to fork the mirror on github[1] to share your
patches. This is preferred for patch sets consisting of more than one
patch. Other services like gitorious, repo.or.cz or self hosted setups
are of course accepted as well, 'git fetch <remote>' works the same on
all of them. We recommend github because it is free, easy to use, has
been proven to be reliable and has a really good web GUI.
1. https://github.com/meta-qt5/meta-qt5/
Main layer maintainers:
Martin 'JaMa' Jansa <martin.jansa@gmail.com>
Otavio Salvador <otavio@ossystems.com.br>

@ -0,0 +1,33 @@
inherit cmake
inherit qmake5_paths
EXTRA_OECMAKE += " \
-DOE_QMAKE_PATH_PREFIX=${OE_QMAKE_PATH_PREFIX} \
-DOE_QMAKE_PATH_HEADERS=${OE_QMAKE_PATH_HEADERS} \
-DOE_QMAKE_PATH_LIBS=${OE_QMAKE_PATH_LIBS} \
-DOE_QMAKE_PATH_ARCHDATA=${OE_QMAKE_PATH_ARCHDATA} \
-DOE_QMAKE_PATH_DATA=${OE_QMAKE_PATH_DATA} \
-DOE_QMAKE_PATH_BINS=${OE_QMAKE_PATH_BINS} \
-DOE_QMAKE_PATH_LIBEXECS=${OE_QMAKE_PATH_LIBEXECS} \
-DOE_QMAKE_PATH_PLUGINS=${OE_QMAKE_PATH_PLUGINS} \
-DOE_QMAKE_PATH_IMPORTS=${OE_QMAKE_PATH_IMPORTS} \
-DOE_QMAKE_PATH_QML=${OE_QMAKE_PATH_QML} \
-DOE_QMAKE_PATH_TRANSLATIONS=${OE_QMAKE_PATH_TRANSLATIONS} \
-DOE_QMAKE_PATH_DOCS=${OE_QMAKE_PATH_DOCS} \
-DOE_QMAKE_PATH_SETTINGS=${OE_QMAKE_PATH_SETTINGS} \
-DOE_QMAKE_PATH_EXAMPLES=${OE_QMAKE_PATH_EXAMPLES} \
-DOE_QMAKE_PATH_TESTS=${OE_QMAKE_PATH_TESTS} \
-DOE_QMAKE_PATH_HOST_PREFIX=${OE_QMAKE_PATH_HOST_PREFIX} \
-DOE_QMAKE_PATH_HOST_BINS=${OE_QMAKE_PATH_HOST_BINS} \
-DOE_QMAKE_PATH_HOST_DATA=${OE_QMAKE_PATH_HOST_DATA} \
-DOE_QMAKE_PATH_HOST_LIBS=${OE_QMAKE_PATH_HOST_LIBS} \
-DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \
-DOE_QMAKE_PATH_QT_HEADERS=${OE_QMAKE_PATH_QT_HEADERS} \
-DOE_QMAKE_PATH_QT_ARCHDATA=${OE_QMAKE_PATH_QT_ARCHDATA} \
-DOE_QMAKE_PATH_QT_DATA=${OE_QMAKE_PATH_QT_DATA} \
-DOE_QMAKE_PATH_QT_BINS=${OE_QMAKE_PATH_QT_BINS} \
-DOE_QMAKE_PATH_QT_TRANSLATIONS=${OE_QMAKE_PATH_QT_TRANSLATIONS} \
-DOE_QMAKE_PATH_QT_DOCS=${OE_QMAKE_PATH_QT_DOCS} \
-DOE_QMAKE_PATH_QT_SETTINGS=${OE_QMAKE_PATH_QT_SETTINGS} \
-DOE_QMAKE_PATH_QT_EXAMPLES=${OE_QMAKE_PATH_QT_EXAMPLES} \
-DOE_QMAKE_PATH_QT_TESTS=${OE_QMAKE_PATH_QT_TESTS}"

@ -0,0 +1,56 @@
# Copyright (C) 2014 O.S. Systems Software LTDA.
TOOLCHAIN_HOST_TASK += "nativesdk-packagegroup-qt5-toolchain-host"
TOOLCHAIN_TARGET_TASK += "packagegroup-qt5-toolchain-target"
# This allow reuse of Qt paths
inherit qmake5_paths
toolchain_create_sdk_env_script_append () {
echo 'export PATH=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}:$PATH' >> $script
echo 'export OE_QMAKE_CFLAGS="$CFLAGS"' >> $script
echo 'export OE_QMAKE_CXXFLAGS="$CXXFLAGS"' >> $script
echo 'export OE_QMAKE_LDFLAGS="$LDFLAGS"' >> $script
echo 'export OE_QMAKE_CC=$CC' >> $script
echo 'export OE_QMAKE_CXX=$CXX' >> $script
echo 'export OE_QMAKE_LINK=$CXX' >> $script
echo 'export OE_QMAKE_AR=$AR' >> $script
echo 'export OE_QMAKE_LIBDIR_QT=${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBS}' >> $script
echo 'export OE_QMAKE_INCDIR_QT=${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_HEADERS}' >> $script
echo 'export OE_QMAKE_MOC=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/moc' >> $script
echo 'export OE_QMAKE_UIC=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/uic' >> $script
echo 'export OE_QMAKE_RCC=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/rcc' >> $script
echo 'export OE_QMAKE_QDBUSCPP2XML=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qdbuscpp2xml' >> $script
echo 'export OE_QMAKE_QDBUSXML2CPP=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qdbusxml2cpp' >> $script
echo 'export OE_QMAKE_QT_CONFIG=${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBS}/${QT_DIR_NAME}/mkspecs/qconfig.pri' >> $script
echo 'export QMAKESPEC=${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBS}/${QT_DIR_NAME}/mkspecs/linux-oe-g++' >> $script
echo 'export QT_CONF_PATH=${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qt.conf' >> $script
# make a symbolic link to mkspecs for compatibility with QTCreator
(cd ${SDK_OUTPUT}/${SDKPATHNATIVE}; \
ln -sf ${SDKTARGETSYSROOT}${libdir}/${QT_DIR_NAME}/mkspecs mkspecs;)
# Generate a qt.conf file to be deployed with the SDK
qtconf=${SDK_OUTPUT}/${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qt.conf
touch $qtconf
echo '[Paths]' >> $qtconf
echo 'Prefix = ${SDKTARGETSYSROOT}' >> $qtconf
echo 'Headers = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_HEADERS}' >> $qtconf
echo 'Libraries = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBS}' >> $qtconf
echo 'ArchData = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_ARCHDATA}' >> $qtconf
echo 'Data = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_DATA}' >> $qtconf
echo 'Binaries = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_BINS}' >> $qtconf
echo 'LibraryExecutables = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBEXECS}' >> $qtconf
echo 'Plugins = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_PLUGINS}' >> $qtconf
echo 'Imports = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_IMPORTS}' >> $qtconf
echo 'Qml2Imports = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QML}' >> $qtconf
echo 'Translations = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_TRANSLATIONS}' >> $qtconf
echo 'Documentation = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_DOCS}' >> $qtconf
echo 'Settings = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_SETTINGS}' >> $qtconf
echo 'Examples = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_EXAMPLES}' >> $qtconf
echo 'Tests = ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_QT_TESTS}' >> $qtconf
echo 'HostPrefix = ${SDKPATHNATIVE}' >> $qtconf
echo 'HostBinaries = ${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}' >> $qtconf
}
PACKAGE_GROUP_qtcreator-debug = "packagegroup-qt5-qtcreator-debug"

@ -0,0 +1,15 @@
#
# QMake variables for Qt
#
inherit qmake5_base
QT5TOOLSDEPENDS ?= "qtbase-native"
DEPENDS_prepend = "${QT5TOOLSDEPENDS} "
do_configure() {
qmake5_base_do_configure
}
do_install() {
qmake5_base_do_install
}

@ -0,0 +1,186 @@
# This is useful for target recipes to reference native mkspecs
QMAKE_MKSPEC_PATH_NATIVE = "${STAGING_LIBDIR_NATIVE}/${QT_DIR_NAME}"
QMAKE_MKSPEC_PATH_TARGET = "${STAGING_LIBDIR}/${QT_DIR_NAME}"
QMAKE_MKSPEC_PATH = "${QMAKE_MKSPEC_PATH_TARGET}"
QMAKE_MKSPEC_PATH_class-native = "${QMAKE_MKSPEC_PATH_NATIVE}"
QMAKE_MKSPEC_PATH_class-nativesdk = "${QMAKE_MKSPEC_PATH_NATIVE}"
# hardcode linux, because that's what 0001-Add-linux-oe-g-platform.patch adds
OE_QMAKE_PLATFORM_NATIVE = "linux-oe-g++"
OE_QMAKE_PLATFORM = "linux-oe-g++"
# Add -d to show debug output from every qmake call, but it prints *a lot*, better to add it only to debugged recipe
OE_QMAKE_DEBUG_OUTPUT ?= ""
# Paths in .prl files contain SYSROOT value
SSTATE_SCAN_FILES += "*.pri *.prl"
# drop default -e and add needed OE_QMAKE vars explicitly
# the problem is that when generated Makefile has:
# CFLAGS = -pipe $(OE_QMAKE_CFLAGS) -O2 -pthread -D_REENTRANT -Wall -W -fPIC $(DEFINES)
# then OE_QMAKE_CFLAGS are exported and used correctly, but then whole CFLAGS is overwritten from env (and -fPIC lost and build fails)
EXTRA_OEMAKE = " \
MAKEFLAGS='${PARALLEL_MAKE}' \
OE_QMAKE_COMPILER='${OE_QMAKE_COMPILER}' \
OE_QMAKE_CC='${OE_QMAKE_CC}' \
OE_QMAKE_CXX='${OE_QMAKE_CXX}' \
OE_QMAKE_CFLAGS='${OE_QMAKE_CFLAGS}' \
OE_QMAKE_CXXFLAGS='${OE_QMAKE_CXXFLAGS}' \
OE_QMAKE_LINK='${OE_QMAKE_LINK}' \
OE_QMAKE_LDFLAGS='${OE_QMAKE_LDFLAGS}' \
OE_QMAKE_AR='${OE_QMAKE_AR}' \
OE_QMAKE_STRIP='${OE_QMAKE_STRIP}' \
OE_QMAKE_WAYLAND_SCANNER='${OE_QMAKE_WAYLAND_SCANNER}' \
"
OE_QMAKESPEC = "${QMAKE_MKSPEC_PATH_NATIVE}/mkspecs/${OE_QMAKE_PLATFORM_NATIVE}"
OE_XQMAKESPEC = "${QMAKE_MKSPEC_PATH}/mkspecs/${OE_QMAKE_PLATFORM}"
OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake"
OE_QMAKE_COMPILER = "${CC}"
OE_QMAKE_CC = "${CC}"
OE_QMAKE_CFLAGS = "${CFLAGS}"
OE_QMAKE_CXX = "${CXX}"
OE_QMAKE_CXXFLAGS = "${CXXFLAGS}"
OE_QMAKE_LINK = "${CXX}"
OE_QMAKE_LDFLAGS = "${LDFLAGS}"
OE_QMAKE_AR = "${AR}"
OE_QMAKE_STRIP = "echo"
OE_QMAKE_WAYLAND_SCANNER = "${STAGING_BINDIR_NATIVE}/wayland-scanner"
# this one needs to be exported, because qmake reads it from shell env
export QT_CONF_PATH = "${WORKDIR}/qt.conf"
inherit qmake5_paths
do_generate_qt_config_file() {
cat > ${QT_CONF_PATH} <<EOF
[Paths]
Prefix = ${OE_QMAKE_PATH_PREFIX}
Headers = ${OE_QMAKE_PATH_HEADERS}
Libraries = ${OE_QMAKE_PATH_LIBS}
ArchData = ${OE_QMAKE_PATH_ARCHDATA}
Data = ${OE_QMAKE_PATH_DATA}
Binaries = ${OE_QMAKE_PATH_BINS}
LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}
Plugins = ${OE_QMAKE_PATH_PLUGINS}
Imports = ${OE_QMAKE_PATH_IMPORTS}
Qml2Imports = ${OE_QMAKE_PATH_QML}
Translations = ${OE_QMAKE_PATH_TRANSLATIONS}
Documentation = ${OE_QMAKE_PATH_DOCS}
Settings = ${OE_QMAKE_PATH_SETTINGS}
Examples = ${OE_QMAKE_PATH_EXAMPLES}
Tests = ${OE_QMAKE_PATH_TESTS}
HostBinaries = ${OE_QMAKE_PATH_HOST_BINS}
HostData = ${OE_QMAKE_PATH_HOST_DATA}
HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS}
HostSpec = ${OE_QMAKESPEC}
TartgetSpec = ${OE_XQMAKESPEC}
ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}
Sysroot = ${STAGING_DIR_TARGET}
EOF
}
#
# Allows to override following values (as in version 5.0.1)
# Prefix The default prefix for all paths.
# Documentation The location for documentation upon install.
# Headers The location for all headers.
# Libraries The location of installed libraries.
# LibraryExecutables The location of installed executables required by libraries at runtime.
# Binaries The location of installed Qt binaries (tools and applications).
# Plugins The location of installed Qt plugins.
# Imports The location of installed QML extensions to import (QML 1.x).
# Qml2Imports The location of installed QML extensions to import (QML 2.x).
# ArchData The location of general architecture-dependent Qt data.
# Data The location of general architecture-independent Qt data.
# Translations The location of translation information for Qt strings.
# Examples The location for examples upon install.
# Tests The location of installed Qt testcases.
# Settings The location for Qt settings. Not applicable on Windows.
# For bootstrapped
# Sysroot The location of target sysroot
# HostPrefix The prefix for host tools when cross compiling (building tools for both systems)
# HostBinaries The location where to install host tools
# HostData The location where to install host data
# ExternalHostBinaries The location where we already have host tools (when cross compiling, but reusing existing tools)
# TargetSpec The location where to install target mkspec
# HostSpec The location where to install host mkspec
# qmake works fine with separate B, use it by default
SEPB = "${WORKDIR}/build"
B = "${SEPB}"
CONFIGURESTAMPFILE = "${WORKDIR}/qmake5_base_configure.sstate"
qmake5_base_preconfigure() {
if [ -n "${CONFIGURESTAMPFILE}" -a -e "${CONFIGURESTAMPFILE}" ]; then
if [ "`cat ${CONFIGURESTAMPFILE}`" != "${BB_TASKHASH}" -a "${S}" != "${B}" ]; then
echo "Previously configured separate build directory detected, cleaning ${B}"
rm -rf ${B}
mkdir ${B}
fi
fi
}
qmake5_base_postconfigure(){
if [ -n "${CONFIGURESTAMPFILE}" ]; then
echo ${BB_TASKHASH} > ${CONFIGURESTAMPFILE}
fi
}
EXTRAQCONFFUNCS ??= ""
do_configure[prefuncs] += "qmake5_base_preconfigure ${EXTRAQCONFFUNCS}"
do_configure[postfuncs] += "qmake5_base_postconfigure"
addtask generate_qt_config_file after do_patch before do_configure
qmake5_base_do_configure () {
if [ -z "${QMAKE_PROFILES}" ]; then
PROFILES="`ls ${S}/*.pro`"
else
PROFILES="${QMAKE_PROFILES}"
bbnote "qmake using profiles: '${QMAKE_PROFILES}'"
fi
if [ ! -z "${EXTRA_QMAKEVARS_POST}" ]; then
AFTER="-after"
QMAKE_VARSUBST_POST="${EXTRA_QMAKEVARS_POST}"
bbnote "qmake postvar substitution: '${EXTRA_QMAKEVARS_POST}'"
fi
if [ ! -z "${EXTRA_QMAKEVARS_PRE}" ]; then
QMAKE_VARSUBST_PRE="${EXTRA_QMAKEVARS_PRE}"
bbnote "qmake prevar substitution: '${EXTRA_QMAKEVARS_PRE}'"
fi
# for config.tests to read this
export QMAKE_MAKE_ARGS="${EXTRA_OEMAKE}"
CMD="${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} -r $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST"
${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} -r $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST || die "Error calling $CMD"
}
qmake5_base_do_install() {
# Fix install paths for all
find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_TARGET},(INSTALL_ROOT),g"
oe_runmake install INSTALL_ROOT=${D}
# everything except HostData and HostBinaries is prefixed with sysroot value,
# but we cannot remove sysroot override, because that's useful for pkg-config etc
# In some cases like QtQmlDevTools in qtdeclarative, the sed above does not work,
# fix them manually
if [ -d ${D}${STAGING_DIR_TARGET} ] ; then
echo "Some files are installed in wrong directory ${D}${STAGING_DIR_TARGET}"
cp -ra ${D}${STAGING_DIR_TARGET}/* ${D}
rm -rf ${D}${STAGING_DIR_TARGET}
# remove empty dirs
TMP=`dirname ${D}/${STAGING_DIR_TARGET}`
while test ${TMP} != ${D}; do
rmdir ${TMP}
TMP=`dirname ${TMP}`;
done
fi
}

@ -0,0 +1,41 @@
# If your distribution supports only qt5, or you don't care
# about conflicts with qt4, then you can add qmake5_paths.bbclass
# to your distro layer and flatten all QT_DIR_NAME directories
QT_DIR_NAME ?= "qt5"
OE_QMAKE_PATH_PREFIX = "${prefix}"
OE_QMAKE_PATH_HEADERS = "${includedir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_LIBS = "${libdir}"
OE_QMAKE_PATH_ARCHDATA = "${libdir}"
OE_QMAKE_PATH_DATA = "${datadir}"
OE_QMAKE_PATH_BINS = "${bindir}"
OE_QMAKE_PATH_LIBEXECS = "${libdir}/${QT_DIR_NAME}/libexec"
OE_QMAKE_PATH_PLUGINS = "${libdir}/${QT_DIR_NAME}/plugins"
OE_QMAKE_PATH_IMPORTS = "${libdir}/${QT_DIR_NAME}/imports"
OE_QMAKE_PATH_QML = "${libdir}/${QT_DIR_NAME}/qml"
OE_QMAKE_PATH_TRANSLATIONS = "${datadir}/translations"
OE_QMAKE_PATH_DOCS = "${docdir}"
OE_QMAKE_PATH_SETTINGS = "${sysconfdir}"
OE_QMAKE_PATH_EXAMPLES = "${datadir}/examples"
OE_QMAKE_PATH_TESTS = "${datadir}/tests"
OE_QMAKE_PATH_HOST_PREFIX = ""
OE_QMAKE_PATH_HOST_BINS = "${bindir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_HOST_DATA = "${QMAKE_MKSPEC_PATH_TARGET}"
OE_QMAKE_PATH_HOST_LIBS = "${STAGING_LIBDIR}"
OE_QMAKE_PATH_EXTERNAL_HOST_BINS = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}"
# for qt5 components we're using QT_DIR_NAME subdirectory in more
# variables, because we don't want conflicts with qt4
# This block is usefull for components which install their
# own files without QT_DIR_NAME but need to reference paths e.g.
# with QT headers
OE_QMAKE_PATH_QT_HEADERS = "${includedir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_ARCHDATA = "${libdir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_DATA = "${datadir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_BINS = "${bindir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_TRANSLATIONS = "${datadir}/${QT_DIR_NAME}/translations"
OE_QMAKE_PATH_QT_DOCS = "${docdir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_SETTINGS = "${sysconfdir}/${QT_DIR_NAME}"
OE_QMAKE_PATH_QT_EXAMPLES = "${datadir}/${QT_DIR_NAME}/examples"
OE_QMAKE_PATH_QT_TESTS = "${datadir}/${QT_DIR_NAME}/tests"

@ -0,0 +1,23 @@
# Select which version you prefer by defining QT5_VERSION and including this file
# possible values now "5.2.1", "5.2.1+git%"
QT5_VERSION ?= "5.2.1"
PREFERRED_VERSION_qtbase-native = "${QT5_VERSION}"
PREFERRED_VERSION_qtbase = "${QT5_VERSION}"
PREFERRED_VERSION_qtdeclarative = "${QT5_VERSION}"
PREFERRED_VERSION_qtjsbackend = "${QT5_VERSION}"
PREFERRED_VERSION_qtjsbackend-native = "${QT5_VERSION}"
PREFERRED_VERSION_qtgraphicaleffects = "${QT5_VERSION}"
PREFERRED_VERSION_qtimageformats = "${QT5_VERSION}"
PREFERRED_VERSION_qtmultimedia = "${QT5_VERSION}"
PREFERRED_VERSION_qtquick1 = "${QT5_VERSION}"
PREFERRED_VERSION_qtquickcontrols = "${QT5_VERSION}"
PREFERRED_VERSION_qtsensors = "${QT5_VERSION}"
PREFERRED_VERSION_qtserialport = "${QT5_VERSION}"
PREFERRED_VERSION_qtscript = "${QT5_VERSION}"
PREFERRED_VERSION_qtsvg = "${QT5_VERSION}"
PREFERRED_VERSION_qttools-native = "${QT5_VERSION}"
PREFERRED_VERSION_qtwebkit = "${QT5_VERSION}"
PREFERRED_VERSION_qtwebkit-examples = "${QT5_VERSION}"
PREFERRED_VERSION_qtxmlpatterns = "${QT5_VERSION}"

@ -0,0 +1,28 @@
# It really depends on order of the layers appearing in BBLAYERS
# variable in toplevel bblayers.conf file, where bitbake will search
# for .inc files and others where bitbake uses BBPATH since it will
# search the directories from first to last as specified in BBPATH
# Therefore if you want a given layer to be considered high priority
# for the .inc and .conf etc. then consider it adding at the beginning
# of BBPATH. For bblayers bitbake will use BBFILES_PRIORITY to resolve
# the recipe contention so the order of directories in BBFILES does
# not matter.
# We have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a recipes directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "qt5-layer"
BBFILE_PATTERN_qt5-layer := "^${LAYERDIR}/"
# Define the priority for recipes (.bb files) from this layer,
# choosing carefully how this layer interacts with all of the
# other layers.
BBFILE_PRIORITY_qt5-layer = "7"
LICENSE_PATH += "${LAYERDIR}/licenses"
IMAGE_FEATURES[validitems] += "qtcreator-debug"

@ -0,0 +1,628 @@
TECHNOLOGY PREVIEW LICENSE AGREEMENT
For individuals and/or legal entities resident in the Americas (North
America, Central America and South America), the applicable licensing
terms are specified under the heading "Technology Preview License
Agreement: The Americas".
For individuals and/or legal entities not resident in The Americas, the
applicable licensing terms are specified under the heading "Technology
Preview License Agreement: Rest of the World".
TECHNOLOGY PREVIEW LICENSE AGREEMENT: The Americas
Agreement version 2.4
This Technology Preview License Agreement ("Agreement")is a legal agreement
between Digia USA, Inc. ("Digia"), with its registered office at 32 W.
Loockerman Street, Suite 201, City of Dover, County of Kent, Delaware 19904,
U.S.A. and you (either an individual or a legal entity) ("Licensee")
for the Licensed Software (as defined below).
1. DEFINITIONS
"Affiliate" of a Party shall mean an entity (i) which is directly or
indirectly controlling such Party; (ii) which is under the same direct
or indirect ownership or control as such Party; or (iii) which is
directly or indirectly owned or controlled by such Party. For these
purposes, an entity shall be treated as being controlled by another if
that other entity has fifty percent (50 %) or more of the votes in such
entity, is able to direct its affairs and/or to control the composition
of its board of directors or equivalent body.
"Applications" shall mean Licensee's software products created using the
Licensed Software which may include portions of the Licensed Software.
"Term" shall mean the period of time six (6) months from the later of
(a) the Effective Date; or (b) the date the Licensed Software was
initially delivered to Licensee by Digia. If no specific Effective Date
is set forth in the Agreement, the Effective Date shall be deemed to be
the date the Licensed Software was initially delivered to Licensee.
"Licensed Software" shall mean the computer software, "online" or
electronic documentation, associated media and printed materials,
including the source code, example programs and the documentation
delivered by Digia to Licensee in conjunction with this Agreement.
"Party" or "Parties" shall mean Licensee and/or Digia.
2. OWNERSHIP
The Licensed Software is protected by copyright laws and international
copyright treaties, as well as other intellectual property laws and
treaties. The Licensed Software is licensed, not sold.
If Licensee provides any findings, proposals, suggestions or other
feedback ("Feedback") to Digia regarding the Licensed Software, Digia
shall own all right, title and interest including the intellectual
property rights in and to such Feedback, excluding however any existing
patent rights of Licensee. To the extent Licensee owns or controls any
patents for such Feedback Licensee hereby grants to Digia and its
Affiliates, a worldwide, perpetual, non-transferable, sublicensable,
royalty-free license to (i) use, copy and modify Feedback and to create
derivative works thereof, (ii) to make (and have made), use, import,
sell, offer for sale, lease, dispose, offer for disposal or otherwise
exploit any products or services of Digia containing Feedback, and
(iii) sublicense all the foregoing rights to third party licensees and
customers of Digia and/or its Affiliates.
3. VALIDITY OF THE AGREEMENT
By installing, copying, or otherwise using the Licensed Software,
Licensee agrees to be bound by the terms of this Agreement. If Licensee
does not agree to the terms of this Agreement, Licensee may not install,
copy, or otherwise use the Licensed Software. Upon Licensee's acceptance
of the terms and conditions of this Agreement, Digia grants Licensee the
right to use the Licensed Software in the manner provided below.
4. LICENSES
4.1. Using and Copying
Digia grants to Licensee a non-exclusive, non-transferable, time-limited
license to use and copy the Licensed Software for sole purpose of
designing, developing and testing Applications, and evaluating and the
Licensed Software during the Term.
Licensee may install copies of the Licensed Software on an unlimited
number of computers provided that (a) if an individual, only such
individual; or (b) if a legal entity only its employees; use the
Licensed Software for the authorized purposes.
4.2 No Distribution or Modifications
Licensee may not disclose, modify, sell, market, commercialise,
distribute, loan, rent, lease, or license the Licensed Software or any
copy of it or use the Licensed Software for any purpose that is not
expressly granted in this Section 4. Licensee may not alter or remove
any details of ownership, copyright, trademark or other property right
connected with the Licensed Software. Licensee may not distribute any
software statically or dynamically linked with the Licensed Software.
4.3 No Technical Support
Digia has no obligation to furnish Licensee with any technical support
whatsoever. Any such support is subject to separate agreement between
the Parties.
5. PRE-RELEASE CODE
The Licensed Software contains pre-release code that is not at the level
of performance and compatibility of a final, generally available,
product offering. The Licensed Software may not operate correctly and
may be substantially modified prior to the first commercial product
release, if any. Digia is not obligated to make this or any later
version of the Licensed Software commercially available. The License
Software is "Not for Commercial Use" and may only be used for the
purposes described in Section 4. The Licensed Software may not be used
in a live operating environment where it may be relied upon to perform
in the same manner as a commercially released product or with data that
has not been sufficiently backed up.
6. THIRD PARTY SOFTWARE
The Licensed Software may provide links to third party libraries or code
(collectively "Third Party Software") to implement various functions.
Third Party Software does not comprise part of the Licensed Software. In
some cases, access to Third Party Software may be included along with
the Licensed Software delivery as a convenience for development and
testing only. Such source code and libraries may be listed in the
".../src/3rdparty" source tree delivered with the Licensed Software or
documented in the Licensed Software where the Third Party Software is
used, as may be amended from time to time, do not comprise the Licensed
Software. Licensee acknowledges (1) that some part of Third Party
Software may require additional licensing of copyright and patents from
the owners of such, and (2) that distribution of any of the Licensed
Software referencing any portion of a Third Party Software may require
appropriate licensing from such third parties.
7. LIMITED WARRANTY AND WARRANTY DISCLAIMER
The Licensed Software is licensed to Licensee "as is". To the maximum
extent permitted by applicable law, Digia on behalf of itself and its
suppliers, disclaims all warranties and conditions, either express or
implied, including, but not limited to, implied warranties of
merchantability, fitness for a particular purpose, title and
non-infringement with regard to the Licensed Software.
8. LIMITATION OF LIABILITY
If, Digia's warranty disclaimer notwithstanding, Digia is held liable to
Licensee, whether in contract, tort or any other legal theory, based on
the Licensed Software, Digia's entire liability to Licensee and
Licensee's exclusive remedy shall be, at Digia's option, either (A)
return of the price Licensee paid for the Licensed Software, or (B)
repair or replacement of the Licensed Software, provided Licensee
returns to Digia all copies of the Licensed Software as originally
delivered to Licensee. Digia shall not under any circumstances be liable
to Licensee based on failure of the Licensed Software if the failure
resulted from accident, abuse or misapplication, nor shall Digia under
any circumstances be liable for special damages, punitive or exemplary
damages, damages for loss of profits or interruption of business or for
loss or corruption of data. Any award of damages from Digia to Licensee
shall not exceed the total amount Licensee has paid to Digia in
connection with this Agreement.
9. CONFIDENTIALITY
Each party acknowledges that during the Term of this Agreement it shall
have access to information about the other party's business, business
methods, business plans, customers, business relations, technology, and
other information, including the terms of this Agreement, that is
confidential and of great value to the other party, and the value of
which would be significantly reduced if disclosed to third parties (the
"Confidential Information"). Accordingly, when a party (the "Receiving
Party") receives Confidential Information from another party (the
"Disclosing Party"), the Receiving Party shall, and shall obligate its
employees and agents and employees and agents of its Affiliates to: (i)
maintain the Confidential Information in strict confidence; (ii) not
disclose the Confidential Information to a third party without the
Disclosing Party's prior written approval; and (iii) not, directly or
indirectly, use the Confidential Information for any purpose other than
for exercising its rights and fulfilling its responsibilities pursuant
to this Agreement. Each party shall take reasonable measures to protect
the Confidential Information of the other party, which measures shall
not be less than the measures taken by such party to protect its own
confidential and proprietary information.
"Confidential Information" shall not include information that (a) is or
becomes generally known to the public through no act or omission of the
Receiving Party; (b) was in the Receiving Party's lawful possession
prior to the disclosure hereunder and was not subject to limitations on
disclosure or use; (c) is developed by the Receiving Party without
access to the Confidential Information of the Disclosing Party or by
persons who have not had access to the Confidential Information of the
Disclosing Party as proven by the written records of the Receiving
Party; (d) is lawfully disclosed to the Receiving Party without
restrictions, by a third party not under an obligation of
confidentiality; or (e) the Receiving Party is legally compelled to
disclose the information, in which case the Receiving Party shall assert
the privileged and confidential nature of the information and cooperate
fully with the Disclosing Party to protect against and prevent
disclosure of any Confidential Information and to limit the scope of
disclosure and the dissemination of disclosed Confidential Information
by all legally available means.
The obligations of the Receiving Party under this Section shall continue
during the Initial Term and for a period of five (5) years after
expiration or termination of this Agreement. To the extent that the
terms of the Non-Disclosure Agreement between Digia and Licensee
conflict with the terms of this Section 9, this Section 9 shall be
controlling over the terms of the Non-Disclosure Agreement.
10. GENERAL PROVISIONS
10.1 No Assignment
Licensee shall not be entitled to assign or transfer all or any of its
rights, benefits and obligations under this Agreement without the prior
written consent of Digia, which shall not be unreasonably withheld.
10.2 Termination
Digia may terminate the Agreement at any time immediately upon written
notice by Digia to Licensee if Licensee breaches this Agreement.
Upon termination of this Agreement, Licensee shall return to Digia all
copies of Licensed Software that were supplied by Digia. All other
copies of Licensed Software in the possession or control of Licensee
must be erased or destroyed. An officer of Licensee must promptly
deliver to Digia a written confirmation that this has occurred.
10.3 Surviving Sections
Any terms and conditions that by their nature or otherwise reasonably
should survive a cancellation or termination of this Agreement shall
also be deemed to survive. Such terms and conditions include, but are
not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4,
10.5, 10.6, 10.7, and 10.8 of this Agreement.
10.4 Entire Agreement
This Agreement constitutes the complete agreement between the parties
and supersedes all prior or contemporaneous discussions,
representations, and proposals, written or oral, with respect to the
subject matters discussed herein, with the exception of the
non-disclosure agreement executed by the parties in connection with this
Agreement ("Non-Disclosure Agreement"), if any, shall be subject to
Section 9. No modification of this Agreement shall be effective unless
contained in a writing executed by an authorized representative of each
party. No term or condition contained in Licensee's purchase order shall
apply unless expressly accepted by Digia in writing. If any provision of
the Agreement is found void or unenforceable, the remainder shall remain
valid and enforceable according to its terms. If any remedy provided is
determined to have failed for its essential purpose, all limitations of
liability and exclusions of damages set forth in this Agreement shall
remain in effect.
10.5 Export Control
Licensee acknowledges that the Licensed Software may be subject to
export control restrictions of various countries. Licensee shall fully
comply with all applicable export license restrictions and requirements
as well as with all laws and regulations relating to the importation of
the Licensed Software and shall procure all necessary governmental
authorizations, including without limitation, all necessary licenses,
approvals, permissions or consents, where necessary for the
re-exportation of the Licensed Software.,
10.6 Governing Law and Legal Venue
This Agreement shall be governed by and construed in accordance with the
federal laws of the United States of America and the internal laws of
the State of New York without given effect to any choice of law rule
that would result in the application of the laws of any other
jurisdiction. The United Nations Convention on Contracts for the
International Sale of Goods (CISG) shall not apply. Each Party (a)
hereby irrevocably submits itself to and consents to the jurisdiction of
the United States District Court for the Southern District of New York
(or if such court lacks jurisdiction, the state courts of the State of
New York) for the purposes of any action, claim, suit or proceeding
between the Parties in connection with any controversy, claim, or
dispute arising out of or relating to this Agreement; and (b) hereby
waives, and agrees not to assert by way of motion, as a defense or
otherwise, in any such action, claim, suit or proceeding, any claim that
is not personally subject to the jurisdiction of such court(s), that the
action, claim, suit or proceeding is brought in an inconvenient forum or
that the venue of the action, claim, suit or proceeding is improper.
Notwithstanding the foregoing, nothing in this Section 9.6 is intended
to, or shall be deemed to, constitute a submission or consent to, or
selection of, jurisdiction, forum or venue for any action for patent
infringement, whether or not such action relates to this Agreement.
10.7 No Implied License
There are no implied licenses or other implied rights granted under this
Agreement, and all rights, save for those expressly granted hereunder,
shall remain with Digia and its licensors. In addition, no licenses or
immunities are granted to the combination of the Licensed Software with
any other software or hardware not delivered by Digia under this
Agreement.
10.8 Government End Users
A "U.S. Government End User" shall mean any agency or entity of the
government of the United States. The following shall apply if Licensee
is a U.S. Government End User. The Licensed Software is a "commercial
item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995),
consisting of "commercial computer software" and "commercial computer
software documentation," as such terms are used in 48 C.F.R. 12.212
(Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
through 227.7202-4 (June 1995), all U.S. Government End Users acquire
the Licensed Software with only those rights set forth herein. The
Licensed Software (including related documentation) is provided to U.S.
Government End Users: (a) only as a commercial end item; and (b) only
pursuant to this Agreement.
TECHNOLOGY PREVIEW LICENSE AGREEMENT: Rest of the World
Agreement version 2.4
This Technology Preview License Agreement ("Agreement") is a legal
agreement between Digia Finland Ltd ("Digia"), with its registered office at
Valimotie 21,FI-00380 Helsinki, Finland and you (either an individual or a
legal entity) ("Licensee") for the Licensed Software.
1. DEFINITIONS
"Affiliate" of a Party shall mean an entity (i) which is directly or
indirectly controlling such Party; (ii) which is under the same direct
or indirect ownership or control as such Party; or (iii) which is
directly or indirectly owned or controlled by such Party. For these
purposes, an entity shall be treated as being controlled by another if
that other entity has fifty percent (50 %) or more of the votes in such
entity, is able to direct its affairs and/or to control the composition
of its board of directors or equivalent body.
"Applications" shall mean Licensee's software products created using the
Licensed Software which may include portions of the Licensed Software.
"Term" shall mean the period of time six (6) months from the later of
(a) the Effective Date; or (b) the date the Licensed Software was
initially delivered to Licensee by Digia. If no specific Effective Date
is set forth in the Agreement, the Effective Date shall be deemed to be
the date the Licensed Software was initially delivered to Licensee.
"Licensed Software" shall mean the computer software, "online" or
electronic documentation, associated media and printed materials,
including the source code, example programs and the documentation
delivered by Digia to Licensee in conjunction with this Agreement.
"Party" or "Parties" shall mean Licensee and/or Digia.
2. OWNERSHIP
The Licensed Software is protected by copyright laws and international
copyright treaties, as well as other intellectual property laws and
treaties. The Licensed Software is licensed, not sold.
If Licensee provides any findings, proposals, suggestions or other
feedback ("Feedback") to Digia regarding the Licensed Software, Digia
shall own all right, title and interest including the intellectual
property rights in and to such Feedback, excluding however any existing
patent rights of Licensee. To the extent Licensee owns or controls any
patents for such Feedback Licensee hereby grants to Digia and its
Affiliates, a worldwide, perpetual, non-transferable, sublicensable,
royalty-free license to (i) use, copy and modify Feedback and to create
derivative works thereof, (ii) to make (and have made), use, import,
sell, offer for sale, lease, dispose, offer for disposal or otherwise
exploit any products or services of Digia containing Feedback, and
(iii) sublicense all the foregoing rights to third party licensees and
customers of Digia and/or its Affiliates.
3. VALIDITY OF THE AGREEMENT
By installing, copying, or otherwise using the Licensed Software,
Licensee agrees to be bound by the terms of this Agreement. If Licensee
does not agree to the terms of this Agreement, Licensee may not install,
copy, or otherwise use the Licensed Software. Upon Licensee's acceptance
of the terms and conditions of this Agreement, Digia grants Licensee the
right to use the Licensed Software in the manner provided below.
4. LICENSES
4.1. Using and Copying
Digia grants to Licensee a non-exclusive, non-transferable, time-limited
license to use and copy the Licensed Software for sole purpose of
designing, developing and testing Applications, and evaluating and the
Licensed Software during the Term.
Licensee may install copies of the Licensed Software on an unlimited
number of computers provided that (a) if an individual, only such
individual; or (b) if a legal entity only its employees; use the
Licensed Software for the authorized purposes.
4.2 No Distribution or Modifications
Licensee may not disclose, modify, sell, market, commercialise,
distribute, loan, rent, lease, or license the Licensed Software or any
copy of it or use the Licensed Software for any purpose that is not
expressly granted in this Section 4. Licensee may not alter or remove
any details of ownership, copyright, trademark or other property right
connected with the Licensed Software. Licensee may not distribute any
software statically or dynamically linked with the Licensed Software.
4.3 No Technical Support
Digia has no obligation to furnish Licensee with any technical support
whatsoever. Any such support is subject to separate agreement between
the Parties.
5. PRE-RELEASE CODE
The Licensed Software contains pre-release code that is not at the level
of performance and compatibility of a final, generally available,
product offering. The Licensed Software may not operate correctly and
may be substantially modified prior to the first commercial product
release, if any. Digia is not obligated to make this or any later
version of the Licensed Software commercially available. The License
Software is "Not for Commercial Use" and may only be used for the
purposes described in Section 4. The Licensed Software may not be used
in a live operating environment where it may be relied upon to perform
in the same manner as a commercially released product or with data that
has not been sufficiently backed up.
6. THIRD PARTY SOFTWARE
The Licensed Software may provide links to third party libraries or code
(collectively "Third Party Software") to implement various functions.
Third Party Software does not comprise part of the Licensed Software. In
some cases, access to Third Party Software may be included along with
the Licensed Software delivery as a convenience for development and
testing only. Such source code and libraries may be listed in the
".../src/3rdparty" source tree delivered with the Licensed Software or
documented in the Licensed Software where the Third Party Software is
used, as may be amended from time to time, do not comprise the Licensed
Software. Licensee acknowledges (1) that some part of Third Party
Software may require additional licensing of copyright and patents from
the owners of such, and (2) that distribution of any of the Licensed
Software referencing any portion of a Third Party Software may require
appropriate licensing from such third parties.
7. LIMITED WARRANTY AND WARRANTY DISCLAIMER
The Licensed Software is licensed to Licensee "as is". To the maximum
extent permitted by applicable law, Digia on behalf of itself and its
suppliers, disclaims all warranties and conditions, either express or
implied, including, but not limited to, implied warranties of
merchantability, fitness for a particular purpose, title and
non-infringement with regard to the Licensed Software.
8. LIMITATION OF LIABILITY
If, Digia's warranty disclaimer notwithstanding, Digia is held liable to
Licensee, whether in contract, tort or any other legal theory, based on
the Licensed Software, Digia's entire liability to Licensee and
Licensee's exclusive remedy shall be, at Digia's option, either (A)
return of the price Licensee paid for the Licensed Software, or (B)
repair or replacement of the Licensed Software, provided Licensee
returns to Digia all copies of the Licensed Software as originally
delivered to Licensee. Digia shall not under any circumstances be liable
to Licensee based on failure of the Licensed Software if the failure
resulted from accident, abuse or misapplication, nor shall Digia under
any circumstances be liable for special damages, punitive or exemplary
damages, damages for loss of profits or interruption of business or for
loss or corruption of data. Any award of damages from Digia to Licensee
shall not exceed the total amount Licensee has paid to Digia in
connection with this Agreement.
9. CONFIDENTIALITY
Each party acknowledges that during the Term of this Agreement it shall
have access to information about the other party's business, business
methods, business plans, customers, business relations, technology, and
other information, including the terms of this Agreement, that is
confidential and of great value to the other party, and the value of
which would be significantly reduced if disclosed to third parties (the
"Confidential Information"). Accordingly, when a party (the "Receiving
Party") receives Confidential Information from another party (the
"Disclosing Party"), the Receiving Party shall, and shall obligate its
employees and agents and employees and agents of its Affiliates to: (i)
maintain the Confidential Information in strict confidence; (ii) not
disclose the Confidential Information to a third party without the
Disclosing Party's prior written approval; and (iii) not, directly or
indirectly, use the Confidential Information for any purpose other than
for exercising its rights and fulfilling its responsibilities pursuant
to this Agreement. Each party shall take reasonable measures to protect
the Confidential Information of the other party, which measures shall
not be less than the measures taken by such party to protect its own
confidential and proprietary information.
"Confidential Information" shall not include information that (a) is or
becomes generally known to the public through no act or omission of the
Receiving Party; (b) was in the Receiving Party's lawful possession
prior to the disclosure hereunder and was not subject to limitations on
disclosure or use; (c) is developed by the Receiving Party without
access to the Confidential Information of the Disclosing Party or by
persons who have not had access to the Confidential Information of the
Disclosing Party as proven by the written records of the Receiving
Party; (d) is lawfully disclosed to the Receiving Party without
restrictions, by a third party not under an obligation of
confidentiality; or (e) the Receiving Party is legally compelled to
disclose the information, in which case the Receiving Party shall assert
the privileged and confidential nature of the information and cooperate
fully with the Disclosing Party to protect against and prevent
disclosure of any Confidential Information and to limit the scope of
disclosure and the dissemination of disclosed Confidential Information
by all legally available means.
The obligations of the Receiving Party under this Section shall continue
during the Initial Term and for a period of five (5) years after
expiration or termination of this Agreement. To the extent that the
terms of the Non-Disclosure Agreement between Digia and Licensee
conflict with the terms of this Section 9, this Section 9 shall be
controlling over the terms of the Non-Disclosure Agreement.
10. GENERAL PROVISIONS
10.1 No Assignment
Licensee shall not be entitled to assign or transfer all or any of its
rights, benefits and obligations under this Agreement without the prior
written consent of Digia, which shall not be unreasonably withheld.
10.2 Termination
Digia may terminate the Agreement at any time immediately upon written
notice by Digia to Licensee if Licensee breaches this Agreement.
Upon termination of this Agreement, Licensee shall return to Digia all
copies of Licensed Software that were supplied by Digia. All other
copies of Licensed Software in the possession or control of Licensee
must be erased or destroyed. An officer of Licensee must promptly
deliver to Digia a written confirmation that this has occurred.
10.3 Surviving Sections
Any terms and conditions that by their nature or otherwise reasonably
should survive a cancellation or termination of this Agreement shall
also be deemed to survive. Such terms and conditions include, but are
not limited to the following Sections: 2, 5, 6, 7, 8, 9, 10.2, 10.3, 10.4,
10.5, 10.6, 10.7, and 10.8 of this Agreement.
10.4 Entire Agreement
This Agreement constitutes the complete agreement between the parties
and supersedes all prior or contemporaneous discussions,
representations, and proposals, written or oral, with respect to the
subject matters discussed herein, with the exception of the
non-disclosure agreement executed by the parties in connection with this
Agreement ("Non-Disclosure Agreement"), if any, shall be subject to
Section 9. No modification of this Agreement shall be effective unless
contained in a writing executed by an authorized representative of each
party. No term or condition contained in Licensee's purchase order shall
apply unless expressly accepted by Digia in writing. If any provision of
the Agreement is found void or unenforceable, the remainder shall remain
valid and enforceable according to its terms. If any remedy provided is
determined to have failed for its essential purpose, all limitations of
liability and exclusions of damages set forth in this Agreement shall
remain in effect.
10.5 Export Control
Licensee acknowledges that the Licensed Software may be subject to
export control restrictions of various countries. Licensee shall fully
comply with all applicable export license restrictions and requirements
as well as with all laws and regulations relating to the importation of
the Licensed Software and shall procure all necessary governmental
authorizations, including without limitation, all necessary licenses,
approvals, permissions or consents, where necessary for the
re-exportation of the Licensed Software.,
10.6 Governing Law and Legal Venue
This Agreement shall be construed and interpreted in accordance with the
laws of Finland, excluding its choice of law provisions. Any disputes
arising out of or relating to this Agreement shall be resolved in
arbitration under the Rules of Arbitration of the Chamber of Commerce of
Helsinki, Finland. The arbitration tribunal shall consist of one (1), or
if either Party so requires, of three (3), arbitrators. The award shall
be final and binding and enforceable in any court of competent
jurisdiction. The arbitration shall be held in Helsinki, Finland and the
process shall be conducted in the English language.
10.7 No Implied License
There are no implied licenses or other implied rights granted under this
Agreement, and all rights, save for those expressly granted hereunder,
shall remain with Digia and its licensors. In addition, no licenses or
immunities are granted to the combination of the Licensed Software with
any other software or hardware not delivered by Digia under this
Agreement.
10.8 Government End Users
A "U.S. Government End User" shall mean any agency or entity of the
government of the United States. The following shall apply if Licensee
is a U.S. Government End User. The Licensed Software is a "commercial
item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995),
consisting of "commercial computer software" and "commercial computer
software documentation," as such terms are used in 48 C.F.R. 12.212
(Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
through 227.7202-4 (June 1995), all U.S. Government End Users acquire
the Licensed Software with only those rights set forth herein. The
Licensed Software (including related documentation) is provided to U.S.
Government End Users: (a) only as a commercial end item; and (b) only
pursuant to this Agreement.

@ -0,0 +1,20 @@
# Ugly hack to work around undefined OE_QMAKE_PATH_EXTERNAL_HOST_BINS variable
# and possibly missing qmake binary (qtbase-native can be removed from sysroot
# e.g. in order to upgrade it, even when there is target qtbase)
#| -- Performing Test run_pic_test - Success
#| CMake Error at tmp-eglibc/sysroots/qemuarm/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:27 (message):
#| The imported target "Qt5::Core" references the file
#|
#| "/qmake"
#|
#| but this file does not exist. Possible reasons include:
do_configure_prepend() {
sed -i 's/^find_package(Qt5Core QUIET)$/#find_package(Qt5Core QUIET)/g' ${S}/Tests/RunCMake/CMakeLists.txt
sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
sed -i 's/^ find_package(Qt5Widgets REQUIRED)/# find_package(Qt5Widgets REQUIRED)/g' ${S}/Tests/QtAutomoc/CMakeLists.txt
# sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/Qt4And5Automoc/CMakeLists.txt
sed -i 's/^ find_package(Qt5Widgets QUIET NO_MODULE)/# find_package(Qt5Widgets QUIET NO_MODULE)/g' ${S}/Tests/CMakeLists.txt
sed -i 's/^find_package(Qt5Widgets QUIET)/#find_package(Qt5Widgets QUIET)/g' ${S}/Source/QtDialog/CMakeLists.txt
}

@ -0,0 +1,20 @@
# Ugly hack to work around undefined OE_QMAKE_PATH_EXTERNAL_HOST_BINS variable
# and possibly missing qmake binary (qtbase-native can be removed from sysroot
# e.g. in order to upgrade it, even when there is target qtbase)
#| -- Performing Test run_pic_test - Success
#| CMake Error at tmp-eglibc/sysroots/qemuarm/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:27 (message):
#| The imported target "Qt5::Core" references the file
#|
#| "/qmake"
#|
#| but this file does not exist. Possible reasons include:
do_configure_prepend() {
sed -i 's/^find_package(Qt5Core QUIET)$/#find_package(Qt5Core QUIET)/g' ${S}/Tests/RunCMake/CMakeLists.txt
sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
sed -i 's/^ find_package(Qt5Widgets REQUIRED)/# find_package(Qt5Widgets REQUIRED)/g' ${S}/Tests/QtAutomoc/CMakeLists.txt
sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/Qt4And5Automoc/CMakeLists.txt
sed -i 's/^ find_package(Qt5Widgets QUIET NO_MODULE)/# find_package(Qt5Widgets QUIET NO_MODULE)/g' ${S}/Tests/CMakeLists.txt
sed -i 's/^find_package(Qt5Widgets QUIET)/#find_package(Qt5Widgets QUIET)/g' ${S}/Source/QtDialog/CMakeLists.txt
}

@ -0,0 +1,40 @@
SUMMARY = "Qt5 technology demo"
DESCRIPTION = "Cinematic Experience collects many of the new Qt5 QtQuick 2.0 features into the same UX demo application. It uses particles, sprites, path animation, custom shaders etc. features which Qt5 introduces for QML UIs."
HOMEPAGE = "http://quitcoding.com/?page=work#cinex"
LICENSE = "CC-BY-3.0"
LIC_FILES_CHKSUM = "file://README;beginline=38;endline=50;md5=51babd597624b70752069953876aaa18"
SRC_URI = "http://quitcoding.com/download/Qt5_CinematicExperience_rpi_1.0.tgz"
SRC_URI[md5sum] = "935a5db0a6b2a72c67236e72f52be7d1"
SRC_URI[sha256sum] = "0dd602983ced5f7c0cfd5ad0fbfe2b0b7e3c9ff715e4ef23eef818ccc2b6c60b"
S = "${WORKDIR}/Qt5_CinematicExperience_rpi_${PV}/"
# other version available for small screens
#SRC_URI = "http://quitcoding.com/download/Qt5_CinematicExperience_1.0.tgz"
#SRC_URI[md5sum] = "1c4f9bf5411c985fc5d3dbfc5d826a29"
#SRC_URI[sha256sum] = "0e547e0259667915a24e84ade5efdcd0c553f81786734452c2c8dbce19a19f44"
#S = "${WORKDIR}/Qt5_CinematicExperience_${PV}/"
DEPENDS = "qtdeclarative qtgraphicaleffects"
RDEPENDS_${PN} = "qtdeclarative-qmlplugins qtgraphicaleffects-qmlplugins"
require recipes-qt/qt5/qt5.inc
do_install() {
install -d ${D}${datadir}/${P}
install -m 0755 ${B}/Qt5_CinematicExperience ${D}${datadir}/${P}
cp -a ${S}/content ${D}${datadir}/${P}
install -m 0644 ${S}/Qt5_CinematicExperience.qml ${D}${datadir}/${P}
install -d ${D}${bindir}
echo "#!/bin/sh" > ${D}${bindir}/Qt5_CinematicExperience
echo "export QML_IMPORT_PATH=${datadir}/${P}" >> ${D}${bindir}/Qt5_CinematicExperience
echo "export QML2_IMPORT_PATH=${datadir}/${P}" >> ${D}${bindir}/Qt5_CinematicExperience
echo "${datadir}/${P}/Qt5_CinematicExperience \$* " >> ${D}${bindir}/Qt5_CinematicExperience
chmod +x ${D}${bindir}/Qt5_CinematicExperience
}
FILES_${PN}-dbg += "${datadir}/${P}/.debug"
FILES_${PN} += "${datadir}"

@ -0,0 +1,71 @@
From 0b30c0e223f35ec7e27b04142135afc3f298a776 Mon Sep 17 00:00:00 2001
From: Holger Hans Peter Freyther <holger@moiji-mobile.com>
Date: Fri, 21 Mar 2014 20:25:19 +0100
Subject: [PATCH] Add wrapper for the resetFailedUnit command
---
src/sdmanager.cpp | 14 ++++++++++++++
src/sdmanager.h | 2 ++
src/sdmanager_p.h | 1 +
3 files changed, 17 insertions(+)
diff --git a/src/sdmanager.cpp b/src/sdmanager.cpp
index 6bcd459..b3b41f7 100644
--- a/src/sdmanager.cpp
+++ b/src/sdmanager.cpp
@@ -333,6 +333,15 @@ Job::Ptr SystemdPrivate::stopUnit(const QString &name, const Systemd::Mode mode)
return job;
}
+void SystemdPrivate::resetFailedUnit(const QString& name)
+{
+ QDBusPendingReply<QDBusObjectPath> reply = isdface.ResetFailedUnit(name);
+ reply.waitForFinished();
+
+ if (reply.isError())
+ qDebug() << reply.error().message();
+}
+
QString SystemdPrivate::modeToString(const Systemd::Mode mode)
{
switch(mode) {
@@ -447,6 +456,11 @@ Job::Ptr Systemd::stopUnit(const QString &name, const Systemd::Mode mode)
return globalSystemd()->stopUnit(name, mode);
}
+void Systemd::resetFailedUnit(const QString &name)
+{
+ return globalSystemd()->resetFailedUnit(name);
+}
+
Notifier* Systemd::notifier()
{
return globalSystemd();
diff --git a/src/sdmanager.h b/src/sdmanager.h
index 80fb25a..de09f43 100644
--- a/src/sdmanager.h
+++ b/src/sdmanager.h
@@ -185,6 +185,8 @@ namespace Systemd
*/
SDQT_EXPORT Job::Ptr stopUnit(const QString &name, const Mode mode);
+ SDQT_EXPORT void resetFailedUnit(const QString &name);
+
SDQT_EXPORT Notifier* notifier();
}
diff --git a/src/sdmanager_p.h b/src/sdmanager_p.h
index defee8f..674ce4f 100644
--- a/src/sdmanager_p.h
+++ b/src/sdmanager_p.h
@@ -53,6 +53,7 @@ public:
Job::Ptr restartUnit(const QString &name, const Mode mode);
Job::Ptr startUnit(const QString &name, const Mode mode);
Job::Ptr stopUnit(const QString &name, const Mode mode);
+ void resetFailedUnit(const QString &name);
protected Q_SLOTS:
void onJobNew(const uint id, const QDBusObjectPath &job, const QString &unit);
--
1.9.0

@ -0,0 +1,18 @@
diff --git a/QtSystemd.pc.cmake b/QtSystemd.pc.cmake
index 6b6c0e5..c3bdd42 100644
--- a/QtSystemd.pc.cmake
+++ b/QtSystemd.pc.cmake
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
-libdir=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@
+libdir=${prefix}/lib@LIB_SUFFIX@
includedir=${prefix}/include/QtSystemd
Name: QtSystemd
@@ -9,4 +9,4 @@ Version: @VERSION@
Requires: systemd
Cflags: -I${includedir} @CMAKE_INCLUDE_PATH@
-Libs: -L${libdir} -lQtSystemd @CMAKE_LIBRARY_PATH@
+Libs: -L${libdir} -lQtSystemd

@ -0,0 +1,20 @@
DESCRIPTION = "Qt Wrapper for systemd"
HOMEPAGE = "https://github.com/ilpianista/libsystemd-qt"
LICENSE = "LGPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
inherit cmake_qt5
DEPENDS += "systemd qtbase"
RDEPENDS_${PN} = "dbus"
PV = "208+git${SRCPV}"
SRC_URI = "git://github.com/ilpianista/libsystemd-qt;branch=master \
file://fix-pkgconfig.patch \
file://0001-Add-wrapper-for-the-resetFailedUnit-command.patch "
S= "${WORKDIR}/git"
SRCREV = "398056b33314fc583dd8d8422e5c2f8b797fdb3b"
FILES_${PN}-dev += "${libdir}/cmake/* ${libdir}/qt5/mkspecs/features/*"

@ -0,0 +1,34 @@
From 33554f9b3fd493c7e28617fd01466ffa87251f27 Mon Sep 17 00:00:00 2001
From: Samuel Stirtzel <s.stirtzel@googlemail.com>
Date: Wed, 1 Aug 2012 13:21:51 +0200
Subject: [PATCH] Fix MALIIT_INSTALL_PRF to allow the build with openembedded
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
---
config.pri | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/config.pri b/config.pri
index b037b8c..43409f3 100644
--- a/config.pri
+++ b/config.pri
@@ -161,9 +161,11 @@ contains(QT_MAJOR_VERSION, 4) {
QT_WIDGETS = gui widgets
}
-MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
-local-install {
- MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
+isEmpty(MALIIT_INSTALL_PRF) {
+ MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
+ local-install {
+ MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
+ }
}
defineTest(outputFile) {
--
1.7.9.5

@ -0,0 +1,34 @@
From fb6acbd2af9ed288c1c4f4200fc73d8d9955486a Mon Sep 17 00:00:00 2001
From: Samuel Stirtzel <s.stirtzel@googlemail.com>
Date: Wed, 1 Aug 2012 13:33:10 +0200
Subject: [PATCH] Fix QT_IM_PLUGIN_PATH to allow openembedded to build Maliit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
---
input-context/input-context.pri | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/input-context/input-context.pri b/input-context/input-context.pri
index d94e6a3..d460e70 100644
--- a/input-context/input-context.pri
+++ b/input-context/input-context.pri
@@ -25,8 +25,10 @@ for(OPTION,$$list($$lower($$COV_OPTION))){
QMAKE_CLEAN += $$OBJECTS_DIR/*.gcno $$OBJECTS_DIR/*.gcda
-QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
-QT_PREFIX = $$[QT_INSTALL_PREFIX]
-local-install {
- QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
+isEmpty(QT_IM_PLUGIN_PATH) {
+ QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
+ QT_PREFIX = $$[QT_INSTALL_PREFIX]
+ local-install {
+ QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
+ }
}
--
1.7.9.5

@ -0,0 +1,23 @@
From cc33efdedbec9e9a55e9a0c6756516fd84d42e53 Mon Sep 17 00:00:00 2001
From: Samuel Stirtzel <s.stirtzel@googlemail.com>
Date: Fri, 1 Mar 2013 11:31:41 +0100
Subject: [PATCH] Link to libmaliit-1,0 in inputcontext plugin
Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
---
.../input-context-plugin/input-context-plugin.pro | 2 ++
1 file changed, 2 insertions(+)
diff --git a/input-context/input-context-plugin/input-context-plugin.pro b/input-context/input-context-plugin/input-context-plugin.pro
index eefbe93..296e2fa 100644
--- a/input-context/input-context-plugin/input-context-plugin.pro
+++ b/input-context/input-context-plugin/input-context-plugin.pro
@@ -15,3 +15,5 @@ CONFIG += plugin
INSTALLS += target
target.path += $$QT_IM_PLUGIN_PATH
+
+LIBS += -L../../lib -l"maliit-1.0"
--
1.7.9.5

@ -0,0 +1,6 @@
[Desktop Entry]
Name=Maliit server
Exec=/usr/bin/maliit-server
Icon=
Type=Application
Categories=Utility;

@ -0,0 +1,94 @@
DESCRIPTION = "A virtual keyboard for touch-screen based user interfaces"
HOMEPAGE = "https://wiki.maliit.org/Main_Page"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=5c917f6ce94ceb8d8d5e16e2fca5b9ad"
inherit qmake5
SRC_URI = "git://github.com/maliit/framework.git;branch=master \
file://0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch \
file://maliit-server.desktop \
"
SRCREV = "dbc0403f329d7f6ce2f5a09e6ff5adbd2548a8c9"
PV = "0.99.0+git${SRCPV}"
PACKAGES =+ "${PN}-gtk"
GTKIMMODULES_PACKAGES = "${PN}-gtk"
DEPENDS = "qtdeclarative"
# FIXME: Do we need something like this with qt5?
#RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
RRECOMMENDS_${PN} = "maliit-plugins-qt5"
FILES_${PN} += "\
${libdir}/*.so* \
${bindir} \
${datadir}/applications/maliit-server.desktop \
${datadir}/dbus-1 \
"
FILES_${PN}-dbg += "\
${libdir}/maliit-framework-tests \
"
FILES_${PN}-dev += "\
${includedir}/maliit \
${libdir}/pkgconfig \
${libdir}/qt5/mkspecs \
"
EXTRA_QMAKEVARS_PRE = "\
PREFIX=${prefix} \
LIBDIR=${libdir} \
DATADIR=${datadir} \
QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
MALIIT_INSTALL_PRF=${QMAKE_MKSPEC_PATH}/mkspecs/features \
SCHEMADIR=${sysconfdir}/gconf/schemas \
CONFIG+=disable-gconf \
CONFIG+=disable-gtk-cache-update \
CONFIG+=local-install \
CONFIG+=nosdk \
CONFIG+=nodoc \
CONFIG+=noxcb \
CONFIG+=enable-dbus-activation \
"
EXTRA_OEMAKE += "INSTALL_ROOT=${D}"
do_install_append() {
#Fix absolute paths
sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}/${QT_DIR_NAME}/mkspecs/features/maliit-framework.prf
sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}/${QT_DIR_NAME}/mkspecs/features/maliit-plugins.prf
install -d ${D}${datadir}/applications
install -m 644 ${WORKDIR}/maliit-server.desktop ${D}${datadir}/applications
}
pkg_postinst_${PN} () {
#!/bin/sh
# should run online
if [ "x$D" != "x" ]; then
exit 1
fi
echo "export QT_IM_MODULE=Maliit" >> /etc/xprofile
ln -s /usr/share/applications/maliit-server.desktop /etc/xdg/autostart/maliit-server.desktop
}
pkg_postrm_${PN} () {
#!/bin/sh
# should run online
if [ "x$D" = "x" ]; then
exit 1
fi
if [ -e "/etc/xprofile" ]; then
sed -i -e "g|export QT_IM_MODULE=Maliit|d" /etc/xprofile
fi
rm -f /etc/xdg/autostart/maliit-server.desktop
}
S = "${WORKDIR}/git"

@ -0,0 +1,35 @@
DESCRIPTION = "Plugins for a virtual keyboard for touch-screen based user interfaces"