diff options
| author | Martin Jansa <Martin.Jansa@gmail.com> | 2015-04-16 13:15:26 +0200 |
|---|---|---|
| committer | Martin Jansa <Martin.Jansa@gmail.com> | 2015-08-18 12:07:34 +0200 |
| commit | 18741e483851e1a6aae79992b130aee34ad48879 (patch) | |
| tree | c6523af371af79a48d726578217d6b3b1570beb0 | |
| parent | d2c05c81e8230358dca80cf9df67e49f9f672a29 (diff) | |
| download | meta-qt5-18741e483851e1a6aae79992b130aee34ad48879.tar.gz | |
recipes-git: upgrade to 5.5
* based on my WIP patch + fixes from John Mullen
* I was trying to get rhid of 0003-Add-external-hostbindir-option.patch
and 0010-Add-external-hostbindir-option-for-native-sdk.patch by using
upstream configure parameter added in some previous version, but I've
failed, so now good-old -external-hostbindir parameter is back
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
63 files changed, 432 insertions, 2927 deletions
diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb index ce5e97fc..0b3e87df 100644 --- a/recipes-qt/qt5/nativesdk-qtbase_git.bb +++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb | |||
| @@ -5,9 +5,9 @@ HOMEPAGE = "http://qt-project.org" | |||
| 5 | 5 | ||
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 9 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 10 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 10 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 12 | " | 12 | " |
| 13 | 13 | ||
| @@ -25,23 +25,20 @@ SRC_URI += "\ | |||
| 25 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ | 25 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ |
| 26 | file://0003-Add-external-hostbindir-option.patch \ | 26 | file://0003-Add-external-hostbindir-option.patch \ |
| 27 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ | 27 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ |
| 28 | file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ | 28 | file://0005-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ |
| 29 | file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ | 29 | file://0006-configure-bump-path-length-from-256-to-512-character.patch \ |
| 30 | file://0007-configure-bump-path-length-from-256-to-512-character.patch \ | 30 | file://0008-QOpenGLPaintDevice-sub-area-support.patch \ |
| 31 | file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ | ||
| 32 | file://0009-QOpenGLPaintDevice-sub-area-support.patch \ | ||
| 33 | file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ | ||
| 34 | " | 31 | " |
| 35 | 32 | ||
| 36 | # common for qtbase-native and nativesdk-qtbase | 33 | # common for qtbase-native and nativesdk-qtbase |
| 37 | SRC_URI += " \ | 34 | SRC_URI += " \ |
| 38 | file://0011-Always-build-uic.patch \ | 35 | file://0009-Always-build-uic.patch \ |
| 39 | file://0012-Add-external-hostbindir-option-for-native-sdk.patch \ | 36 | file://0010-Add-external-hostbindir-option-for-native-sdk.patch \ |
| 40 | " | 37 | " |
| 41 | 38 | ||
| 42 | # specific for nativesdk-qtbase | 39 | # specific for nativesdk-qtbase |
| 43 | SRC_URI += " \ | 40 | SRC_URI += " \ |
| 44 | file://0013-configure-preserve-built-qmake-and-swap-with-native-.patch \ | 41 | file://0009-configure-preserve-built-qmake-and-swap-with-native-.patch \ |
| 45 | " | 42 | " |
| 46 | 43 | ||
| 47 | # CMake's toolchain configuration of nativesdk-qtbase | 44 | # CMake's toolchain configuration of nativesdk-qtbase |
| @@ -280,4 +277,4 @@ do_generate_qt_environment_file() { | |||
| 280 | 277 | ||
| 281 | addtask generate_qt_environment_file after do_install before do_package | 278 | addtask generate_qt_environment_file after do_install before do_package |
| 282 | 279 | ||
| 283 | SRCREV = "2cb17c1fb903434274e58692c9f0df619affdab0" | 280 | SRCREV = "2fde9f59eeab68ede92324e7613daf8be3eaf498" |
diff --git a/recipes-qt/qt5/nativesdk-qttools_git.bb b/recipes-qt/qt5/nativesdk-qttools_git.bb index 73e5d222..b217da1f 100644 --- a/recipes-qt/qt5/nativesdk-qttools_git.bb +++ b/recipes-qt/qt5/nativesdk-qttools_git.bb | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 1 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 2 | LIC_FILES_CHKSUM = " \ | 2 | LIC_FILES_CHKSUM = " \ |
| 3 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 3 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 4 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 4 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 5 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 5 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 6 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 6 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 7 | " | 7 | " |
| 8 | 8 | ||
| @@ -13,9 +13,6 @@ DEPENDS = "nativesdk-qtbase qtbase-native" | |||
| 13 | require nativesdk-qt5.inc | 13 | require nativesdk-qt5.inc |
| 14 | require qt5-git.inc | 14 | require qt5-git.inc |
| 15 | 15 | ||
| 16 | # it's already included with newer oe-core, but include it here for dylan | ||
| 17 | FILESEXTRAPATHS =. "${FILE_DIRNAME}/qttools:" | ||
| 18 | |||
| 19 | SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" | 16 | SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" |
| 20 | 17 | ||
| 21 | PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" | 18 | PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" |
| @@ -42,4 +39,4 @@ do_install() { | |||
| 42 | rm -rf ${D}${libdir} | 39 | rm -rf ${D}${libdir} |
| 43 | } | 40 | } |
| 44 | 41 | ||
| 45 | SRCREV = "a6ed9b418d1b4464f088b378e5bdb96ec420db6c" | 42 | SRCREV = "33c65366a7c3901d2aecfde3dbc485e1eac5c10c" |
diff --git a/recipes-qt/qt5/qt3d_git.bb b/recipes-qt/qt5/qt3d_git.bb index 62f17e13..7f61271a 100644 --- a/recipes-qt/qt5/qt3d_git.bb +++ b/recipes-qt/qt5/qt3d_git.bb | |||
| @@ -1,13 +1,10 @@ | |||
| 1 | require qt5.inc | 1 | require qt5.inc |
| 2 | require qt5-git.inc | 2 | require qt5-git.inc |
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & LGPL-2.1 & DIGIA-TPLA-2.4 | GPL-3.0" | 4 | LICENSE = "GFDL-1.3 & LGPL-3.0 & DIGIA-TPLA-2.4 | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \ | 6 | file://LICENSE.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ |
| 7 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 7 | file://LICENSE.GPL;md5=05832301944453ec79e40ba3c3cfceec\ |
| 8 | file://LICENSE.PREVIEW.COMMERCIAL;md5=9d94dadfab8b246782ffea02082ee13a \ | ||
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | ||
| 10 | file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \ | ||
| 11 | " | 8 | " |
| 12 | 9 | ||
| 13 | DEPENDS = "qtdeclarative" | 10 | DEPENDS = "qtdeclarative" |
| @@ -17,7 +14,4 @@ FILES_${PN}-qmlplugins += " \ | |||
| 17 | ${OE_QMAKE_PATH_QML}/*/*/*.obj \ | 14 | ${OE_QMAKE_PATH_QML}/*/*/*.obj \ |
| 18 | " | 15 | " |
| 19 | 16 | ||
| 20 | QT_MODULE_BRANCH = "dev" | 17 | SRCREV = "a3b99941751598fb734b189333d5020666df2b2c" |
| 21 | |||
| 22 | # last tag before this SRCREV is 5.0.0-beta1, but version says 5.3.0 already | ||
| 23 | SRCREV = "8a9723d7420829a2ba0141a9f7d8dc8cd11d8331" | ||
diff --git a/recipes-qt/qt5/qt5-git.inc b/recipes-qt/qt5/qt5-git.inc index b0571bf0..ea37b55c 100644 --- a/recipes-qt/qt5/qt5-git.inc +++ b/recipes-qt/qt5/qt5-git.inc | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # Copyright (C) 2012 O.S. Systems Software LTDA. | 1 | # Copyright (C) 2012 O.S. Systems Software LTDA. |
| 2 | # Copyright (C) 2013-2014 Martin Jansa <martin.jansa@gmail.com> | 2 | # Copyright (C) 2013-2014 Martin Jansa <martin.jansa@gmail.com> |
| 3 | 3 | ||
| 4 | QT_MODULE_BRANCH ?= "5.4" | 4 | QT_MODULE_BRANCH ?= "5.5" |
| 5 | 5 | ||
| 6 | # each module needs to define valid SRCREV | 6 | # each module needs to define valid SRCREV |
| 7 | SRC_URI = " \ | 7 | SRC_URI = " \ |
| @@ -10,4 +10,10 @@ SRC_URI = " \ | |||
| 10 | 10 | ||
| 11 | S = "${WORKDIR}/git" | 11 | S = "${WORKDIR}/git" |
| 12 | 12 | ||
| 13 | PV = "5.4.2+git${SRCPV}" | 13 | PV = "5.5.0+git${SRCPV}" |
| 14 | |||
| 15 | #LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & The-Qt-Company-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | ||
| 16 | #LIC_FILES_CHKSUM = "file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ | ||
| 17 | # file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ | ||
| 18 | # file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ | ||
| 19 | # file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e" | ||
diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb index f84f38ee..ebd72805 100644 --- a/recipes-qt/qt5/qtbase-native_git.bb +++ b/recipes-qt/qt5/qtbase-native_git.bb | |||
| @@ -4,9 +4,9 @@ SECTION = "libs" | |||
| 4 | HOMEPAGE = "http://qt-project.org" | 4 | HOMEPAGE = "http://qt-project.org" |
| 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| @@ -21,21 +21,17 @@ SRC_URI += "\ | |||
| 21 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ | 21 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ |
| 22 | file://0003-Add-external-hostbindir-option.patch \ | 22 | file://0003-Add-external-hostbindir-option.patch \ |
| 23 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ | 23 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ |
| 24 | file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ | 24 | file://0005-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ |
| 25 | file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ | 25 | file://0006-configure-bump-path-length-from-256-to-512-character.patch \ |
| 26 | file://0007-configure-bump-path-length-from-256-to-512-character.patch \ | 26 | file://0008-QOpenGLPaintDevice-sub-area-support.patch \ |
| 27 | file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ | ||
| 28 | file://0009-QOpenGLPaintDevice-sub-area-support.patch \ | ||
| 29 | file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ | ||
| 30 | " | 27 | " |
| 31 | 28 | ||
| 32 | # common for qtbase-native and nativesdk-qtbase | 29 | # common for qtbase-native and nativesdk-qtbase |
| 33 | SRC_URI += " \ | 30 | SRC_URI += " \ |
| 34 | file://0011-Always-build-uic.patch \ | 31 | file://0009-Always-build-uic.patch \ |
| 35 | file://0012-Add-external-hostbindir-option-for-native-sdk.patch \ | 32 | file://0010-Add-external-hostbindir-option-for-native-sdk.patch \ |
| 36 | " | 33 | " |
| 37 | 34 | ||
| 38 | |||
| 39 | CLEANBROKEN = "1" | 35 | CLEANBROKEN = "1" |
| 40 | 36 | ||
| 41 | QT_CONF_PATH = "${B}/qt.conf" | 37 | QT_CONF_PATH = "${B}/qt.conf" |
| @@ -121,4 +117,4 @@ do_install() { | |||
| 121 | ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt | 117 | ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt |
| 122 | } | 118 | } |
| 123 | 119 | ||
| 124 | SRCREV = "2cb17c1fb903434274e58692c9f0df619affdab0" | 120 | SRCREV = "2fde9f59eeab68ede92324e7613daf8be3eaf498" |
diff --git a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch index 0f6bcbe7..1997d0db 100644 --- a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +++ b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From ec414ca0df1ec459b5abd753cf0d730572715e17 Mon Sep 17 00:00:00 2001 | 1 | From b8b9732948ede2b27304eed7f1d78aed16a4eeb7 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Mon, 15 Apr 2013 04:29:32 +0200 | 3 | Date: Mon, 15 Apr 2013 04:29:32 +0200 |
| 4 | Subject: [PATCH 01/12] Add linux-oe-g++ platform | 4 | Subject: [PATCH 1/7] Add linux-oe-g++ platform |
| 5 | 5 | ||
| 6 | * This qmake.conf unlike other platforms reads most variables from | 6 | * This qmake.conf unlike other platforms reads most variables from |
| 7 | shell environment, because it's easier for qt recipes to export | 7 | shell environment, because it's easier for qt recipes to export |
| @@ -43,19 +43,19 @@ Upstream-Status: Inappropriate [embedded specific] | |||
| 43 | Change-Id: I0591ed5da0d61d7cf1509d420e6b293582f1863c | 43 | Change-Id: I0591ed5da0d61d7cf1509d420e6b293582f1863c |
| 44 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 44 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 45 | --- | 45 | --- |
| 46 | configure | 66 ++++++++++++++++------- | 46 | configure | 70 +++++++++++++++--------- |
| 47 | mkspecs/features/configure.prf | 4 +- | 47 | mkspecs/features/configure.prf | 4 +- |
| 48 | mkspecs/linux-oe-g++/qmake.conf | 40 ++++++++++++++ | 48 | mkspecs/linux-oe-g++/qmake.conf | 40 ++++++++++++++ |
| 49 | mkspecs/linux-oe-g++/qplatformdefs.h | 100 +++++++++++++++++++++++++++++++++++ | 49 | mkspecs/linux-oe-g++/qplatformdefs.h | 100 +++++++++++++++++++++++++++++++++++ |
| 50 | 4 files changed, 188 insertions(+), 22 deletions(-) | 50 | 4 files changed, 186 insertions(+), 28 deletions(-) |
| 51 | create mode 100644 mkspecs/linux-oe-g++/qmake.conf | 51 | create mode 100644 mkspecs/linux-oe-g++/qmake.conf |
| 52 | create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h | 52 | create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h |
| 53 | 53 | ||
| 54 | diff --git a/configure b/configure | 54 | diff --git a/configure b/configure |
| 55 | index 6ce6753..0a00d6d 100755 | 55 | index 7251e8e..8093782 100755 |
| 56 | --- a/configure | 56 | --- a/configure |
| 57 | +++ b/configure | 57 | +++ b/configure |
| 58 | @@ -316,6 +316,16 @@ getQMakeConf() | 58 | @@ -342,6 +342,16 @@ getQMakeConf() |
| 59 | getSingleQMakeVariable "$1" "$specvals" | 59 | getSingleQMakeVariable "$1" "$specvals" |
| 60 | } | 60 | } |
| 61 | 61 | ||
| @@ -72,7 +72,7 @@ index 6ce6753..0a00d6d 100755 | |||
| 72 | getXQMakeConf() | 72 | getXQMakeConf() |
| 73 | { | 73 | { |
| 74 | if [ -z "$xspecvals" ]; then | 74 | if [ -z "$xspecvals" ]; then |
| 75 | @@ -325,6 +335,16 @@ getXQMakeConf() | 75 | @@ -351,6 +361,16 @@ getXQMakeConf() |
| 76 | getSingleQMakeVariable "$1" "$xspecvals" | 76 | getSingleQMakeVariable "$1" "$xspecvals" |
| 77 | } | 77 | } |
| 78 | 78 | ||
| @@ -89,37 +89,38 @@ index 6ce6753..0a00d6d 100755 | |||
| 89 | compilerSupportsFlag() | 89 | compilerSupportsFlag() |
| 90 | { | 90 | { |
| 91 | cat >conftest.cpp <<EOF | 91 | cat >conftest.cpp <<EOF |
| 92 | @@ -541,21 +561,19 @@ fi | 92 | @@ -564,24 +584,14 @@ fi |
| 93 | # initalize variables | 93 | # initalize variables |
| 94 | #------------------------------------------------------------------------------- | 94 | #------------------------------------------------------------------------------- |
| 95 | 95 | ||
| 96 | -SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS" | 96 | -SYSTEM_VARIABLES="AR RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS" |
| 97 | -for varname in $SYSTEM_VARIABLES; do | 97 | -for varname in $SYSTEM_VARIABLES; do |
| 98 | +# Export all OE variables for qmake.conf from shell env to QMakeVars | 98 | +# Export all OE variables for qmake.conf from shell env to QMakeVars |
| 99 | +OE_VARIABLES="AR CC CFLAGS COMPILER CXX CXXFLAGS LDFLAGS LINK QT_CONFIG STRIP" | 99 | +OE_VARIABLES="AR CC CFLAGS COMPILER CXX CXXFLAGS LDFLAGS LINK QT_CONFIG STRIP" |
| 100 | +for varname in $OE_VARIABLES; do | 100 | +for varname in $OE_VARIABLES; do |
| 101 | qmakevarname="${varname}" | 101 | qmakevarname="${varname}" |
| 102 | - qmakecmdargs="" | ||
| 102 | - # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS | 103 | - # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS |
| 103 | - if [ "${varname}" = "LDFLAGS" ]; then | 104 | - if [ "${varname}" = "LDFLAGS" ]; then |
| 104 | - qmakevarname="LFLAGS" | 105 | - qmakevarname="LFLAGS" |
| 105 | - elif [ "${varname}" = "LD" ]; then | 106 | - elif [ "${varname}" = "LD" ]; then |
| 106 | - qmakevarname="LINK" | 107 | - qmakevarname="LINK" |
| 108 | - elif [ "${varname}" = "AR" ]; then | ||
| 109 | - # QMAKE_AR needs to be set to "/path/to/ar cqs" but the | ||
| 110 | - # environment variable will be set to the command only so we | ||
| 111 | - # need to append " cqs" for autoconf compatibility | ||
| 112 | - qmakecmdargs=" cqs" | ||
| 107 | - fi | 113 | - fi |
| 108 | cmd=`echo \ | 114 | cmd=`echo \ |
| 109 | -'if [ -n "\$'${varname}'" ]; then | 115 | -'if [ -n "\$'${varname}'" ]; then |
| 110 | - QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}'" | 116 | - QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}${qmakecmdargs}'" |
| 111 | +'if [ -n "\$OE_QMAKE_'${varname}'" ]; then | 117 | +'if [ -n "\$OE_QMAKE_'${varname}'" ]; then |
| 112 | + QMakeVar set OE_QMAKE_'${qmakevarname}' "\$OE_QMAKE_'${varname}'" | 118 | + QMakeVar set OE_QMAKE_'${qmakevarname}' "\$OE_QMAKE_'${varname}'" |
| 113 | +# echo "Exporting OE_QMAKE_'${qmakevarname}' value=\"\$OE_QMAKE_'${varname}'\"" >&2 | 119 | +# echo "Exporting OE_QMAKE_'${qmakevarname}' value=\"\$OE_QMAKE_'${varname}'\"" >&2 |
| 114 | fi'` | 120 | fi'` |
| 115 | eval "$cmd" | 121 | eval "$cmd" |
| 116 | done | 122 | done |
| 117 | + | 123 | @@ -3335,7 +3345,7 @@ if [ "$XPLATFORM_MAC" = "yes" ]; then |
| 118 | +SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS" | ||
| 119 | # Use CC/CXX to run config.tests | ||
| 120 | mkdir -p "$outpath/config.tests" | ||
| 121 | rm -f "$outpath/config.tests/.qmake.cache" | ||
| 122 | @@ -3178,7 +3196,7 @@ if [ "$XPLATFORM_MAC" = "yes" ]; then | ||
| 123 | [ "$CFG_QGTKSTYLE" = "auto" ] && CFG_QGTKSTYLE=no | 124 | [ "$CFG_QGTKSTYLE" = "auto" ] && CFG_QGTKSTYLE=no |
| 124 | fi | 125 | fi |
| 125 | 126 | ||
| @@ -128,7 +129,7 @@ index 6ce6753..0a00d6d 100755 | |||
| 128 | 129 | ||
| 129 | TEST_COMPILER=$QMAKE_CONF_COMPILER | 130 | TEST_COMPILER=$QMAKE_CONF_COMPILER |
| 130 | 131 | ||
| 131 | @@ -3216,7 +3234,7 @@ if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then | 132 | @@ -3392,7 +3402,7 @@ if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then |
| 132 | exit 1 | 133 | exit 1 |
| 133 | fi | 134 | fi |
| 134 | fi | 135 | fi |
| @@ -137,7 +138,7 @@ index 6ce6753..0a00d6d 100755 | |||
| 137 | 138 | ||
| 138 | GCC_MACHINE_DUMP= | 139 | GCC_MACHINE_DUMP= |
| 139 | case "$TEST_COMPILER" in *g++) GCC_MACHINE_DUMP=$($TEST_COMPILER -dumpmachine);; esac | 140 | case "$TEST_COMPILER" in *g++) GCC_MACHINE_DUMP=$($TEST_COMPILER -dumpmachine);; esac |
| 140 | @@ -3687,6 +3705,14 @@ setBootstrapVariable() | 141 | @@ -3894,6 +3904,14 @@ setBootstrapVariable() |
| 141 | getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" | 142 | getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile" |
| 142 | } | 143 | } |
| 143 | 144 | ||
| @@ -152,7 +153,7 @@ index 6ce6753..0a00d6d 100755 | |||
| 152 | # build qmake | 153 | # build qmake |
| 153 | if true; then ###[ '!' -f "$outpath/bin/qmake" ]; | 154 | if true; then ###[ '!' -f "$outpath/bin/qmake" ]; |
| 154 | echo "Creating qmake..." | 155 | echo "Creating qmake..." |
| 155 | @@ -3725,14 +3751,14 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; | 156 | @@ -3932,14 +3950,14 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; |
| 156 | fi | 157 | fi |
| 157 | 158 | ||
| 158 | [ "$CFG_SILENT" = "yes" ] && CC_TRANSFORM='s,^,\@,' || CC_TRANSFORM= | 159 | [ "$CFG_SILENT" = "yes" ] && CC_TRANSFORM='s,^,\@,' || CC_TRANSFORM= |
diff --git a/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch b/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch index 69e3fdb9..93571abd 100644 --- a/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +++ b/recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | From f681cc3a7cb36e2bcc5e26e767236e86a5d49841 Mon Sep 17 00:00:00 2001 | 1 | From c8d9a59b03bf53838118f0ddf599d554a4fcf4c6 Mon Sep 17 00:00:00 2001 |
| 2 | From: Holger Freyther <zecke@selfish.org> | 2 | From: Holger Freyther <zecke@selfish.org> |
| 3 | Date: Wed, 26 Sep 2012 17:22:30 +0200 | 3 | Date: Wed, 26 Sep 2012 17:22:30 +0200 |
| 4 | Subject: [PATCH 02/12] qlibraryinfo: allow to set qt.conf from the outside | 4 | Subject: [PATCH 2/7] qlibraryinfo: allow to set qt.conf from the outside using |
| 5 | using the environment | 5 | the environment |
| 6 | 6 | ||
| 7 | Allow to set a qt.conf from the outside using the environment. This allows | 7 | Allow to set a qt.conf from the outside using the environment. This allows |
| 8 | to inject new prefixes and other paths into qmake. This is needed when using | 8 | to inject new prefixes and other paths into qmake. This is needed when using |
| @@ -19,10 +19,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 19 | 1 file changed, 4 insertions(+), 1 deletion(-) | 19 | 1 file changed, 4 insertions(+), 1 deletion(-) |
| 20 | 20 | ||
| 21 | diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp | 21 | diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp |
| 22 | index d66007b..91ca643 100644 | 22 | index 2912e68..f663c88 100644 |
| 23 | --- a/src/corelib/global/qlibraryinfo.cpp | 23 | --- a/src/corelib/global/qlibraryinfo.cpp |
| 24 | +++ b/src/corelib/global/qlibraryinfo.cpp | 24 | +++ b/src/corelib/global/qlibraryinfo.cpp |
| 25 | @@ -138,7 +138,10 @@ QLibrarySettings::QLibrarySettings() | 25 | @@ -157,7 +157,10 @@ void QLibrarySettings::load() |
| 26 | 26 | ||
| 27 | QSettings *QLibraryInfoPrivate::findConfiguration() | 27 | QSettings *QLibraryInfoPrivate::findConfiguration() |
| 28 | { | 28 | { |
| @@ -31,9 +31,9 @@ index d66007b..91ca643 100644 | |||
| 31 | + QString qtconfig = QFile::decodeName(config); | 31 | + QString qtconfig = QFile::decodeName(config); |
| 32 | + if(!QFile::exists(qtconfig)) | 32 | + if(!QFile::exists(qtconfig)) |
| 33 | + qtconfig = QStringLiteral(":/qt/etc/qt.conf"); | 33 | + qtconfig = QStringLiteral(":/qt/etc/qt.conf"); |
| 34 | #ifdef QT_BOOTSTRAPPED | 34 | if (QFile::exists(qtconfig)) |
| 35 | if(!QFile::exists(qtconfig)) | 35 | return new QSettings(qtconfig, QSettings::IniFormat); |
| 36 | qtconfig = qt_libraryInfoFile(); | 36 | #ifdef QT_BUILD_QMAKE |
| 37 | -- | 37 | -- |
| 38 | 2.4.2 | 38 | 2.4.2 |
| 39 | 39 | ||
diff --git a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch index af224060..4a8cdbbd 100644 --- a/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch +++ b/recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 47b88e13ed8f4bb3bd34ac24dcf4b908dcba6753 Mon Sep 17 00:00:00 2001 | 1 | From d2212dd3c5acf7d3541f19470e688095a20d956c Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Sat, 6 Apr 2013 13:15:07 +0200 | 3 | Date: Sat, 6 Apr 2013 13:15:07 +0200 |
| 4 | Subject: [PATCH 03/12] Add -external-hostbindir option | 4 | Subject: Add -external-hostbindir option |
| 5 | 5 | ||
| 6 | * when cross-compiling it's sometimes useful to use existing tools from machine | 6 | * when cross-compiling it's sometimes useful to use existing tools from machine |
| 7 | (or in OpenEmbedded built with separate native recipe) when building for target | 7 | (or in OpenEmbedded built with separate native recipe) when building for target |
| @@ -23,21 +23,24 @@ Upstream-Status: Pending | |||
| 23 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 23 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 24 | Signed-off-by: Simon Busch <morphis@gravedo.de> | 24 | Signed-off-by: Simon Busch <morphis@gravedo.de> |
| 25 | Signed-off-by: Jonathan Liu <net147@gmail.com> | 25 | Signed-off-by: Jonathan Liu <net147@gmail.com> |
| 26 | |||
| 27 | Conflicts: | ||
| 28 | configure | ||
| 26 | --- | 29 | --- |
| 27 | configure | 15 +++++++++++++++ | 30 | configure | 14 ++++++++++++++ |
| 28 | mkspecs/features/qt_functions.prf | 6 +++++- | 31 | mkspecs/features/qt_functions.prf | 6 +++++- |
| 29 | mkspecs/features/qt_tool.prf | 4 ++-- | 32 | mkspecs/features/qt_tool.prf | 4 ++-- |
| 30 | qtbase.pro | 13 ++++++++++--- | 33 | qtbase.pro | 13 ++++++++++--- |
| 31 | src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- | 34 | src/corelib/Qt5CoreConfigExtras.cmake.in | 6 +++--- |
| 32 | src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- | 35 | src/dbus/Qt5DBusConfigExtras.cmake.in | 4 ++-- |
| 33 | src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- | 36 | src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- |
| 34 | 7 files changed, 38 insertions(+), 12 deletions(-) | 37 | 7 files changed, 37 insertions(+), 12 deletions(-) |
| 35 | 38 | ||
| 36 | diff --git a/configure b/configure | 39 | diff --git a/configure b/configure |
| 37 | index 0a00d6d..ad5f4cd 100755 | 40 | index 43c4dab..ffb69df 100755 |
| 38 | --- a/configure | 41 | --- a/configure |
| 39 | +++ b/configure | 42 | +++ b/configure |
| 40 | @@ -770,6 +770,7 @@ QT_HOST_BINS= | 43 | @@ -806,6 +806,7 @@ QT_HOST_BINS= |
| 41 | QT_HOST_LIBS= | 44 | QT_HOST_LIBS= |
| 42 | QT_HOST_DATA= | 45 | QT_HOST_DATA= |
| 43 | QT_EXT_PREFIX= | 46 | QT_EXT_PREFIX= |
| @@ -45,7 +48,7 @@ index 0a00d6d..ad5f4cd 100755 | |||
| 45 | 48 | ||
| 46 | #flags for SQL drivers | 49 | #flags for SQL drivers |
| 47 | QT_CFLAGS_PSQL= | 50 | QT_CFLAGS_PSQL= |
| 48 | @@ -889,6 +890,7 @@ while [ "$#" -gt 0 ]; do | 51 | @@ -925,6 +926,7 @@ while [ "$#" -gt 0 ]; do |
| 49 | -testsdir| \ | 52 | -testsdir| \ |
| 50 | -hostdatadir| \ | 53 | -hostdatadir| \ |
| 51 | -hostbindir| \ | 54 | -hostbindir| \ |
| @@ -53,7 +56,7 @@ index 0a00d6d..ad5f4cd 100755 | |||
| 53 | -hostlibdir| \ | 56 | -hostlibdir| \ |
| 54 | -extprefix| \ | 57 | -extprefix| \ |
| 55 | -sysroot| \ | 58 | -sysroot| \ |
| 56 | @@ -1107,6 +1109,9 @@ while [ "$#" -gt 0 ]; do | 59 | @@ -1154,6 +1156,9 @@ while [ "$#" -gt 0 ]; do |
| 57 | extprefix) | 60 | extprefix) |
| 58 | QT_EXT_PREFIX="$VAL" | 61 | QT_EXT_PREFIX="$VAL" |
| 59 | ;; | 62 | ;; |
| @@ -63,7 +66,7 @@ index 0a00d6d..ad5f4cd 100755 | |||
| 63 | pkg-config) | 66 | pkg-config) |
| 64 | if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then | 67 | if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then |
| 65 | CFG_PKGCONFIG="$VAL" | 68 | CFG_PKGCONFIG="$VAL" |
| 66 | @@ -2270,6 +2275,10 @@ Installation options: | 69 | @@ -2380,6 +2385,10 @@ Installation options: |
| 67 | -hostdatadir <dir> . Data used by qmake will be installed to <dir> | 70 | -hostdatadir <dir> . Data used by qmake will be installed to <dir> |
| 68 | (default HOSTPREFIX) | 71 | (default HOSTPREFIX) |
| 69 | 72 | ||
| @@ -74,7 +77,7 @@ index 0a00d6d..ad5f4cd 100755 | |||
| 74 | Configure options: | 77 | Configure options: |
| 75 | 78 | ||
| 76 | The defaults (*) are usually acceptable. A plus (+) denotes a default value | 79 | The defaults (*) are usually acceptable. A plus (+) denotes a default value |
| 77 | @@ -2949,6 +2958,11 @@ fi | 80 | @@ -3095,6 +3104,11 @@ fi |
| 78 | # command line and environment validation | 81 | # command line and environment validation |
| 79 | #------------------------------------------------------------------------------- | 82 | #------------------------------------------------------------------------------- |
| 80 | 83 | ||
| @@ -86,16 +89,8 @@ index 0a00d6d..ad5f4cd 100755 | |||
| 86 | # update QT_CONFIG to show our current predefined configuration | 89 | # update QT_CONFIG to show our current predefined configuration |
| 87 | CFG_QCONFIG_PATH=$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h | 90 | CFG_QCONFIG_PATH=$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h |
| 88 | case "$CFG_QCONFIG" in | 91 | case "$CFG_QCONFIG" in |
| 89 | @@ -3649,6 +3663,7 @@ static const char qt_configure_prefix_path_strs[][256 + 12] = { | ||
| 90 | "qt_hbinpath=$QT_HOST_BINS", | ||
| 91 | "qt_hlibpath=$QT_HOST_LIBS", | ||
| 92 | "qt_hdatpath=$QT_HOST_DATA", | ||
| 93 | + "qt_ebinpath=$QT_EXTERNAL_HOST_BINS", | ||
| 94 | "qt_targspec=$shortxspec", | ||
| 95 | "qt_hostspec=$shortspec", | ||
| 96 | #endif | ||
| 97 | diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf | 92 | diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf |
| 98 | index 79b4eab..8c6913e 100644 | 93 | index a1c4996..fca679c 100644 |
| 99 | --- a/mkspecs/features/qt_functions.prf | 94 | --- a/mkspecs/features/qt_functions.prf |
| 100 | +++ b/mkspecs/features/qt_functions.prf | 95 | +++ b/mkspecs/features/qt_functions.prf |
| 101 | @@ -198,7 +198,11 @@ defineTest(qtAddRpathLink) { | 96 | @@ -198,7 +198,11 @@ defineTest(qtAddRpathLink) { |
| @@ -130,10 +125,10 @@ index 1d3e88c..9b26adf 100644 | |||
| 130 | 125 | ||
| 131 | !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private) | 126 | !host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, _private) |
| 132 | diff --git a/qtbase.pro b/qtbase.pro | 127 | diff --git a/qtbase.pro b/qtbase.pro |
| 133 | index 6d0de44..ddf7478 100644 | 128 | index 51e8fb8..9806769 100644 |
| 134 | --- a/qtbase.pro | 129 | --- a/qtbase.pro |
| 135 | +++ b/qtbase.pro | 130 | +++ b/qtbase.pro |
| 136 | @@ -69,18 +69,25 @@ CONFIG -= qt | 131 | @@ -37,12 +37,16 @@ CONFIG -= qt |
| 137 | 132 | ||
| 138 | ### installations #### | 133 | ### installations #### |
| 139 | 134 | ||
| @@ -153,6 +148,7 @@ index 6d0de44..ddf7478 100644 | |||
| 153 | } | 148 | } |
| 154 | INSTALLS += qmake | 149 | INSTALLS += qmake |
| 155 | 150 | ||
| 151 | @@ -54,6 +58,9 @@ exists($$licheck.files): INSTALLS += licheck | ||
| 156 | #syncqt | 152 | #syncqt |
| 157 | syncqt.path = $$[QT_HOST_BINS] | 153 | syncqt.path = $$[QT_HOST_BINS] |
| 158 | syncqt.files = $$PWD/bin/syncqt.pl | 154 | syncqt.files = $$PWD/bin/syncqt.pl |
| @@ -163,7 +159,7 @@ index 6d0de44..ddf7478 100644 | |||
| 163 | 159 | ||
| 164 | # If we are doing a prefix build, create a "module" pri which enables | 160 | # If we are doing a prefix build, create a "module" pri which enables |
| 165 | diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in | 161 | diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in |
| 166 | index 65fd1f9..457518b 100644 | 162 | index 48d5f21..6482022 100644 |
| 167 | --- a/src/corelib/Qt5CoreConfigExtras.cmake.in | 163 | --- a/src/corelib/Qt5CoreConfigExtras.cmake.in |
| 168 | +++ b/src/corelib/Qt5CoreConfigExtras.cmake.in | 164 | +++ b/src/corelib/Qt5CoreConfigExtras.cmake.in |
| 169 | @@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qmake) | 165 | @@ -5,7 +5,7 @@ if (NOT TARGET Qt5::qmake) |
| @@ -229,5 +225,5 @@ index 99d87e2..5621dc0 100644 | |||
| 229 | _qt5_Widgets_check_file_exists(${imported_location}) | 225 | _qt5_Widgets_check_file_exists(${imported_location}) |
| 230 | 226 | ||
| 231 | -- | 227 | -- |
| 232 | 2.4.2 | 228 | 2.2.2 |
| 233 | 229 | ||
diff --git a/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch b/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch index 0cd6296b..4bc6fdd8 100644 --- a/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch +++ b/recipes-qt/qt5/qtbase/0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 3f0f3ded0b4a85a04a0c492e33d8517e598ae08e Mon Sep 17 00:00:00 2001 | 1 | From 3b289cf76a5ce78d94ee022af7d92152f5875372 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Sat, 27 Apr 2013 23:15:37 +0200 | 3 | Date: Sat, 27 Apr 2013 23:15:37 +0200 |
| 4 | Subject: [PATCH 04/12] qt_module: Fix pkgconfig and libtool replacements | 4 | Subject: [PATCH 3/7] qt_module: Fix pkgconfig and libtool replacements |
| 5 | MIME-Version: 1.0 | 5 | MIME-Version: 1.0 |
| 6 | Content-Type: text/plain; charset=UTF-8 | 6 | Content-Type: text/plain; charset=UTF-8 |
| 7 | Content-Transfer-Encoding: 8bit | 7 | Content-Transfer-Encoding: 8bit |
| @@ -63,29 +63,29 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 63 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> | 63 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> |
| 64 | --- | 64 | --- |
| 65 | mkspecs/features/qt_common.prf | 2 +- | 65 | mkspecs/features/qt_common.prf | 2 +- |
| 66 | mkspecs/features/qt_module.prf | 15 +++++++++++++++ | 66 | mkspecs/features/qt_module.prf | 10 ++++++++++ |
| 67 | 2 files changed, 16 insertions(+), 1 deletion(-) | 67 | 2 files changed, 11 insertions(+), 1 deletion(-) |
| 68 | 68 | ||
| 69 | diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf | 69 | diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf |
| 70 | index eb65e73..4db40d0 100644 | 70 | index 5861941..474827c 100644 |
| 71 | --- a/mkspecs/features/qt_common.prf | 71 | --- a/mkspecs/features/qt_common.prf |
| 72 | +++ b/mkspecs/features/qt_common.prf | 72 | +++ b/mkspecs/features/qt_common.prf |
| 73 | @@ -33,7 +33,7 @@ contains(TEMPLATE, .*lib) { | 73 | @@ -36,7 +36,7 @@ contains(TEMPLATE, .*lib) { |
| 74 | lib_replace.replace = | 74 | lib_replace.replace = |
| 75 | } else { | 75 | } else { |
| 76 | lib_replace.match = $$rplbase/lib | 76 | lib_replace.match = $$rplbase/lib |
| 77 | - lib_replace.replace = $$qt_libdir | 77 | - lib_replace.replace = $$qqt_libdir |
| 78 | + lib_replace.replace = "\$$\\{libdir}" | 78 | + lib_replace.replace = "\$$\\{libdir}" |
| 79 | } | 79 | } |
| 80 | lib_replace.CONFIG = path | 80 | lib_replace.CONFIG = path |
| 81 | QMAKE_PRL_INSTALL_REPLACE += lib_replace | 81 | QMAKE_PRL_INSTALL_REPLACE += lib_replace |
| 82 | diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf | 82 | diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf |
| 83 | index 2437efe..2e1f014 100644 | 83 | index 5412f37..5ab348a 100644 |
| 84 | --- a/mkspecs/features/qt_module.prf | 84 | --- a/mkspecs/features/qt_module.prf |
| 85 | +++ b/mkspecs/features/qt_module.prf | 85 | +++ b/mkspecs/features/qt_module.prf |
| 86 | @@ -192,10 +192,25 @@ unix|mingw { | 86 | @@ -214,6 +214,11 @@ unix|mingw { |
| 87 | QMAKE_PKGCONFIG_DESCRIPTION = $$replace(TARGET, ^Qt, "Qt ") module | 87 | pclib_replace.CONFIG = path |
| 88 | QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace | 88 | QMAKE_PKGCONFIG_INSTALL_REPLACE += pclib_replace |
| 89 | 89 | ||
| 90 | + pkgconfig_include_replace.match = $$rplbase/include | 90 | + pkgconfig_include_replace.match = $$rplbase/include |
| 91 | + pkgconfig_include_replace.replace = "\$$\\{includedir}" | 91 | + pkgconfig_include_replace.replace = "\$$\\{includedir}" |
| @@ -94,13 +94,11 @@ index 2437efe..2e1f014 100644 | |||
| 94 | + | 94 | + |
| 95 | unix { | 95 | unix { |
| 96 | CONFIG += create_libtool explicitlib | 96 | CONFIG += create_libtool explicitlib |
| 97 | QMAKE_LIBTOOL_LIBDIR = $$qt_libdir | 97 | host_build: \ |
| 98 | QMAKE_LIBTOOL_INSTALL_REPLACE += lib_replace | 98 | @@ -225,6 +230,11 @@ unix|mingw { |
| 99 | + # add '=' as sysroot in .la files | 99 | ltlib_replace.replace = $$QMAKE_LIBTOOL_LIBDIR |
| 100 | + lafile_replace.match = "-L\$${libdir}" | 100 | ltlib_replace.CONFIG = path |
| 101 | + lafile_replace.replace = "-L=\$$\\{libdir}" | 101 | QMAKE_LIBTOOL_INSTALL_REPLACE += ltlib_replace |
| 102 | + lafile_replace.CONFIG = path | ||
| 103 | + QMAKE_LIBTOOL_INSTALL_REPLACE += lafile_replace | ||
| 104 | + # drop -L/usr/lib in .prl files | 102 | + # drop -L/usr/lib in .prl files |
| 105 | + prl_replace.match = "-L\$${libdir}" | 103 | + prl_replace.match = "-L\$${libdir}" |
| 106 | + prl_replace.replace = "" | 104 | + prl_replace.replace = "" |
diff --git a/recipes-qt/qt5/qtbase/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch b/recipes-qt/qt5/qtbase/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch deleted file mode 100644 index c373a7f2..00000000 --- a/recipes-qt/qt5/qtbase/0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch +++ /dev/null | |||
| @@ -1,97 +0,0 @@ | |||
| 1 | From 9c07ef1c5a56deda170a3946a7c285d534d59fda Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 3 | Date: Mon, 21 Apr 2014 19:22:04 +0200 | ||
| 4 | Subject: [PATCH 05/12] Revert "eglfs: Print the chosen config in debug mode" | ||
| 5 | |||
| 6 | With this change the build is failing with: | ||
| 7 | | In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, | ||
| 8 | | from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, | ||
| 9 | | from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext_p.h:51, | ||
| 10 | | from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:34: | ||
| 11 | | ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:10: error: expected identifier before 'int' | ||
| 12 | | enum Status { | ||
| 13 | | ^ | ||
| 14 | | In file included from ../../include/QtCore/qtextstream.h:1:0, | ||
| 15 | | from ../../include/QtCore/../../../git/src/corelib/io/qdebug.h:42, | ||
| 16 | | from ../../include/QtCore/qdebug.h:1, | ||
| 17 | | from ../../include/QtCore/QDebug:1, | ||
| 18 | | from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformcontext.cpp:40: | ||
| 19 | | ../../include/QtCore/../../../git/src/corelib/io/qtextstream.h:72:17: error: expected unqualified-id before '{' token | ||
| 20 | | enum Status { | ||
| 21 | | ^ | ||
| 22 | | Makefile:3896: recipe for target '.obj/qeglplatformcontext.o' failed | ||
| 23 | | make[2]: *** [.obj/qeglplatformcontext.o] Error 1 | ||
| 24 | | make[2]: *** Waiting for unfinished jobs.... | ||
| 25 | | /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:196:5: error: 'Display' redeclared as different kind of symbol | ||
| 26 | | Display | ||
| 27 | | ^ | ||
| 28 | | In file included from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/eglplatform.h:118:0, | ||
| 29 | | from /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/EGL/egl.h:36, | ||
| 30 | | from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration_p.h:51, | ||
| 31 | | from /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:55: | ||
| 32 | | /OE/build/oe-core/tmp-glibc/sysroots/qemux86-64/usr/include/X11/Xlib.h:499:26: note: previous declaration 'typedef struct _XDisplay Display' | ||
| 33 | | typedef struct _XDisplay Display; | ||
| 34 | | ^ | ||
| 35 | | /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp: In member function 'virtual void* QEGLPlatformIntegration::nativeResourceForScreen(const QByteArray&, QScreen*)': | ||
| 36 | | /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qtbase/5.3.0+5.4.0-alpha1+gitAUTOINC+8456adf0ee-r0/git/src/platformsupport/eglconvenience/qeglplatformintegration.cpp:239:17: error: expected primary-expression before ':' token | ||
| 37 | | case Display: | ||
| 38 | | ^ | ||
| 39 | | Makefile:5486: recipe for target '.obj/qeglplatformintegration.o' failed | ||
| 40 | |||
| 41 | This reverts commit dc685cf6331f5fb46285cf10d6464c2ecf41f73e. | ||
| 42 | |||
| 43 | Will be partially resolved in newer revision with: | ||
| 44 | https://codereview.qt-project.org/96220 | ||
| 45 | |||
| 46 | Change-Id: I7a6a926b7525d4f137824c71f2ec8cd089c21f13 | ||
| 47 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 48 | --- | ||
| 49 | src/platformsupport/eglconvenience/qeglconvenience.cpp | 4 +++- | ||
| 50 | src/platformsupport/eglconvenience/qeglplatformcontext.cpp | 7 ------- | ||
| 51 | 2 files changed, 3 insertions(+), 8 deletions(-) | ||
| 52 | |||
| 53 | diff --git a/src/platformsupport/eglconvenience/qeglconvenience.cpp b/src/platformsupport/eglconvenience/qeglconvenience.cpp | ||
| 54 | index c1a491c..7a0fc87 100644 | ||
| 55 | --- a/src/platformsupport/eglconvenience/qeglconvenience.cpp | ||
| 56 | +++ b/src/platformsupport/eglconvenience/qeglconvenience.cpp | ||
| 57 | @@ -443,9 +443,11 @@ void q_printEglConfig(EGLDisplay display, EGLConfig config) | ||
| 58 | for (index = 0; attrs[index].attr != -1; ++index) { | ||
| 59 | EGLint value; | ||
| 60 | if (eglGetConfigAttrib(display, config, attrs[index].attr, &value)) { | ||
| 61 | - qDebug("\t%s: %d", attrs[index].name, (int)value); | ||
| 62 | + qWarning("\t%s: %d\n", attrs[index].name, (int)value); | ||
| 63 | } | ||
| 64 | } | ||
| 65 | + | ||
| 66 | + qWarning("\n"); | ||
| 67 | } | ||
| 68 | |||
| 69 | #ifdef Q_OS_UNIX | ||
| 70 | diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp | ||
| 71 | index 7cc3300..ccbd974a 100644 | ||
| 72 | --- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp | ||
| 73 | +++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp | ||
| 74 | @@ -37,7 +37,6 @@ | ||
| 75 | #include <qpa/qplatformwindow.h> | ||
| 76 | #include <QOpenGLContext> | ||
| 77 | #include <QtPlatformHeaders/QEGLNativeContext> | ||
| 78 | -#include <QDebug> | ||
| 79 | |||
| 80 | QT_BEGIN_NAMESPACE | ||
| 81 | |||
| 82 | @@ -181,12 +180,6 @@ void QEGLPlatformContext::init(const QSurfaceFormat &format, QPlatformOpenGLCont | ||
| 83 | return; | ||
| 84 | } | ||
| 85 | |||
| 86 | - static const bool printConfig = qgetenv("QT_QPA_EGLFS_DEBUG").toInt(); | ||
| 87 | - if (printConfig) { | ||
| 88 | - qDebug() << "Created context for format" << format << "with config:"; | ||
| 89 | - q_printEglConfig(m_eglDisplay, m_eglConfig); | ||
| 90 | - } | ||
| 91 | - | ||
| 92 | updateFormatFromGL(); | ||
| 93 | } | ||
| 94 | |||
| 95 | -- | ||
| 96 | 2.4.2 | ||
| 97 | |||
diff --git a/recipes-qt/qt5/qtbase/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch b/recipes-qt/qt5/qtbase/0005-qeglplatformintegration-Undefine-CursorShape-from-X..patch index 6a056df8..8d1ed4ea 100644 --- a/recipes-qt/qt5/qtbase/0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch +++ b/recipes-qt/qt5/qtbase/0005-qeglplatformintegration-Undefine-CursorShape-from-X..patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 4699b5b9af628e120db9ab26e25bc7069d35562a Mon Sep 17 00:00:00 2001 | 1 | From 232e2913168fd150bab4071bd57f8fef8d431eb4 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Wed, 19 Mar 2014 18:32:28 +0100 | 3 | Date: Wed, 19 Mar 2014 18:32:28 +0100 |
| 4 | Subject: [PATCH 06/12] qeglplatformintegration: Undefine CursorShape from X.h | 4 | Subject: [PATCH 4/7] qeglplatformintegration: Undefine CursorShape from X.h |
| 5 | 5 | ||
| 6 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 6 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 7 | --- | 7 | --- |
| @@ -9,7 +9,7 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 9 | 1 file changed, 6 insertions(+) | 9 | 1 file changed, 6 insertions(+) |
| 10 | 10 | ||
| 11 | diff --git a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h | 11 | diff --git a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h |
| 12 | index 2b5d5f5..a0aab03 100644 | 12 | index 42fbf8c..8950f2d 100644 |
| 13 | --- a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h | 13 | --- a/src/platformsupport/eglconvenience/qeglplatformintegration_p.h |
| 14 | +++ b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h | 14 | +++ b/src/platformsupport/eglconvenience/qeglplatformintegration_p.h |
| 15 | @@ -50,6 +50,12 @@ | 15 | @@ -50,6 +50,12 @@ |
| @@ -24,7 +24,7 @@ index 2b5d5f5..a0aab03 100644 | |||
| 24 | + | 24 | + |
| 25 | QT_BEGIN_NAMESPACE | 25 | QT_BEGIN_NAMESPACE |
| 26 | 26 | ||
| 27 | class QEGLPlatformScreen; | 27 | class QEGLPlatformWindow; |
| 28 | -- | 28 | -- |
| 29 | 2.4.2 | 29 | 2.4.2 |
| 30 | 30 | ||
diff --git a/recipes-qt/qt5/qtbase/0006-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/qtbase/0006-configure-bump-path-length-from-256-to-512-character.patch new file mode 100644 index 00000000..0a6b92d4 --- /dev/null +++ b/recipes-qt/qt5/qtbase/0006-configure-bump-path-length-from-256-to-512-character.patch | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | From 7b080f568fac5001f272a11f56968a3c65793077 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Denys Dmytriyenko <denys@ti.com> | ||
| 3 | Date: Mon, 11 Nov 2013 20:27:30 -0500 | ||
| 4 | Subject: [PATCH 5/7] configure: bump path length from 256 to 512 characters | ||
| 5 | |||
| 6 | Increase the path length that gets hardcoded into generated config.cpp file | ||
| 7 | from 256 to 512 characters, as nativesdk path can be quite long. | ||
| 8 | |||
| 9 | Signed-off-by: Denys Dmytriyenko <denys@ti.com> | ||
| 10 | --- | ||
| 11 | configure | 2 +- | ||
| 12 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 13 | |||
| 14 | diff --git a/configure b/configure | ||
| 15 | index 8093782..43c4dab 100755 | ||
| 16 | --- a/configure | ||
| 17 | +++ b/configure | ||
| 18 | @@ -3834,7 +3834,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ | ||
| 19 | static const char qt_configure_installation [12+11] = "qt_instdate=2012-12-20"; | ||
| 20 | |||
| 21 | /* Installation Info */ | ||
| 22 | -static const char qt_configure_prefix_path_str [256 + 12] = "qt_prfxpath=$QT_INSTALL_PREFIX"; | ||
| 23 | +static const char qt_configure_prefix_path_str [512 + 12] = "qt_prfxpath=$QT_INSTALL_PREFIX"; | ||
| 24 | #ifdef QT_BUILD_QMAKE | ||
| 25 | static const char qt_configure_ext_prefix_path_str [256 + 12] = "qt_epfxpath=$QT_EXT_PREFIX"; | ||
| 26 | static const char qt_configure_host_prefix_path_str [256 + 12] = "qt_hpfxpath=$QT_HOST_PREFIX"; | ||
| 27 | -- | ||
| 28 | 2.4.2 | ||
| 29 | |||
diff --git a/recipes-qt/qt5/qtbase/0007-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/qtbase/0007-configure-bump-path-length-from-256-to-512-character.patch deleted file mode 100644 index 4cdad004..00000000 --- a/recipes-qt/qt5/qtbase/0007-configure-bump-path-length-from-256-to-512-character.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From 6ddd04ae7fc935b91384d99bf1c16532b91ac76b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Denys Dmytriyenko <denys@ti.com> | ||
| 3 | Date: Mon, 11 Nov 2013 20:27:30 -0500 | ||
| 4 | Subject: [PATCH 07/12] configure: bump path length from 256 to 512 characters | ||
| 5 | |||
| 6 | Increase the path length that gets hardcoded into generated config.cpp file | ||
| 7 | from 256 to 512 characters, as nativesdk path can be quite long. | ||
| 8 | |||
| 9 | Signed-off-by: Denys Dmytriyenko <denys@ti.com> | ||
| 10 | --- | ||
| 11 | configure | 2 +- | ||
| 12 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 13 | |||
| 14 | diff --git a/configure b/configure | ||
| 15 | index ad5f4cd..c19ff6a 100755 | ||
| 16 | --- a/configure | ||
| 17 | +++ b/configure | ||
| 18 | @@ -3627,7 +3627,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ | ||
| 19 | static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; | ||
| 20 | |||
| 21 | /* Installation Info */ | ||
| 22 | -static const char qt_configure_prefix_path_strs[][256 + 12] = { | ||
| 23 | +static const char qt_configure_prefix_path_strs[][512 + 12] = { | ||
| 24 | #ifndef QT_BUILD_QMAKE | ||
| 25 | "qt_prfxpath=$QT_SYSROOT_PREFIX", | ||
| 26 | "qt_docspath=$QT_SYSROOT_DOCS", | ||
| 27 | -- | ||
| 28 | 2.4.2 | ||
| 29 | |||
diff --git a/recipes-qt/qt5/qtbase/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch b/recipes-qt/qt5/qtbase/0007-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch index 7f4171d4..dabbc1c3 100644 --- a/recipes-qt/qt5/qtbase/0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch +++ b/recipes-qt/qt5/qtbase/0007-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 5c0a8f073e7412d01e7f2ef05bbe06954fd39eaa Mon Sep 17 00:00:00 2001 | 1 | From 30d26b494bd5b77be6c4e4b41d8df7af5487ee4b Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> | 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> |
| 3 | Date: Wed, 5 Feb 2014 18:35:08 +0100 | 3 | Date: Wed, 5 Feb 2014 18:35:08 +0100 |
| 4 | Subject: [PATCH 08/12] eglfs: fix egl error for platforms only supporting one | 4 | Subject: [PATCH 6/7] eglfs: fix egl error for platforms only supporting one |
| 5 | window/surface | 5 | window/surface |
| 6 | MIME-Version: 1.0 | 6 | MIME-Version: 1.0 |
| 7 | Content-Type: text/plain; charset=UTF-8 | 7 | Content-Type: text/plain; charset=UTF-8 |
| @@ -27,10 +27,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 27 | 1 file changed, 15 insertions(+), 1 deletion(-) | 27 | 1 file changed, 15 insertions(+), 1 deletion(-) |
| 28 | 28 | ||
| 29 | diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp | 29 | diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp |
| 30 | index 39a3ef9..2c05979 100644 | 30 | index c0d51c9..bb4dc00 100644 |
| 31 | --- a/src/plugins/platforms/eglfs/qeglfswindow.cpp | 31 | --- a/src/plugins/platforms/eglfs/qeglfswindow.cpp |
| 32 | +++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp | 32 | +++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp |
| 33 | @@ -68,6 +68,15 @@ void QEglFSWindow::create() | 33 | @@ -69,6 +69,15 @@ void QEglFSWindow::create() |
| 34 | 34 | ||
| 35 | m_flags = Created; | 35 | m_flags = Created; |
| 36 | 36 | ||
| @@ -46,7 +46,7 @@ index 39a3ef9..2c05979 100644 | |||
| 46 | if (window()->type() == Qt::Desktop) | 46 | if (window()->type() == Qt::Desktop) |
| 47 | return; | 47 | return; |
| 48 | 48 | ||
| 49 | @@ -81,7 +90,7 @@ void QEglFSWindow::create() | 49 | @@ -83,7 +92,7 @@ void QEglFSWindow::create() |
| 50 | return; | 50 | return; |
| 51 | } | 51 | } |
| 52 | 52 | ||
| @@ -55,7 +55,7 @@ index 39a3ef9..2c05979 100644 | |||
| 55 | // We can have either a single OpenGL window or multiple raster windows. | 55 | // We can have either a single OpenGL window or multiple raster windows. |
| 56 | // Other combinations cannot work. | 56 | // Other combinations cannot work. |
| 57 | qFatal("EGLFS: OpenGL windows cannot be mixed with others."); | 57 | qFatal("EGLFS: OpenGL windows cannot be mixed with others."); |
| 58 | @@ -101,6 +110,11 @@ void QEglFSWindow::create() | 58 | @@ -103,6 +112,11 @@ void QEglFSWindow::create() |
| 59 | 59 | ||
| 60 | resetSurface(); | 60 | resetSurface(); |
| 61 | 61 | ||
diff --git a/recipes-qt/qt5/qtbase/0009-QOpenGLPaintDevice-sub-area-support.patch b/recipes-qt/qt5/qtbase/0008-QOpenGLPaintDevice-sub-area-support.patch index 05110eac..c6cbaf69 100644 --- a/recipes-qt/qt5/qtbase/0009-QOpenGLPaintDevice-sub-area-support.patch +++ b/recipes-qt/qt5/qtbase/0008-QOpenGLPaintDevice-sub-area-support.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 3483a580cb9e5509cb59cd18b13a24c1a47a9224 Mon Sep 17 00:00:00 2001 | 1 | From fbcda470b5b64ab49a7a4c647e19bda623ce95b7 Mon Sep 17 00:00:00 2001 |
| 2 | From: Jani Hautakangas <jani.hautakangas@ixonos.com> | 2 | From: Jani Hautakangas <jani.hautakangas@ixonos.com> |
| 3 | Date: Thu, 16 May 2013 09:52:07 +0300 | 3 | Date: Thu, 16 May 2013 09:52:07 +0300 |
| 4 | Subject: [PATCH 09/12] QOpenGLPaintDevice sub-area support | 4 | Subject: [PATCH 7/7] QOpenGLPaintDevice sub-area support |
| 5 | 5 | ||
| 6 | Allows creating QOpenGLPaintDevice targetting sub-area | 6 | Allows creating QOpenGLPaintDevice targetting sub-area |
| 7 | of binded framebuffer. | 7 | of binded framebuffer. |
| @@ -21,7 +21,7 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 21 | 6 files changed, 23 insertions(+), 3 deletions(-) | 21 | 6 files changed, 23 insertions(+), 3 deletions(-) |
| 22 | 22 | ||
| 23 | diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp | 23 | diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp |
| 24 | index a08d26f..cff3155 100644 | 24 | index c0657fe..395ec14 100644 |
| 25 | --- a/src/gui/opengl/qopenglpaintdevice.cpp | 25 | --- a/src/gui/opengl/qopenglpaintdevice.cpp |
| 26 | +++ b/src/gui/opengl/qopenglpaintdevice.cpp | 26 | +++ b/src/gui/opengl/qopenglpaintdevice.cpp |
| 27 | @@ -135,6 +135,12 @@ QOpenGLPaintDevice::QOpenGLPaintDevice(int width, int height) | 27 | @@ -135,6 +135,12 @@ QOpenGLPaintDevice::QOpenGLPaintDevice(int width, int height) |
| @@ -50,7 +50,7 @@ index a08d26f..cff3155 100644 | |||
| 50 | Returns the pixel size of the paint device. | 50 | Returns the pixel size of the paint device. |
| 51 | 51 | ||
| 52 | diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h | 52 | diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h |
| 53 | index 10cee84..a6683c5 100644 | 53 | index 804e485..88b481a 100644 |
| 54 | --- a/src/gui/opengl/qopenglpaintdevice.h | 54 | --- a/src/gui/opengl/qopenglpaintdevice.h |
| 55 | +++ b/src/gui/opengl/qopenglpaintdevice.h | 55 | +++ b/src/gui/opengl/qopenglpaintdevice.h |
| 56 | @@ -53,12 +53,14 @@ public: | 56 | @@ -53,12 +53,14 @@ public: |
| @@ -69,7 +69,7 @@ index 10cee84..a6683c5 100644 | |||
| 69 | void setSize(const QSize &size); | 69 | void setSize(const QSize &size); |
| 70 | void setDevicePixelRatio(qreal devicePixelRatio); | 70 | void setDevicePixelRatio(qreal devicePixelRatio); |
| 71 | diff --git a/src/gui/opengl/qopenglpaintdevice_p.h b/src/gui/opengl/qopenglpaintdevice_p.h | 71 | diff --git a/src/gui/opengl/qopenglpaintdevice_p.h b/src/gui/opengl/qopenglpaintdevice_p.h |
| 72 | index 0b01129..211f2f3 100644 | 72 | index 57d93ee..5b5c0d9 100644 |
| 73 | --- a/src/gui/opengl/qopenglpaintdevice_p.h | 73 | --- a/src/gui/opengl/qopenglpaintdevice_p.h |
| 74 | +++ b/src/gui/opengl/qopenglpaintdevice_p.h | 74 | +++ b/src/gui/opengl/qopenglpaintdevice_p.h |
| 75 | @@ -65,6 +65,7 @@ public: | 75 | @@ -65,6 +65,7 @@ public: |
| @@ -81,10 +81,10 @@ index 0b01129..211f2f3 100644 | |||
| 81 | 81 | ||
| 82 | qreal dpmx; | 82 | qreal dpmx; |
| 83 | diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp | 83 | diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp |
| 84 | index 8eeaa31..e17520e 100644 | 84 | index a9a4ada..de3c518 100644 |
| 85 | --- a/src/gui/opengl/qopenglpaintengine.cpp | 85 | --- a/src/gui/opengl/qopenglpaintengine.cpp |
| 86 | +++ b/src/gui/opengl/qopenglpaintengine.cpp | 86 | +++ b/src/gui/opengl/qopenglpaintengine.cpp |
| 87 | @@ -2080,7 +2080,10 @@ bool QOpenGL2PaintEngineEx::begin(QPaintDevice *pdev) | 87 | @@ -2091,7 +2091,10 @@ bool QOpenGL2PaintEngineEx::begin(QPaintDevice *pdev) |
| 88 | for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) | 88 | for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) |
| 89 | d->vertexAttributeArraysEnabledState[i] = false; | 89 | d->vertexAttributeArraysEnabledState[i] = false; |
| 90 | 90 | ||
| @@ -95,7 +95,7 @@ index 8eeaa31..e17520e 100644 | |||
| 95 | d->width = sz.width(); | 95 | d->width = sz.width(); |
| 96 | d->height = sz.height(); | 96 | d->height = sz.height(); |
| 97 | d->mode = BrushDrawingMode; | 97 | d->mode = BrushDrawingMode; |
| 98 | @@ -2167,7 +2170,7 @@ void QOpenGL2PaintEngineEx::ensureActive() | 98 | @@ -2178,7 +2181,7 @@ void QOpenGL2PaintEngineEx::ensureActive() |
| 99 | d->device->ensureActiveTarget(); | 99 | d->device->ensureActiveTarget(); |
| 100 | 100 | ||
| 101 | d->transferMode(BrushDrawingMode); | 101 | d->transferMode(BrushDrawingMode); |
| @@ -104,7 +104,7 @@ index 8eeaa31..e17520e 100644 | |||
| 104 | d->needsSync = false; | 104 | d->needsSync = false; |
| 105 | d->shaderManager->setDirty(); | 105 | d->shaderManager->setDirty(); |
| 106 | d->syncGlState(); | 106 | d->syncGlState(); |
| 107 | @@ -2209,6 +2212,7 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() | 107 | @@ -2220,6 +2223,7 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() |
| 108 | if (bounds == QRect(0, 0, width, height)) { | 108 | if (bounds == QRect(0, 0, width, height)) { |
| 109 | funcs.glDisable(GL_SCISSOR_TEST); | 109 | funcs.glDisable(GL_SCISSOR_TEST); |
| 110 | } else { | 110 | } else { |
| @@ -112,7 +112,7 @@ index 8eeaa31..e17520e 100644 | |||
| 112 | funcs.glEnable(GL_SCISSOR_TEST); | 112 | funcs.glEnable(GL_SCISSOR_TEST); |
| 113 | setScissor(bounds); | 113 | setScissor(bounds); |
| 114 | } | 114 | } |
| 115 | @@ -2217,12 +2221,13 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() | 115 | @@ -2228,12 +2232,13 @@ void QOpenGL2PaintEngineExPrivate::updateClipScissorTest() |
| 116 | 116 | ||
| 117 | void QOpenGL2PaintEngineExPrivate::setScissor(const QRect &rect) | 117 | void QOpenGL2PaintEngineExPrivate::setScissor(const QRect &rect) |
| 118 | { | 118 | { |
| @@ -128,7 +128,7 @@ index 8eeaa31..e17520e 100644 | |||
| 128 | 128 | ||
| 129 | funcs.glScissor(left, bottom, width, height); | 129 | funcs.glScissor(left, bottom, width, height); |
| 130 | diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h | 130 | diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h |
| 131 | index 9722ea3..07e3163 100644 | 131 | index 17be72b..43e88f6 100644 |
| 132 | --- a/src/gui/opengl/qopenglpaintengine_p.h | 132 | --- a/src/gui/opengl/qopenglpaintengine_p.h |
| 133 | +++ b/src/gui/opengl/qopenglpaintengine_p.h | 133 | +++ b/src/gui/opengl/qopenglpaintengine_p.h |
| 134 | @@ -264,6 +264,7 @@ public: | 134 | @@ -264,6 +264,7 @@ public: |
| @@ -140,7 +140,7 @@ index 9722ea3..07e3163 100644 | |||
| 140 | QOpenGLContext *ctx; | 140 | QOpenGLContext *ctx; |
| 141 | EngineMode mode; | 141 | EngineMode mode; |
| 142 | diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp | 142 | diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp |
| 143 | index cd268cd..997bc35 100644 | 143 | index c179143..fad68d5 100644 |
| 144 | --- a/src/gui/opengl/qopengltextureglyphcache.cpp | 144 | --- a/src/gui/opengl/qopengltextureglyphcache.cpp |
| 145 | +++ b/src/gui/opengl/qopengltextureglyphcache.cpp | 145 | +++ b/src/gui/opengl/qopengltextureglyphcache.cpp |
| 146 | @@ -310,7 +310,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height) | 146 | @@ -310,7 +310,7 @@ void QOpenGLTextureGlyphCache::resizeTextureData(int width, int height) |
diff --git a/recipes-qt/qt5/qtbase/0011-Always-build-uic.patch b/recipes-qt/qt5/qtbase/0009-Always-build-uic.patch index b9d45178..dc802a78 100644 --- a/recipes-qt/qt5/qtbase/0011-Always-build-uic.patch +++ b/recipes-qt/qt5/qtbase/0009-Always-build-uic.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 14c4785ac0f01fa1d89d63601b9132add4ab1c2f Mon Sep 17 00:00:00 2001 | 1 | From 8fb793a4a8e715f0c418df9ab17e39d103d59d3d Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Sat, 16 Nov 2013 00:32:30 +0100 | 3 | Date: Sat, 16 Nov 2013 00:32:30 +0100 |
| 4 | Subject: [PATCH 11/13] Always build uic | 4 | Subject: [PATCH 8/9] Always build uic |
| 5 | 5 | ||
| 6 | Even if we are not building gui or widgets. This tool is needed later | 6 | Even if we are not building gui or widgets. This tool is needed later |
| 7 | as a native tool when compiling the target. | 7 | as a native tool when compiling the target. |
| @@ -14,10 +14,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 14 | 1 file changed, 1 insertion(+), 1 deletion(-) | 14 | 1 file changed, 1 insertion(+), 1 deletion(-) |
| 15 | 15 | ||
| 16 | diff --git a/src/src.pro b/src/src.pro | 16 | diff --git a/src/src.pro b/src/src.pro |
| 17 | index 83f7587..9dbcf70 100644 | 17 | index b4d62aa..5e19215 100644 |
| 18 | --- a/src/src.pro | 18 | --- a/src/src.pro |
| 19 | +++ b/src/src.pro | 19 | +++ b/src/src.pro |
| 20 | @@ -163,7 +163,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent | 20 | @@ -182,7 +182,7 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent |
| 21 | } | 21 | } |
| 22 | } | 22 | } |
| 23 | } | 23 | } |
diff --git a/recipes-qt/qt5/qtbase/0013-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/qtbase/0009-configure-preserve-built-qmake-and-swap-with-native-.patch index ea90305c..4cc9bf0e 100644 --- a/recipes-qt/qt5/qtbase/0013-configure-preserve-built-qmake-and-swap-with-native-.patch +++ b/recipes-qt/qt5/qtbase/0009-configure-preserve-built-qmake-and-swap-with-native-.patch | |||
| @@ -1,8 +1,7 @@ | |||
| 1 | From d34774dc7447ff0d566b3281407c0998173a85e0 Mon Sep 17 00:00:00 2001 | 1 | From abbd6ce89977ff1854c7eb6a5864568ee81a6ccd Mon Sep 17 00:00:00 2001 |
| 2 | From: Denys Dmytriyenko <denys@ti.com> | 2 | From: Denys Dmytriyenko <denys@ti.com> |
| 3 | Date: Mon, 11 Nov 2013 20:22:34 -0500 | 3 | Date: Mon, 11 Nov 2013 20:22:34 -0500 |
| 4 | Subject: [PATCH 13/13] configure: preserve built qmake and swap with native | 4 | Subject: [PATCH 9/9] configure: preserve built qmake and swap with native one |
| 5 | one | ||
| 6 | 5 | ||
| 7 | Let configure script build the real qmake, but right after it's built, swap | 6 | Let configure script build the real qmake, but right after it's built, swap |
| 8 | it with a native qmake for further internal use, preserving the real one. | 7 | it with a native qmake for further internal use, preserving the real one. |
| @@ -13,12 +12,12 @@ Signed-off-by: Denys Dmytriyenko <denys@ti.com> | |||
| 13 | 1 file changed, 2 insertions(+) | 12 | 1 file changed, 2 insertions(+) |
| 14 | 13 | ||
| 15 | diff --git a/configure b/configure | 14 | diff --git a/configure b/configure |
| 16 | index c19ff6a..2d920e3 100755 | 15 | index 43c4dab..69e6f46 100755 |
| 17 | --- a/configure | 16 | --- a/configure |
| 18 | +++ b/configure | 17 | +++ b/configure |
| 19 | @@ -3879,6 +3879,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; | 18 | @@ -4082,6 +4082,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; |
| 20 | 19 | echo "Done." | |
| 21 | (cd "$outpath/qmake"; "$MAKE") || exit 2 | 20 | fi |
| 22 | fi # Build qmake | 21 | fi # Build qmake |
| 23 | +mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" | 22 | +mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" |
| 24 | +mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" | 23 | +mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" |
diff --git a/recipes-qt/qt5/qtbase/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch b/recipes-qt/qt5/qtbase/0009-qmake-don-t-build-it-in-configure-but-allow-to-build.patch index f5f2a23a..f5f2a23a 100644 --- a/recipes-qt/qt5/qtbase/0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch +++ b/recipes-qt/qt5/qtbase/0009-qmake-don-t-build-it-in-configure-but-allow-to-build.patch | |||
diff --git a/recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch b/recipes-qt/qt5/qtbase/0010-Add-external-hostbindir-option-for-native-sdk.patch index 383b7880..546e954b 100644 --- a/recipes-qt/qt5/qtbase/0012-Add-external-hostbindir-option-for-native-sdk.patch +++ b/recipes-qt/qt5/qtbase/0010-Add-external-hostbindir-option-for-native-sdk.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From d56aef32b8c9d1be04c047a16a55e84af71e25dd Mon Sep 17 00:00:00 2001 | 1 | From 45bdf5ff770fe17634f216c3f533645bfd450f04 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Sat, 6 Apr 2013 13:15:07 +0200 | 3 | Date: Sat, 6 Apr 2013 13:15:07 +0200 |
| 4 | Subject: [PATCH 12/13] Add -external-hostbindir option for native(sdk) | 4 | Subject: [PATCH 9/9] Add -external-hostbindir option for native(sdk) |
| 5 | 5 | ||
| 6 | * when cross-compiling it's sometimes useful to use existing tools from machine | 6 | * when cross-compiling it's sometimes useful to use existing tools from machine |
| 7 | (or in OpenEmbedded built with separate native recipe) when building for target | 7 | (or in OpenEmbedded built with separate native recipe) when building for target |
| @@ -25,18 +25,33 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 25 | Signed-off-by: Simon Busch <morphis@gravedo.de> | 25 | Signed-off-by: Simon Busch <morphis@gravedo.de> |
| 26 | Signed-off-by: Jonathan Liu <net147@gmail.com> | 26 | Signed-off-by: Jonathan Liu <net147@gmail.com> |
| 27 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 27 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 28 | |||
| 29 | Conflicts: | ||
| 30 | tools/configure/configureapp.cpp | ||
| 28 | --- | 31 | --- |
| 29 | qmake/property.cpp | 1 + | 32 | qmake/property.cpp | 1 + |
| 30 | src/corelib/global/qlibraryinfo.cpp | 3 ++- | 33 | src/corelib/global/qlibraryinfo.cpp | 3 ++- |
| 31 | src/corelib/global/qlibraryinfo.h | 1 + | 34 | src/corelib/global/qlibraryinfo.h | 1 + |
| 32 | tools/configure/configureapp.cpp | 8 ++++++++ | 35 | tools/configure/configureapp.cpp | 11 +++++++++++ |
| 33 | 4 files changed, 12 insertions(+), 1 deletion(-) | 36 | 4 files changed, 15 insertions(+), 1 deletion(-) |
| 34 | 37 | ||
| 38 | diff --git a/configure b/configure | ||
| 39 | index ffb69df..aa46774 100755 | ||
| 40 | --- a/configure | ||
| 41 | +++ b/configure | ||
| 42 | @@ -3831,6 +3831,7 @@ addConfStr "$CFG_SYSROOT" | ||
| 43 | addConfStr "$QT_REL_HOST_BINS" | ||
| 44 | addConfStr "$QT_REL_HOST_LIBS" | ||
| 45 | addConfStr "$QT_REL_HOST_DATA" | ||
| 46 | +addConfStr "$QT_EXTERNAL_HOST_BINS" | ||
| 47 | addConfStr "$shortxspec" | ||
| 48 | addConfStr "$shortspec" | ||
| 49 | |||
| 35 | diff --git a/qmake/property.cpp b/qmake/property.cpp | 50 | diff --git a/qmake/property.cpp b/qmake/property.cpp |
| 36 | index 051e056..50da6ed 100644 | 51 | index 817ae95..c69539f 100644 |
| 37 | --- a/qmake/property.cpp | 52 | --- a/qmake/property.cpp |
| 38 | +++ b/qmake/property.cpp | 53 | +++ b/qmake/property.cpp |
| 39 | @@ -67,6 +67,7 @@ static const struct { | 54 | @@ -68,6 +68,7 @@ static const struct { |
| 40 | { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true }, | 55 | { "QT_HOST_DATA", QLibraryInfo::HostDataPath, true }, |
| 41 | { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true }, | 56 | { "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true }, |
| 42 | { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true }, | 57 | { "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true }, |
| @@ -45,10 +60,10 @@ index 051e056..50da6ed 100644 | |||
| 45 | { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true }, | 60 | { "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true }, |
| 46 | }; | 61 | }; |
| 47 | diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp | 62 | diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp |
| 48 | index 91ca643..7a567fa 100644 | 63 | index f663c88..675bd4c 100644 |
| 49 | --- a/src/corelib/global/qlibraryinfo.cpp | 64 | --- a/src/corelib/global/qlibraryinfo.cpp |
| 50 | +++ b/src/corelib/global/qlibraryinfo.cpp | 65 | +++ b/src/corelib/global/qlibraryinfo.cpp |
| 51 | @@ -348,7 +348,7 @@ QLibraryInfo::isDebugBuild() | 66 | @@ -373,7 +373,7 @@ QLibraryInfo::isDebugBuild() |
| 52 | */ | 67 | */ |
| 53 | 68 | ||
| 54 | static const struct { | 69 | static const struct { |
| @@ -57,31 +72,31 @@ index 91ca643..7a567fa 100644 | |||
| 57 | } qtConfEntries[] = { | 72 | } qtConfEntries[] = { |
| 58 | { "Prefix", "." }, | 73 | { "Prefix", "." }, |
| 59 | { "Documentation", "doc" }, // should be ${Data}/doc | 74 | { "Documentation", "doc" }, // should be ${Data}/doc |
| 60 | @@ -374,6 +374,7 @@ static const struct { | 75 | @@ -398,6 +398,7 @@ static const struct { |
| 61 | { "HostBinaries", "bin" }, | 76 | { "HostBinaries", "bin" }, |
| 62 | { "HostLibraries", "lib" }, | 77 | { "HostLibraries", "lib" }, |
| 63 | { "HostData", "." }, | 78 | { "HostData", "." }, |
| 64 | + { "ExternalHostBinaries", "" }, | 79 | + { "ExternalHostBinaries", "" }, |
| 65 | { "TargetSpec", "" }, | 80 | { "TargetSpec", "" }, |
| 66 | { "HostSpec", "" }, | 81 | { "HostSpec", "" }, |
| 67 | #endif | 82 | { "HostPrefix", "" }, |
| 68 | diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h | 83 | diff --git a/src/corelib/global/qlibraryinfo.h b/src/corelib/global/qlibraryinfo.h |
| 69 | index 543c4b3..a02e03a 100644 | 84 | index 1ad7637..5a8b127 100644 |
| 70 | --- a/src/corelib/global/qlibraryinfo.h | 85 | --- a/src/corelib/global/qlibraryinfo.h |
| 71 | +++ b/src/corelib/global/qlibraryinfo.h | 86 | +++ b/src/corelib/global/qlibraryinfo.h |
| 72 | @@ -80,6 +80,7 @@ public: | 87 | @@ -81,6 +81,7 @@ public: |
| 73 | HostBinariesPath, | 88 | HostBinariesPath, |
| 74 | HostLibrariesPath, | 89 | HostLibrariesPath, |
| 75 | HostDataPath, | 90 | HostDataPath, |
| 76 | + ExternalHostBinariesPath, | 91 | + ExternalHostBinariesPath, |
| 77 | TargetSpecPath, | 92 | TargetSpecPath, |
| 78 | HostSpecPath, | 93 | HostSpecPath, |
| 79 | LastHostPath = HostSpecPath, | 94 | HostPrefixPath, |
| 80 | diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp | 95 | diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp |
| 81 | index 6e9d4aa..0ca4daf 100644 | 96 | index 3bf0546..53bf146 100644 |
| 82 | --- a/tools/configure/configureapp.cpp | 97 | --- a/tools/configure/configureapp.cpp |
| 83 | +++ b/tools/configure/configureapp.cpp | 98 | +++ b/tools/configure/configureapp.cpp |
| 84 | @@ -1191,6 +1191,13 @@ void Configure::parseCmdLine() | 99 | @@ -1217,6 +1217,13 @@ void Configure::parseCmdLine() |
| 85 | dictionary[ "QT_EXT_PREFIX" ] = configCmdLine.at(i); | 100 | dictionary[ "QT_EXT_PREFIX" ] = configCmdLine.at(i); |
| 86 | } | 101 | } |
| 87 | 102 | ||
| @@ -95,14 +110,21 @@ index 6e9d4aa..0ca4daf 100644 | |||
| 95 | else if (configCmdLine.at(i) == "-make-tool") { | 110 | else if (configCmdLine.at(i) == "-make-tool") { |
| 96 | ++i; | 111 | ++i; |
| 97 | if (i == argCount) | 112 | if (i == argCount) |
| 98 | @@ -4004,6 +4011,7 @@ void Configure::generateQConfigCpp() | 113 | @@ -4101,6 +4108,9 @@ void Configure::generateQConfigCpp() |
| 99 | << " \"qt_hbinpath=" << formatPath(dictionary["QT_HOST_BINS"]) << "\"," << endl | 114 | |
| 100 | << " \"qt_hlibpath=" << formatPath(dictionary["QT_HOST_LIBS"]) << "\"," << endl | 115 | if (dictionary["QT_REL_HOST_DATA"].isEmpty()) |
| 101 | << " \"qt_hdatpath=" << formatPath(dictionary["QT_HOST_DATA"]) << "\"," << endl | 116 | dictionary["QT_REL_HOST_DATA"] = haveHpx ? "." : dictionary["QT_REL_INSTALL_ARCHDATA"]; |
| 102 | + << " \"qt_ebinpath=" << formatPath(dictionary["QT_EXTERNAL_HOST_BINS"]) << "\"," << endl | 117 | + |
| 103 | << " \"qt_targspec=" << targSpec << "\"," << endl | 118 | + if (dictionary["QT_EXTERNAL_HOST_BINS"].isEmpty()) |
| 104 | << " \"qt_hostspec=" << hostSpec << "\"," << endl | 119 | + dictionary["QT_EXTERNAL_HOST_BINS"] = haveHpx ? "bin" : dictionary["QT_REL_INSTALL_BINS"]; |
| 105 | << "#endif" << endl | 120 | |
| 106 | -- | 121 | confStringOff = 0; |
| 107 | 2.4.2 | 122 | addConfStr(0, dictionary["QT_REL_INSTALL_DOCS"]); |
| 108 | 123 | @@ -4120,6 +4130,7 @@ void Configure::generateQConfigCpp() | |
| 124 | addConfStr(1, dictionary["QT_REL_HOST_BINS"]); | ||
| 125 | addConfStr(1, dictionary["QT_REL_HOST_LIBS"]); | ||
| 126 | addConfStr(1, dictionary["QT_REL_HOST_DATA"]); | ||
| 127 | + addConfStr(1, dictionary["QT_EXTERNAL_HOST_BINS"]); | ||
| 128 | addConfStr(1, targSpec); | ||
| 129 | addConfStr(1, hostSpec); | ||
| 130 | |||
diff --git a/recipes-qt/qt5/qtbase/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch b/recipes-qt/qt5/qtbase/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch deleted file mode 100644 index 184b2d8e..00000000 --- a/recipes-qt/qt5/qtbase/0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | From d5308f1a78e24402b16201846378917473d02873 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> | ||
| 3 | Date: Thu, 18 Dec 2014 13:41:09 +0100 | ||
| 4 | Subject: [PATCH 10/12] Make Qt5GuiConfigExtras.cmake find gl(es) include dir | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | In configure QMAKE_INCDIR_OPENGL is set with pkg-config. Without | ||
| 10 | PKG_CONFIG_ALLOW_SYSTEM_CFLAGS set, pkg-config returns paths outside | ||
| 11 | /usr/include only (in my case /usr/include/libdrm). With NO_DEFAULT_PATH set | ||
| 12 | gl(es) include directories cannot be found. Cmake builds depending on | ||
| 13 | Qt5Gui error out with | ||
| 14 | |||
| 15 | | Failed to find "GLES2/gl2.h" in "/usr/include/libdrm" | ||
| 16 | |||
| 17 | Upstream-Status: submitted [1] | ||
| 18 | |||
| 19 | [1] https://bugreports.qt-project.org/browse/QTBUG-43445 | ||
| 20 | |||
| 21 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> | ||
| 22 | --- | ||
| 23 | src/gui/Qt5GuiConfigExtras.cmake.in | 3 --- | ||
| 24 | 1 file changed, 3 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in | ||
| 27 | index 9a846d4..07869ef 100644 | ||
| 28 | --- a/src/gui/Qt5GuiConfigExtras.cmake.in | ||
| 29 | +++ b/src/gui/Qt5GuiConfigExtras.cmake.in | ||
| 30 | @@ -57,9 +57,6 @@ set(Qt5Gui_OPENGL_LIBRARIES Qt5::Gui_GLESv2) | ||
| 31 | set(_GL_INCDIRS $$CMAKE_GL_INCDIRS) | ||
| 32 | find_path(_qt5gui_OPENGL_INCLUDE_DIR $$CMAKE_GL_HEADER_NAME | ||
| 33 | PATHS ${_GL_INCDIRS} | ||
| 34 | -!!IF !mac | ||
| 35 | - NO_DEFAULT_PATH | ||
| 36 | -!!ENDIF | ||
| 37 | ) | ||
| 38 | if (NOT _qt5gui_OPENGL_INCLUDE_DIR) | ||
| 39 | message(FATAL_ERROR \"Failed to find \\\"$$CMAKE_GL_HEADER_NAME\\\" in \\\"${_GL_INCDIRS}\\\".\") | ||
| 40 | -- | ||
| 41 | 2.4.2 | ||
| 42 | |||
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 33620cbc..c74ec882 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb | |||
| @@ -3,9 +3,9 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | " | 10 | " |
| 11 | 11 | ||
| @@ -15,19 +15,15 @@ SRC_URI += "\ | |||
| 15 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ | 15 | file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ |
| 16 | file://0003-Add-external-hostbindir-option.patch \ | 16 | file://0003-Add-external-hostbindir-option.patch \ |
| 17 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ | 17 | file://0004-qt_module-Fix-pkgconfig-and-libtool-replacements.patch \ |
| 18 | file://0005-Revert-eglfs-Print-the-chosen-config-in-debug-mode.patch \ | 18 | file://0005-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ |
| 19 | file://0006-qeglplatformintegration-Undefine-CursorShape-from-X..patch \ | 19 | file://0006-configure-bump-path-length-from-256-to-512-character.patch \ |
| 20 | file://0007-configure-bump-path-length-from-256-to-512-character.patch \ | 20 | file://0008-QOpenGLPaintDevice-sub-area-support.patch \ |
| 21 | file://0008-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \ | ||
| 22 | file://0009-QOpenGLPaintDevice-sub-area-support.patch \ | ||
| 23 | file://0010-Make-Qt5GuiConfigExtras.cmake-find-gl-es-include-dir.patch \ | ||
| 24 | file://0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch \ | ||
| 25 | " | 21 | " |
| 26 | 22 | ||
| 27 | # specific for qtbase | 23 | # specific for target qtbase |
| 28 | SRC_URI += "\ | 24 | SRC_URI += "\ |
| 29 | file://0011-qmake-don-t-build-it-in-configure-but-allow-to-build.patch \ | 25 | file://0009-qmake-don-t-build-it-in-configure-but-allow-to-build.patch \ |
| 30 | file://0012-Set-paths-for-target-properly.patch \ | 26 | file://0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch \ |
| 31 | " | 27 | " |
| 32 | 28 | ||
| 33 | DEPENDS += "qtbase-native" | 29 | DEPENDS += "qtbase-native" |
| @@ -197,8 +193,8 @@ do_configure() { | |||
| 197 | -testsdir ${OE_QMAKE_PATH_TESTS} \ | 193 | -testsdir ${OE_QMAKE_PATH_TESTS} \ |
| 198 | -examplesdir ${OE_QMAKE_PATH_EXAMPLES} \ | 194 | -examplesdir ${OE_QMAKE_PATH_EXAMPLES} \ |
| 199 | -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ | 195 | -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ |
| 200 | -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ | ||
| 201 | -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ | 196 | -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ |
| 197 | -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ | ||
| 202 | -platform ${OE_QMAKESPEC} \ | 198 | -platform ${OE_QMAKESPEC} \ |
| 203 | -xplatform linux-oe-g++ \ | 199 | -xplatform linux-oe-g++ \ |
| 204 | ${QT_CONFIG_FLAGS} | 200 | ${QT_CONFIG_FLAGS} |
| @@ -270,4 +266,4 @@ sysroot_stage_dirs_append() { | |||
| 270 | rm -rf $to${OE_QMAKE_PATH_LIBS}/fonts | 266 | rm -rf $to${OE_QMAKE_PATH_LIBS}/fonts |
| 271 | } | 267 | } |
| 272 | 268 | ||
| 273 | SRCREV = "2cb17c1fb903434274e58692c9f0df619affdab0" | 269 | SRCREV = "2fde9f59eeab68ede92324e7613daf8be3eaf498" |
diff --git a/recipes-qt/qt5/qtconnectivity_git.bb b/recipes-qt/qt5/qtconnectivity_git.bb index c758d040..0cb724e3 100644 --- a/recipes-qt/qt5/qtconnectivity_git.bb +++ b/recipes-qt/qt5/qtconnectivity_git.bb | |||
| @@ -3,11 +3,11 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 10 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase qtdeclarative" | 13 | DEPENDS += "qtbase qtdeclarative" |
| @@ -21,4 +21,4 @@ do_configure_prepend() { | |||
| 21 | sed -i 's/^qtCompileTest(bluez)/OE_BLUEZ_ENABLED:qtCompileTest(bluez)/g' ${S}/qtconnectivity.pro | 21 | sed -i 's/^qtCompileTest(bluez)/OE_BLUEZ_ENABLED:qtCompileTest(bluez)/g' ${S}/qtconnectivity.pro |
| 22 | } | 22 | } |
| 23 | 23 | ||
| 24 | SRCREV = "aa00047183008edd739df472cf0490e9fffbe655" | 24 | SRCREV = "e4a5dc7dbe62c32032e5e683ac1fdb57663a14b3" |
diff --git a/recipes-qt/qt5/qtdeclarative/0001-qmltestexample-fix-link.patch b/recipes-qt/qt5/qtdeclarative/0001-qmltestexample-fix-link.patch index 793aa846..3c349778 100644 --- a/recipes-qt/qt5/qtdeclarative/0001-qmltestexample-fix-link.patch +++ b/recipes-qt/qt5/qtdeclarative/0001-qmltestexample-fix-link.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 0aa4fc1dd4369c50c310e20bbe86cef5a1efb21f Mon Sep 17 00:00:00 2001 | 1 | From 47b3408b8aeed4795dcfebcd81b6b7b4185712de Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com> | 2 | From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com> |
| 3 | Date: Sun, 26 May 2013 14:26:19 +0200 | 3 | Date: Sun, 26 May 2013 14:26:19 +0200 |
| 4 | Subject: [PATCH 1/2] qmltestexample: fix link | 4 | Subject: [PATCH] qmltestexample: fix link |
| 5 | MIME-Version: 1.0 | 5 | MIME-Version: 1.0 |
| 6 | Content-Type: text/plain; charset=UTF-8 | 6 | Content-Type: text/plain; charset=UTF-8 |
| 7 | Content-Transfer-Encoding: 8bit | 7 | Content-Transfer-Encoding: 8bit |
diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb index 93330165..421c4820 100644 --- a/recipes-qt/qt5/qtdeclarative_git.bb +++ b/recipes-qt/qt5/qtdeclarative_git.bb | |||
| @@ -4,9 +4,9 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| @@ -16,6 +16,8 @@ SRC_URI += " \ | |||
| 16 | file://0001-qmltestexample-fix-link.patch \ | 16 | file://0001-qmltestexample-fix-link.patch \ |
| 17 | " | 17 | " |
| 18 | 18 | ||
| 19 | EXTRA_OEMAKE += "QMAKE_SYNCQT=${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/syncqt" | ||
| 20 | |||
| 19 | PACKAGECONFIG ??= "qtxmlpatterns" | 21 | PACKAGECONFIG ??= "qtxmlpatterns" |
| 20 | PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns" | 22 | PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns" |
| 21 | 23 | ||
| @@ -23,8 +25,11 @@ do_configure_prepend() { | |||
| 23 | # disable qtxmlpatterns test if it isn't enabled by PACKAGECONFIG | 25 | # disable qtxmlpatterns test if it isn't enabled by PACKAGECONFIG |
| 24 | sed -e 's/^\(qtHaveModule(xmlpatterns)\)/OE_QTXMLPATTERNS_ENABLED:\1/' -i ${S}/src/imports/imports.pro | 26 | sed -e 's/^\(qtHaveModule(xmlpatterns)\)/OE_QTXMLPATTERNS_ENABLED:\1/' -i ${S}/src/imports/imports.pro |
| 25 | sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro | 27 | sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro |
| 28 | |||
| 29 | #set the path for syncqt properly | ||
| 30 | echo "QT_TOOL.syncqt.binary = \"${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/syncqt\"" > ${B}/.qmake.cache | ||
| 26 | } | 31 | } |
| 27 | 32 | ||
| 28 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtxmlpatterns', 'CONFIG+=OE_QTXMLPATTERNS_ENABLED', '', d)}" | 33 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtxmlpatterns', 'CONFIG+=OE_QTXMLPATTERNS_ENABLED', '', d)}" |
| 29 | 34 | ||
| 30 | SRCREV = "2fdb6eba0a58b629db32f9eefec2f26df08d3d2e" | 35 | SRCREV = "cc0df64bb0e1dea2fe37950816095802f527a241" |
diff --git a/recipes-qt/qt5/qtenginio_git.bb b/recipes-qt/qt5/qtenginio_git.bb index a0aff8fe..f80e42e1 100644 --- a/recipes-qt/qt5/qtenginio_git.bb +++ b/recipes-qt/qt5/qtenginio_git.bb | |||
| @@ -3,12 +3,12 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 4 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | " | 9 | " |
| 10 | 10 | ||
| 11 | DEPENDS += "qtbase qtdeclarative qtxmlpatterns" | 11 | DEPENDS += "qtbase qtdeclarative qtxmlpatterns" |
| 12 | 12 | ||
| 13 | QT_MODULE_BRANCH = "1.1" | 13 | QT_MODULE_BRANCH = "1.2" |
| 14 | SRCREV = "134dc76b7ff5152364f830b577e223b350560839" | 14 | SRCREV = "749bcec16b89269026a2048c7394df74f08935c4" |
diff --git a/recipes-qt/qt5/qtgraphicaleffects_git.bb b/recipes-qt/qt5/qtgraphicaleffects_git.bb index 9da5c944..64c9a10a 100644 --- a/recipes-qt/qt5/qtgraphicaleffects_git.bb +++ b/recipes-qt/qt5/qtgraphicaleffects_git.bb | |||
| @@ -5,15 +5,15 @@ require qt5-git.inc | |||
| 5 | # There are no GPLv2 licensed files in this component. | 5 | # There are no GPLv2 licensed files in this component. |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 9 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 10 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 10 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 12 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 12 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 13 | " | 13 | " |
| 14 | 14 | ||
| 15 | DEPENDS += "qtdeclarative" | 15 | DEPENDS += "qtdeclarative" |
| 16 | 16 | ||
| 17 | RDEPENDS_${PN}-dev = "" | 17 | RDEPENDS_${PN}-dev = "" |
| 18 | 18 | ||
| 19 | SRCREV = "c7ed28bece292e2745e02663ef519c76d16ec762" | 19 | SRCREV = "73357afbbe46e660b3497f621505f351b43c5efa" |
diff --git a/recipes-qt/qt5/qtimageformats/0001-qtimageformats.pro-Make-the-dependencies-determinist.patch b/recipes-qt/qt5/qtimageformats/0001-qtimageformats.pro-Make-the-dependencies-determinist.patch index 6085f019..66b24e54 100644 --- a/recipes-qt/qt5/qtimageformats/0001-qtimageformats.pro-Make-the-dependencies-determinist.patch +++ b/recipes-qt/qt5/qtimageformats/0001-qtimageformats.pro-Make-the-dependencies-determinist.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 85f45e1d9fc833c914cebb102840337193590356 Mon Sep 17 00:00:00 2001 | 1 | From f2e3dfd496a79a993ae4a03c2239b757131a9a68 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Mon, 4 Aug 2014 19:19:05 +0200 | 3 | Date: Mon, 4 Aug 2014 19:19:05 +0200 |
| 4 | Subject: [PATCH] qtimageformats.pro: Make the dependencies deterministic | 4 | Subject: [PATCH] qtimageformats.pro: Make the dependencies deterministic |
diff --git a/recipes-qt/qt5/qtimageformats_git.bb b/recipes-qt/qt5/qtimageformats_git.bb index 31d4fb00..f3726dae 100644 --- a/recipes-qt/qt5/qtimageformats_git.bb +++ b/recipes-qt/qt5/qtimageformats_git.bb | |||
| @@ -3,11 +3,11 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 10 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase" | 13 | DEPENDS += "qtbase" |
| @@ -27,4 +27,4 @@ EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'jasper', 'CONFIG+=OE_ | |||
| 27 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'libtiff', 'CONFIG+=OE_LIBTIFF_ENABLED', '', d)}" | 27 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'libtiff', 'CONFIG+=OE_LIBTIFF_ENABLED', '', d)}" |
| 28 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'libwebp', 'CONFIG+=OE_LIBWEBP_ENABLED', '', d)}" | 28 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'libwebp', 'CONFIG+=OE_LIBWEBP_ENABLED', '', d)}" |
| 29 | 29 | ||
| 30 | SRCREV = "ec301681e4e2f5b293435ec7cf295350ee5acb18" | 30 | SRCREV = "e76fd83774f2e2ba552700e02e974fd4608bb001" |
diff --git a/recipes-qt/qt5/qtlocation_git.bb b/recipes-qt/qt5/qtlocation_git.bb index 12416bbd..963c5766 100644 --- a/recipes-qt/qt5/qtlocation_git.bb +++ b/recipes-qt/qt5/qtlocation_git.bb | |||
| @@ -3,11 +3,11 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 10 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase qt3d" | 13 | DEPENDS += "qtbase qt3d" |
| @@ -29,4 +29,4 @@ do_configure_prepend() { | |||
| 29 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'geoclue', 'CONFIG+=OE_GEOCLUE_ENABLED', '', d)}" | 29 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'geoclue', 'CONFIG+=OE_GEOCLUE_ENABLED', '', d)}" |
| 30 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gypsy', 'CONFIG+=OE_GYPSY_ENABLED', '', d)}" | 30 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gypsy', 'CONFIG+=OE_GYPSY_ENABLED', '', d)}" |
| 31 | 31 | ||
| 32 | SRCREV = "3678bc8b3e128bf244ae263a44576a40b72e5876" | 32 | SRCREV = "d2d08b4f04a40c9760d73da36ed7c61881d99326" |
diff --git a/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch b/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch index e2a46df6..59a5282e 100644 --- a/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch +++ b/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch | |||
| @@ -1,2369 +1,58 @@ | |||
| 1 | From 8b306a5a70d431b8e142b3a7efb32d897cb79ab5 Mon Sep 17 00:00:00 2001 | 1 | From fe90d2bb5dcfd1cb75ed5414a4acdb9dfc9d4367 Mon Sep 17 00:00:00 2001 |
| 2 | From: Yoann Lopes <yoann.lopes@digia.com> | 2 | From: Yoann Lopes <yoann.lopes@digia.com> |
| 3 | Date: Thu, 31 Oct 2013 15:06:30 +0100 | 3 | Date: Thu, 31 Oct 2013 15:06:30 +0100 |
| 4 | Subject: [PATCH] Initial porting effort to GStreamer 1.0. | 4 | Subject: [PATCH] Initial porting effort to GStreamer 1.0. |
| 5 | 5 | ||
| 6 | Imported from git@github.com:jhodapp/qtmultimedia.git | 6 | * It's already included in 5.5 with this commit: |
| 7 | commit 108dda7a90bd0f0337358b0db47ae55acd16dea6 | ||
| 8 | Author: Yoann Lopes <yoann.lopes@theqtcompany.com> | ||
| 9 | Date: Thu Nov 20 17:54:18 2014 +0100 | ||
| 10 | GStreamer: port to 1.0. | ||
| 11 | * here we restore only the done_config_gstreamer variable | ||
| 12 | to explicitly disable it from OE build | ||
| 7 | 13 | ||
| 8 | Contributions from: | ||
| 9 | Ilya Smelykh <ilya@videoexpertsgroup.com> | ||
| 10 | Jim Hodapp <jim.hodapp@canonical.com> | ||
| 11 | Sergio Schvezov <sergio.schvezov@canonical.com> | ||
| 12 | |||
| 13 | Change-Id: I10fa5e5078efa4564ce833befd417008e26a90a9 | ||
| 14 | Reviewed-by: Yoann Lopes <yoann.lopes@digia.com> | ||
| 15 | (cherry picked from commit d91dac090d92fdbc3a3425e8d969c62e5c79eff9) | ||
| 16 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 14 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 17 | |||
| 18 | Conflicts: | ||
| 19 | src/gsttools/qgstreamervideorenderer.cpp | ||
| 20 | src/gsttools/qgstreamervideowidget.cpp | ||
| 21 | src/gsttools/qgstreamervideowindow.cpp | ||
| 22 | src/plugins/gstreamer/camerabin/camerabinsession.cpp | ||
| 23 | src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | ||
| 24 | src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp | ||
| 25 | --- | 15 | --- |
| 26 | config.tests/gstreamer/gstreamer.pro | 11 +- | 16 | qtmultimedia.pro | 25 +++++++++++++------------ |
| 27 | config.tests/gstreamer_appsrc/gstreamer_appsrc.pro | 13 +- | 17 | 1 file changed, 13 insertions(+), 12 deletions(-) |
| 28 | .../gstreamer_encodingprofiles.pro | 13 +- | ||
| 29 | .../gstreamer_photography.pro | 15 +- | ||
| 30 | qtmultimedia.pro | 25 ++- | ||
| 31 | src/gsttools/gsttools.pro | 22 +-- | ||
| 32 | src/gsttools/gstvideoconnector.c | 199 +++++++++++++++++++-- | ||
| 33 | src/gsttools/qgstappsrc.cpp | 29 ++- | ||
| 34 | src/gsttools/qgstreameraudioprobecontrol.cpp | 19 +- | ||
| 35 | src/gsttools/qgstreamerbushelper.cpp | 8 + | ||
| 36 | src/gsttools/qgstreamervideoprobecontrol.cpp | 9 + | ||
| 37 | src/gsttools/qgstreamervideorenderer.cpp | 3 +- | ||
| 38 | src/gsttools/qgstreamervideowidget.cpp | 29 ++- | ||
| 39 | src/gsttools/qgstreamervideowindow.cpp | 79 +++++++- | ||
| 40 | src/gsttools/qgstutils.cpp | 27 ++- | ||
| 41 | src/gsttools/qgstvideobuffer.cpp | 18 +- | ||
| 42 | src/gsttools/qvideosurfacegstsink.cpp | 136 +++++++++++++- | ||
| 43 | src/multimedia/gsttools_headers/qgstappsrc_p.h | 3 + | ||
| 44 | .../qgstreameraudioprobecontrol_p.h | 5 +- | ||
| 45 | .../qgstreamervideoprobecontrol_p.h | 4 + | ||
| 46 | .../gsttools_headers/qgstreamervideowindow_p.h | 4 + | ||
| 47 | src/multimedia/gsttools_headers/qgstutils_p.h | 4 + | ||
| 48 | .../gsttools_headers/qgstvideobuffer_p.h | 3 + | ||
| 49 | .../gsttools_headers/qvideosurfacegstsink_p.h | 6 +- | ||
| 50 | .../qgstreameraudiodecoderserviceplugin.cpp | 27 ++- | ||
| 51 | .../audiodecoder/qgstreameraudiodecodersession.cpp | 33 +++- | ||
| 52 | .../gstreamer/camerabin/camerabinsession.cpp | 25 +++ | ||
| 53 | src/plugins/gstreamer/common.pri | 21 ++- | ||
| 54 | src/plugins/gstreamer/gstreamer.pro | 3 +- | ||
| 55 | .../mediacapture/qgstreamercapturesession.cpp | 5 + | ||
| 56 | src/plugins/gstreamer/mediaplayer/mediaplayer.pro | 1 - | ||
| 57 | .../mediaplayer/qgstreamerplayercontrol.cpp | 2 + | ||
| 58 | .../mediaplayer/qgstreamerplayerservice.cpp | 9 +- | ||
| 59 | .../mediaplayer/qgstreamerplayerserviceplugin.cpp | 27 ++- | ||
| 60 | .../mediaplayer/qgstreamerplayersession.cpp | 154 ++++++++++++++-- | ||
| 61 | .../mediaplayer/qgstreamerplayersession.h | 9 + | ||
| 62 | 36 files changed, 871 insertions(+), 129 deletions(-) | ||
| 63 | 18 | ||
| 64 | diff --git a/config.tests/gstreamer/gstreamer.pro b/config.tests/gstreamer/gstreamer.pro | ||
| 65 | index 02a7e34..6b9843a 100644 | ||
| 66 | --- a/config.tests/gstreamer/gstreamer.pro | ||
| 67 | +++ b/config.tests/gstreamer/gstreamer.pro | ||
| 68 | @@ -3,11 +3,10 @@ SOURCES += main.cpp | ||
| 69 | CONFIG += link_pkgconfig | ||
| 70 | |||
| 71 | PKGCONFIG += \ | ||
| 72 | - gstreamer-0.10 \ | ||
| 73 | - gstreamer-base-0.10 \ | ||
| 74 | - gstreamer-interfaces-0.10 \ | ||
| 75 | - gstreamer-audio-0.10 \ | ||
| 76 | - gstreamer-video-0.10 \ | ||
| 77 | - gstreamer-pbutils-0.10 | ||
| 78 | + gstreamer-$$GST_VERSION \ | ||
| 79 | + gstreamer-base-$$GST_VERSION \ | ||
| 80 | + gstreamer-audio-$$GST_VERSION \ | ||
| 81 | + gstreamer-video-$$GST_VERSION \ | ||
| 82 | + gstreamer-pbutils-$$GST_VERSION | ||
| 83 | |||
| 84 | |||
| 85 | diff --git a/config.tests/gstreamer_appsrc/gstreamer_appsrc.pro b/config.tests/gstreamer_appsrc/gstreamer_appsrc.pro | ||
| 86 | index 9f61703..0f3ca2b 100644 | ||
| 87 | --- a/config.tests/gstreamer_appsrc/gstreamer_appsrc.pro | ||
| 88 | +++ b/config.tests/gstreamer_appsrc/gstreamer_appsrc.pro | ||
| 89 | @@ -3,11 +3,8 @@ SOURCES += main.cpp | ||
| 90 | CONFIG += link_pkgconfig | ||
| 91 | |||
| 92 | PKGCONFIG += \ | ||
| 93 | - gstreamer-0.10 \ | ||
| 94 | - gstreamer-base-0.10 \ | ||
| 95 | - gstreamer-interfaces-0.10 \ | ||
| 96 | - gstreamer-audio-0.10 \ | ||
| 97 | - gstreamer-video-0.10 \ | ||
| 98 | - gstreamer-app-0.10 | ||
| 99 | - | ||
| 100 | - | ||
| 101 | + gstreamer-$$GST_VERSION \ | ||
| 102 | + gstreamer-base-$$GST_VERSION \ | ||
| 103 | + gstreamer-audio-$$GST_VERSION \ | ||
| 104 | + gstreamer-video-$$GST_VERSION \ | ||
| 105 | + gstreamer-pbutils-$$GST_VERSION | ||
| 106 | diff --git a/config.tests/gstreamer_encodingprofiles/gstreamer_encodingprofiles.pro b/config.tests/gstreamer_encodingprofiles/gstreamer_encodingprofiles.pro | ||
| 107 | index 7e8a9e7..fad40b0 100644 | ||
| 108 | --- a/config.tests/gstreamer_encodingprofiles/gstreamer_encodingprofiles.pro | ||
| 109 | +++ b/config.tests/gstreamer_encodingprofiles/gstreamer_encodingprofiles.pro | ||
| 110 | @@ -2,11 +2,10 @@ SOURCES += main.cpp | ||
| 111 | |||
| 112 | CONFIG += link_pkgconfig | ||
| 113 | |||
| 114 | -PKGCONFIG += \ | ||
| 115 | - gstreamer-0.10 \ | ||
| 116 | - gstreamer-base-0.10 \ | ||
| 117 | - gstreamer-interfaces-0.10 \ | ||
| 118 | - gstreamer-audio-0.10 \ | ||
| 119 | - gstreamer-video-0.10 \ | ||
| 120 | - gstreamer-pbutils-0.10 | ||
| 121 | |||
| 122 | +PKGCONFIG += \ | ||
| 123 | + gstreamer-$$GST_VERSION \ | ||
| 124 | + gstreamer-base-$$GST_VERSION \ | ||
| 125 | + gstreamer-audio-$$GST_VERSION \ | ||
| 126 | + gstreamer-video-$$GST_VERSION \ | ||
| 127 | + gstreamer-pbutils-$$GST_VERSION | ||
| 128 | diff --git a/config.tests/gstreamer_photography/gstreamer_photography.pro b/config.tests/gstreamer_photography/gstreamer_photography.pro | ||
| 129 | index 6b530cb..975991f 100644 | ||
| 130 | --- a/config.tests/gstreamer_photography/gstreamer_photography.pro | ||
| 131 | +++ b/config.tests/gstreamer_photography/gstreamer_photography.pro | ||
| 132 | @@ -3,12 +3,11 @@ SOURCES += main.cpp | ||
| 133 | CONFIG += link_pkgconfig | ||
| 134 | |||
| 135 | PKGCONFIG += \ | ||
| 136 | - gstreamer-0.10 \ | ||
| 137 | - gstreamer-base-0.10 \ | ||
| 138 | - gstreamer-interfaces-0.10 \ | ||
| 139 | - gstreamer-audio-0.10 \ | ||
| 140 | - gstreamer-video-0.10 \ | ||
| 141 | - gstreamer-pbutils-0.10 | ||
| 142 | - | ||
| 143 | -LIBS += -lgstphotography-0.10 | ||
| 144 | + gstreamer-$$GST_VERSION \ | ||
| 145 | + gstreamer-base-$$GST_VERSION \ | ||
| 146 | + gstreamer-audio-$$GST_VERSION \ | ||
| 147 | + gstreamer-video-$$GST_VERSION \ | ||
| 148 | + gstreamer-pbutils-$$GST_VERSION | ||
| 149 | + | ||
| 150 | +LIBS += -lgstphotography-$$GST_VERSION | ||
| 151 | |||
| 152 | diff --git a/qtmultimedia.pro b/qtmultimedia.pro | 19 | diff --git a/qtmultimedia.pro b/qtmultimedia.pro |
| 153 | index cf97e64..d94d6a2 100644 | 20 | index 1225ffb..a60b1fc 100644 |
| 154 | --- a/qtmultimedia.pro | 21 | --- a/qtmultimedia.pro |
| 155 | +++ b/qtmultimedia.pro | 22 | +++ b/qtmultimedia.pro |
| 156 | @@ -17,11 +17,26 @@ win32 { | 23 | @@ -18,19 +18,20 @@ win32 { |
| 157 | } else { | ||
| 158 | contains(QT_CONFIG, alsa):qtCompileTest(alsa) | 24 | contains(QT_CONFIG, alsa):qtCompileTest(alsa) |
| 159 | contains(QT_CONFIG, pulseaudio):qtCompileTest(pulseaudio) | 25 | contains(QT_CONFIG, pulseaudio):qtCompileTest(pulseaudio) |
| 160 | - qtCompileTest(gstreamer) { | 26 | |
| 27 | - isEmpty(GST_VERSION) { | ||
| 28 | - contains(QT_CONFIG, gstreamer-0.10) { | ||
| 29 | - GST_VERSION = 0.10 | ||
| 30 | - } else: contains(QT_CONFIG, gstreamer-1.0) { | ||
| 31 | - GST_VERSION = 1.0 | ||
| 32 | + !done_config_gstreamer { | ||
| 33 | + isEmpty(GST_VERSION) { | ||
| 34 | + contains(QT_CONFIG, gstreamer-0.10) { | ||
| 35 | + GST_VERSION = 0.10 | ||
| 36 | + } else: contains(QT_CONFIG, gstreamer-1.0) { | ||
| 37 | + GST_VERSION = 1.0 | ||
| 38 | + } | ||
| 39 | } | ||
| 40 | - } | ||
| 41 | - cache(GST_VERSION, set) | ||
| 42 | - !isEmpty(GST_VERSION):qtCompileTest(gstreamer) { | ||
| 161 | - qtCompileTest(gstreamer_photography) | 43 | - qtCompileTest(gstreamer_photography) |
| 162 | - qtCompileTest(gstreamer_encodingprofiles) | 44 | - qtCompileTest(gstreamer_encodingprofiles) |
| 163 | - qtCompileTest(gstreamer_appsrc) | 45 | - qtCompileTest(gstreamer_appsrc) |
| 164 | - qtCompileTest(linux_v4l) | 46 | - qtCompileTest(linux_v4l) |
| 165 | + !done_config_gstreamer { | 47 | + cache(GST_VERSION, set) |
| 166 | + gstver=1.0 | 48 | + !isEmpty(GST_VERSION):qtCompileTest(gstreamer) { |
| 167 | + cache(GST_VERSION, set, gstver); | ||
| 168 | + qtCompileTest(gstreamer) { | ||
| 169 | + qtCompileTest(gstreamer_photography) | 49 | + qtCompileTest(gstreamer_photography) |
| 170 | + qtCompileTest(gstreamer_encodingprofiles) | 50 | + qtCompileTest(gstreamer_encodingprofiles) |
| 171 | + qtCompileTest(gstreamer_appsrc) | 51 | + qtCompileTest(gstreamer_appsrc) |
| 172 | + qtCompileTest(linux_v4l) | 52 | + qtCompileTest(linux_v4l) |
| 173 | + } else { | ||
| 174 | + gstver=0.10 | ||
| 175 | + cache(GST_VERSION, set, gstver); | ||
| 176 | + # Force a re-run of the test | ||
| 177 | + CONFIG -= done_config_gstreamer | ||
| 178 | + qtCompileTest(gstreamer) { | ||
| 179 | + qtCompileTest(gstreamer_photography) | ||
| 180 | + qtCompileTest(gstreamer_encodingprofiles) | ||
| 181 | + qtCompileTest(gstreamer_appsrc) | ||
| 182 | + qtCompileTest(linux_v4l) | ||
| 183 | + } | ||
| 184 | + } | ||
| 185 | } | ||
| 186 | qtCompileTest(resourcepolicy) | ||
| 187 | qtCompileTest(gpu_vivante) | ||
| 188 | diff --git a/src/gsttools/gsttools.pro b/src/gsttools/gsttools.pro | ||
| 189 | index 7c809a7..6b9bf5d 100644 | ||
| 190 | --- a/src/gsttools/gsttools.pro | ||
| 191 | +++ b/src/gsttools/gsttools.pro | ||
| 192 | @@ -2,7 +2,7 @@ TEMPLATE = lib | ||
| 193 | |||
| 194 | TARGET = qgsttools_p | ||
| 195 | QPRO_PWD = $$PWD | ||
| 196 | -QT = core-private multimedia-private gui-private | ||
| 197 | +QT = core-private multimedia-private gui-private opengl | ||
| 198 | |||
| 199 | !static:DEFINES += QT_MAKEDLL | ||
| 200 | DEFINES += GLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 | ||
| 201 | @@ -15,13 +15,14 @@ LIBS_PRIVATE += \ | ||
| 202 | |||
| 203 | CONFIG += link_pkgconfig | ||
| 204 | |||
| 205 | -PKGCONFIG_PRIVATE += \ | ||
| 206 | - gstreamer-0.10 \ | ||
| 207 | - gstreamer-base-0.10 \ | ||
| 208 | - gstreamer-interfaces-0.10 \ | ||
| 209 | - gstreamer-audio-0.10 \ | ||
| 210 | - gstreamer-video-0.10 \ | ||
| 211 | - gstreamer-pbutils-0.10 | ||
| 212 | +PKGCONFIG += \ | ||
| 213 | + gstreamer-$$GST_VERSION \ | ||
| 214 | + gstreamer-base-$$GST_VERSION \ | ||
| 215 | + gstreamer-audio-$$GST_VERSION \ | ||
| 216 | + gstreamer-video-$$GST_VERSION \ | ||
| 217 | + gstreamer-pbutils-$$GST_VERSION | ||
| 218 | + | ||
| 219 | +equals(GST_VERSION,"0.10"): PKGCONFIG_PRIVATE += gstreamer-interfaces-$$GST_VERSION | ||
| 220 | |||
| 221 | maemo*: PKGCONFIG_PRIVATE +=gstreamer-plugins-bad-0.10 | ||
| 222 | |||
| 223 | @@ -33,6 +34,7 @@ config_resourcepolicy { | ||
| 224 | # Header files must go inside source directory of a module | ||
| 225 | # to be installed by syncqt. | ||
| 226 | INCLUDEPATH += ../multimedia/gsttools_headers/ | ||
| 227 | +INCLUDEPATH += ../plugins/gstreamer/mediaplayer/ | ||
| 228 | VPATH += ../multimedia/gsttools_headers/ | ||
| 229 | |||
| 230 | PRIVATE_HEADERS += \ | ||
| 231 | @@ -91,13 +93,13 @@ maemo6 { | ||
| 232 | } | ||
| 233 | |||
| 234 | config_gstreamer_appsrc { | ||
| 235 | - PKGCONFIG_PRIVATE += gstreamer-app-0.10 | ||
| 236 | + PKGCONFIG_PRIVATE += gstreamer-app-$$GST_VERSION | ||
| 237 | PRIVATE_HEADERS += qgstappsrc_p.h | ||
| 238 | SOURCES += qgstappsrc.cpp | ||
| 239 | |||
| 240 | DEFINES += HAVE_GST_APPSRC | ||
| 241 | |||
| 242 | - LIBS_PRIVATE += -lgstapp-0.10 | ||
| 243 | + LIBS_PRIVATE += -lgstapp-$$GST_VERSION | ||
| 244 | } | ||
| 245 | |||
| 246 | config_linux_v4l: DEFINES += USE_V4L | ||
| 247 | diff --git a/src/gsttools/gstvideoconnector.c b/src/gsttools/gstvideoconnector.c | ||
| 248 | index 3ed539e..ed0ed3c 100644 | ||
| 249 | --- a/src/gsttools/gstvideoconnector.c | ||
| 250 | +++ b/src/gsttools/gstvideoconnector.c | ||
| 251 | @@ -59,26 +59,93 @@ GST_STATIC_PAD_TEMPLATE ("src", | ||
| 252 | GST_PAD_ALWAYS, | ||
| 253 | GST_STATIC_CAPS_ANY); | ||
| 254 | |||
| 255 | + | ||
| 256 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 257 | + | ||
| 258 | +G_DEFINE_TYPE(GstVideoConnector, gst_video_connector, GST_TYPE_ELEMENT); | ||
| 259 | +#else | ||
| 260 | #define _do_init(bla) \ | ||
| 261 | GST_DEBUG_CATEGORY_INIT (video_connector_debug, \ | ||
| 262 | "video-connector", 0, "An identity like element for reconnecting video stream"); | ||
| 263 | |||
| 264 | GST_BOILERPLATE_FULL (GstVideoConnector, gst_video_connector, GstElement, | ||
| 265 | GST_TYPE_ELEMENT, _do_init); | ||
| 266 | +#endif | ||
| 267 | |||
| 268 | static void gst_video_connector_dispose (GObject * object); | ||
| 269 | + | ||
| 270 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 271 | +static GstFlowReturn gst_video_connector_chain (GstPad * pad, GstObject* parent, GstBuffer * buf); | ||
| 272 | +#else | ||
| 273 | static GstFlowReturn gst_video_connector_chain (GstPad * pad, GstBuffer * buf); | ||
| 274 | static GstFlowReturn gst_video_connector_buffer_alloc (GstPad * pad, | ||
| 275 | guint64 offset, guint size, GstCaps * caps, GstBuffer ** buf); | ||
| 276 | +#endif | ||
| 277 | + | ||
| 278 | static GstStateChangeReturn gst_video_connector_change_state (GstElement * | ||
| 279 | element, GstStateChange transition); | ||
| 280 | + | ||
| 281 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 282 | +static gboolean gst_video_connector_handle_sink_event (GstPad * pad, GstObject* parent, | ||
| 283 | + GstEvent * event); | ||
| 284 | +#else | ||
| 285 | static gboolean gst_video_connector_handle_sink_event (GstPad * pad, | ||
| 286 | GstEvent * event); | ||
| 287 | +#endif | ||
| 288 | + | ||
| 289 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 290 | +static GstPadProbeReturn gst_video_connector_new_buffer_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object); | ||
| 291 | +static GstPadProbeReturn gst_video_connector_new_event_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object); | ||
| 292 | +static GstPadProbeReturn gst_video_connector_new_query_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object); | ||
| 293 | +#else | ||
| 294 | static gboolean gst_video_connector_new_buffer_probe(GstObject *pad, GstBuffer *buffer, guint * object); | ||
| 295 | -static void gst_video_connector_resend_new_segment(GstElement * element, gboolean emitFailedSignal); | ||
| 296 | static gboolean gst_video_connector_setcaps (GstPad *pad, GstCaps *caps); | ||
| 297 | static GstCaps *gst_video_connector_getcaps (GstPad * pad); | ||
| 298 | static gboolean gst_video_connector_acceptcaps (GstPad * pad, GstCaps * caps); | ||
| 299 | +#endif | ||
| 300 | + | ||
| 301 | +static void gst_video_connector_resend_new_segment(GstElement * element, gboolean emitFailedSignal); | ||
| 302 | + | ||
| 303 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 304 | +static void | ||
| 305 | +gst_video_connector_class_init (GstVideoConnectorClass * klass) | ||
| 306 | +{ | ||
| 307 | + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); | ||
| 308 | + GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass); | ||
| 309 | + | ||
| 310 | + gst_element_class_set_details_simple (gstelement_class, "Video Connector", | ||
| 311 | + "Generic", | ||
| 312 | + "An identity like element used for reconnecting video stream", | ||
| 313 | + "Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>"); | ||
| 314 | + gst_element_class_add_pad_template (gstelement_class, | ||
| 315 | + gst_static_pad_template_get (&gst_video_connector_sink_factory)); | ||
| 316 | + gst_element_class_add_pad_template (gstelement_class, | ||
| 317 | + gst_static_pad_template_get (&gst_video_connector_src_factory)); | ||
| 318 | + | ||
| 319 | + gst_video_connector_parent_class = g_type_class_peek_parent (klass); | ||
| 320 | + | ||
| 321 | + gobject_class->dispose = gst_video_connector_dispose; | ||
| 322 | + gstelement_class->change_state = gst_video_connector_change_state; | ||
| 323 | + klass->resend_new_segment = gst_video_connector_resend_new_segment; | ||
| 324 | + | ||
| 325 | + gst_video_connector_signals[SIGNAL_RESEND_NEW_SEGMENT] = | ||
| 326 | + g_signal_new ("resend-new-segment", G_TYPE_FROM_CLASS (klass), | ||
| 327 | + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, | ||
| 328 | + G_STRUCT_OFFSET (GstVideoConnectorClass, resend_new_segment), NULL, NULL, | ||
| 329 | + g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1, G_TYPE_BOOLEAN); | ||
| 330 | + | ||
| 331 | + gst_video_connector_signals[SIGNAL_CONNECTION_FAILED] = | ||
| 332 | + g_signal_new ("connection-failed", G_TYPE_FROM_CLASS (klass), | ||
| 333 | + G_SIGNAL_RUN_LAST, | ||
| 334 | + 0, NULL, NULL, | ||
| 335 | + g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); | ||
| 336 | + | ||
| 337 | + GST_DEBUG_CATEGORY_INIT(video_connector_debug, "video-connector", 0, | ||
| 338 | + "An identity like element for reconnecting video stream"); | ||
| 339 | + | ||
| 340 | +} | ||
| 341 | + | ||
| 342 | +#else | ||
| 343 | |||
| 344 | static void | ||
| 345 | gst_video_connector_base_init (gpointer g_class) | ||
| 346 | @@ -120,18 +187,33 @@ gst_video_connector_class_init (GstVideoConnectorClass * klass) | ||
| 347 | g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); | ||
| 348 | } | ||
| 349 | |||
| 350 | +#endif | ||
| 351 | + | ||
| 352 | static void | ||
| 353 | -gst_video_connector_init (GstVideoConnector *element, | ||
| 354 | - GstVideoConnectorClass *g_class) | ||
| 355 | +gst_video_connector_init (GstVideoConnector *element | ||
| 356 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 357 | +#else | ||
| 358 | + ,GstVideoConnectorClass *g_class | ||
| 359 | +#endif | ||
| 360 | + ) | ||
| 361 | { | ||
| 362 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 363 | +#else | ||
| 364 | (void) g_class; | ||
| 365 | +#endif | ||
| 366 | element->sinkpad = | ||
| 367 | gst_pad_new_from_static_template (&gst_video_connector_sink_factory, | ||
| 368 | "sink"); | ||
| 369 | gst_pad_set_chain_function(element->sinkpad, | ||
| 370 | GST_DEBUG_FUNCPTR (gst_video_connector_chain)); | ||
| 371 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 372 | + /* gstreamer 1.x uses QUERIES and EVENTS for allocation and caps handiling purposes */ | ||
| 373 | + GST_OBJECT_FLAG_SET (element->sinkpad, GST_PAD_FLAG_PROXY_CAPS); | ||
| 374 | + GST_OBJECT_FLAG_SET (element->sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION); | ||
| 375 | +#else | ||
| 376 | gst_pad_set_event_function(element->sinkpad, | ||
| 377 | GST_DEBUG_FUNCPTR (gst_video_connector_handle_sink_event)); | ||
| 378 | + | ||
| 379 | gst_pad_set_bufferalloc_function(element->sinkpad, | ||
| 380 | GST_DEBUG_FUNCPTR (gst_video_connector_buffer_alloc)); | ||
| 381 | gst_pad_set_setcaps_function(element->sinkpad, | ||
| 382 | @@ -140,14 +222,23 @@ gst_video_connector_init (GstVideoConnector *element, | ||
| 383 | GST_DEBUG_FUNCPTR(gst_video_connector_getcaps)); | ||
| 384 | gst_pad_set_acceptcaps_function(element->sinkpad, | ||
| 385 | GST_DEBUG_FUNCPTR(gst_video_connector_acceptcaps)); | ||
| 386 | - | ||
| 387 | +#endif | ||
| 388 | gst_element_add_pad (GST_ELEMENT (element), element->sinkpad); | ||
| 389 | |||
| 390 | element->srcpad = | ||
| 391 | gst_pad_new_from_static_template (&gst_video_connector_src_factory, | ||
| 392 | "src"); | ||
| 393 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 394 | + gst_pad_add_probe(element->srcpad, GST_PAD_PROBE_TYPE_BUFFER, | ||
| 395 | + gst_video_connector_new_buffer_probe, element, NULL); | ||
| 396 | + gst_pad_add_probe(element->srcpad, GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM, | ||
| 397 | + gst_video_connector_new_query_probe, element, NULL); | ||
| 398 | + gst_pad_add_probe(element->sinkpad, GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM, | ||
| 399 | + gst_video_connector_new_event_probe, element, NULL); | ||
| 400 | +#else | ||
| 401 | gst_pad_add_buffer_probe(element->srcpad, | ||
| 402 | G_CALLBACK(gst_video_connector_new_buffer_probe), element); | ||
| 403 | +#endif | ||
| 404 | gst_element_add_pad (GST_ELEMENT (element), element->srcpad); | ||
| 405 | |||
| 406 | element->relinked = FALSE; | ||
| 407 | @@ -175,9 +266,16 @@ gst_video_connector_dispose (GObject * object) | ||
| 408 | |||
| 409 | gst_video_connector_reset (element); | ||
| 410 | |||
| 411 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 412 | + G_OBJECT_CLASS (gst_video_connector_parent_class)->dispose (object); | ||
| 413 | +#else | ||
| 414 | G_OBJECT_CLASS (parent_class)->dispose (object); | ||
| 415 | +#endif | ||
| 416 | } | ||
| 417 | |||
| 418 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 419 | +/* For gstreamer 1.x we handle it in ALLOCATION Query */ | ||
| 420 | +#else | ||
| 421 | // "When this function returns anything else than GST_FLOW_OK, | ||
| 422 | // the buffer allocation failed and buf does not contain valid data." | ||
| 423 | static GstFlowReturn | ||
| 424 | @@ -221,6 +319,7 @@ gst_video_connector_buffer_alloc (GstPad * pad, guint64 offset, guint size, | ||
| 425 | if (state == GST_STATE_NULL) { | ||
| 426 | GST_DEBUG_OBJECT (element, "Downstream element is in NULL state"); | ||
| 427 | // Downstream filter seems to be in the wrong state | ||
| 428 | + | ||
| 429 | return GST_FLOW_UNEXPECTED; | ||
| 430 | } | ||
| 431 | } | ||
| 432 | @@ -293,6 +392,7 @@ static GstCaps *gst_video_connector_getcaps (GstPad * pad) | ||
| 433 | return caps; | ||
| 434 | } | ||
| 435 | |||
| 436 | + | ||
| 437 | static gboolean gst_video_connector_acceptcaps (GstPad * pad, GstCaps * caps) | ||
| 438 | { | ||
| 439 | GstVideoConnector *element; | ||
| 440 | @@ -300,6 +400,7 @@ static gboolean gst_video_connector_acceptcaps (GstPad * pad, GstCaps * caps) | ||
| 441 | |||
| 442 | return gst_pad_peer_accept_caps(element->srcpad, caps); | ||
| 443 | } | ||
| 444 | +#endif | ||
| 445 | |||
| 446 | static void | ||
| 447 | gst_video_connector_resend_new_segment(GstElement * element, gboolean emitFailedSignal) | ||
| 448 | @@ -311,11 +412,39 @@ gst_video_connector_resend_new_segment(GstElement * element, gboolean emitFailed | ||
| 449 | connector->failedSignalEmited = FALSE; | ||
| 450 | } | ||
| 451 | |||
| 452 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 453 | +static GstPadProbeReturn gst_video_connector_new_event_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object) | ||
| 454 | +{ | ||
| 455 | + GstVideoConnector *connector = GST_VIDEO_CONNECTOR (object); | ||
| 456 | + GstEvent *event = gst_pad_probe_info_get_event(info); | ||
| 457 | + | ||
| 458 | + GST_DEBUG_OBJECT(connector, "Event %"GST_PTR_FORMAT" received\n", event); | ||
| 459 | + | ||
| 460 | + return GST_PAD_PROBE_OK; | ||
| 461 | +} | ||
| 462 | + | ||
| 463 | +static GstPadProbeReturn gst_video_connector_new_query_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object) | ||
| 464 | +{ | ||
| 465 | + GstVideoConnector *connector = GST_VIDEO_CONNECTOR (object); | ||
| 466 | + GstQuery *query = gst_pad_probe_info_get_query(info); | ||
| 467 | + | ||
| 468 | + GST_DEBUG_OBJECT(connector, "Query %"GST_PTR_FORMAT" received\n", query); | ||
| 469 | + | ||
| 470 | + return GST_PAD_PROBE_OK; | ||
| 471 | +} | ||
| 472 | +#endif | ||
| 473 | |||
| 474 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 475 | +static GstPadProbeReturn gst_video_connector_new_buffer_probe(GstPad *pad, GstPadProbeInfo *info, gpointer object) | ||
| 476 | +{ | ||
| 477 | + (void) info; | ||
| 478 | +#else | ||
| 479 | static gboolean gst_video_connector_new_buffer_probe(GstObject *pad, GstBuffer *buffer, guint * object) | ||
| 480 | { | ||
| 481 | - (void) pad; | ||
| 482 | (void) buffer; | ||
| 483 | +#endif | ||
| 484 | + (void) pad; | ||
| 485 | + | ||
| 486 | |||
| 487 | GstVideoConnector *element = GST_VIDEO_CONNECTOR (object); | ||
| 488 | |||
| 489 | @@ -327,16 +456,23 @@ static gboolean gst_video_connector_new_buffer_probe(GstObject *pad, GstBuffer * | ||
| 490 | if (element->relinked) | ||
| 491 | GST_LOG_OBJECT(element, "rejected buffer because of new segment request"); | ||
| 492 | |||
| 493 | - return !element->relinked; | ||
| 494 | + return element->relinked ? GST_PAD_PROBE_DROP : GST_PAD_PROBE_OK; | ||
| 495 | } | ||
| 496 | |||
| 497 | - | ||
| 498 | static GstFlowReturn | ||
| 499 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 500 | +gst_video_connector_chain (GstPad * pad, GstObject* parent, GstBuffer * buf) | ||
| 501 | +#else | ||
| 502 | gst_video_connector_chain (GstPad * pad, GstBuffer * buf) | ||
| 503 | +#endif | ||
| 504 | { | ||
| 505 | GstFlowReturn res; | ||
| 506 | GstVideoConnector *element; | ||
| 507 | |||
| 508 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 509 | + (void)parent; | ||
| 510 | +#endif | ||
| 511 | + | ||
| 512 | element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); | ||
| 513 | |||
| 514 | do { | ||
| 515 | @@ -348,20 +484,29 @@ gst_video_connector_chain (GstPad * pad, GstBuffer * buf) | ||
| 516 | */ | ||
| 517 | while (element->relinked) { | ||
| 518 | element->relinked = FALSE; | ||
| 519 | - | ||
| 520 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 521 | + if (element->latest_buffer && GST_BUFFER_TIMESTAMP_IS_VALID(element->latest_buffer)) { | ||
| 522 | + element->segment.position = GST_BUFFER_TIMESTAMP (element->latest_buffer); | ||
| 523 | + } | ||
| 524 | +#else | ||
| 525 | gint64 pos = element->segment.last_stop; | ||
| 526 | - | ||
| 527 | if (element->latest_buffer && GST_BUFFER_TIMESTAMP_IS_VALID(element->latest_buffer)) { | ||
| 528 | pos = GST_BUFFER_TIMESTAMP (element->latest_buffer); | ||
| 529 | } | ||
| 530 | +#endif | ||
| 531 | |||
| 532 | //push a new segment and last buffer | ||
| 533 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 534 | + GstEvent *ev = gst_event_new_segment (&element->segment); | ||
| 535 | + | ||
| 536 | +#else | ||
| 537 | GstEvent *ev = gst_event_new_new_segment (TRUE, | ||
| 538 | element->segment.rate, | ||
| 539 | element->segment.format, | ||
| 540 | pos, //start | ||
| 541 | element->segment.stop, | ||
| 542 | pos); | ||
| 543 | +#endif | ||
| 544 | |||
| 545 | GST_DEBUG_OBJECT (element, "Pushing new segment event"); | ||
| 546 | if (!gst_pad_push_event (element->srcpad, ev)) { | ||
| 547 | @@ -424,8 +569,11 @@ gst_video_connector_change_state (GstElement * element, | ||
| 548 | GstStateChangeReturn result; | ||
| 549 | |||
| 550 | connector = GST_VIDEO_CONNECTOR(element); | ||
| 551 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 552 | + result = GST_ELEMENT_CLASS (gst_video_connector_parent_class)->change_state(element, transition); | ||
| 553 | +#else | ||
| 554 | result = GST_ELEMENT_CLASS (parent_class)->change_state(element, transition); | ||
| 555 | - | ||
| 556 | +#endif | ||
| 557 | switch (transition) { | ||
| 558 | case GST_STATE_CHANGE_PAUSED_TO_READY: | ||
| 559 | gst_video_connector_reset (connector); | ||
| 560 | @@ -440,9 +588,32 @@ gst_video_connector_change_state (GstElement * element, | ||
| 561 | return result; | ||
| 562 | } | ||
| 563 | |||
| 564 | -static gboolean | ||
| 565 | -gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event) | ||
| 566 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 567 | +static gboolean gst_video_connector_handle_sink_event (GstPad * pad, GstObject* parent, | ||
| 568 | + GstEvent * event) | ||
| 569 | +{ | ||
| 570 | + GstVideoConnector *element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); | ||
| 571 | + | ||
| 572 | + switch (GST_EVENT_TYPE (event)) { | ||
| 573 | + case GST_EVENT_SEGMENT: | ||
| 574 | + break; | ||
| 575 | + case GST_EVENT_CAPS: | ||
| 576 | + break; | ||
| 577 | + default: | ||
| 578 | + break; | ||
| 579 | + } | ||
| 580 | + | ||
| 581 | + gst_object_unref (element); | ||
| 582 | + return gst_pad_event_default (pad, parent, event); | ||
| 583 | +} | ||
| 584 | + | ||
| 585 | +#else | ||
| 586 | + | ||
| 587 | +static gboolean gst_video_connector_handle_sink_event (GstPad * pad, | ||
| 588 | + GstEvent * event) | ||
| 589 | { | ||
| 590 | + (void)parent; | ||
| 591 | + | ||
| 592 | if (GST_EVENT_TYPE (event) == GST_EVENT_NEWSEGMENT) { | ||
| 593 | GstVideoConnector *element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); | ||
| 594 | |||
| 595 | @@ -453,7 +624,6 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event) | ||
| 596 | |||
| 597 | gst_event_parse_new_segment_full (event, &update, &rate, &arate, &format, | ||
| 598 | &start, &stop, &time); | ||
| 599 | - | ||
| 600 | GST_LOG_OBJECT (element, | ||
| 601 | "NEWSEGMENT update %d, rate %lf, applied rate %lf, " | ||
| 602 | "format %d, " "%" G_GINT64_FORMAT " -- %" G_GINT64_FORMAT ", time %" | ||
| 603 | @@ -461,9 +631,10 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event) | ||
| 604 | |||
| 605 | gst_segment_set_newsegment_full (&element->segment, update, | ||
| 606 | rate, arate, format, start, stop, time); | ||
| 607 | - | ||
| 608 | gst_object_unref (element); | ||
| 609 | } | ||
| 610 | |||
| 611 | return gst_pad_event_default (pad, event); | ||
| 612 | } | ||
| 613 | + | ||
| 614 | +#endif | ||
| 615 | diff --git a/src/gsttools/qgstappsrc.cpp b/src/gsttools/qgstappsrc.cpp | ||
| 616 | index 561a96f..d5e106f 100644 | ||
| 617 | --- a/src/gsttools/qgstappsrc.cpp | ||
| 618 | +++ b/src/gsttools/qgstappsrc.cpp | ||
| 619 | @@ -147,23 +147,44 @@ void QGstAppSrc::pushDataToAppSrc() | ||
| 620 | size = qMin(m_stream->bytesAvailable(), (qint64)m_dataRequestSize); | ||
| 621 | |||
| 622 | if (size) { | ||
| 623 | - void *data = g_malloc(size); | ||
| 624 | - GstBuffer* buffer = gst_app_buffer_new(data, size, g_free, data); | ||
| 625 | + GstBuffer* buffer = gst_buffer_new_and_alloc(size); | ||
| 626 | + | ||
| 627 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 628 | + GstMapInfo mapInfo; | ||
| 629 | + gst_buffer_map(buffer, &mapInfo, GST_MAP_WRITE); | ||
| 630 | + void* bufferData = mapInfo.data; | ||
| 631 | +#else | ||
| 632 | + void* bufferData = GST_BUFFER_DATA(buffer); | ||
| 633 | +#endif | ||
| 634 | + | ||
| 635 | buffer->offset = m_stream->pos(); | ||
| 636 | - qint64 bytesRead = m_stream->read((char*)GST_BUFFER_DATA(buffer), size); | ||
| 637 | + qint64 bytesRead = m_stream->read((char*)bufferData, size); | ||
| 638 | buffer->offset_end = buffer->offset + bytesRead - 1; | ||
| 639 | |||
| 640 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 641 | + gst_buffer_unmap(buffer, &mapInfo); | ||
| 642 | +#endif | ||
| 643 | + | ||
| 644 | if (bytesRead > 0) { | ||
| 645 | m_dataRequested = false; | ||
| 646 | m_enoughData = false; | ||
| 647 | GstFlowReturn ret = gst_app_src_push_buffer (GST_APP_SRC (element()), buffer); | ||
| 648 | if (ret == GST_FLOW_ERROR) { | ||
| 649 | qWarning()<<"appsrc: push buffer error"; | ||
| 650 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 651 | + } else if (ret == GST_FLOW_FLUSHING) { | ||
| 652 | + qWarning()<<"appsrc: push buffer wrong state"; | ||
| 653 | + } | ||
| 654 | +#else | ||
| 655 | } else if (ret == GST_FLOW_WRONG_STATE) { | ||
| 656 | qWarning()<<"appsrc: push buffer wrong state"; | ||
| 657 | - } else if (ret == GST_FLOW_RESEND) { | ||
| 658 | + } | ||
| 659 | +#endif | ||
| 660 | +#if GST_VERSION_MAJOR < 1 | ||
| 661 | + else if (ret == GST_FLOW_RESEND) { | ||
| 662 | qWarning()<<"appsrc: push buffer resend"; | ||
| 663 | } | ||
| 664 | +#endif | ||
| 665 | } | ||
| 666 | } else { | ||
| 667 | sendEOS(); | ||
| 668 | diff --git a/src/gsttools/qgstreameraudioprobecontrol.cpp b/src/gsttools/qgstreameraudioprobecontrol.cpp | ||
| 669 | index 3baca53..be3de3f 100644 | ||
| 670 | --- a/src/gsttools/qgstreameraudioprobecontrol.cpp | ||
| 671 | +++ b/src/gsttools/qgstreameraudioprobecontrol.cpp | ||
| 672 | @@ -45,9 +45,14 @@ QGstreamerAudioProbeControl::~QGstreamerAudioProbeControl() | ||
| 673 | |||
| 674 | } | ||
| 675 | |||
| 676 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 677 | +void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer, GstCaps* caps) | ||
| 678 | +{ | ||
| 679 | +#else | ||
| 680 | void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer) | ||
| 681 | { | ||
| 682 | - GstCaps* caps = gst_buffer_get_caps(buffer); | ||
| 683 | + gst_buffer_get_caps(buffer); | ||
| 684 | +#endif | ||
| 685 | if (!caps) | ||
| 686 | return; | ||
| 687 | |||
| 688 | @@ -56,8 +61,20 @@ void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer) | ||
| 689 | if (!format.isValid()) | ||
| 690 | return; | ||
| 691 | |||
| 692 | + #if GST_CHECK_VERSION(1,0,0) | ||
| 693 | + | ||
| 694 | + GstMapInfo info; | ||
| 695 | + | ||
| 696 | + gst_buffer_map (buffer, &info, GST_MAP_READ); | ||
| 697 | + QAudioBuffer audioBuffer = QAudioBuffer(QByteArray((const char*)info.data, info.size), format); | ||
| 698 | + gst_buffer_unmap(buffer, &info); | ||
| 699 | + | ||
| 700 | + #else | ||
| 701 | + | ||
| 702 | QAudioBuffer audioBuffer = QAudioBuffer(QByteArray((const char*)buffer->data, buffer->size), format); | ||
| 703 | |||
| 704 | + #endif | ||
| 705 | + | ||
| 706 | { | ||
| 707 | QMutexLocker locker(&m_bufferMutex); | ||
| 708 | m_pendingBuffer = audioBuffer; | ||
| 709 | diff --git a/src/gsttools/qgstreamerbushelper.cpp b/src/gsttools/qgstreamerbushelper.cpp | ||
| 710 | index 84eda46..eb1fc36 100644 | ||
| 711 | --- a/src/gsttools/qgstreamerbushelper.cpp | ||
| 712 | +++ b/src/gsttools/qgstreamerbushelper.cpp | ||
| 713 | @@ -154,13 +154,21 @@ QGstreamerBusHelper::QGstreamerBusHelper(GstBus* bus, QObject* parent): | ||
| 714 | QObject(parent) | ||
| 715 | { | ||
| 716 | d = new QGstreamerBusHelperPrivate(this, bus); | ||
| 717 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 718 | + gst_bus_set_sync_handler(bus, (GstBusSyncHandler)syncGstBusFilter, d, 0); | ||
| 719 | +#else | ||
| 720 | gst_bus_set_sync_handler(bus, (GstBusSyncHandler)syncGstBusFilter, d); | ||
| 721 | +#endif | ||
| 722 | gst_object_ref(GST_OBJECT(bus)); | ||
| 723 | } | ||
| 724 | |||
| 725 | QGstreamerBusHelper::~QGstreamerBusHelper() | ||
| 726 | { | ||
| 727 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 728 | + gst_bus_set_sync_handler(d->bus(), 0, 0, 0); | ||
| 729 | +#else | ||
| 730 | gst_bus_set_sync_handler(d->bus(),0,0); | ||
| 731 | +#endif | ||
| 732 | gst_object_unref(GST_OBJECT(d->bus())); | ||
| 733 | } | ||
| 734 | |||
| 735 | diff --git a/src/gsttools/qgstreamervideoprobecontrol.cpp b/src/gsttools/qgstreamervideoprobecontrol.cpp | ||
| 736 | index a78a9da..9c31140 100644 | ||
| 737 | --- a/src/gsttools/qgstreamervideoprobecontrol.cpp | ||
| 738 | +++ b/src/gsttools/qgstreamervideoprobecontrol.cpp | ||
| 739 | @@ -67,12 +67,21 @@ void QGstreamerVideoProbeControl::stopFlushing() | ||
| 740 | m_flushing = false; | ||
| 741 | } | ||
| 742 | |||
| 743 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 744 | +void QGstreamerVideoProbeControl::bufferProbed(GstBuffer* buffer, GstCaps* caps) | ||
| 745 | +#else | ||
| 746 | void QGstreamerVideoProbeControl::bufferProbed(GstBuffer* buffer) | ||
| 747 | +#endif | ||
| 748 | { | ||
| 749 | if (m_flushing) | ||
| 750 | return; | ||
| 751 | |||
| 752 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 753 | + // FIXME: | ||
| 754 | + // GstCaps* caps = NULL;//gst_buffer_get_caps(buffer); | ||
| 755 | +#else | ||
| 756 | GstCaps* caps = gst_buffer_get_caps(buffer); | ||
| 757 | +#endif | ||
| 758 | if (!caps) | ||
| 759 | return; | ||
| 760 | |||
| 761 | diff --git a/src/gsttools/qgstreamervideorenderer.cpp b/src/gsttools/qgstreamervideorenderer.cpp | ||
| 762 | index 2b66f76..804dce9 100644 | ||
| 763 | --- a/src/gsttools/qgstreamervideorenderer.cpp | ||
| 764 | +++ b/src/gsttools/qgstreamervideorenderer.cpp | ||
| 765 | @@ -35,8 +35,7 @@ | ||
| 766 | #include <private/qvideosurfacegstsink_p.h> | ||
| 767 | #include <private/qgstutils_p.h> | ||
| 768 | #include <qabstractvideosurface.h> | ||
| 769 | - | ||
| 770 | -#include <QDebug> | ||
| 771 | +#include <QtCore/qdebug.h> | ||
| 772 | |||
| 773 | #include <gst/gst.h> | ||
| 774 | |||
| 775 | diff --git a/src/gsttools/qgstreamervideowidget.cpp b/src/gsttools/qgstreamervideowidget.cpp | ||
| 776 | index b26369a..23674bb 100644 | ||
| 777 | --- a/src/gsttools/qgstreamervideowidget.cpp | ||
| 778 | +++ b/src/gsttools/qgstreamervideowidget.cpp | ||
| 779 | @@ -40,8 +40,13 @@ | ||
| 780 | #include <QtGui/qpainter.h> | ||
| 781 | |||
| 782 | #include <gst/gst.h> | ||
| 783 | + | ||
| 784 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 785 | #include <gst/interfaces/xoverlay.h> | ||
| 786 | #include <gst/interfaces/propertyprobe.h> | ||
| 787 | +#else | ||
| 788 | +#include <gst/video/videooverlay.h> | ||
| 789 | +#endif | ||
| 790 | |||
| 791 | QT_BEGIN_NAMESPACE | ||
| 792 | |||
| 793 | @@ -161,9 +166,13 @@ bool QGstreamerVideoWidgetControl::processSyncMessage(const QGstreamerMessage &m | ||
| 794 | { | ||
| 795 | GstMessage* gm = message.rawMessage(); | ||
| 796 | |||
| 797 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 798 | if (gm && (GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) && | ||
| 799 | gst_structure_has_name(gm->structure, "prepare-xwindow-id")) { | ||
| 800 | - | ||
| 801 | +#else | ||
| 802 | + if (gm && (GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) && | ||
| 803 | + gst_structure_has_name(gst_message_get_structure(gm), "prepare-window-handle")) { | ||
| 804 | +#endif | ||
| 805 | setOverlay(); | ||
| 806 | QMetaObject::invokeMethod(this, "updateNativeVideoSize", Qt::QueuedConnection); | ||
| 807 | return true; | ||
| 808 | @@ -191,18 +200,29 @@ bool QGstreamerVideoWidgetControl::processBusMessage(const QGstreamerMessage &me | ||
| 809 | |||
| 810 | void QGstreamerVideoWidgetControl::setOverlay() | ||
| 811 | { | ||
| 812 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 813 | if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { | ||
| 814 | gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(m_videoSink), m_windowId); | ||
| 815 | } | ||
| 816 | +#else | ||
| 817 | + if (m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) { | ||
| 818 | + gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(m_videoSink), m_windowId); | ||
| 819 | + } | ||
| 820 | +#endif | ||
| 821 | } | ||
| 822 | |||
| 823 | void QGstreamerVideoWidgetControl::updateNativeVideoSize() | ||
| 824 | { | ||
| 825 | if (m_videoSink) { | ||
| 826 | //find video native size to update video widget size hint | ||
| 827 | - GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink"); | ||
| 828 | + GstPad *pad = gst_element_get_static_pad(m_videoSink, "sink"); | ||
| 829 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 830 | GstCaps *caps = gst_pad_get_negotiated_caps(pad); | ||
| 831 | gst_object_unref(GST_OBJECT(pad)); | ||
| 832 | +#else | ||
| 833 | + GstCaps *caps = gst_pad_get_current_caps(pad); | ||
| 834 | + gst_object_unref(GST_OBJECT(pad)); | ||
| 835 | +#endif | ||
| 836 | |||
| 837 | if (caps) { | ||
| 838 | m_widget->setNativeSize(QGstUtils::capsCorrectedResolution(caps)); | ||
| 839 | @@ -217,8 +237,13 @@ void QGstreamerVideoWidgetControl::updateNativeVideoSize() | ||
| 840 | |||
| 841 | void QGstreamerVideoWidgetControl::windowExposed() | ||
| 842 | { | ||
| 843 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 844 | if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) | ||
| 845 | gst_x_overlay_expose(GST_X_OVERLAY(m_videoSink)); | ||
| 846 | +#else | ||
| 847 | + if (m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) | ||
| 848 | + gst_video_overlay_expose(GST_VIDEO_OVERLAY(m_videoSink)); | ||
| 849 | +#endif | ||
| 850 | } | ||
| 851 | |||
| 852 | QWidget *QGstreamerVideoWidgetControl::videoWidget() | ||
| 853 | diff --git a/src/gsttools/qgstreamervideowindow.cpp b/src/gsttools/qgstreamervideowindow.cpp | ||
| 854 | index a373dcc..587b010 100644 | ||
| 855 | --- a/src/gsttools/qgstreamervideowindow.cpp | ||
| 856 | +++ b/src/gsttools/qgstreamervideowindow.cpp | ||
| 857 | @@ -37,8 +37,12 @@ | ||
| 858 | #include <QtCore/qdebug.h> | ||
| 859 | |||
| 860 | #include <gst/gst.h> | ||
| 861 | +#include <gst/video/videooverlay.h> | ||
| 862 | + | ||
| 863 | +#if !GST_CHECK_VERSION(1,0,0) | ||
| 864 | #include <gst/interfaces/xoverlay.h> | ||
| 865 | #include <gst/interfaces/propertyprobe.h> | ||
| 866 | +#endif | ||
| 867 | |||
| 868 | |||
| 869 | QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elementName) | ||
| 870 | @@ -49,18 +53,25 @@ QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elemen | ||
| 871 | , m_fullScreen(false) | ||
| 872 | , m_colorKey(QColor::Invalid) | ||
| 873 | { | ||
| 874 | - if (elementName) | ||
| 875 | + if (elementName) { | ||
| 876 | m_videoSink = gst_element_factory_make(elementName, NULL); | ||
| 877 | - else | ||
| 878 | + } else { | ||
| 879 | m_videoSink = gst_element_factory_make("xvimagesink", NULL); | ||
| 880 | + } | ||
| 881 | |||
| 882 | if (m_videoSink) { | ||
| 883 | qt_gst_object_ref_sink(GST_OBJECT(m_videoSink)); //Take ownership | ||
| 884 | |||
| 885 | GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink"); | ||
| 886 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 887 | + m_bufferProbeId = gst_pad_add_probe(pad, GST_PAD_PROBE_TYPE_BUFFER, padBufferProbe, this, NULL); | ||
| 888 | +#else | ||
| 889 | m_bufferProbeId = gst_pad_add_buffer_probe(pad, G_CALLBACK(padBufferProbe), this); | ||
| 890 | +#endif | ||
| 891 | gst_object_unref(GST_OBJECT(pad)); | ||
| 892 | } | ||
| 893 | + else | ||
| 894 | + qDebug() << "No m_videoSink available!"; | ||
| 895 | } | ||
| 896 | |||
| 897 | QGstreamerVideoWindow::~QGstreamerVideoWindow() | ||
| 898 | @@ -82,11 +93,15 @@ void QGstreamerVideoWindow::setWinId(WId id) | ||
| 899 | WId oldId = m_windowId; | ||
| 900 | |||
| 901 | m_windowId = id; | ||
| 902 | - | ||
| 903 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 904 | + if (m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) { | ||
| 905 | + gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(m_videoSink), m_windowId); | ||
| 906 | + } | ||
| 907 | +#else | ||
| 908 | if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { | ||
| 909 | gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(m_videoSink), m_windowId); | ||
| 910 | } | ||
| 911 | - | ||
| 912 | +#endif | ||
| 913 | if (!oldId) | ||
| 914 | emit readyChanged(true); | ||
| 915 | |||
| 916 | @@ -97,7 +112,20 @@ void QGstreamerVideoWindow::setWinId(WId id) | ||
| 917 | bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message) | ||
| 918 | { | ||
| 919 | GstMessage* gm = message.rawMessage(); | ||
| 920 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 921 | + const GstStructure *s = gst_message_get_structure(gm); | ||
| 922 | + if ((GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) && | ||
| 923 | + gst_structure_has_name(s, "prepare-window-handle") && | ||
| 924 | + m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) { | ||
| 925 | + | ||
| 926 | + gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(m_videoSink), m_windowId); | ||
| 927 | |||
| 928 | + GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink"); | ||
| 929 | + m_bufferProbeId = gst_pad_add_probe(pad, GST_PAD_PROBE_TYPE_BUFFER, padBufferProbe, this, NULL); | ||
| 930 | + | ||
| 931 | + return true; | ||
| 932 | + } | ||
| 933 | +#else | ||
| 934 | if ((GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) && | ||
| 935 | gst_structure_has_name(gm->structure, "prepare-xwindow-id") && | ||
| 936 | m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { | ||
| 937 | @@ -110,7 +138,7 @@ bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message) | ||
| 938 | |||
| 939 | return true; | ||
| 940 | } | ||
| 941 | - | ||
| 942 | +#endif | ||
| 943 | return false; | ||
| 944 | } | ||
| 945 | |||
| 946 | @@ -122,7 +150,19 @@ QRect QGstreamerVideoWindow::displayRect() const | ||
| 947 | void QGstreamerVideoWindow::setDisplayRect(const QRect &rect) | ||
| 948 | { | ||
| 949 | m_displayRect = rect; | ||
| 950 | - | ||
| 951 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 952 | + if (m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) { | ||
| 953 | + if (m_displayRect.isEmpty()) | ||
| 954 | + gst_video_overlay_set_render_rectangle(GST_VIDEO_OVERLAY(m_videoSink), -1, -1, -1, -1); | ||
| 955 | + else | ||
| 956 | + gst_video_overlay_set_render_rectangle(GST_VIDEO_OVERLAY(m_videoSink), | ||
| 957 | + m_displayRect.x(), | ||
| 958 | + m_displayRect.y(), | ||
| 959 | + m_displayRect.width(), | ||
| 960 | + m_displayRect.height()); | ||
| 961 | + repaint(); | ||
| 962 | + } | ||
| 963 | +#else | ||
| 964 | if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { | ||
| 965 | #if GST_VERSION_MICRO >= 29 | ||
| 966 | if (m_displayRect.isEmpty()) | ||
| 967 | @@ -136,6 +176,7 @@ void QGstreamerVideoWindow::setDisplayRect(const QRect &rect) | ||
| 968 | repaint(); | ||
| 969 | #endif | ||
| 970 | } | ||
| 971 | +#endif | ||
| 972 | } | ||
| 973 | |||
| 974 | Qt::AspectRatioMode QGstreamerVideoWindow::aspectRatioMode() const | ||
| 975 | @@ -157,6 +198,16 @@ void QGstreamerVideoWindow::setAspectRatioMode(Qt::AspectRatioMode mode) | ||
| 976 | |||
| 977 | void QGstreamerVideoWindow::repaint() | ||
| 978 | { | ||
| 979 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 980 | + if (m_videoSink && GST_IS_VIDEO_OVERLAY(m_videoSink)) { | ||
| 981 | + //don't call gst_x_overlay_expose if the sink is in null state | ||
| 982 | + GstState state = GST_STATE_NULL; | ||
| 983 | + GstStateChangeReturn res = gst_element_get_state(m_videoSink, &state, NULL, 1000000); | ||
| 984 | + if (res != GST_STATE_CHANGE_FAILURE && state != GST_STATE_NULL) { | ||
| 985 | + gst_video_overlay_expose(GST_VIDEO_OVERLAY(m_videoSink)); | ||
| 986 | + } | ||
| 987 | + } | ||
| 988 | +#else | ||
| 989 | if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { | ||
| 990 | //don't call gst_x_overlay_expose if the sink is in null state | ||
| 991 | GstState state = GST_STATE_NULL; | ||
| 992 | @@ -165,6 +216,7 @@ void QGstreamerVideoWindow::repaint() | ||
| 993 | gst_x_overlay_expose(GST_X_OVERLAY(m_videoSink)); | ||
| 994 | } | ||
| 995 | } | ||
| 996 | +#endif | ||
| 997 | } | ||
| 998 | |||
| 999 | QColor QGstreamerVideoWindow::colorKey() const | ||
| 1000 | @@ -296,11 +348,22 @@ QSize QGstreamerVideoWindow::nativeSize() const | ||
| 1001 | return m_nativeSize; | ||
| 1002 | } | ||
| 1003 | |||
| 1004 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1005 | +GstPadProbeReturn QGstreamerVideoWindow::padBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data) | ||
| 1006 | +#else | ||
| 1007 | void QGstreamerVideoWindow::padBufferProbe(GstPad *pad, GstBuffer * /* buffer */, gpointer user_data) | ||
| 1008 | +#endif | ||
| 1009 | { | ||
| 1010 | QGstreamerVideoWindow *control = reinterpret_cast<QGstreamerVideoWindow*>(user_data); | ||
| 1011 | QMetaObject::invokeMethod(control, "updateNativeVideoSize", Qt::QueuedConnection); | ||
| 1012 | + | ||
| 1013 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1014 | + Q_UNUSED(pad); | ||
| 1015 | + Q_UNUSED(info); | ||
| 1016 | + return GST_PAD_PROBE_REMOVE; | ||
| 1017 | +#else | ||
| 1018 | gst_pad_remove_buffer_probe(pad, control->m_bufferProbeId); | ||
| 1019 | +#endif | ||
| 1020 | } | ||
| 1021 | |||
| 1022 | void QGstreamerVideoWindow::updateNativeVideoSize() | ||
| 1023 | @@ -311,7 +374,11 @@ void QGstreamerVideoWindow::updateNativeVideoSize() | ||
| 1024 | if (m_videoSink) { | ||
| 1025 | //find video native size to update video widget size hint | ||
| 1026 | GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink"); | ||
| 1027 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1028 | + GstCaps *caps = gst_pad_get_current_caps(pad); | ||
| 1029 | +#else | ||
| 1030 | GstCaps *caps = gst_pad_get_negotiated_caps(pad); | ||
| 1031 | +#endif | ||
| 1032 | gst_object_unref(GST_OBJECT(pad)); | ||
| 1033 | |||
| 1034 | if (caps) { | ||
| 1035 | diff --git a/src/gsttools/qgstutils.cpp b/src/gsttools/qgstutils.cpp | ||
| 1036 | index 465f439..cb26137 100644 | ||
| 1037 | --- a/src/gsttools/qgstutils.cpp | ||
| 1038 | +++ b/src/gsttools/qgstutils.cpp | ||
| 1039 | @@ -90,8 +90,13 @@ static void addTagToMap(const GstTagList *list, | ||
| 1040 | break; | ||
| 1041 | default: | ||
| 1042 | // GST_TYPE_DATE is a function, not a constant, so pull it out of the switch | ||
| 1043 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1044 | + if (G_VALUE_TYPE(&val) == G_TYPE_DATE) { | ||
| 1045 | + const GDate *date = (const GDate *)g_value_get_boxed(&val); | ||
| 1046 | +#else | ||
| 1047 | if (G_VALUE_TYPE(&val) == GST_TYPE_DATE) { | ||
| 1048 | const GDate *date = gst_value_get_date(&val); | ||
| 1049 | +#endif | ||
| 1050 | if (g_date_valid(date)) { | ||
| 1051 | int year = g_date_get_year(date); | ||
| 1052 | int month = g_date_get_month(date); | ||
| 1053 | @@ -255,6 +260,24 @@ QAudioFormat QGstUtils::audioFormatForCaps(const GstCaps *caps) | ||
| 1054 | } | ||
| 1055 | |||
| 1056 | |||
| 1057 | + | ||
| 1058 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1059 | +/*! | ||
| 1060 | + Returns audio format for a buffer. | ||
| 1061 | + If the buffer doesn't have a valid audio format, an empty QAudioFormat is returned. | ||
| 1062 | +*/ | ||
| 1063 | + | ||
| 1064 | +QAudioFormat QGstUtils::audioFormatForSample(GstSample *sample) | ||
| 1065 | +{ | ||
| 1066 | + GstCaps* caps = gst_sample_get_caps(sample); | ||
| 1067 | + if (!caps) | ||
| 1068 | + return QAudioFormat(); | ||
| 1069 | + | ||
| 1070 | + QAudioFormat format = QGstUtils::audioFormatForCaps(caps); | ||
| 1071 | + gst_caps_unref(caps); | ||
| 1072 | + return format; | ||
| 1073 | +} | ||
| 1074 | +#else | ||
| 1075 | /*! | ||
| 1076 | Returns audio format for a buffer. | ||
| 1077 | If the buffer doesn't have a valid audio format, an empty QAudioFormat is returned. | ||
| 1078 | @@ -270,7 +293,7 @@ QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer) | ||
| 1079 | gst_caps_unref(caps); | ||
| 1080 | return format; | ||
| 1081 | } | ||
| 1082 | - | ||
| 1083 | +#endif | ||
| 1084 | |||
| 1085 | /*! | ||
| 1086 | Builds GstCaps for an audio format. | ||
| 1087 | @@ -588,7 +611,7 @@ QByteArray QGstUtils::cameraDriver(const QString &device, GstElementFactory *fac | ||
| 1088 | |||
| 1089 | void qt_gst_object_ref_sink(gpointer object) | ||
| 1090 | { | ||
| 1091 | -#if (GST_VERSION_MAJOR >= 0) && (GST_VERSION_MINOR >= 10) && (GST_VERSION_MICRO >= 24) | ||
| 1092 | +#if (GST_VERSION_MAJOR >= 0) && (GST_VERSION_MINOR >= 10) && (GST_VERSION_MICRO >= 24) || GST_CHECK_VERSION(1,0,0) | ||
| 1093 | gst_object_ref_sink(object); | ||
| 1094 | #else | ||
| 1095 | g_return_if_fail (GST_IS_OBJECT(object)); | ||
| 1096 | diff --git a/src/gsttools/qgstvideobuffer.cpp b/src/gsttools/qgstvideobuffer.cpp | ||
| 1097 | index 18702ec..93f22f5 100644 | ||
| 1098 | --- a/src/gsttools/qgstvideobuffer.cpp | ||
| 1099 | +++ b/src/gsttools/qgstvideobuffer.cpp | ||
| 1100 | @@ -70,21 +70,33 @@ QAbstractVideoBuffer::MapMode QGstVideoBuffer::mapMode() const | ||
| 1101 | uchar *QGstVideoBuffer::map(MapMode mode, int *numBytes, int *bytesPerLine) | ||
| 1102 | { | ||
| 1103 | if (mode != NotMapped && m_mode == NotMapped) { | ||
| 1104 | - if (numBytes) | ||
| 1105 | - *numBytes = m_buffer->size; | ||
| 1106 | + m_mode = mode; | ||
| 1107 | |||
| 1108 | if (bytesPerLine) | ||
| 1109 | *bytesPerLine = m_bytesPerLine; | ||
| 1110 | |||
| 1111 | - m_mode = mode; | ||
| 1112 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1113 | + gst_buffer_map(m_buffer, &m_mapInfo, GST_MAP_READ); | ||
| 1114 | + if (numBytes) | ||
| 1115 | + *numBytes = m_mapInfo.size; | ||
| 1116 | + | ||
| 1117 | + return m_mapInfo.data; | ||
| 1118 | +#else | ||
| 1119 | + if (numBytes) | ||
| 1120 | + *numBytes = m_buffer->size; | ||
| 1121 | |||
| 1122 | return m_buffer->data; | ||
| 1123 | +#endif | ||
| 1124 | } else { | ||
| 1125 | return 0; | ||
| 1126 | } | ||
| 1127 | } | ||
| 1128 | void QGstVideoBuffer::unmap() | ||
| 1129 | { | ||
| 1130 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1131 | + if (m_mode != NotMapped) | ||
| 1132 | + gst_buffer_unmap(m_buffer, &m_mapInfo); | ||
| 1133 | +#endif | ||
| 1134 | m_mode = NotMapped; | ||
| 1135 | } | ||
| 1136 | |||
| 1137 | diff --git a/src/gsttools/qvideosurfacegstsink.cpp b/src/gsttools/qvideosurfacegstsink.cpp | ||
| 1138 | index f3e2d88..94aaee7 100644 | ||
| 1139 | --- a/src/gsttools/qvideosurfacegstsink.cpp | ||
| 1140 | +++ b/src/gsttools/qvideosurfacegstsink.cpp | ||
| 1141 | @@ -43,7 +43,11 @@ | ||
| 1142 | |||
| 1143 | #include "qvideosurfacegstsink_p.h" | ||
| 1144 | |||
| 1145 | -//#define DEBUG_VIDEO_SURFACE_SINK | ||
| 1146 | +#if GST_VERSION_MAJOR >=1 | ||
| 1147 | +#include <gst/video/video.h> | ||
| 1148 | +#endif | ||
| 1149 | + | ||
| 1150 | +#define DEBUG_VIDEO_SURFACE_SINK | ||
| 1151 | |||
| 1152 | QT_BEGIN_NAMESPACE | ||
| 1153 | |||
| 1154 | @@ -62,10 +66,12 @@ QVideoSurfaceGstDelegate::QVideoSurfaceGstDelegate( | ||
| 1155 | if (m_surface) { | ||
| 1156 | foreach (QObject *instance, bufferPoolLoader()->instances(QGstBufferPoolPluginKey)) { | ||
| 1157 | QGstBufferPoolInterface* plugin = qobject_cast<QGstBufferPoolInterface*>(instance); | ||
| 1158 | + | ||
| 1159 | if (plugin) { | ||
| 1160 | m_pools.append(plugin); | ||
| 1161 | } | ||
| 1162 | } | ||
| 1163 | + | ||
| 1164 | updateSupportedFormats(); | ||
| 1165 | connect(m_surface, SIGNAL(supportedFormatsChanged()), this, SLOT(updateSupportedFormats())); | ||
| 1166 | } | ||
| 1167 | @@ -198,6 +204,8 @@ GstFlowReturn QVideoSurfaceGstDelegate::render(GstBuffer *buffer) | ||
| 1168 | if (QThread::currentThread() == thread()) { | ||
| 1169 | if (!m_surface.isNull()) | ||
| 1170 | m_surface->present(m_frame); | ||
| 1171 | + else | ||
| 1172 | + qWarning() << "m_surface.isNull()."; | ||
| 1173 | } else { | ||
| 1174 | QMetaObject::invokeMethod(this, "queuedRender", Qt::QueuedConnection); | ||
| 1175 | m_renderCondition.wait(&m_mutex, 300); | ||
| 1176 | @@ -283,6 +291,27 @@ void QVideoSurfaceGstDelegate::updateSupportedFormats() | ||
| 1177 | } | ||
| 1178 | } | ||
| 1179 | |||
| 1180 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1181 | +struct YuvFormat | ||
| 1182 | +{ | ||
| 1183 | + QVideoFrame::PixelFormat pixelFormat; | ||
| 1184 | + GstVideoFormat vfmt; | ||
| 1185 | + guint32 fourcc; | ||
| 1186 | + int bitsPerPixel; | ||
| 1187 | +}; | ||
| 1188 | + | ||
| 1189 | +static const YuvFormat qt_yuvColorLookup[] = | ||
| 1190 | +{ | ||
| 1191 | + { QVideoFrame::Format_YUV420P, GST_VIDEO_FORMAT_I420, GST_MAKE_FOURCC('I','4','2','0'), 8 }, | ||
| 1192 | + { QVideoFrame::Format_YV12, GST_VIDEO_FORMAT_YV12, GST_MAKE_FOURCC('Y','V','1','2'), 8 }, | ||
| 1193 | + { QVideoFrame::Format_UYVY, GST_VIDEO_FORMAT_UYVY, GST_MAKE_FOURCC('U','Y','V','Y'), 16 }, | ||
| 1194 | + { QVideoFrame::Format_YUYV, GST_VIDEO_FORMAT_YUY2, GST_MAKE_FOURCC('Y','U','Y','2'), 16 }, | ||
| 1195 | + { QVideoFrame::Format_NV12, GST_VIDEO_FORMAT_NV12, GST_MAKE_FOURCC('N','V','1','2'), 8 }, | ||
| 1196 | + { QVideoFrame::Format_NV21, GST_VIDEO_FORMAT_NV21, GST_MAKE_FOURCC('N','V','2','1'), 8 }, | ||
| 1197 | + { QVideoFrame::Format_AYUV444, GST_VIDEO_FORMAT_AYUV, GST_MAKE_FOURCC('A','Y','U','V'), 32 }, | ||
| 1198 | +}; | ||
| 1199 | + | ||
| 1200 | +#else | ||
| 1201 | struct YuvFormat | ||
| 1202 | { | ||
| 1203 | QVideoFrame::PixelFormat pixelFormat; | ||
| 1204 | @@ -300,6 +329,7 @@ static const YuvFormat qt_yuvColorLookup[] = | ||
| 1205 | { QVideoFrame::Format_NV21, GST_MAKE_FOURCC('N','V','2','1'), 8 }, | ||
| 1206 | { QVideoFrame::Format_AYUV444, GST_MAKE_FOURCC('A','Y','U','V'), 32 } | ||
| 1207 | }; | ||
| 1208 | +#endif | ||
| 1209 | |||
| 1210 | static int indexOfYuvColor(QVideoFrame::PixelFormat format) | ||
| 1211 | { | ||
| 1212 | @@ -312,12 +342,20 @@ static int indexOfYuvColor(QVideoFrame::PixelFormat format) | ||
| 1213 | return -1; | ||
| 1214 | } | ||
| 1215 | |||
| 1216 | +#if GST_VERSION_MAJOR >=1 | ||
| 1217 | +static int indexOfYuvColor(GstVideoFormat vfmt) | ||
| 1218 | +#else | ||
| 1219 | static int indexOfYuvColor(guint32 fourcc) | ||
| 1220 | +#endif | ||
| 1221 | { | ||
| 1222 | const int count = sizeof(qt_yuvColorLookup) / sizeof(YuvFormat); | ||
| 1223 | |||
| 1224 | for (int i = 0; i < count; ++i) | ||
| 1225 | +#if GST_VERSION_MAJOR >=1 | ||
| 1226 | + if (qt_yuvColorLookup[i].vfmt == vfmt) | ||
| 1227 | +#else | ||
| 1228 | if (qt_yuvColorLookup[i].fourcc == fourcc) | ||
| 1229 | +#endif | ||
| 1230 | return i; | ||
| 1231 | |||
| 1232 | return -1; | ||
| 1233 | @@ -388,13 +426,13 @@ GType QVideoSurfaceGstSink::get_type() | ||
| 1234 | if (type == 0) { | ||
| 1235 | static const GTypeInfo info = | ||
| 1236 | { | ||
| 1237 | - sizeof(QVideoSurfaceGstSinkClass), // class_size | ||
| 1238 | + sizeof(QVideoSurfaceGstSinkClass), // class_size | ||
| 1239 | base_init, // base_init | ||
| 1240 | NULL, // base_finalize | ||
| 1241 | class_init, // class_init | ||
| 1242 | NULL, // class_finalize | ||
| 1243 | NULL, // class_data | ||
| 1244 | - sizeof(QVideoSurfaceGstSink), // instance_size | ||
| 1245 | + sizeof(QVideoSurfaceGstSink), // instance_size | ||
| 1246 | 0, // n_preallocs | ||
| 1247 | instance_init, // instance_init | ||
| 1248 | 0 // value_table | ||
| 1249 | @@ -419,7 +457,11 @@ void QVideoSurfaceGstSink::class_init(gpointer g_class, gpointer class_data) | ||
| 1250 | GstBaseSinkClass *base_sink_class = reinterpret_cast<GstBaseSinkClass *>(g_class); | ||
| 1251 | base_sink_class->get_caps = QVideoSurfaceGstSink::get_caps; | ||
| 1252 | base_sink_class->set_caps = QVideoSurfaceGstSink::set_caps; | ||
| 1253 | +// FIXME: | ||
| 1254 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1255 | +#else | ||
| 1256 | base_sink_class->buffer_alloc = QVideoSurfaceGstSink::buffer_alloc; | ||
| 1257 | +#endif | ||
| 1258 | base_sink_class->start = QVideoSurfaceGstSink::start; | ||
| 1259 | base_sink_class->stop = QVideoSurfaceGstSink::stop; | ||
| 1260 | |||
| 1261 | @@ -434,6 +476,18 @@ void QVideoSurfaceGstSink::base_init(gpointer g_class) | ||
| 1262 | { | ||
| 1263 | static GstStaticPadTemplate sink_pad_template = GST_STATIC_PAD_TEMPLATE( | ||
| 1264 | "sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS( | ||
| 1265 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1266 | + "video/x-raw, " | ||
| 1267 | + "format = (string) RGBA," | ||
| 1268 | + "framerate = (fraction) [ 0, MAX ], " | ||
| 1269 | + "width = (int) [ 1, MAX ], " | ||
| 1270 | + "height = (int) [ 1, MAX ]; " | ||
| 1271 | + "video/x-raw, " | ||
| 1272 | + "format = (string) I420," | ||
| 1273 | + "framerate = (fraction) [ 0, MAX ], " | ||
| 1274 | + "width = (int) [ 1, MAX ], " | ||
| 1275 | + "height = (int) [ 1, MAX ]")); | ||
| 1276 | +#else | ||
| 1277 | "video/x-raw-rgb, " | ||
| 1278 | "framerate = (fraction) [ 0, MAX ], " | ||
| 1279 | "width = (int) [ 1, MAX ], " | ||
| 1280 | @@ -442,6 +496,7 @@ void QVideoSurfaceGstSink::base_init(gpointer g_class) | ||
| 1281 | "framerate = (fraction) [ 0, MAX ], " | ||
| 1282 | "width = (int) [ 1, MAX ], " | ||
| 1283 | "height = (int) [ 1, MAX ]")); | ||
| 1284 | +#endif | ||
| 1285 | |||
| 1286 | gst_element_class_add_pad_template( | ||
| 1287 | GST_ELEMENT_CLASS(g_class), gst_static_pad_template_get(&sink_pad_template)); | ||
| 1288 | @@ -490,7 +545,11 @@ GstStateChangeReturn QVideoSurfaceGstSink::change_state( | ||
| 1289 | element, transition); | ||
| 1290 | } | ||
| 1291 | |||
| 1292 | -GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base) | ||
| 1293 | +GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base | ||
| 1294 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1295 | + , GstCaps* /*filterCaps*/ | ||
| 1296 | +#endif | ||
| 1297 | +) | ||
| 1298 | { | ||
| 1299 | VO_SINK(base); | ||
| 1300 | |||
| 1301 | @@ -503,6 +562,7 @@ GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base) | ||
| 1302 | QList<QVideoFrame::PixelFormat> poolHandleFormats; | ||
| 1303 | sink->delegate->poolMutex()->lock(); | ||
| 1304 | QGstBufferPoolInterface *pool = sink->delegate->pool(); | ||
| 1305 | + | ||
| 1306 | if (pool) | ||
| 1307 | poolHandleFormats = sink->delegate->supportedPixelFormats(pool->handleType()); | ||
| 1308 | sink->delegate->poolMutex()->unlock(); | ||
| 1309 | @@ -518,11 +578,19 @@ GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base) | ||
| 1310 | |||
| 1311 | if (index != -1) { | ||
| 1312 | gst_caps_append_structure(caps, gst_structure_new( | ||
| 1313 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1314 | + "video/x-raw", | ||
| 1315 | +#else | ||
| 1316 | "video/x-raw-yuv", | ||
| 1317 | +#endif | ||
| 1318 | "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, INT_MAX, 1, | ||
| 1319 | "width" , GST_TYPE_INT_RANGE, 1, INT_MAX, | ||
| 1320 | "height" , GST_TYPE_INT_RANGE, 1, INT_MAX, | ||
| 1321 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1322 | + "format" , G_TYPE_STRING, gst_video_format_to_string(qt_yuvColorLookup[index].vfmt), | ||
| 1323 | +#else | ||
| 1324 | "format" , GST_TYPE_FOURCC, qt_yuvColorLookup[index].fourcc, | ||
| 1325 | +#endif | ||
| 1326 | NULL)); | ||
| 1327 | continue; | ||
| 1328 | } | ||
| 1329 | @@ -532,7 +600,18 @@ GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base) | ||
| 1330 | for (int i = 0; i < count; ++i) { | ||
| 1331 | if (qt_rgbColorLookup[i].pixelFormat == format) { | ||
| 1332 | GstStructure *structure = gst_structure_new( | ||
| 1333 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1334 | + "video/x-raw", | ||
| 1335 | + "format" , G_TYPE_STRING, gst_video_format_to_string(gst_video_format_from_masks(qt_rgbColorLookup[i].depth, | ||
| 1336 | + qt_rgbColorLookup[i].bitsPerPixel, | ||
| 1337 | + qt_rgbColorLookup[i].endianness, | ||
| 1338 | + qt_rgbColorLookup[i].red, | ||
| 1339 | + qt_rgbColorLookup[i].green, | ||
| 1340 | + qt_rgbColorLookup[i].blue, | ||
| 1341 | + qt_rgbColorLookup[i].alpha)), | ||
| 1342 | +#else | ||
| 1343 | "video/x-raw-rgb", | ||
| 1344 | +#endif | ||
| 1345 | "framerate" , GST_TYPE_FRACTION_RANGE, 0, 1, INT_MAX, 1, | ||
| 1346 | "width" , GST_TYPE_INT_RANGE, 1, INT_MAX, | ||
| 1347 | "height" , GST_TYPE_INT_RANGE, 1, INT_MAX, | ||
| 1348 | @@ -553,6 +632,7 @@ GstCaps *QVideoSurfaceGstSink::get_caps(GstBaseSink *base) | ||
| 1349 | } | ||
| 1350 | } | ||
| 1351 | |||
| 1352 | +// printf("get Caps %"GST_PTR_FORMAT"\n", caps); | ||
| 1353 | return caps; | ||
| 1354 | } | ||
| 1355 | |||
| 1356 | @@ -592,7 +672,7 @@ gboolean QVideoSurfaceGstSink::set_caps(GstBaseSink *base, GstCaps *caps) | ||
| 1357 | sink->lastRequestedCaps = 0; | ||
| 1358 | |||
| 1359 | #ifdef DEBUG_VIDEO_SURFACE_SINK | ||
| 1360 | - qDebug() << "Staring video surface, format:"; | ||
| 1361 | + qDebug() << "Starting video surface, format:"; | ||
| 1362 | qDebug() << format; | ||
| 1363 | qDebug() << "bytesPerLine:" << bytesPerLine; | ||
| 1364 | #endif | ||
| 1365 | @@ -617,11 +697,49 @@ QVideoSurfaceFormat QVideoSurfaceGstSink::formatForCaps(GstCaps *caps, int *byte | ||
| 1366 | gst_structure_get_int(structure, "width", &size.rwidth()); | ||
| 1367 | gst_structure_get_int(structure, "height", &size.rheight()); | ||
| 1368 | |||
| 1369 | +#if GST_CHECK_VERSION(1, 0, 0) | ||
| 1370 | + GstVideoInfo info; | ||
| 1371 | + gst_video_info_from_caps(&info, caps); | ||
| 1372 | + | ||
| 1373 | + if (info.finfo->format == GST_VIDEO_FORMAT_I420) { | ||
| 1374 | + int index = indexOfYuvColor(GST_VIDEO_FORMAT_I420); | ||
| 1375 | + | ||
| 1376 | + if (index != -1) { | ||
| 1377 | + pixelFormat = qt_yuvColorLookup[index].pixelFormat; | ||
| 1378 | + bitsPerPixel = qt_yuvColorLookup[index].bitsPerPixel; | ||
| 1379 | + } | ||
| 1380 | + } else if (info.finfo->format == GST_VIDEO_FORMAT_RGBx) { | ||
| 1381 | + int depth = 0; | ||
| 1382 | + int endianness = 0; | ||
| 1383 | + int red = 0; | ||
| 1384 | + int green = 0; | ||
| 1385 | + int blue = 0; | ||
| 1386 | + int alpha = 0; | ||
| 1387 | + | ||
| 1388 | + gst_structure_get_int(structure, "bpp", &bitsPerPixel); | ||
| 1389 | + gst_structure_get_int(structure, "depth", &depth); | ||
| 1390 | + gst_structure_get_int(structure, "endianness", &endianness); | ||
| 1391 | + gst_structure_get_int(structure, "red_mask", &red); | ||
| 1392 | + gst_structure_get_int(structure, "green_mask", &green); | ||
| 1393 | + gst_structure_get_int(structure, "blue_mask", &blue); | ||
| 1394 | + gst_structure_get_int(structure, "alpha_mask", &alpha); | ||
| 1395 | + | ||
| 1396 | + int index = indexOfRgbColor(bitsPerPixel, depth, endianness, red, green, blue, alpha); | ||
| 1397 | + printf("INDEX %x\n", index); | ||
| 1398 | + if (index != -1) | ||
| 1399 | + pixelFormat = qt_rgbColorLookup[index].pixelFormat; | ||
| 1400 | + } | ||
| 1401 | +#else | ||
| 1402 | + | ||
| 1403 | if (qstrcmp(gst_structure_get_name(structure), "video/x-raw-yuv") == 0) { | ||
| 1404 | guint32 fourcc = 0; | ||
| 1405 | +#if GST_CHECK_VERSION(1, 0, 0) | ||
| 1406 | + int index = indexOfYuvColor(gst_video_format_from_string(gst_structure_get_string(structure, "format"))); | ||
| 1407 | +#else | ||
| 1408 | gst_structure_get_fourcc(structure, "format", &fourcc); | ||
| 1409 | |||
| 1410 | int index = indexOfYuvColor(fourcc); | ||
| 1411 | +#endif | ||
| 1412 | if (index != -1) { | ||
| 1413 | pixelFormat = qt_yuvColorLookup[index].pixelFormat; | ||
| 1414 | bitsPerPixel = qt_yuvColorLookup[index].bitsPerPixel; | ||
| 1415 | @@ -647,6 +765,7 @@ QVideoSurfaceFormat QVideoSurfaceGstSink::formatForCaps(GstCaps *caps, int *byte | ||
| 1416 | if (index != -1) | ||
| 1417 | pixelFormat = qt_rgbColorLookup[index].pixelFormat; | ||
| 1418 | } | ||
| 1419 | +#endif | ||
| 1420 | |||
| 1421 | if (pixelFormat != QVideoFrame::Format_Invalid) { | ||
| 1422 | QVideoSurfaceFormat format(size, pixelFormat, handleType); | ||
| 1423 | @@ -722,7 +841,11 @@ GstFlowReturn QVideoSurfaceGstSink::buffer_alloc( | ||
| 1424 | |||
| 1425 | poolLock.unlock(); | ||
| 1426 | |||
| 1427 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1428 | + GstCaps *intersection = gst_caps_intersect(get_caps(GST_BASE_SINK(sink), NULL), caps); | ||
| 1429 | +#else | ||
| 1430 | GstCaps *intersection = gst_caps_intersect(get_caps(GST_BASE_SINK(sink)), caps); | ||
| 1431 | +#endif | ||
| 1432 | |||
| 1433 | if (gst_caps_is_empty (intersection)) { | ||
| 1434 | gst_caps_unref(intersection); | ||
| 1435 | @@ -763,7 +886,7 @@ GstFlowReturn QVideoSurfaceGstSink::buffer_alloc( | ||
| 1436 | QVideoSurfaceFormat surfaceFormat = sink->delegate->surfaceFormat(); | ||
| 1437 | |||
| 1438 | if (!pool->isFormatSupported(surfaceFormat)) { | ||
| 1439 | - //qDebug() << "sink doesn't support native pool format, skip custom buffers allocation"; | ||
| 1440 | + qDebug() << "sink doesn't support native pool format, skip custom buffers allocation"; | ||
| 1441 | return GST_FLOW_OK; | ||
| 1442 | } | ||
| 1443 | |||
| 1444 | @@ -787,7 +910,6 @@ GstFlowReturn QVideoSurfaceGstSink::buffer_alloc( | ||
| 1445 | gboolean QVideoSurfaceGstSink::start(GstBaseSink *base) | ||
| 1446 | { | ||
| 1447 | Q_UNUSED(base); | ||
| 1448 | - | ||
| 1449 | return TRUE; | ||
| 1450 | } | ||
| 1451 | |||
| 1452 | diff --git a/src/multimedia/gsttools_headers/qgstappsrc_p.h b/src/multimedia/gsttools_headers/qgstappsrc_p.h | ||
| 1453 | index 4af9252..0e0fc0a 100644 | ||
| 1454 | --- a/src/multimedia/gsttools_headers/qgstappsrc_p.h | ||
| 1455 | +++ b/src/multimedia/gsttools_headers/qgstappsrc_p.h | ||
| 1456 | @@ -39,7 +39,10 @@ | ||
| 1457 | |||
| 1458 | #include <gst/gst.h> | ||
| 1459 | #include <gst/app/gstappsrc.h> | ||
| 1460 | + | ||
| 1461 | +#if GST_VERSION_MAJOR < 1 | ||
| 1462 | #include <gst/app/gstappbuffer.h> | ||
| 1463 | +#endif | ||
| 1464 | |||
| 1465 | QT_BEGIN_NAMESPACE | ||
| 1466 | |||
| 1467 | diff --git a/src/multimedia/gsttools_headers/qgstreameraudioprobecontrol_p.h b/src/multimedia/gsttools_headers/qgstreameraudioprobecontrol_p.h | ||
| 1468 | index 34669b8..0f3b165 100644 | ||
| 1469 | --- a/src/multimedia/gsttools_headers/qgstreameraudioprobecontrol_p.h | ||
| 1470 | +++ b/src/multimedia/gsttools_headers/qgstreameraudioprobecontrol_p.h | ||
| 1471 | @@ -47,8 +47,11 @@ class QGstreamerAudioProbeControl : public QMediaAudioProbeControl | ||
| 1472 | public: | ||
| 1473 | explicit QGstreamerAudioProbeControl(QObject *parent); | ||
| 1474 | virtual ~QGstreamerAudioProbeControl(); | ||
| 1475 | - | ||
| 1476 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1477 | + void bufferProbed(GstBuffer* buffer, GstCaps* caps); | ||
| 1478 | +#else | ||
| 1479 | void bufferProbed(GstBuffer* buffer); | ||
| 1480 | +#endif | ||
| 1481 | |||
| 1482 | private slots: | ||
| 1483 | void bufferProbed(); | ||
| 1484 | diff --git a/src/multimedia/gsttools_headers/qgstreamervideoprobecontrol_p.h b/src/multimedia/gsttools_headers/qgstreamervideoprobecontrol_p.h | ||
| 1485 | index 49064f9..fce6309 100644 | ||
| 1486 | --- a/src/multimedia/gsttools_headers/qgstreamervideoprobecontrol_p.h | ||
| 1487 | +++ b/src/multimedia/gsttools_headers/qgstreamervideoprobecontrol_p.h | ||
| 1488 | @@ -48,7 +48,11 @@ public: | ||
| 1489 | explicit QGstreamerVideoProbeControl(QObject *parent); | ||
| 1490 | virtual ~QGstreamerVideoProbeControl(); | ||
| 1491 | |||
| 1492 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1493 | + void bufferProbed(GstBuffer* buffer, GstCaps*); | ||
| 1494 | +#else | ||
| 1495 | void bufferProbed(GstBuffer* buffer); | ||
| 1496 | +#endif | ||
| 1497 | void startFlushing(); | ||
| 1498 | void stopFlushing(); | ||
| 1499 | |||
| 1500 | diff --git a/src/multimedia/gsttools_headers/qgstreamervideowindow_p.h b/src/multimedia/gsttools_headers/qgstreamervideowindow_p.h | ||
| 1501 | index 81e5764..c9fdb5c 100644 | ||
| 1502 | --- a/src/multimedia/gsttools_headers/qgstreamervideowindow_p.h | ||
| 1503 | +++ b/src/multimedia/gsttools_headers/qgstreamervideowindow_p.h | ||
| 1504 | @@ -104,7 +104,11 @@ private slots: | ||
| 1505 | void updateNativeVideoSize(); | ||
| 1506 | |||
| 1507 | private: | ||
| 1508 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1509 | + static GstPadProbeReturn padBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data); | ||
| 1510 | +#else | ||
| 1511 | static void padBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data); | ||
| 1512 | +#endif | ||
| 1513 | |||
| 1514 | GstElement *m_videoSink; | ||
| 1515 | WId m_windowId; | ||
| 1516 | diff --git a/src/multimedia/gsttools_headers/qgstutils_p.h b/src/multimedia/gsttools_headers/qgstutils_p.h | ||
| 1517 | index 65ff759..6015980 100644 | ||
| 1518 | --- a/src/multimedia/gsttools_headers/qgstutils_p.h | ||
| 1519 | +++ b/src/multimedia/gsttools_headers/qgstutils_p.h | ||
| 1520 | @@ -73,7 +73,11 @@ namespace QGstUtils { | ||
| 1521 | QSize capsResolution(const GstCaps *caps); | ||
| 1522 | QSize capsCorrectedResolution(const GstCaps *caps); | ||
| 1523 | QAudioFormat audioFormatForCaps(const GstCaps *caps); | ||
| 1524 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1525 | + QAudioFormat audioFormatForSample(GstSample *sample); | ||
| 1526 | +#else | ||
| 1527 | QAudioFormat audioFormatForBuffer(GstBuffer *buffer); | ||
| 1528 | +#endif | ||
| 1529 | GstCaps *capsForAudioFormat(QAudioFormat format); | ||
| 1530 | void initializeGst(); | ||
| 1531 | QMultimedia::SupportEstimate hasSupport(const QString &mimeType, | ||
| 1532 | diff --git a/src/multimedia/gsttools_headers/qgstvideobuffer_p.h b/src/multimedia/gsttools_headers/qgstvideobuffer_p.h | ||
| 1533 | index 1e0fda8..be48820 100644 | ||
| 1534 | --- a/src/multimedia/gsttools_headers/qgstvideobuffer_p.h | ||
| 1535 | +++ b/src/multimedia/gsttools_headers/qgstvideobuffer_p.h | ||
| 1536 | @@ -71,6 +71,9 @@ private: | ||
| 1537 | int m_bytesPerLine; | ||
| 1538 | MapMode m_mode; | ||
| 1539 | QVariant m_handle; | ||
| 1540 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1541 | + GstMapInfo m_mapInfo; | ||
| 1542 | +#endif | ||
| 1543 | }; | ||
| 1544 | |||
| 1545 | QT_END_NAMESPACE | ||
| 1546 | diff --git a/src/multimedia/gsttools_headers/qvideosurfacegstsink_p.h b/src/multimedia/gsttools_headers/qvideosurfacegstsink_p.h | ||
| 1547 | index 11b305d..01935f7 100644 | ||
| 1548 | --- a/src/multimedia/gsttools_headers/qvideosurfacegstsink_p.h | ||
| 1549 | +++ b/src/multimedia/gsttools_headers/qvideosurfacegstsink_p.h | ||
| 1550 | @@ -131,7 +131,11 @@ private: | ||
| 1551 | |||
| 1552 | static GstStateChangeReturn change_state(GstElement *element, GstStateChange transition); | ||
| 1553 | |||
| 1554 | - static GstCaps *get_caps(GstBaseSink *sink); | ||
| 1555 | + static GstCaps *get_caps(GstBaseSink *sink | ||
| 1556 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1557 | + , GstCaps* /*filterCaps*/ | ||
| 1558 | +#endif | ||
| 1559 | + ); | ||
| 1560 | static gboolean set_caps(GstBaseSink *sink, GstCaps *caps); | ||
| 1561 | |||
| 1562 | static GstFlowReturn buffer_alloc( | ||
| 1563 | diff --git a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp | ||
| 1564 | index 3098aab..9c54663 100644 | ||
| 1565 | --- a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp | ||
| 1566 | +++ b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp | ||
| 1567 | @@ -74,29 +74,42 @@ void QGstreamerAudioDecoderServicePlugin::updateSupportedMimeTypes() const | ||
| 1568 | gst_init(NULL, NULL); | ||
| 1569 | |||
| 1570 | GList *plugins, *orig_plugins; | ||
| 1571 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1572 | + orig_plugins = plugins = gst_registry_get_plugin_list (gst_registry_get()); | ||
| 1573 | +#else | ||
| 1574 | orig_plugins = plugins = gst_default_registry_get_plugin_list (); | ||
| 1575 | - | ||
| 1576 | +#endif | ||
| 1577 | while (plugins) { | ||
| 1578 | GList *features, *orig_features; | ||
| 1579 | |||
| 1580 | GstPlugin *plugin = (GstPlugin *) (plugins->data); | ||
| 1581 | plugins = g_list_next (plugins); | ||
| 1582 | |||
| 1583 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1584 | + if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) | ||
| 1585 | + continue; | ||
| 1586 | +#else | ||
| 1587 | if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED | ||
| 1588 | continue; | ||
| 1589 | - | ||
| 1590 | - orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (), | ||
| 1591 | - plugin->desc.name); | ||
| 1592 | +#endif | ||
| 1593 | + orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get (), | ||
| 1594 | + gst_plugin_get_name(plugin)); | ||
| 1595 | while (features) { | ||
| 1596 | if (!G_UNLIKELY(features->data == NULL)) { | ||
| 1597 | GstPluginFeature *feature = GST_PLUGIN_FEATURE(features->data); | ||
| 1598 | if (GST_IS_ELEMENT_FACTORY (feature)) { | ||
| 1599 | GstElementFactory *factory = GST_ELEMENT_FACTORY(gst_plugin_feature_load(feature)); | ||
| 1600 | if (factory | ||
| 1601 | - && factory->numpadtemplates > 0 | ||
| 1602 | + && gst_element_factory_get_num_pad_templates(factory) > 0 | ||
| 1603 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1604 | + && (qstrcmp(gst_element_factory_get_metadata(factory, GST_ELEMENT_METADATA_KLASS), "Codec/Decoder/Audio") == 0 | ||
| 1605 | + || qstrcmp(gst_element_factory_get_metadata(factory, GST_ELEMENT_METADATA_KLASS), "Codec/Demux") == 0 ) | ||
| 1606 | +#else | ||
| 1607 | && (qstrcmp(factory->details.klass, "Codec/Decoder/Audio") == 0 | ||
| 1608 | - || qstrcmp(factory->details.klass, "Codec/Demux") == 0 )) { | ||
| 1609 | - const GList *pads = factory->staticpadtemplates; | ||
| 1610 | + || qstrcmp(factory->details.klass, "Codec/Demux") == 0 ) | ||
| 1611 | +#endif | ||
| 1612 | + ) { | ||
| 1613 | + const GList *pads = gst_element_factory_get_static_pad_templates(factory); | ||
| 1614 | while (pads) { | ||
| 1615 | GstStaticPadTemplate *padtemplate = (GstStaticPadTemplate*)(pads->data); | ||
| 1616 | pads = g_list_next (pads); | ||
| 1617 | diff --git a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecodersession.cpp b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecodersession.cpp | ||
| 1618 | index f944a60..72d1cf1 100644 | ||
| 1619 | --- a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecodersession.cpp | ||
| 1620 | +++ b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecodersession.cpp | ||
| 1621 | @@ -446,21 +446,40 @@ QAudioBuffer QGstreamerAudioDecoderSession::read() | ||
| 1622 | if (buffersAvailable == 1) | ||
| 1623 | emit bufferAvailableChanged(false); | ||
| 1624 | |||
| 1625 | + const char* bufferData = 0; | ||
| 1626 | + int bufferSize = 0; | ||
| 1627 | + | ||
| 1628 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1629 | + GstSample *sample = gst_app_sink_pull_sample(m_appSink); | ||
| 1630 | + GstBuffer *buffer = gst_sample_get_buffer(sample); | ||
| 1631 | + GstMapInfo mapInfo; | ||
| 1632 | + gst_buffer_map(buffer, &mapInfo, GST_MAP_READ); | ||
| 1633 | + bufferData = (const char*)mapInfo.data; | ||
| 1634 | + bufferSize = mapInfo.size; | ||
| 1635 | + QAudioFormat format = QGstUtils::audioFormatForSample(sample); | ||
| 1636 | +#else | ||
| 1637 | GstBuffer *buffer = gst_app_sink_pull_buffer(m_appSink); | ||
| 1638 | - | ||
| 1639 | + bufferData = (const char*)buffer->data; | ||
| 1640 | + bufferSize = buffer->size; | ||
| 1641 | QAudioFormat format = QGstUtils::audioFormatForBuffer(buffer); | ||
| 1642 | +#endif | ||
| 1643 | + | ||
| 1644 | if (format.isValid()) { | ||
| 1645 | // XXX At the moment we have to copy data from GstBuffer into QAudioBuffer. | ||
| 1646 | // We could improve performance by implementing QAbstractAudioBuffer for GstBuffer. | ||
| 1647 | qint64 position = getPositionFromBuffer(buffer); | ||
| 1648 | - audioBuffer = QAudioBuffer(QByteArray((const char*)buffer->data, buffer->size), format, position); | ||
| 1649 | + audioBuffer = QAudioBuffer(QByteArray((const char*)bufferData, bufferSize), format, position); | ||
| 1650 | position /= 1000; // convert to milliseconds | ||
| 1651 | if (position != m_position) { | ||
| 1652 | m_position = position; | ||
| 1653 | emit positionChanged(m_position); | ||
| 1654 | } | ||
| 1655 | } | ||
| 1656 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1657 | + gst_sample_unref(sample); | ||
| 1658 | +#else | ||
| 1659 | gst_buffer_unref(buffer); | ||
| 1660 | +#endif | ||
| 1661 | } | ||
| 1662 | |||
| 1663 | return audioBuffer; | ||
| 1664 | @@ -531,7 +550,12 @@ void QGstreamerAudioDecoderSession::addAppSink() | ||
| 1665 | |||
| 1666 | GstAppSinkCallbacks callbacks; | ||
| 1667 | memset(&callbacks, 0, sizeof(callbacks)); | ||
| 1668 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1669 | + // ### Should perhaps also rename new_buffer to new_sample. | ||
| 1670 | + callbacks.new_sample = &new_buffer; | ||
| 1671 | +#else | ||
| 1672 | callbacks.new_buffer = &new_buffer; | ||
| 1673 | +#endif | ||
| 1674 | gst_app_sink_set_callbacks(m_appSink, &callbacks, this, NULL); | ||
| 1675 | gst_app_sink_set_max_buffers(m_appSink, MAX_BUFFERS_IN_QUEUE); | ||
| 1676 | gst_base_sink_set_sync(GST_BASE_SINK(m_appSink), FALSE); | ||
| 1677 | @@ -557,8 +581,13 @@ void QGstreamerAudioDecoderSession::updateDuration() | ||
| 1678 | gint64 gstDuration = 0; | ||
| 1679 | int duration = -1; | ||
| 1680 | |||
| 1681 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1682 | + if (m_playbin && gst_element_query_duration(m_playbin, format, &gstDuration)) | ||
| 1683 | + duration = gstDuration / 1000000; | ||
| 1684 | +#else | ||
| 1685 | if (m_playbin && gst_element_query_duration(m_playbin, &format, &gstDuration)) | ||
| 1686 | duration = gstDuration / 1000000; | ||
| 1687 | +#endif | ||
| 1688 | |||
| 1689 | if (m_duration != duration) { | ||
| 1690 | m_duration = duration; | ||
| 1691 | diff --git a/src/plugins/gstreamer/camerabin/camerabinsession.cpp b/src/plugins/gstreamer/camerabin/camerabinsession.cpp | ||
| 1692 | index 1ed663b..e0c6b50 100644 | ||
| 1693 | --- a/src/plugins/gstreamer/camerabin/camerabinsession.cpp | ||
| 1694 | +++ b/src/plugins/gstreamer/camerabin/camerabinsession.cpp | ||
| 1695 | @@ -796,7 +796,11 @@ qint64 CameraBinSession::duration() const | ||
| 1696 | if (fileSink) { | ||
| 1697 | GstFormat format = GST_FORMAT_TIME; | ||
| 1698 | gint64 duration = 0; | ||
| 1699 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1700 | + bool ret = gst_element_query_duration(fileSink, format, &duration); | ||
| 1701 | +#else | ||
| 1702 | bool ret = gst_element_query_position(fileSink, &format, &duration); | ||
| 1703 | +#endif | ||
| 1704 | gst_object_unref(GST_OBJECT(fileSink)); | ||
| 1705 | if (ret) | ||
| 1706 | return duration / 1000000; | ||
| 1707 | @@ -833,8 +837,13 @@ void CameraBinSession::setMetaData(const QMap<QByteArray, QVariant> &data) | ||
| 1708 | |||
| 1709 | if (m_camerabin) { | ||
| 1710 | GstIterator *elements = gst_bin_iterate_all_by_interface(GST_BIN(m_camerabin), GST_TYPE_TAG_SETTER); | ||
| 1711 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1712 | + GValue *element = 0; | ||
| 1713 | + while (gst_iterator_next(elements, element) == GST_ITERATOR_OK) { | ||
| 1714 | +#else | ||
| 1715 | GstElement *element = 0; | ||
| 1716 | while (gst_iterator_next(elements, (void**)&element) == GST_ITERATOR_OK) { | ||
| 1717 | +#endif | ||
| 1718 | gst_tag_setter_reset_tags(GST_TAG_SETTER(element)); | ||
| 1719 | |||
| 1720 | QMapIterator<QByteArray, QVariant> it(data); | ||
| 1721 | @@ -895,7 +904,11 @@ bool CameraBinSession::processSyncMessage(const QGstreamerMessage &message) | ||
| 1722 | |||
| 1723 | if (gm && GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) { | ||
| 1724 | if (m_captureMode == QCamera::CaptureStillImage && | ||
| 1725 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1726 | + gst_message_has_name (gm, "preview-image")) { | ||
| 1727 | +#else | ||
| 1728 | gst_structure_has_name(gm->structure, "preview-image")) { | ||
| 1729 | +#endif | ||
| 1730 | st = gst_message_get_structure(gm); | ||
| 1731 | |||
| 1732 | if (gst_structure_has_field_typed(st, "buffer", GST_TYPE_BUFFER)) { | ||
| 1733 | @@ -905,7 +918,11 @@ bool CameraBinSession::processSyncMessage(const QGstreamerMessage &message) | ||
| 1734 | |||
| 1735 | QImage img; | ||
| 1736 | |||
| 1737 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1738 | GstCaps *caps = gst_buffer_get_caps(buffer); | ||
| 1739 | +#else | ||
| 1740 | + GstCaps *caps = gst_buffer_get_caps(buffer); | ||
| 1741 | +#endif | ||
| 1742 | if (caps) { | ||
| 1743 | GstStructure *structure = gst_caps_get_structure(caps, 0); | ||
| 1744 | gint width = 0; | ||
| 1745 | @@ -1178,7 +1195,11 @@ QList< QPair<int,int> > CameraBinSession::supportedFrameRates(const QSize &frame | ||
| 1746 | gst_structure_remove_all_fields(structure); | ||
| 1747 | gst_structure_set_value(structure, "framerate", &rate); | ||
| 1748 | } | ||
| 1749 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1750 | + caps = gst_caps_simplify(caps); | ||
| 1751 | +#else | ||
| 1752 | gst_caps_do_simplify(caps); | ||
| 1753 | +#endif | ||
| 1754 | |||
| 1755 | |||
| 1756 | for (uint i=0; i<gst_caps_get_size(caps); i++) { | ||
| 1757 | @@ -1298,7 +1319,11 @@ QList<QSize> CameraBinSession::supportedResolutions(QPair<int,int> rate, | ||
| 1758 | gst_structure_set_value(structure, "width", &w); | ||
| 1759 | gst_structure_set_value(structure, "height", &h); | ||
| 1760 | } | ||
| 1761 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1762 | + caps = gst_caps_simplify(caps); | ||
| 1763 | +#else | ||
| 1764 | gst_caps_do_simplify(caps); | ||
| 1765 | +#endif | ||
| 1766 | |||
| 1767 | for (uint i=0; i<gst_caps_get_size(caps); i++) { | ||
| 1768 | GstStructure *structure = gst_caps_get_structure(caps, i); | ||
| 1769 | diff --git a/src/plugins/gstreamer/common.pri b/src/plugins/gstreamer/common.pri | ||
| 1770 | index 8b421b8..2e7f746 100644 | ||
| 1771 | --- a/src/plugins/gstreamer/common.pri | ||
| 1772 | +++ b/src/plugins/gstreamer/common.pri | ||
| 1773 | @@ -12,14 +12,17 @@ LIBS += -lqgsttools_p | ||
| 1774 | CONFIG += link_pkgconfig | ||
| 1775 | |||
| 1776 | PKGCONFIG += \ | ||
| 1777 | - gstreamer-0.10 \ | ||
| 1778 | - gstreamer-base-0.10 \ | ||
| 1779 | - gstreamer-interfaces-0.10 \ | ||
| 1780 | - gstreamer-audio-0.10 \ | ||
| 1781 | - gstreamer-video-0.10 \ | ||
| 1782 | - gstreamer-pbutils-0.10 | ||
| 1783 | + gstreamer-$$GST_VERSION \ | ||
| 1784 | + gstreamer-base-$$GST_VERSION \ | ||
| 1785 | + gstreamer-audio-$$GST_VERSION \ | ||
| 1786 | + gstreamer-video-$$GST_VERSION \ | ||
| 1787 | + gstreamer-pbutils-$$GST_VERSION | ||
| 1788 | |||
| 1789 | -maemo*:PKGCONFIG +=gstreamer-plugins-bad-0.10 | ||
| 1790 | +maemo*:PKGCONFIG +=gstreamer-plugins-bad-$$GST_VERSION | ||
| 1791 | + | ||
| 1792 | +mir: { | ||
| 1793 | + DEFINES += HAVE_MIR | ||
| 1794 | +} | ||
| 1795 | |||
| 1796 | config_resourcepolicy { | ||
| 1797 | DEFINES += HAVE_RESOURCE_POLICY | ||
| 1798 | @@ -27,8 +30,8 @@ config_resourcepolicy { | ||
| 1799 | } | ||
| 1800 | |||
| 1801 | config_gstreamer_appsrc { | ||
| 1802 | - PKGCONFIG += gstreamer-app-0.10 | ||
| 1803 | + PKGCONFIG += gstreamer-app-$$GST_VERSION | ||
| 1804 | DEFINES += HAVE_GST_APPSRC | ||
| 1805 | - LIBS += -lgstapp-0.10 | ||
| 1806 | + LIBS += -lgstapp-$$GST_VERSION | ||
| 1807 | } | ||
| 1808 | |||
| 1809 | diff --git a/src/plugins/gstreamer/gstreamer.pro b/src/plugins/gstreamer/gstreamer.pro | ||
| 1810 | index 7649010..fce55ac 100644 | ||
| 1811 | --- a/src/plugins/gstreamer/gstreamer.pro | ||
| 1812 | +++ b/src/plugins/gstreamer/gstreamer.pro | ||
| 1813 | @@ -2,11 +2,10 @@ TEMPLATE = subdirs | ||
| 1814 | |||
| 1815 | SUBDIRS += \ | ||
| 1816 | audiodecoder \ | ||
| 1817 | - mediacapture \ | ||
| 1818 | mediaplayer | ||
| 1819 | |||
| 1820 | config_gstreamer_encodingprofiles { | ||
| 1821 | - SUBDIRS += camerabin | ||
| 1822 | +# SUBDIRS += camerabin | ||
| 1823 | } | ||
| 1824 | |||
| 1825 | OTHER_FILES += \ | ||
| 1826 | diff --git a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | ||
| 1827 | index a2bd80d..d12e9a5 100644 | ||
| 1828 | --- a/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | ||
| 1829 | +++ b/src/plugins/gstreamer/mediacapture/qgstreamercapturesession.cpp | ||
| 1830 | @@ -498,6 +498,11 @@ GstElement *QGstreamerCaptureSession::buildImageCapture() | ||
| 1831 | gst_pad_add_buffer_probe(pad, G_CALLBACK(passImageFilter), this); | ||
| 1832 | gst_object_unref(GST_OBJECT(pad)); | ||
| 1833 | |||
| 1834 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1835 | + gst_pad_add_probe(pad, GST_PAD_PROBE_TYPE_BUFFER, passImageFilter, this); | ||
| 1836 | +#else | ||
| 1837 | + gst_pad_add_buffer_probe(pad, G_CALLBACK(passImageFilter), this); | ||
| 1838 | +#endif | ||
| 1839 | g_object_set(G_OBJECT(sink), "signal-handoffs", TRUE, NULL); | ||
| 1840 | g_signal_connect(G_OBJECT(sink), "handoff", | ||
| 1841 | G_CALLBACK(saveImageFilter), this); | ||
| 1842 | diff --git a/src/plugins/gstreamer/mediaplayer/mediaplayer.pro b/src/plugins/gstreamer/mediaplayer/mediaplayer.pro | ||
| 1843 | index 2ca9377..b986fc7 100644 | ||
| 1844 | --- a/src/plugins/gstreamer/mediaplayer/mediaplayer.pro | ||
| 1845 | +++ b/src/plugins/gstreamer/mediaplayer/mediaplayer.pro | ||
| 1846 | @@ -28,4 +28,3 @@ SOURCES += \ | ||
| 1847 | |||
| 1848 | OTHER_FILES += \ | ||
| 1849 | mediaplayer.json | ||
| 1850 | - | ||
| 1851 | diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp | ||
| 1852 | index fed756a..8239710 100644 | ||
| 1853 | --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp | ||
| 1854 | +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayercontrol.cpp | ||
| 1855 | @@ -537,6 +537,8 @@ void QGstreamerPlayerControl::processEOS() | ||
| 1856 | m_session->showPrerollFrames(false); // stop showing prerolled frames in stop state | ||
| 1857 | } | ||
| 1858 | |||
| 1859 | + qWarning() << "Processing EOS!"; | ||
| 1860 | + | ||
| 1861 | popAndNotifyState(); | ||
| 1862 | } | ||
| 1863 | |||
| 1864 | diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp | ||
| 1865 | index ddc828e..00bee36 100644 | ||
| 1866 | --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp | ||
| 1867 | +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerservice.cpp | ||
| 1868 | @@ -51,7 +51,11 @@ | ||
| 1869 | #include <private/qgstreamervideorenderer_p.h> | ||
| 1870 | |||
| 1871 | #if defined(Q_WS_MAEMO_6) && defined(__arm__) | ||
| 1872 | -#include "qgstreamergltexturerenderer.h" | ||
| 1873 | +#include "private/qgstreamergltexturerenderer.h" | ||
| 1874 | +#endif | ||
| 1875 | + | ||
| 1876 | +#if defined(HAVE_MIR) && defined (__arm__) | ||
| 1877 | +#include "private/qgstreamermirtexturerenderer_p.h" | ||
| 1878 | #endif | ||
| 1879 | |||
| 1880 | #include "qgstreamerstreamscontrol.h" | ||
| 1881 | @@ -82,6 +86,9 @@ QGstreamerPlayerService::QGstreamerPlayerService(QObject *parent): | ||
| 1882 | |||
| 1883 | #if defined(Q_WS_MAEMO_6) && defined(__arm__) | ||
| 1884 | m_videoRenderer = new QGstreamerGLTextureRenderer(this); | ||
| 1885 | +#elif defined(HAVE_MIR) && defined (__arm__) | ||
| 1886 | + //m_videoRenderer = new QGstreamerVideoRenderer(this); | ||
| 1887 | + m_videoRenderer = new QGstreamerMirTextureRenderer(this, m_session); | ||
| 1888 | #else | ||
| 1889 | m_videoRenderer = new QGstreamerVideoRenderer(this); | ||
| 1890 | #endif | ||
| 1891 | diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp | ||
| 1892 | index 7d20b6d..bf2f9f8 100644 | ||
| 1893 | --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp | ||
| 1894 | +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp | ||
| 1895 | @@ -87,7 +87,11 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const | ||
| 1896 | gst_init(NULL, NULL); | ||
| 1897 | |||
| 1898 | GList *plugins, *orig_plugins; | ||
| 1899 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1900 | + orig_plugins = plugins = gst_registry_get_plugin_list (gst_registry_get()); | ||
| 1901 | +#else | ||
| 1902 | orig_plugins = plugins = gst_default_registry_get_plugin_list (); | ||
| 1903 | +#endif | ||
| 1904 | |||
| 1905 | while (plugins) { | ||
| 1906 | GList *features, *orig_features; | ||
| 1907 | @@ -95,22 +99,33 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const | ||
| 1908 | GstPlugin *plugin = (GstPlugin *) (plugins->data); | ||
| 1909 | plugins = g_list_next (plugins); | ||
| 1910 | |||
| 1911 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1912 | + if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) | ||
| 1913 | + continue; | ||
| 1914 | +#else | ||
| 1915 | if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED | ||
| 1916 | continue; | ||
| 1917 | +#endif | ||
| 1918 | |||
| 1919 | - orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (), | ||
| 1920 | - plugin->desc.name); | ||
| 1921 | + orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get(), | ||
| 1922 | + gst_plugin_get_name(plugin)); | ||
| 1923 | while (features) { | ||
| 1924 | if (!G_UNLIKELY(features->data == NULL)) { | ||
| 1925 | GstPluginFeature *feature = GST_PLUGIN_FEATURE(features->data); | ||
| 1926 | if (GST_IS_ELEMENT_FACTORY (feature)) { | ||
| 1927 | GstElementFactory *factory = GST_ELEMENT_FACTORY(gst_plugin_feature_load(feature)); | ||
| 1928 | if (factory | ||
| 1929 | - && factory->numpadtemplates > 0 | ||
| 1930 | - && (qstrcmp(factory->details.klass, "Codec/Decoder/Audio") == 0 | ||
| 1931 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1932 | + && (qstrcmp(gst_element_factory_get_metadata(factory, GST_ELEMENT_METADATA_KLASS), "Codec/Decoder/Audio") == 0 | ||
| 1933 | + || qstrcmp(gst_element_factory_get_metadata(factory, GST_ELEMENT_METADATA_KLASS),"Codec/Decoder/Video") == 0 | ||
| 1934 | + || qstrcmp(gst_element_factory_get_metadata(factory, GST_ELEMENT_METADATA_KLASS), "Codec/Demux") == 0 ) | ||
| 1935 | +#else | ||
| 1936 | + && (qstrcmp(factory->details.klass, "Codec/Decoder/Audio") == 0 | ||
| 1937 | || qstrcmp(factory->details.klass, "Codec/Decoder/Video") == 0 | ||
| 1938 | - || qstrcmp(factory->details.klass, "Codec/Demux") == 0 )) { | ||
| 1939 | - const GList *pads = factory->staticpadtemplates; | ||
| 1940 | + || qstrcmp(factory->details.klass, "Codec/Demux") == 0 ) | ||
| 1941 | +#endif | ||
| 1942 | + ) { | ||
| 1943 | + const GList *pads = gst_element_factory_get_static_pad_templates(factory); | ||
| 1944 | while (pads) { | ||
| 1945 | GstStaticPadTemplate *padtemplate = (GstStaticPadTemplate*)(pads->data); | ||
| 1946 | pads = g_list_next (pads); | ||
| 1947 | diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp | ||
| 1948 | index 15924a6..8013d0d 100644 | ||
| 1949 | --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp | ||
| 1950 | +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp | ||
| 1951 | @@ -85,6 +85,16 @@ typedef enum { | ||
| 1952 | GST_PLAY_FLAG_BUFFERING = 0x000000100 | ||
| 1953 | } GstPlayFlags; | ||
| 1954 | |||
| 1955 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1956 | +#define DEFAULT_RAW_CAPS \ | ||
| 1957 | + "video/x-surface; " \ | ||
| 1958 | + "text/plain; " \ | ||
| 1959 | + "text/x-pango-markup; " \ | ||
| 1960 | + "video/x-dvd-subpicture; " \ | ||
| 1961 | + "subpicture/x-pgs" \ | ||
| 1962 | + "video/x-raw" \ | ||
| 1963 | + "audio/x-raw" | ||
| 1964 | +#else | ||
| 1965 | #define DEFAULT_RAW_CAPS \ | ||
| 1966 | "video/x-raw-yuv; " \ | ||
| 1967 | "video/x-raw-rgb; " \ | ||
| 1968 | @@ -97,6 +107,8 @@ typedef enum { | ||
| 1969 | "text/x-pango-markup; " \ | ||
| 1970 | "video/x-dvd-subpicture; " \ | ||
| 1971 | "subpicture/x-pgs" | ||
| 1972 | +#endif | ||
| 1973 | + | ||
| 1974 | static GstStaticCaps static_RawCaps = GST_STATIC_CAPS(DEFAULT_RAW_CAPS); | ||
| 1975 | |||
| 1976 | QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) | ||
| 1977 | @@ -137,8 +149,11 @@ QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) | ||
| 1978 | gboolean result = gst_type_find_register(0, "playlist", GST_RANK_MARGINAL, playlistTypeFindFunction, 0, 0, this, 0); | ||
| 1979 | Q_ASSERT(result == TRUE); | ||
| 1980 | Q_UNUSED(result); | ||
| 1981 | - | ||
| 1982 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1983 | + m_playbin = gst_element_factory_make("playbin", NULL); | ||
| 1984 | +#else | ||
| 1985 | m_playbin = gst_element_factory_make("playbin2", NULL); | ||
| 1986 | +#endif | ||
| 1987 | |||
| 1988 | if (m_playbin) { | ||
| 1989 | //GST_PLAY_FLAG_NATIVE_VIDEO omits configuration of ffmpegcolorspace and videoscale, | ||
| 1990 | @@ -188,7 +203,11 @@ QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) | ||
| 1991 | m_videoIdentity = GST_ELEMENT(g_object_new(gst_video_connector_get_type(), 0)); // floating ref | ||
| 1992 | g_signal_connect(G_OBJECT(m_videoIdentity), "connection-failed", G_CALLBACK(insertColorSpaceElement), (gpointer)this); | ||
| 1993 | |||
| 1994 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 1995 | + m_colorSpace = gst_element_factory_make("videoconvert", "ffmpegcolorspace-vo"); | ||
| 1996 | +#else | ||
| 1997 | m_colorSpace = gst_element_factory_make("ffmpegcolorspace", "ffmpegcolorspace-vo"); | ||
| 1998 | +#endif | ||
| 1999 | // might not get a parent, take ownership to avoid leak | ||
| 2000 | qt_gst_object_ref_sink(GST_OBJECT(m_colorSpace)); | ||
| 2001 | |||
| 2002 | @@ -206,7 +225,7 @@ QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) | ||
| 2003 | |||
| 2004 | // add ghostpads | ||
| 2005 | GstPad *pad = gst_element_get_static_pad(m_videoIdentity,"sink"); | ||
| 2006 | - gst_element_add_pad(GST_ELEMENT(m_videoOutputBin), gst_ghost_pad_new("videosink", pad)); | ||
| 2007 | + gst_element_add_pad(GST_ELEMENT(m_videoOutputBin), gst_ghost_pad_new("sink", pad)); | ||
| 2008 | gst_object_unref(GST_OBJECT(pad)); | ||
| 2009 | |||
| 2010 | if (m_playbin != 0) { | ||
| 2011 | @@ -218,7 +237,7 @@ QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent) | ||
| 2012 | g_object_set(G_OBJECT(m_playbin), "video-sink", m_videoOutputBin, NULL); | ||
| 2013 | |||
| 2014 | g_signal_connect(G_OBJECT(m_playbin), "notify::source", G_CALLBACK(playbinNotifySource), this); | ||
| 2015 | - g_signal_connect(G_OBJECT(m_playbin), "element-added", G_CALLBACK(handleElementAdded), this); | ||
| 2016 | + //g_signal_connect(G_OBJECT(m_playbin), "element-added", G_CALLBACK(handleElementAdded), this); | ||
| 2017 | |||
| 2018 | if (usePlaybinVolume()) { | ||
| 2019 | updateVolume(); | ||
| 2020 | @@ -342,9 +361,13 @@ qint64 QGstreamerPlayerSession::position() const | ||
| 2021 | GstFormat format = GST_FORMAT_TIME; | ||
| 2022 | gint64 position = 0; | ||
| 2023 | |||
| 2024 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2025 | + if ( m_playbin && gst_element_query_position(m_playbin, format, &position)) | ||
| 2026 | + m_lastPosition = position / 1000000; | ||
| 2027 | +#else | ||
| 2028 | if ( m_playbin && gst_element_query_position(m_playbin, &format, &position)) | ||
| 2029 | m_lastPosition = position / 1000000; | ||
| 2030 | - | ||
| 2031 | +#endif | ||
| 2032 | return m_lastPosition; | ||
| 2033 | } | ||
| 2034 | |||
| 2035 | @@ -474,9 +497,18 @@ bool QGstreamerPlayerSession::isAudioAvailable() const | ||
| 2036 | return m_audioAvailable; | ||
| 2037 | } | ||
| 2038 | |||
| 2039 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2040 | +static GstPadProbeReturn block_pad_cb(GstPad *pad, GstPadProbeInfo *info, gpointer user_data) | ||
| 2041 | +#else | ||
| 2042 | static void block_pad_cb(GstPad *pad, gboolean blocked, gpointer user_data) | ||
| 2043 | +#endif | ||
| 2044 | { | ||
| 2045 | Q_UNUSED(pad); | ||
| 2046 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2047 | + Q_UNUSED(info); | ||
| 2048 | + Q_UNUSED(user_data); | ||
| 2049 | + return GST_PAD_PROBE_OK; | ||
| 2050 | +#else | ||
| 2051 | #ifdef DEBUG_PLAYBIN | ||
| 2052 | qDebug() << "block_pad_cb, blocked:" << blocked; | ||
| 2053 | #endif | ||
| 2054 | @@ -485,6 +517,7 @@ static void block_pad_cb(GstPad *pad, gboolean blocked, gpointer user_data) | ||
| 2055 | QGstreamerPlayerSession *session = reinterpret_cast<QGstreamerPlayerSession*>(user_data); | ||
| 2056 | QMetaObject::invokeMethod(session, "finishVideoOutputChange", Qt::QueuedConnection); | ||
| 2057 | } | ||
| 2058 | +#endif | ||
| 2059 | } | ||
| 2060 | |||
| 2061 | void QGstreamerPlayerSession::updateVideoRenderer() | ||
| 2062 | @@ -529,7 +562,7 @@ void QGstreamerPlayerSession::setVideoRenderer(QObject *videoOutput) | ||
| 2063 | m_renderer = renderer; | ||
| 2064 | |||
| 2065 | #ifdef DEBUG_VO_BIN_DUMP | ||
| 2066 | - _gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), | ||
| 2067 | + gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), | ||
| 2068 | GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/), | ||
| 2069 | "playbin_set"); | ||
| 2070 | #endif | ||
| 2071 | @@ -633,7 +666,11 @@ void QGstreamerPlayerSession::setVideoRenderer(QObject *videoOutput) | ||
| 2072 | |||
| 2073 | //block pads, async to avoid locking in paused state | ||
| 2074 | GstPad *srcPad = gst_element_get_static_pad(m_videoIdentity, "src"); | ||
| 2075 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2076 | + this->pad_probe_id = gst_pad_add_probe(srcPad, (GstPadProbeType)(GST_PAD_PROBE_TYPE_BUFFER | GST_PAD_PROBE_TYPE_BLOCK), block_pad_cb, this, NULL); | ||
| 2077 | +#else | ||
| 2078 | gst_pad_set_blocked_async(srcPad, true, &block_pad_cb, this); | ||
| 2079 | +#endif | ||
| 2080 | gst_object_unref(GST_OBJECT(srcPad)); | ||
| 2081 | |||
| 2082 | //Unpause the sink to avoid waiting until the buffer is processed | ||
| 2083 | @@ -674,7 +711,11 @@ void QGstreamerPlayerSession::finishVideoOutputChange() | ||
| 2084 | //video output was change back to the current one, | ||
| 2085 | //no need to torment the pipeline, just unblock the pad | ||
| 2086 | if (gst_pad_is_blocked(srcPad)) | ||
| 2087 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2088 | + gst_pad_remove_probe(srcPad, this->pad_probe_id); | ||
| 2089 | +#else | ||
| 2090 | gst_pad_set_blocked_async(srcPad, false, &block_pad_cb, 0); | ||
| 2091 | +#endif | ||
| 2092 | |||
| 2093 | m_pendingVideoSink = 0; | ||
| 2094 | gst_object_unref(GST_OBJECT(srcPad)); | ||
| 2095 | @@ -760,12 +801,17 @@ void QGstreamerPlayerSession::finishVideoOutputChange() | ||
| 2096 | |||
| 2097 | //don't have to wait here, it will unblock eventually | ||
| 2098 | if (gst_pad_is_blocked(srcPad)) | ||
| 2099 | - gst_pad_set_blocked_async(srcPad, false, &block_pad_cb, 0); | ||
| 2100 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2101 | + gst_pad_remove_probe(srcPad, this->pad_probe_id); | ||
| 2102 | +#else | ||
| 2103 | + gst_pad_set_blocked_async(srcPad, false, &block_pad_cb, 0); | ||
| 2104 | +#endif | ||
| 2105 | + | ||
| 2106 | gst_object_unref(GST_OBJECT(srcPad)); | ||
| 2107 | |||
| 2108 | #ifdef DEBUG_VO_BIN_DUMP | ||
| 2109 | - _gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), | ||
| 2110 | - GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/), | ||
| 2111 | + gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), | ||
| 2112 | + GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* | GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES */), | ||
| 2113 | "playbin_finish"); | ||
| 2114 | #endif | ||
| 2115 | } | ||
| 2116 | @@ -830,6 +876,7 @@ bool QGstreamerPlayerSession::play() | ||
| 2117 | #ifdef DEBUG_PLAYBIN | ||
| 2118 | qDebug() << Q_FUNC_INFO; | ||
| 2119 | #endif | ||
| 2120 | + | ||
| 2121 | m_everPlayed = false; | ||
| 2122 | if (m_playbin) { | ||
| 2123 | m_pendingState = QMediaPlayer::PlayingState; | ||
| 2124 | @@ -1327,8 +1374,11 @@ void QGstreamerPlayerSession::getStreamsInfo() | ||
| 2125 | default: | ||
| 2126 | break; | ||
| 2127 | } | ||
| 2128 | - | ||
| 2129 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2130 | + if (tags && GST_IS_TAG_LIST(tags)) { | ||
| 2131 | +#else | ||
| 2132 | if (tags && gst_is_tag_list(tags)) { | ||
| 2133 | +#endif | ||
| 2134 | gchar *languageCode = 0; | ||
| 2135 | if (gst_tag_list_get_string(tags, GST_TAG_LANGUAGE_CODE, &languageCode)) | ||
| 2136 | streamProperties[QMediaMetaData::Language] = QString::fromUtf8(languageCode); | ||
| 2137 | @@ -1367,7 +1417,11 @@ void QGstreamerPlayerSession::updateVideoResolutionTag() | ||
| 2138 | QSize aspectRatio; | ||
| 2139 | |||
| 2140 | GstPad *pad = gst_element_get_static_pad(m_videoIdentity, "src"); | ||
| 2141 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2142 | + GstCaps *caps = gst_pad_get_current_caps(pad); | ||
| 2143 | +#else | ||
| 2144 | GstCaps *caps = gst_pad_get_negotiated_caps(pad); | ||
| 2145 | +#endif | ||
| 2146 | |||
| 2147 | if (caps) { | ||
| 2148 | const GstStructure *structure = gst_caps_get_structure(caps, 0); | ||
| 2149 | @@ -1411,7 +1465,11 @@ void QGstreamerPlayerSession::updateDuration() | ||
| 2150 | gint64 gstDuration = 0; | ||
| 2151 | int duration = -1; | ||
| 2152 | |||
| 2153 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2154 | + if (m_playbin && gst_element_query_duration(m_playbin, format, &gstDuration)) | ||
| 2155 | +#else | ||
| 2156 | if (m_playbin && gst_element_query_duration(m_playbin, &format, &gstDuration)) | ||
| 2157 | +#endif | ||
| 2158 | duration = gstDuration / 1000000; | ||
| 2159 | |||
| 2160 | if (m_duration != duration) { | ||
| 2161 | @@ -1467,7 +1525,11 @@ void QGstreamerPlayerSession::playbinNotifySource(GObject *o, GParamSpec *p, gpo | ||
| 2162 | |||
| 2163 | // The rest | ||
| 2164 | if (g_object_class_find_property(G_OBJECT_GET_CLASS(source), "extra-headers") != 0) { | ||
| 2165 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2166 | + GstStructure *extras = gst_structure_new_empty("extras"); | ||
| 2167 | +#else | ||
| 2168 | GstStructure *extras = gst_structure_empty_new("extras"); | ||
| 2169 | +#endif | ||
| 2170 | |||
| 2171 | foreach (const QByteArray &rawHeader, self->m_request.rawHeaderList()) { | ||
| 2172 | if (rawHeader == userAgentString) // Filter User-Agent | ||
| 2173 | @@ -1623,7 +1685,11 @@ GstAutoplugSelectResult QGstreamerPlayerSession::handleAutoplugSelect(GstBin *bi | ||
| 2174 | const gchar *factoryName = gst_plugin_feature_get_name(GST_PLUGIN_FEATURE(factory)); | ||
| 2175 | if (g_str_has_prefix(factoryName, "vaapi")) { | ||
| 2176 | GstPad *sinkPad = gst_element_get_static_pad(session->m_videoSink, "sink"); | ||
| 2177 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2178 | + GstCaps *sinkCaps = gst_pad_query_caps(sinkPad, NULL); | ||
| 2179 | +#else | ||
| 2180 | GstCaps *sinkCaps = gst_pad_get_caps(sinkPad); | ||
| 2181 | +#endif | ||
| 2182 | |||
| 2183 | #if (GST_VERSION_MAJOR == 0) && ((GST_VERSION_MINOR < 10) || (GST_VERSION_MICRO < 33)) | ||
| 2184 | if (!factory_can_src_any_caps(factory, sinkCaps)) | ||
| 2185 | @@ -1652,14 +1718,19 @@ void QGstreamerPlayerSession::handleElementAdded(GstBin *bin, GstElement *elemen | ||
| 2186 | // Disable on-disk buffering. | ||
| 2187 | g_object_set(G_OBJECT(element), "temp-template", NULL, NULL); | ||
| 2188 | } else if (g_str_has_prefix(elementName, "uridecodebin") || | ||
| 2189 | - g_str_has_prefix(elementName, "decodebin2")) { | ||
| 2190 | - | ||
| 2191 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2192 | + g_str_has_prefix(elementName, "decodebin")) { | ||
| 2193 | +#else | ||
| 2194 | + g_str_has_prefix(elementName, "decodebin2")) { | ||
| 2195 | +#endif | ||
| 2196 | if (g_str_has_prefix(elementName, "uridecodebin")) { | ||
| 2197 | // Add video/x-surface (VAAPI) to default raw formats | ||
| 2198 | g_object_set(G_OBJECT(element), "caps", gst_static_caps_get(&static_RawCaps), NULL); | ||
| 2199 | // listen for uridecodebin autoplug-select to skip VAAPI usage when the current | ||
| 2200 | // video sink doesn't support it | ||
| 2201 | +#if !(GST_CHECK_VERSION(1,0,0)) | ||
| 2202 | g_signal_connect(element, "autoplug-select", G_CALLBACK(handleAutoplugSelect), session); | ||
| 2203 | +#endif | ||
| 2204 | } | ||
| 2205 | |||
| 2206 | //listen for queue2 element added to uridecodebin/decodebin2 as well. | ||
| 2207 | @@ -1727,7 +1798,27 @@ void QGstreamerPlayerSession::removeProbe(QGstreamerVideoProbeControl* probe) | ||
| 2208 | // Assume user releases any outstanding references to video frames. | ||
| 2209 | } | ||
| 2210 | |||
| 2211 | -gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) | ||
| 2212 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2213 | +GstPadProbeReturn QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data) | ||
| 2214 | +{ | ||
| 2215 | + Q_UNUSED(pad); | ||
| 2216 | + GstBuffer* buffer = GST_PAD_PROBE_INFO_BUFFER(info); | ||
| 2217 | + | ||
| 2218 | + QGstreamerPlayerSession *session = reinterpret_cast<QGstreamerPlayerSession*>(user_data); | ||
| 2219 | + QMutexLocker locker(&session->m_videoProbeMutex); | ||
| 2220 | + | ||
| 2221 | + if (session->m_videoProbes.isEmpty()) | ||
| 2222 | + return GST_PAD_PROBE_OK; | ||
| 2223 | + | ||
| 2224 | + foreach (QGstreamerVideoProbeControl* probe, session->m_videoProbes) | ||
| 2225 | + probe->bufferProbed(buffer, gst_pad_get_current_caps(pad)); | ||
| 2226 | + | ||
| 2227 | + return GST_PAD_PROBE_OK; | ||
| 2228 | +} | ||
| 2229 | + | ||
| 2230 | +#else | ||
| 2231 | + | ||
| 2232 | +static gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) | ||
| 2233 | { | ||
| 2234 | Q_UNUSED(pad); | ||
| 2235 | |||
| 2236 | @@ -1742,6 +1833,7 @@ gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *bu | ||
| 2237 | |||
| 2238 | return TRUE; | ||
| 2239 | } | ||
| 2240 | +#endif | ||
| 2241 | |||
| 2242 | void QGstreamerPlayerSession::addProbe(QGstreamerAudioProbeControl* probe) | ||
| 2243 | { | ||
| 2244 | @@ -1759,6 +1851,24 @@ void QGstreamerPlayerSession::removeProbe(QGstreamerAudioProbeControl* probe) | ||
| 2245 | m_audioProbes.removeOne(probe); | ||
| 2246 | } | ||
| 2247 | |||
| 2248 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2249 | +GstPadProbeReturn QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstPadProbeInfo* info, gpointer user_data) | ||
| 2250 | +{ | ||
| 2251 | + Q_UNUSED(pad); | ||
| 2252 | + GstBuffer* buffer = GST_PAD_PROBE_INFO_BUFFER(info); | ||
| 2253 | + | ||
| 2254 | + QGstreamerPlayerSession *session = reinterpret_cast<QGstreamerPlayerSession*>(user_data); | ||
| 2255 | + QMutexLocker locker(&session->m_audioProbeMutex); | ||
| 2256 | + | ||
| 2257 | + if (session->m_audioProbes.isEmpty()) | ||
| 2258 | + return GST_PAD_PROBE_OK; | ||
| 2259 | + | ||
| 2260 | + foreach (QGstreamerAudioProbeControl* probe, session->m_audioProbes) | ||
| 2261 | + probe->bufferProbed(buffer, gst_pad_get_current_caps(pad)); | ||
| 2262 | + | ||
| 2263 | + return GST_PAD_PROBE_OK; | ||
| 2264 | +} | ||
| 2265 | +#else | ||
| 2266 | gboolean QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) | ||
| 2267 | { | ||
| 2268 | Q_UNUSED(pad); | ||
| 2269 | @@ -1774,7 +1884,7 @@ gboolean QGstreamerPlayerSession::padAudioBufferProbe(GstPad *pad, GstBuffer *bu | ||
| 2270 | |||
| 2271 | return TRUE; | ||
| 2272 | } | ||
| 2273 | - | ||
| 2274 | +#endif | ||
| 2275 | // This function is similar to stop(), | ||
| 2276 | // but does not set m_everPlayed, m_lastPosition, | ||
| 2277 | // and setSeekable() values. | ||
| 2278 | @@ -1807,7 +1917,11 @@ void QGstreamerPlayerSession::removeVideoBufferProbe() | ||
| 2279 | |||
| 2280 | GstPad *pad = gst_element_get_static_pad(m_videoSink, "sink"); | ||
| 2281 | if (pad) { | ||
| 2282 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2283 | + gst_pad_remove_probe(pad, m_videoBufferProbeId); | ||
| 2284 | +#else | ||
| 2285 | gst_pad_remove_buffer_probe(pad, m_videoBufferProbeId); | ||
| 2286 | +#endif | ||
| 2287 | gst_object_unref(GST_OBJECT(pad)); | ||
| 2288 | } | ||
| 2289 | |||
| 2290 | @@ -1822,7 +1936,11 @@ void QGstreamerPlayerSession::addVideoBufferProbe() | ||
| 2291 | |||
| 2292 | GstPad *pad = gst_element_get_static_pad(m_videoSink, "sink"); | ||
| 2293 | if (pad) { | ||
| 2294 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2295 | + m_videoBufferProbeId = gst_pad_add_probe(pad, GST_PAD_PROBE_TYPE_BUFFER, padVideoBufferProbe, this, NULL); | ||
| 2296 | +#else | ||
| 2297 | m_videoBufferProbeId = gst_pad_add_buffer_probe(pad, G_CALLBACK(padVideoBufferProbe), this); | ||
| 2298 | +#endif | ||
| 2299 | gst_object_unref(GST_OBJECT(pad)); | ||
| 2300 | } | ||
| 2301 | } | ||
| 2302 | @@ -1839,7 +1957,11 @@ void QGstreamerPlayerSession::removeAudioBufferProbe() | ||
| 2303 | |||
| 2304 | GstPad *pad = gst_element_get_static_pad(m_audioSink, "sink"); | ||
| 2305 | if (pad) { | ||
| 2306 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2307 | + gst_pad_remove_probe(pad, m_audioBufferProbeId); | ||
| 2308 | +#else | ||
| 2309 | gst_pad_remove_buffer_probe(pad, m_audioBufferProbeId); | ||
| 2310 | +#endif | ||
| 2311 | gst_object_unref(GST_OBJECT(pad)); | ||
| 2312 | } | ||
| 2313 | |||
| 2314 | @@ -1854,7 +1976,11 @@ void QGstreamerPlayerSession::addAudioBufferProbe() | ||
| 2315 | |||
| 2316 | GstPad *pad = gst_element_get_static_pad(m_audioSink, "sink"); | ||
| 2317 | if (pad) { | ||
| 2318 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2319 | + m_audioBufferProbeId = gst_pad_add_probe(pad, GST_PAD_PROBE_TYPE_BUFFER, padAudioBufferProbe, this, NULL); | ||
| 2320 | +#else | ||
| 2321 | m_audioBufferProbeId = gst_pad_add_buffer_probe(pad, G_CALLBACK(padAudioBufferProbe), this); | ||
| 2322 | +#endif | ||
| 2323 | gst_object_unref(GST_OBJECT(pad)); | ||
| 2324 | } | 53 | } |
| 2325 | } | ||
| 2326 | @@ -1887,7 +2013,7 @@ void QGstreamerPlayerSession::playlistTypeFindFunction(GstTypeFind *find, gpoint | ||
| 2327 | length = qMin(length, guint64(1024)); | ||
| 2328 | |||
| 2329 | while (length > 0) { | ||
| 2330 | - guint8 *data = gst_type_find_peek(find, 0, length); | ||
| 2331 | + const guint8 *data = gst_type_find_peek(find, 0, length); | ||
| 2332 | if (data) { | ||
| 2333 | session->m_isPlaylist = (QPlaylistFileParser::findPlaylistType(QString::fromUtf8(uri), 0, data, length) != QPlaylistFileParser::UNKNOWN); | ||
| 2334 | return; | ||
| 2335 | diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.h b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.h | ||
| 2336 | index f2e760a..50bda3d 100644 | ||
| 2337 | --- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.h | ||
| 2338 | +++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.h | ||
| 2339 | @@ -119,11 +119,19 @@ public: | ||
| 2340 | |||
| 2341 | void addProbe(QGstreamerVideoProbeControl* probe); | ||
| 2342 | void removeProbe(QGstreamerVideoProbeControl* probe); | ||
| 2343 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2344 | + static GstPadProbeReturn padVideoBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data); | ||
| 2345 | +#else | ||
| 2346 | static gboolean padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data); | ||
| 2347 | +#endif | ||
| 2348 | |||
| 2349 | void addProbe(QGstreamerAudioProbeControl* probe); | ||
| 2350 | void removeProbe(QGstreamerAudioProbeControl* probe); | ||
| 2351 | +#if GST_CHECK_VERSION(1,0,0) | ||
| 2352 | + static GstPadProbeReturn padAudioBufferProbe(GstPad *pad, GstPadProbeInfo* info, gpointer user_data); | ||
| 2353 | +#else | ||
| 2354 | static gboolean padAudioBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data); | ||
| 2355 | +#endif | ||
| 2356 | 54 | ||
| 2357 | void endOfMediaReset(); | 55 | qtCompileTest(resourcepolicy) |
| 2358 | |||
| 2359 | @@ -252,6 +260,7 @@ private: | ||
| 2360 | bool m_isLiveSource; | ||
| 2361 | |||
| 2362 | bool m_isPlaylist; | ||
| 2363 | + gulong pad_probe_id; | ||
| 2364 | }; | ||
| 2365 | |||
| 2366 | QT_END_NAMESPACE | ||
| 2367 | -- | 56 | -- |
| 2368 | 2.3.5 | 57 | 2.4.2 |
| 2369 | 58 | ||
diff --git a/recipes-qt/qt5/qtmultimedia_git.bb b/recipes-qt/qt5/qtmultimedia_git.bb index bab9bee3..5c05145e 100644 --- a/recipes-qt/qt5/qtmultimedia_git.bb +++ b/recipes-qt/qt5/qtmultimedia_git.bb | |||
| @@ -4,9 +4,9 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| @@ -30,8 +30,4 @@ EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains('PACKAGECONFIG', 'gstreamer010', 'G | |||
| 30 | # Disable GStreamer if completely disabled | 30 | # Disable GStreamer if completely disabled |
| 31 | EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains_any('PACKAGECONFIG', 'gstreamer gstreamer010', '', 'CONFIG+=done_config_gstreamer', d)}" | 31 | EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains_any('PACKAGECONFIG', 'gstreamer gstreamer010', '', 'CONFIG+=done_config_gstreamer', d)}" |
| 32 | 32 | ||
| 33 | SRC_URI += "\ | 33 | SRCREV = "3f15c1b17e55b5b118d11621f85fa74f7cc74ae6" |
| 34 | file://0001-Initial-porting-effort-to-GStreamer-1.0.patch \ | ||
| 35 | " | ||
| 36 | |||
| 37 | SRCREV = "cc0569a038f6116df559508518b6dacb15be8520" | ||
diff --git a/recipes-qt/qt5/qtquick1_git.bb b/recipes-qt/qt5/qtquick1_git.bb index 928963b1..25e92607 100644 --- a/recipes-qt/qt5/qtquick1_git.bb +++ b/recipes-qt/qt5/qtquick1_git.bb | |||
| @@ -6,14 +6,14 @@ require qt5-git.inc | |||
| 6 | # Note that some files are LGPL-2.1 only without Digia-Qt-LGPL-Exception-1.1. | 6 | # Note that some files are LGPL-2.1 only without Digia-Qt-LGPL-Exception-1.1. |
| 7 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 7 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 8 | LIC_FILES_CHKSUM = " \ | 8 | LIC_FILES_CHKSUM = " \ |
| 9 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 9 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 10 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 10 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 11 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 11 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 12 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 12 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 13 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 13 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 14 | " | 14 | " |
| 15 | 15 | ||
| 16 | DEPENDS += "qtscript qtsvg qtxmlpatterns qtwebkit" | 16 | DEPENDS += "qtscript qtsvg qtxmlpatterns qtwebkit" |
| 17 | # qttools | 17 | # qttools |
| 18 | 18 | ||
| 19 | SRCREV = "ba0708a75784a92aee9523b7ee925ece18c69812" | 19 | SRCREV = "eb3c45a5a6a84bd02cac2f5254ef56c3fe2536e8" |
diff --git a/recipes-qt/qt5/qtquickcontrols_git.bb b/recipes-qt/qt5/qtquickcontrols_git.bb index af111198..51db1ae0 100644 --- a/recipes-qt/qt5/qtquickcontrols_git.bb +++ b/recipes-qt/qt5/qtquickcontrols_git.bb | |||
| @@ -3,15 +3,13 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | ||
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | ||
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 7 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 8 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 11 | " | 9 | " |
| 12 | 10 | ||
| 13 | DEPENDS += "qtdeclarative" | 11 | DEPENDS += "qtdeclarative" |
| 14 | 12 | ||
| 15 | RDEPENDS_${PN}-dev = "" | 13 | RDEPENDS_${PN}-dev = "" |
| 16 | 14 | ||
| 17 | SRCREV = "093312f5f306db8fcb1028f62bd3061aa63ef732" | 15 | SRCREV = "32ac38930c7a5183d6ce7f88d7008c9c45b2c94b" |
diff --git a/recipes-qt/qt5/qtscript_git.bb b/recipes-qt/qt5/qtscript_git.bb index 5751e200..a54deb8a 100644 --- a/recipes-qt/qt5/qtscript_git.bb +++ b/recipes-qt/qt5/qtscript_git.bb | |||
| @@ -5,9 +5,9 @@ require qt5-git.inc | |||
| 5 | # Note that some files are LGPL-2.1 only without Digia-Qt-LGPL-Exception-1.1. | 5 | # Note that some files are LGPL-2.1 only without Digia-Qt-LGPL-Exception-1.1. |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 9 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 10 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 10 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 12 | " | 12 | " |
| 13 | 13 | ||
| @@ -25,4 +25,4 @@ ARM_INSTRUCTION_SET = "arm" | |||
| 25 | 25 | ||
| 26 | DEPENDS += "qtbase" | 26 | DEPENDS += "qtbase" |
| 27 | 27 | ||
| 28 | SRCREV = "eb08742e8f874b8dab209c1cfe840c534c68ca3b" | 28 | SRCREV = "2724355d3a1029168e19162e1d1b10dd3f98dc89" |
diff --git a/recipes-qt/qt5/qtsensors_git.bb b/recipes-qt/qt5/qtsensors_git.bb index ec333552..02688a65 100644 --- a/recipes-qt/qt5/qtsensors_git.bb +++ b/recipes-qt/qt5/qtsensors_git.bb | |||
| @@ -5,13 +5,13 @@ require qt5-git.inc | |||
| 5 | # There are no GPLv2 licensed files in this component. | 5 | # There are no GPLv2 licensed files in this component. |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 9 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 10 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 10 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 12 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 12 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 13 | " | 13 | " |
| 14 | 14 | ||
| 15 | DEPENDS += "qtbase qtdeclarative" | 15 | DEPENDS += "qtbase qtdeclarative" |
| 16 | 16 | ||
| 17 | SRCREV = "40e5aff5318701b31e712cc352483b227f61a6a4" | 17 | SRCREV = "414c0a82944bcf1bd4763f343b85abb0d8eb2f2d" |
diff --git a/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch b/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch deleted file mode 100644 index e6b61943..00000000 --- a/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | From 6444a156db8b7d0ec367b8edc87c82acd0898698 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jonathan Liu <net147@gmail.com> | ||
| 3 | Date: Mon, 9 Mar 2015 22:35:56 +1100 | ||
| 4 | Subject: [PATCH] Unix: Clear serial_struct instances | ||
| 5 | |||
| 6 | Silences the following Valgrind warning: | ||
| 7 | Conditional jump or move depends on uninitialised value(s) | ||
| 8 | |||
| 9 | Upstream-Status: Backport from 5.5 branch | ||
| 10 | |||
| 11 | Change-Id: I8fd8cfd6aa6f75ed515e6151cfc282faca508bdc | ||
| 12 | Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> | ||
| 13 | Signed-off-by: Jonathan Liu <net147@gmail.com> | ||
| 14 | --- | ||
| 15 | src/serialport/qserialport_unix.cpp | 4 ++++ | ||
| 16 | 1 file changed, 4 insertions(+) | ||
| 17 | |||
| 18 | diff --git a/src/serialport/qserialport_unix.cpp b/src/serialport/qserialport_unix.cpp | ||
| 19 | index cda73b2..62c454c 100644 | ||
| 20 | --- a/src/serialport/qserialport_unix.cpp | ||
| 21 | +++ b/src/serialport/qserialport_unix.cpp | ||
| 22 | @@ -451,6 +451,8 @@ QSerialPortPrivate::setStandardBaudRate(qint32 baudRate, QSerialPort::Directions | ||
| 23 | { | ||
| 24 | struct serial_struct currentSerialInfo; | ||
| 25 | |||
| 26 | + ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); | ||
| 27 | + | ||
| 28 | if ((::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) != -1) | ||
| 29 | && (currentSerialInfo.flags & ASYNC_SPD_CUST)) { | ||
| 30 | currentSerialInfo.flags &= ~ASYNC_SPD_CUST; | ||
| 31 | @@ -481,6 +483,8 @@ QSerialPortPrivate::setCustomBaudRate(qint32 baudRate, QSerialPort::Directions d | ||
| 32 | |||
| 33 | struct serial_struct currentSerialInfo; | ||
| 34 | |||
| 35 | + ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); | ||
| 36 | + | ||
| 37 | if (::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) == -1) | ||
| 38 | return decodeSystemError(); | ||
| 39 | |||
| 40 | -- | ||
| 41 | 2.4.2 | ||
| 42 | |||
diff --git a/recipes-qt/qt5/qtserialport_git.bb b/recipes-qt/qt5/qtserialport_git.bb index c59eef6d..5f419743 100644 --- a/recipes-qt/qt5/qtserialport_git.bb +++ b/recipes-qt/qt5/qtserialport_git.bb | |||
| @@ -5,17 +5,13 @@ require qt5-git.inc | |||
| 5 | # other qt* components use :/ | 5 | # other qt* components use :/ |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 9 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 10 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 10 | file://LGPL_EXCEPTION.txt;md5=bb426f3367c4805d1e12fad05bd0b750 \ |
| 11 | file://LGPL_EXCEPTION.txt;md5=eb6c371255e1262c55ae9b652a90b528 \ | ||
| 12 | file://LICENSE.FDL;md5=3801d7932fdc07fd9efe89f9854a6caa \ | 11 | file://LICENSE.FDL;md5=3801d7932fdc07fd9efe89f9854a6caa \ |
| 13 | " | 12 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 14 | |||
| 15 | SRC_URI += " \ | ||
| 16 | file://0001-Unix-Clear-serial_struct-instances.patch \ | ||
| 17 | " | 13 | " |
| 18 | 14 | ||
| 19 | DEPENDS += "qtbase" | 15 | DEPENDS += "qtbase" |
| 20 | 16 | ||
| 21 | SRCREV = "e257bdc9aae5583b187bafb5e69e4a6143e3bf4e" | 17 | SRCREV = "d9ab9258ca81650a914357d53e7f92f293d4ef81" |
diff --git a/recipes-qt/qt5/qtsvg_git.bb b/recipes-qt/qt5/qtsvg_git.bb index 1dce8c6d..6350e972 100644 --- a/recipes-qt/qt5/qtsvg_git.bb +++ b/recipes-qt/qt5/qtsvg_git.bb | |||
| @@ -4,12 +4,12 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase" | 13 | DEPENDS += "qtbase" |
| 14 | 14 | ||
| 15 | SRCREV = "ccae23961e65b81b3c16a45d4e186e1e5657a2f6" | 15 | SRCREV = "ae3990fbf41039c78066c8440c654936365d9404" |
diff --git a/recipes-qt/qt5/qtsystems_git.bb b/recipes-qt/qt5/qtsystems_git.bb index edc03603..781cd386 100644 --- a/recipes-qt/qt5/qtsystems_git.bb +++ b/recipes-qt/qt5/qtsystems_git.bb | |||
| @@ -28,6 +28,6 @@ do_install_append() { | |||
| 28 | QT_MODULE_BRANCH = "dev" | 28 | QT_MODULE_BRANCH = "dev" |
| 29 | 29 | ||
| 30 | # qtsystems wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 | 30 | # qtsystems wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 |
| 31 | # qt5-git PV is only to indicate that this recipe is compatible with qt5 5.4 | 31 | # qt5-git PV is only to indicate that this recipe is compatible with qt5 5.5 |
| 32 | 32 | ||
| 33 | SRCREV = "37b614abbfb35d06a57e5b0824249c3abd5640e3" | 33 | SRCREV = "4e3a7ed3ef5226256ae6aee1a73e264768aac8f4" |
diff --git a/recipes-qt/qt5/qttools-native_git.bb b/recipes-qt/qt5/qttools-native_git.bb index 13e1b793..cb786978 100644 --- a/recipes-qt/qt5/qttools-native_git.bb +++ b/recipes-qt/qt5/qttools-native_git.bb | |||
| @@ -2,9 +2,9 @@ DEPENDS = "qtbase-native" | |||
| 2 | 2 | ||
| 3 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 3 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 4 | LIC_FILES_CHKSUM = " \ | 4 | LIC_FILES_CHKSUM = " \ |
| 5 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 5 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 6 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 6 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 7 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 7 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 8 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 8 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 9 | " | 9 | " |
| 10 | 10 | ||
| @@ -13,8 +13,6 @@ QT_MODULE = "qttools" | |||
| 13 | require qt5-native.inc | 13 | require qt5-native.inc |
| 14 | require qt5-git.inc | 14 | require qt5-git.inc |
| 15 | 15 | ||
| 16 | SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" | ||
| 17 | |||
| 18 | do_configure() { | 16 | do_configure() { |
| 19 | ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly | 17 | ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly |
| 20 | } | 18 | } |
| @@ -23,4 +21,4 @@ do_install() { | |||
| 23 | oe_runmake install INSTALL_ROOT=${D} | 21 | oe_runmake install INSTALL_ROOT=${D} |
| 24 | } | 22 | } |
| 25 | 23 | ||
| 26 | SRCREV = "a6ed9b418d1b4464f088b378e5bdb96ec420db6c" | 24 | SRCREV = "33c65366a7c3901d2aecfde3dbc485e1eac5c10c" |
diff --git a/recipes-qt/qt5/qttools/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch b/recipes-qt/qt5/qttools/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch index 285ae85c..ab08fc08 100644 --- a/recipes-qt/qt5/qttools/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch +++ b/recipes-qt/qt5/qttools/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From b19c4a2f723525b995ef5b47db0e725a2bb9ab20 Mon Sep 17 00:00:00 2001 | 1 | From 5d1c8cdf5d448d5b3f719447dae3a59340348d2e Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.jansa@gmail.com> | 2 | From: Martin Jansa <Martin.jansa@gmail.com> |
| 3 | Date: Wed, 11 Sep 2013 18:30:08 +0200 | 3 | Date: Wed, 11 Sep 2013 18:30:08 +0200 |
| 4 | Subject: [PATCH 1/3] Allow to build only lrelease + lupdate + lconvert | 4 | Subject: [PATCH 1/3] Allow to build only lrelease + lupdate + lconvert |
| @@ -12,10 +12,10 @@ Upstream-Status: Pending | |||
| 12 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 12 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| 13 | --- | 13 | --- |
| 14 | examples/examples.pro | 3 ++- | 14 | examples/examples.pro | 3 ++- |
| 15 | src/designer/src/src.pro | 16 +++++++++------- | 15 | src/designer/src/src.pro | 18 ++++++++++-------- |
| 16 | src/linguist/linguist.pro | 2 +- | 16 | src/linguist/linguist.pro | 2 +- |
| 17 | src/src.pro | 14 ++++++++------ | 17 | src/src.pro | 14 ++++++++------ |
| 18 | tests/auto/auto.pro | 24 +++++++++++++----------- | 18 | tests/auto/auto.pro | 22 ++++++++++++---------- |
| 19 | 5 files changed, 33 insertions(+), 26 deletions(-) | 19 | 5 files changed, 33 insertions(+), 26 deletions(-) |
| 20 | 20 | ||
| 21 | diff --git a/examples/examples.pro b/examples/examples.pro | 21 | diff --git a/examples/examples.pro b/examples/examples.pro |
| @@ -30,19 +30,21 @@ index 69365d1..da7b38b 100644 | |||
| 30 | 30 | ||
| 31 | winrt: SUBDIRS -= assistant designer | 31 | winrt: SUBDIRS -= assistant designer |
| 32 | diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro | 32 | diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro |
| 33 | index e02ca8e..49527c5 100644 | 33 | index 6915e34..3ff2eca 100644 |
| 34 | --- a/src/designer/src/src.pro | 34 | --- a/src/designer/src/src.pro |
| 35 | +++ b/src/designer/src/src.pro | 35 | +++ b/src/designer/src/src.pro |
| 36 | @@ -1,18 +1,20 @@ | 36 | @@ -1,13 +1,15 @@ |
| 37 | TEMPLATE = subdirs | 37 | TEMPLATE = subdirs |
| 38 | 38 | ||
| 39 | -SUBDIRS = \ | 39 | -SUBDIRS = \ |
| 40 | - uiplugin \ | ||
| 40 | - uitools \ | 41 | - uitools \ |
| 41 | - lib \ | 42 | - lib \ |
| 42 | - components \ | 43 | - components \ |
| 43 | - designer | 44 | - designer |
| 44 | +!linguistonly { | 45 | +!linguistonly { |
| 45 | + SUBDIRS = \ | 46 | + SUBDIRS = \ |
| 47 | + uiplugin \ | ||
| 46 | + lib \ | 48 | + lib \ |
| 47 | + components \ | 49 | + components \ |
| 48 | + designer | 50 | + designer |
| @@ -52,7 +54,9 @@ index e02ca8e..49527c5 100644 | |||
| 52 | -contains(QT_CONFIG, shared): SUBDIRS += plugins | 54 | -contains(QT_CONFIG, shared): SUBDIRS += plugins |
| 53 | +!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins | 55 | +!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins |
| 54 | 56 | ||
| 55 | components.depends = lib | 57 | uitools.depends = uiplugin |
| 58 | lib.depends = uiplugin | ||
| 59 | @@ -15,7 +17,7 @@ components.depends = lib | ||
| 56 | designer.depends = components | 60 | designer.depends = components |
| 57 | plugins.depends = lib | 61 | plugins.depends = lib |
| 58 | 62 | ||
| @@ -75,7 +79,7 @@ index 3a70580..a977878 100644 | |||
| 75 | qtNomakeTools( \ | 79 | qtNomakeTools( \ |
| 76 | linguist \ | 80 | linguist \ |
| 77 | diff --git a/src/src.pro b/src/src.pro | 81 | diff --git a/src/src.pro b/src/src.pro |
| 78 | index 722b32e..9453152 100644 | 82 | index 494898f..c02848d 100644 |
| 79 | --- a/src/src.pro | 83 | --- a/src/src.pro |
| 80 | +++ b/src/src.pro | 84 | +++ b/src/src.pro |
| 81 | @@ -4,10 +4,12 @@ qtHaveModule(widgets) { | 85 | @@ -4,10 +4,12 @@ qtHaveModule(widgets) { |
| @@ -91,15 +95,15 @@ index 722b32e..9453152 100644 | |||
| 91 | + qtestlib | 95 | + qtestlib |
| 92 | + } | 96 | + } |
| 93 | + SUBDIRS += designer | 97 | + SUBDIRS += designer |
| 94 | # unix:!mac:!embedded:!qpa:SUBDIRS += qtconfig | ||
| 95 | 98 | ||
| 96 | linguist.depends = designer | 99 | linguist.depends = designer |
| 100 | } | ||
| 97 | @@ -15,7 +17,7 @@ qtHaveModule(widgets) { | 101 | @@ -15,7 +17,7 @@ qtHaveModule(widgets) { |
| 98 | } | ||
| 99 | 102 | ||
| 100 | SUBDIRS += linguist | 103 | SUBDIRS += linguist \ |
| 104 | qtplugininfo | ||
| 101 | -if(!android|android_app):!ios: SUBDIRS += qtpaths | 105 | -if(!android|android_app):!ios: SUBDIRS += qtpaths |
| 102 | +if(!android|android_app):!linguistonly:!ios: SUBDIRS += qtpaths | 106 | +if(!android|android_app):!ios:!linguistonly: SUBDIRS += qtpaths |
| 103 | 107 | ||
| 104 | mac { | 108 | mac { |
| 105 | SUBDIRS += macdeployqt | 109 | SUBDIRS += macdeployqt |
| @@ -118,14 +122,13 @@ index 722b32e..9453152 100644 | |||
| 118 | qtNomakeTools( \ | 122 | qtNomakeTools( \ |
| 119 | pixeltool \ | 123 | pixeltool \ |
| 120 | diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro | 124 | diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro |
| 121 | index df240e3..27ee687 100644 | 125 | index a703a06..44bae18 100644 |
| 122 | --- a/tests/auto/auto.pro | 126 | --- a/tests/auto/auto.pro |
| 123 | +++ b/tests/auto/auto.pro | 127 | +++ b/tests/auto/auto.pro |
| 124 | @@ -1,15 +1,17 @@ | 128 | @@ -1,14 +1,16 @@ |
| 125 | TEMPLATE=subdirs | 129 | TEMPLATE=subdirs |
| 126 | -SUBDIRS=\ | 130 | -SUBDIRS=\ |
| 127 | - linguist \ | 131 | - linguist \ |
| 128 | - host.pro \ | ||
| 129 | - qhelpcontentmodel \ | 132 | - qhelpcontentmodel \ |
| 130 | - qhelpenginecore \ | 133 | - qhelpenginecore \ |
| 131 | - qhelpgenerator \ | 134 | - qhelpgenerator \ |
| @@ -137,7 +140,6 @@ index df240e3..27ee687 100644 | |||
| 137 | +!linguistonly { | 140 | +!linguistonly { |
| 138 | + SUBDIRS=\ | 141 | + SUBDIRS=\ |
| 139 | + linguist \ | 142 | + linguist \ |
| 140 | + host.pro \ | ||
| 141 | + qhelpcontentmodel \ | 143 | + qhelpcontentmodel \ |
| 142 | + qhelpenginecore \ | 144 | + qhelpenginecore \ |
| 143 | + qhelpgenerator \ | 145 | + qhelpgenerator \ |
diff --git a/recipes-qt/qt5/qttools/0002-assistant-help-fix-linking-of-dependent-libraries.patch b/recipes-qt/qt5/qttools/0002-assistant-help-fix-linking-of-dependent-libraries.patch index 0f016c20..71776528 100644 --- a/recipes-qt/qt5/qttools/0002-assistant-help-fix-linking-of-dependent-libraries.patch +++ b/recipes-qt/qt5/qttools/0002-assistant-help-fix-linking-of-dependent-libraries.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 0805ac8c2c9f81643df211970666c15eac80cfb8 Mon Sep 17 00:00:00 2001 | 1 | From b0f96a829a7a04400f6a8b6cb14756db175c8e03 Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> | 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> |
| 3 | Date: Fri, 17 Jan 2014 14:33:19 +0100 | 3 | Date: Fri, 17 Jan 2014 14:33:19 +0100 |
| 4 | Subject: [PATCH 2/3] assistant/help: fix linking of dependent libraries | 4 | Subject: [PATCH 2/3] assistant/help: fix linking of dependent libraries |
diff --git a/recipes-qt/qt5/qttools/0003-add-noqtwebkit-configuration.patch b/recipes-qt/qt5/qttools/0003-add-noqtwebkit-configuration.patch index bbd338aa..0c3842eb 100644 --- a/recipes-qt/qt5/qttools/0003-add-noqtwebkit-configuration.patch +++ b/recipes-qt/qt5/qttools/0003-add-noqtwebkit-configuration.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 594d23ecc0f62e6a0ebfcb7b9cb879435211420a Mon Sep 17 00:00:00 2001 | 1 | From a4438a8c93e9846f1057dd7a21cbb41183440ec1 Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> | 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> |
| 3 | Date: Wed, 4 Jun 2014 11:28:16 +0200 | 3 | Date: Wed, 4 Jun 2014 11:28:16 +0200 |
| 4 | Subject: [PATCH 3/3] add noqtwebkit configuration | 4 | Subject: [PATCH 3/3] add noqtwebkit configuration |
| @@ -16,24 +16,24 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 16 | 2 files changed, 3 insertions(+), 3 deletions(-) | 16 | 2 files changed, 3 insertions(+), 3 deletions(-) |
| 17 | 17 | ||
| 18 | diff --git a/src/assistant/assistant/assistant.pro b/src/assistant/assistant/assistant.pro | 18 | diff --git a/src/assistant/assistant/assistant.pro b/src/assistant/assistant/assistant.pro |
| 19 | index 6e82b07..56df78c 100644 | 19 | index ef5c595..9c2dc1c 100644 |
| 20 | --- a/src/assistant/assistant/assistant.pro | 20 | --- a/src/assistant/assistant/assistant.pro |
| 21 | +++ b/src/assistant/assistant/assistant.pro | 21 | +++ b/src/assistant/assistant/assistant.pro |
| 22 | @@ -1,4 +1,4 @@ | 22 | @@ -1,4 +1,4 @@ |
| 23 | -qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static) { | 23 | -qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static) { |
| 24 | +qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static):!contains(CONFIG, noqtwebkit) { | 24 | +qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static):!contains(CONFIG, noqtwebkit) { |
| 25 | QT += webkitwidgets | 25 | BROWSER = qtwebkit |
| 26 | } else { | 26 | } else { |
| 27 | DEFINES += QT_NO_WEBKIT | 27 | BROWSER = qtextbrowser |
| 28 | @@ -71,7 +71,7 @@ SOURCES += aboutdialog.cpp \ | 28 | @@ -75,7 +75,7 @@ SOURCES += aboutdialog.cpp \ |
| 29 | openpageswidget.cpp \ | ||
| 30 | openpagesmanager.cpp \ | 29 | openpagesmanager.cpp \ |
| 31 | openpagesswitcher.cpp | 30 | openpagesswitcher.cpp |
| 32 | -qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static) { | 31 | |
| 33 | +qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static):!contains(CONFIG, noqtwebkit) { | 32 | -equals(BROWSER, "qtwebkit") { |
| 33 | +equals(BROWSER, "qtwebkit"):!contains(CONFIG, noqtwebkit) { | ||
| 34 | DEFINES += BROWSER_QTWEBKIT | ||
| 35 | QT += webkitwidgets | ||
| 34 | SOURCES += helpviewer_qwv.cpp | 36 | SOURCES += helpviewer_qwv.cpp |
| 35 | } else { | ||
| 36 | SOURCES += helpviewer_qtb.cpp | ||
| 37 | diff --git a/src/designer/src/plugins/plugins.pro b/src/designer/src/plugins/plugins.pro | 37 | diff --git a/src/designer/src/plugins/plugins.pro b/src/designer/src/plugins/plugins.pro |
| 38 | index 500a153..b60fa2d 100644 | 38 | index 500a153..b60fa2d 100644 |
| 39 | --- a/src/designer/src/plugins/plugins.pro | 39 | --- a/src/designer/src/plugins/plugins.pro |
diff --git a/recipes-qt/qt5/qttools_git.bb b/recipes-qt/qt5/qttools_git.bb index a4f63c79..afc89849 100644 --- a/recipes-qt/qt5/qttools_git.bb +++ b/recipes-qt/qt5/qttools_git.bb | |||
| @@ -3,9 +3,9 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=d87ae0d200af76dca730d911474cbe5b \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=ffcfac38a32c9ebdb8ff768fa1702478 \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | " | 10 | " |
| 11 | 11 | ||
| @@ -24,4 +24,4 @@ PACKAGECONFIG[qtwebkit] = ",,qtwebkit" | |||
| 24 | 24 | ||
| 25 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)}" | 25 | EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)}" |
| 26 | 26 | ||
| 27 | SRCREV = "a6ed9b418d1b4464f088b378e5bdb96ec420db6c" | 27 | SRCREV = "33c65366a7c3901d2aecfde3dbc485e1eac5c10c" |
diff --git a/recipes-qt/qt5/qttranslations_git.bb b/recipes-qt/qt5/qttranslations_git.bb index 93414530..10ec1aa6 100644 --- a/recipes-qt/qt5/qttranslations_git.bb +++ b/recipes-qt/qt5/qttranslations_git.bb | |||
| @@ -3,9 +3,9 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "(LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 4 | LICENSE = "(LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | " | 9 | " |
| 10 | 10 | ||
| 11 | DEPENDS += "qtbase qttools-native" | 11 | DEPENDS += "qtbase qttools-native" |
| @@ -93,4 +93,4 @@ FILES_${PN}-qt = " \ | |||
| 93 | ${OE_QMAKE_PATH_TRANSLATIONS}/qt_*.qm \ | 93 | ${OE_QMAKE_PATH_TRANSLATIONS}/qt_*.qm \ |
| 94 | " | 94 | " |
| 95 | 95 | ||
| 96 | SRCREV = "f76e5c98b0c426ffed95443e45041c3c0deab0c6" | 96 | SRCREV = "5e65c6fcdbbc75040426c8239c686f7b1ea689fd" |
diff --git a/recipes-qt/qt5/qtwayland-native_git.bb b/recipes-qt/qt5/qtwayland-native_git.bb index d03fb487..330473ed 100644 --- a/recipes-qt/qt5/qtwayland-native_git.bb +++ b/recipes-qt/qt5/qtwayland-native_git.bb | |||
| @@ -4,9 +4,9 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| @@ -26,4 +26,4 @@ do_install() { | |||
| 26 | oe_runmake install INSTALL_ROOT=${D} | 26 | oe_runmake install INSTALL_ROOT=${D} |
| 27 | } | 27 | } |
| 28 | 28 | ||
| 29 | SRCREV = "182488129c3f6a67a7e781fdb7c0147777191991" | 29 | SRCREV = "0e4e0a7c6be2928cc4300c8ef41d10ed8b3b316c" |
diff --git a/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch b/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch index c1bf3bd7..97326d32 100644 --- a/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch +++ b/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From be0881386edac8c39b5362d4efc4a05acb3e76c1 Mon Sep 17 00:00:00 2001 | 1 | From 5d3dbd14e72724f4cbffe79b82d5055d19094437 Mon Sep 17 00:00:00 2001 |
| 2 | From: Simon Busch <morphis@gravedo.de> | 2 | From: Simon Busch <morphis@gravedo.de> |
| 3 | Date: Fri, 19 Jul 2013 13:35:14 +0000 | 3 | Date: Fri, 19 Jul 2013 13:35:14 +0000 |
| 4 | Subject: [PATCH] Install the qtwaylandscanner tool to the native side | 4 | Subject: [PATCH] Install the qtwaylandscanner tool to the native side |
diff --git a/recipes-qt/qt5/qtwayland/0001-examples-wayland-include-server-buffer-only-when-bui.patch b/recipes-qt/qt5/qtwayland/0001-examples-wayland-include-server-buffer-only-when-bui.patch index 7588b2f4..714e1002 100644 --- a/recipes-qt/qt5/qtwayland/0001-examples-wayland-include-server-buffer-only-when-bui.patch +++ b/recipes-qt/qt5/qtwayland/0001-examples-wayland-include-server-buffer-only-when-bui.patch | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | From b7520d76235cea2e546e217052baf1c9324a261d Mon Sep 17 00:00:00 2001 | 1 | From f47f46bb3ea3a01967f0a4beab72e16e5e603fdf Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Sat, 22 Feb 2014 17:47:44 +0100 | 3 | Date: Sat, 22 Feb 2014 17:47:44 +0100 |
| 4 | Subject: [PATCH 1/2] examples/wayland: include server-buffer only when | 4 | Subject: [PATCH] examples/wayland: include server-buffer only when building |
| 5 | building with opengles2 | 5 | with opengles2 |
| 6 | 6 | ||
| 7 | * it's using glBindBuffer in | 7 | * it's using glBindBuffer in |
| 8 | server-buffer/client/serverbufferrenderer.cpp | 8 | server-buffer/client/serverbufferrenderer.cpp |
diff --git a/recipes-qt/qt5/qtwayland_git.bb b/recipes-qt/qt5/qtwayland_git.bb index 0be7afe8..361b54ad 100644 --- a/recipes-qt/qt5/qtwayland_git.bb +++ b/recipes-qt/qt5/qtwayland_git.bb | |||
| @@ -4,9 +4,9 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| @@ -37,7 +37,7 @@ SRC_URI += " \ | |||
| 37 | file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \ | 37 | file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \ |
| 38 | " | 38 | " |
| 39 | 39 | ||
| 40 | QT_VERSION ?= "5.4.3" | 40 | QT_VERSION ?= "5.5.0" |
| 41 | 41 | ||
| 42 | do_install_append() { | 42 | do_install_append() { |
| 43 | # do install files created by qtwaylandscanner | 43 | # do install files created by qtwaylandscanner |
| @@ -45,4 +45,4 @@ do_install_append() { | |||
| 45 | install ${B}/include/QtCompositor/${QT_VERSION}/QtCompositor/private/*protocol*.h ${D}${OE_QMAKE_PATH_QT_HEADERS}/QtCompositor/${QT_VERSION}/QtCompositor/private | 45 | install ${B}/include/QtCompositor/${QT_VERSION}/QtCompositor/private/*protocol*.h ${D}${OE_QMAKE_PATH_QT_HEADERS}/QtCompositor/${QT_VERSION}/QtCompositor/private |
| 46 | } | 46 | } |
| 47 | 47 | ||
| 48 | SRCREV = "182488129c3f6a67a7e781fdb7c0147777191991" | 48 | SRCREV = "0e4e0a7c6be2928cc4300c8ef41d10ed8b3b316c" |
diff --git a/recipes-qt/qt5/qtwebchannel_git.bb b/recipes-qt/qt5/qtwebchannel_git.bb index 84336522..236eb477 100644 --- a/recipes-qt/qt5/qtwebchannel_git.bb +++ b/recipes-qt/qt5/qtwebchannel_git.bb | |||
| @@ -5,12 +5,12 @@ require qt5-git.inc | |||
| 5 | # There are no GPLv2 licensed files in this component. | 5 | # There are no GPLv2 licensed files in this component. |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ | ||
| 9 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ | ||
| 10 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ | ||
| 8 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 11 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 9 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | ||
| 10 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | ||
| 11 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | ||
| 12 | " | 12 | " |
| 13 | 13 | ||
| 14 | DEPENDS += "qtdeclarative qtwebsockets" | 14 | DEPENDS += "qtdeclarative qtwebsockets" |
| 15 | 15 | ||
| 16 | SRCREV = "7b5da1d3dd561bc871e7ab4bf8644d33f60d5793" | 16 | SRCREV = "b0fb9dcb63e21c197417164e6067086426f1d4c6" |
diff --git a/recipes-qt/qt5/qtwebengine/0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch b/recipes-qt/qt5/qtwebengine/0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch index 64670f0e..32e8f873 100644 --- a/recipes-qt/qt5/qtwebengine/0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch +++ b/recipes-qt/qt5/qtwebengine/0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 59e305219cdaeac6d143cb0466a2f518b4050688 Mon Sep 17 00:00:00 2001 | 1 | From d1dfff21428643488790926bde3d699d64746f19 Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Fri, 3 Oct 2014 03:52:11 +0200 | 3 | Date: Fri, 3 Oct 2014 03:52:11 +0200 |
| 4 | Subject: [PATCH] <chromium> base.gypi: include atomicops_internals_x86_gcc.cc | 4 | Subject: [PATCH] <chromium> base.gypi: include atomicops_internals_x86_gcc.cc |
| @@ -10,10 +10,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 10 | 1 file changed, 1 insertion(+), 1 deletion(-) | 10 | 1 file changed, 1 insertion(+), 1 deletion(-) |
| 11 | 11 | ||
| 12 | diff --git a/src/3rdparty/chromium/base/base.gypi b/src/3rdparty/chromium/base/base.gypi | 12 | diff --git a/src/3rdparty/chromium/base/base.gypi b/src/3rdparty/chromium/base/base.gypi |
| 13 | index a5a990a..af30cfa 100644 | 13 | index a5a285a..f1cad86 100644 |
| 14 | --- a/src/3rdparty/chromium/base/base.gypi | 14 | --- a/src/3rdparty/chromium/base/base.gypi |
| 15 | +++ b/src/3rdparty/chromium/base/base.gypi | 15 | +++ b/src/3rdparty/chromium/base/base.gypi |
| 16 | @@ -745,7 +745,7 @@ | 16 | @@ -759,7 +759,7 @@ |
| 17 | ['include', '^nix/'], | 17 | ['include', '^nix/'], |
| 18 | ], | 18 | ], |
| 19 | }], | 19 | }], |
diff --git a/recipes-qt/qt5/qtwebengine/0001-functions.prf-Don-t-match-QMAKE_EXT_CPP-or-QMAKE_EXT.patch b/recipes-qt/qt5/qtwebengine/0001-functions.prf-Don-t-match-QMAKE_EXT_CPP-or-QMAKE_EXT.patch index 447552e6..e8a2babf 100644 --- a/recipes-qt/qt5/qtwebengine/0001-functions.prf-Don-t-match-QMAKE_EXT_CPP-or-QMAKE_EXT.patch +++ b/recipes-qt/qt5/qtwebengine/0001-functions.prf-Don-t-match-QMAKE_EXT_CPP-or-QMAKE_EXT.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 6e468c814087bac6ff88a1d7d02549e6cf8a152c Mon Sep 17 00:00:00 2001 | 1 | From 42b7e38e8d6fd36976a984edb40f947923d78d2c Mon Sep 17 00:00:00 2001 |
| 2 | From: Martin Jansa <Martin.Jansa@gmail.com> | 2 | From: Martin Jansa <Martin.Jansa@gmail.com> |
| 3 | Date: Mon, 30 Jun 2014 20:08:17 +0200 | 3 | Date: Mon, 30 Jun 2014 20:08:17 +0200 |
| 4 | Subject: [PATCH 1/4] functions.prf: Don't match QMAKE_EXT_CPP or QMAKE_EXT_H | 4 | Subject: [PATCH 1/3] functions.prf: Don't match QMAKE_EXT_CPP or QMAKE_EXT_H |
| 5 | anywhere in path, but at the end | 5 | anywhere in path, but at the end |
| 6 | 6 | ||
| 7 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 7 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
| @@ -10,17 +10,18 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 10 | 1 file changed, 2 insertions(+), 2 deletions(-) | 10 | 1 file changed, 2 insertions(+), 2 deletions(-) |
| 11 | 11 | ||
| 12 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf | 12 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf |
| 13 | index 4c2547d..64c08ad 100644 | 13 | index ef0320d..98cff24 100644 |
| 14 | --- a/tools/qmake/mkspecs/features/functions.prf | 14 | --- a/tools/qmake/mkspecs/features/functions.prf |
| 15 | +++ b/tools/qmake/mkspecs/features/functions.prf | 15 | +++ b/tools/qmake/mkspecs/features/functions.prf |
| 16 | @@ -87,8 +87,8 @@ defineReplace(findIncludedMocFiles) { | 16 | @@ -98,9 +98,9 @@ defineReplace(mocOutput) { |
| 17 | defineReplace(mocOutput) { | ||
| 18 | out = $$1 | 17 | out = $$1 |
| 19 | # The order is important, since the output of the second replace would end up accidentaly transformed by the first one | 18 | # The order is important, since the output of the second replace would end up accidentaly transformed by the first one |
| 20 | - out = $$replace(out, ^(.*)($$join(QMAKE_EXT_CPP,|)), $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) | 19 | for(ext, $$list($${QMAKE_EXT_CPP})): \ |
| 21 | - out = $$replace(out, ^(.*)($$join(QMAKE_EXT_H,|)), $${QMAKE_H_MOD_MOC}\\1$${first(QMAKE_EXT_CPP)}) | 20 | - out = $$replace(out, ^(.*)($$re_escape($${ext})), $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) |
| 22 | + out = $$replace(out, ^(.*)($$join(QMAKE_EXT_CPP,|))$, $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) | 21 | + out = $$replace(out, ^(.*)($$re_escape($${ext}))$, $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) |
| 23 | + out = $$replace(out, ^(.*)($$join(QMAKE_EXT_H,|))$, $${QMAKE_H_MOD_MOC}\\1$${first(QMAKE_EXT_CPP)}) | 22 | for(ext, $$list($${QMAKE_EXT_H})): \ |
| 23 | - out = $$replace(out, ^(.*)($$re_escape($${ext})), $${QMAKE_H_MOD_MOC}\\1$${first(QMAKE_EXT_CPP)}) | ||
| 24 | + out = $$replace(out, ^(.*)($$re_escape($${ext}))$, $${QMAKE_H_MOD_MOC}\\1$${first(QMAKE_EXT_CPP)}) | ||
| 24 | return($$out) | 25 | return($$out) |
| 25 | } | 26 | } |
| 26 | 27 | ||
diff --git a/recipes-qt/qt5/qtwebengine/0002-functions.prf-Make-sure-we-only-use-the-file-name-to.patch b/recipes-qt/qt5/qtwebengine/0002-functions.prf-Make-sure-we-only-use-the-file-name-to.patch index e7f4f7f0..9df1c046 100644 --- a/recipes-qt/qt5/qtwebengine/0002-functions.prf-Make-sure-we-only-use-the-file-name-to.patch +++ b/recipes-qt/qt5/qtwebengine/0002-functions.prf-Make-sure-we-only-use-the-file-name-to.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 7a4a82af04fb228526dfd72a1d42b53b402952d1 Mon Sep 17 00:00:00 2001 | 1 | From 4b5d3c736714b2712d7f3a77ea5a8a76fea0fc1f Mon Sep 17 00:00:00 2001 |
| 2 | From: Simon Busch <morphis@gravedo.de> | 2 | From: Simon Busch <morphis@gravedo.de> |
| 3 | Date: Tue, 18 Nov 2014 10:38:18 +0100 | 3 | Date: Tue, 18 Nov 2014 10:38:18 +0100 |
| 4 | Subject: [PATCH 2/4] functions.prf: Make sure we only use the file name to | 4 | Subject: [PATCH 2/3] functions.prf: Make sure we only use the file name to |
| 5 | generate it's moc'ed abbreviation | 5 | generate it's moc'ed abbreviation |
| 6 | 6 | ||
| 7 | Signed-off-by: Simon Busch <morphis@gravedo.de> | 7 | Signed-off-by: Simon Busch <morphis@gravedo.de> |
| @@ -11,10 +11,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 11 | 1 file changed, 2 insertions(+), 1 deletion(-) | 11 | 1 file changed, 2 insertions(+), 1 deletion(-) |
| 12 | 12 | ||
| 13 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf | 13 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf |
| 14 | index 64c08ad..b46478b 100644 | 14 | index 98cff24..aec54ea 100644 |
| 15 | --- a/tools/qmake/mkspecs/features/functions.prf | 15 | --- a/tools/qmake/mkspecs/features/functions.prf |
| 16 | +++ b/tools/qmake/mkspecs/features/functions.prf | 16 | +++ b/tools/qmake/mkspecs/features/functions.prf |
| 17 | @@ -85,7 +85,8 @@ defineReplace(findIncludedMocFiles) { | 17 | @@ -95,7 +95,8 @@ defineReplace(findIncludedMocFiles) { |
| 18 | } | 18 | } |
| 19 | 19 | ||
| 20 | defineReplace(mocOutput) { | 20 | defineReplace(mocOutput) { |
| @@ -22,8 +22,8 @@ index 64c08ad..b46478b 100644 | |||
| 22 | + in = $$1 | 22 | + in = $$1 |
| 23 | + out = $$basename(in) | 23 | + out = $$basename(in) |
| 24 | # The order is important, since the output of the second replace would end up accidentaly transformed by the first one | 24 | # The order is important, since the output of the second replace would end up accidentaly transformed by the first one |
| 25 | out = $$replace(out, ^(.*)($$join(QMAKE_EXT_CPP,|))$, $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) | 25 | for(ext, $$list($${QMAKE_EXT_CPP})): \ |
| 26 | out = $$replace(out, ^(.*)($$join(QMAKE_EXT_H,|))$, $${QMAKE_H_MOD_MOC}\\1$${first(QMAKE_EXT_CPP)}) | 26 | out = $$replace(out, ^(.*)($$re_escape($${ext}))$, $${QMAKE_CPP_MOD_MOC}\\1$${QMAKE_EXT_CPP_MOC}) |
| 27 | -- | 27 | -- |
| 28 | 2.4.2 | 28 | 2.4.2 |
| 29 | 29 | ||
diff --git a/recipes-qt/qt5/qtwebengine/0003-functions.prf-allow-build-for-linux-oe-g-platform.patch b/recipes-qt/qt5/qtwebengine/0003-functions.prf-allow-build-for-linux-oe-g-platform.patch index a932aefc..a533eea8 100644 --- a/recipes-qt/qt5/qtwebengine/0003-functions.prf-allow-build-for-linux-oe-g-platform.patch +++ b/recipes-qt/qt5/qtwebengine/0003-functions.prf-allow-build-for-linux-oe-g-platform.patch | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | From 87f1a22e6a1a6b40712eb131ba128d4f1e2da9b8 Mon Sep 17 00:00:00 2001 | 1 | From 399990aa9b68437be7f3d6fa16556bf091645c34 Mon Sep 17 00:00:00 2001 |
| 2 | From: Frieder Schrempf <frieder.schrempf@online.de> | 2 | From: Frieder Schrempf <frieder.schrempf@online.de> |
| 3 | Date: Mon, 1 Dec 2014 14:34:40 +0000 | 3 | Date: Mon, 1 Dec 2014 14:34:40 +0000 |
| 4 | Subject: [PATCH 3/4] functions.prf: allow build for linux-oe-g++ platform | 4 | Subject: [PATCH 3/3] functions.prf: allow build for linux-oe-g++ platform |
| 5 | 5 | ||
| 6 | Upstream-Status: Inappropriate [OE specific] | 6 | Upstream-Status: Inappropriate [OE specific] |
| 7 | 7 | ||
| @@ -12,10 +12,10 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |||
| 12 | 1 file changed, 1 insertion(+), 1 deletion(-) | 12 | 1 file changed, 1 insertion(+), 1 deletion(-) |
| 13 | 13 | ||
| 14 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf | 14 | diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf |
| 15 | index b46478b..6205bf4 100644 | 15 | index aec54ea..6a4b01f 100644 |
| 16 | --- a/tools/qmake/mkspecs/features/functions.prf | 16 | --- a/tools/qmake/mkspecs/features/functions.prf |
| 17 | +++ b/tools/qmake/mkspecs/features/functions.prf | 17 | +++ b/tools/qmake/mkspecs/features/functions.prf |
| 18 | @@ -10,7 +10,7 @@ defineTest(isPlatformSupported) { | 18 | @@ -14,7 +14,7 @@ defineTest(isPlatformSupported) { |
| 19 | 19 | ||
| 20 | linux-g++*:!isGCCVersionSupported(): return(false) | 20 | linux-g++*:!isGCCVersionSupported(): return(false) |
| 21 | !isPythonVersionSupported(): return(false) | 21 | !isPythonVersionSupported(): return(false) |
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index 4b89dddf..2933bf70 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb | |||
| @@ -2,13 +2,14 @@ SUMMARY = "QtWebEngine combines the power of Chromium and Qt" | |||
| 2 | 2 | ||
| 3 | LICENSE = "LGPL-3.0 & BSD" | 3 | LICENSE = "LGPL-3.0 & BSD" |
| 4 | LIC_FILES_CHKSUM = " \ | 4 | LIC_FILES_CHKSUM = " \ |
| 5 | file://src/core/browser_context_qt.cpp;md5=91895ac1852e1b07202d9716194e8dd8;beginline=1;endline=35 \ | 5 | file://src/core/browser_context_qt.cpp;md5=5fe719c44250955a5d5f8fb15fc8b1da;beginline=1;endline=35 \ |
| 6 | file://src/3rdparty/chromium/LICENSE;md5=537e0b52077bf0a616d0a0c8a79bc9d5 \ | 6 | file://src/3rdparty/chromium/LICENSE;md5=537e0b52077bf0a616d0a0c8a79bc9d5 \ |
| 7 | file://LICENSE.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ | 7 | file://LICENSE.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ |
| 8 | " | 8 | " |
| 9 | 9 | ||
| 10 | DEPENDS += " \ | 10 | DEPENDS += " \ |
| 11 | ninja-native \ | 11 | ninja-native \ |
| 12 | qtwebchannel \ | ||
| 12 | qtbase qtdeclarative qtxmlpatterns qtquickcontrols \ | 13 | qtbase qtdeclarative qtxmlpatterns qtquickcontrols \ |
| 13 | libdrm fontconfig pixman openssl pango cairo icu pciutils \ | 14 | libdrm fontconfig pixman openssl pango cairo icu pciutils \ |
| 14 | libcap \ | 15 | libcap \ |
| @@ -71,8 +72,7 @@ RDEPENDS_${PN}-examples += " \ | |||
| 71 | qtdeclarative-qmlplugins \ | 72 | qtdeclarative-qmlplugins \ |
| 72 | " | 73 | " |
| 73 | 74 | ||
| 74 | QT_MODULE_BRANCH = "5.4" | 75 | QT_MODULE_BRANCH_CHROMIUM = "40.0.2214-based" |
| 75 | QT_MODULE_BRANCH_CHROMIUM = "37.0.2062-based" | ||
| 76 | 76 | ||
| 77 | SRC_URI += " \ | 77 | SRC_URI += " \ |
| 78 | ${QT_GIT}/qt/qtwebengine-chromium.git;name=chromium;branch=${QT_MODULE_BRANCH_CHROMIUM};destsuffix=git/src/3rdparty \ | 78 | ${QT_GIT}/qt/qtwebengine-chromium.git;name=chromium;branch=${QT_MODULE_BRANCH_CHROMIUM};destsuffix=git/src/3rdparty \ |
| @@ -81,8 +81,8 @@ SRC_URI += " \ | |||
| 81 | file://0003-functions.prf-allow-build-for-linux-oe-g-platform.patch \ | 81 | file://0003-functions.prf-allow-build-for-linux-oe-g-platform.patch \ |
| 82 | file://0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch \ | 82 | file://0001-chromium-base.gypi-include-atomicops_internals_x86_g.patch \ |
| 83 | " | 83 | " |
| 84 | SRCREV_qtwebengine = "55a7fc7651136510032166ff24eb5e7e49635145" | 84 | SRCREV_qtwebengine = "c6573119006014ff7bc0efb2da16ea35d302a1ec" |
| 85 | SRCREV_chromium = "140893bef70011645c686f5fabe45018dd2e392a" | 85 | SRCREV_chromium = "41a1a031cd69e187a9608359ffe56652dcaaa6c5" |
| 86 | SRCREV = "${SRCREV_qtwebengine}" | 86 | SRCREV = "${SRCREV_qtwebengine}" |
| 87 | 87 | ||
| 88 | SRCREV_FORMAT = "qtwebengine" | 88 | SRCREV_FORMAT = "qtwebengine" |
diff --git a/recipes-qt/qt5/qtwebkit-examples/0001-qtwebkit-examples-enable-building-examples-by-defaul.patch b/recipes-qt/qt5/qtwebkit-examples/0001-qtwebkit-examples-enable-building-examples-by-defaul.patch index 3186e13d..05b8f290 100644 --- a/recipes-qt/qt5/qtwebkit-examples/0001-qtwebkit-examples-enable-building-examples-by-defaul.patch +++ b/recipes-qt/qt5/qtwebkit-examples/0001-qtwebkit-examples-enable-building-examples-by-defaul.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From f1367fc72dad78fb5625c6cd4b08914b34583d0f Mon Sep 17 00:00:00 2001 | 1 | From a3c5765b9ef6e45db847c79ed333ed5e124dbecb Mon Sep 17 00:00:00 2001 |
| 2 | From: Denys Dmytriyenko <denys@ti.com> | 2 | From: Denys Dmytriyenko <denys@ti.com> |
| 3 | Date: Tue, 8 Oct 2013 00:18:10 -0400 | 3 | Date: Tue, 8 Oct 2013 00:18:10 -0400 |
| 4 | Subject: [PATCH] qtwebkit-examples: enable building examples by default | 4 | Subject: [PATCH] qtwebkit-examples: enable building examples by default |
diff --git a/recipes-qt/qt5/qtwebkit-examples_git.bb b/recipes-qt/qt5/qtwebkit-examples_git.bb index 5fd64366..62e9612b 100644 --- a/recipes-qt/qt5/qtwebkit-examples_git.bb +++ b/recipes-qt/qt5/qtwebkit-examples_git.bb | |||
| @@ -5,11 +5,11 @@ require qt5-git.inc | |||
| 5 | # There are no GPLv2 licensed files in this component. | 5 | # There are no GPLv2 licensed files in this component. |
| 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 6 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 7 | LIC_FILES_CHKSUM = " \ | 7 | LIC_FILES_CHKSUM = " \ |
| 8 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 8 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 9 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 9 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 10 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 10 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 11 | file://examples/webkitwidgets/scroller/wheel/main.cpp;endline=112;md5=6f92d041824c63426993c8ce3ae0eb77 \ | 11 | file://examples/webkitwidgets/scroller/wheel/main.cpp;endline=39;md5=b0739af76072fbe303dc04b6941e054f \ |
| 12 | file://examples/webkitwidgets/imageanalyzer/imageanalyzer.cpp;endline=223;md5=13ffb472fefe4bdf6464954a22251f35 \ | 12 | file://examples/webkitwidgets/imageanalyzer/imageanalyzer.cpp;endline=39;md5=b0739af76072fbe303dc04b6941e054f \ |
| 13 | " | 13 | " |
| 14 | 14 | ||
| 15 | SRC_URI += " \ | 15 | SRC_URI += " \ |
| @@ -20,4 +20,4 @@ DEPENDS += "qtwebkit qtxmlpatterns" | |||
| 20 | RDEPENDS_${PN}-examples += "qtwebkit-qmlplugins" | 20 | RDEPENDS_${PN}-examples += "qtwebkit-qmlplugins" |
| 21 | RDEPENDS_${PN}-examples += "${@base_contains('PACKAGECONFIG_OPENSSL', 'openssl', 'ca-certificates', '', d)}" | 21 | RDEPENDS_${PN}-examples += "${@base_contains('PACKAGECONFIG_OPENSSL', 'openssl', 'ca-certificates', '', d)}" |
| 22 | 22 | ||
| 23 | SRCREV = "9f20ed0b48f4e5adcc9558b2cc4171eb17f243dd" | 23 | SRCREV = "b7c95dc2ada1171f06183ce8608990732791aa3f" |
diff --git a/recipes-qt/qt5/qtwebkit/0001-qtwebkit-fix-QA-issue-bad-RPATH.patch b/recipes-qt/qt5/qtwebkit/0001-qtwebkit-fix-QA-issue-bad-RPATH.patch index 09876dba..9163468e 100644 --- a/recipes-qt/qt5/qtwebkit/0001-qtwebkit-fix-QA-issue-bad-RPATH.patch +++ b/recipes-qt/qt5/qtwebkit/0001-qtwebkit-fix-QA-issue-bad-RPATH.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 5a9e19d69e4443ab6272aeca6d707e39fe1943ef Mon Sep 17 00:00:00 2001 | 1 | From 6b1704fcbe24d78c546a45c882db817634192058 Mon Sep 17 00:00:00 2001 |
| 2 | From: Trevor Woerner <trevor.woerner@linaro.org> | 2 | From: Trevor Woerner <trevor.woerner@linaro.org> |
| 3 | Date: Fri, 7 Feb 2014 04:07:17 +0100 | 3 | Date: Fri, 7 Feb 2014 04:07:17 +0100 |
| 4 | Subject: [PATCH 1/2] qtwebkit: fix QA issue (bad RPATH) | 4 | Subject: [PATCH 1/2] qtwebkit: fix QA issue (bad RPATH) |
diff --git a/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch b/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch index e384282b..34aedbd3 100644 --- a/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch +++ b/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 22cad8ae3c1b8601ebf785ef5dfda4516056ee53 Mon Sep 17 00:00:00 2001 | 1 | From 8239c912d045d04d4944650dde397473a8eb4462 Mon Sep 17 00:00:00 2001 |
| 2 | From: Magnus Granberg <zorry@gentoo.org> | 2 | From: Magnus Granberg <zorry@gentoo.org> |
| 3 | Date: Fri, 27 Feb 2015 11:55:09 +0100 | 3 | Date: Fri, 27 Feb 2015 11:55:09 +0100 |
| 4 | Subject: [PATCH 2/2] Remove TEXTREL tag in x86 | 4 | Subject: [PATCH 2/2] Remove TEXTREL tag in x86 |
diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index db1a0989..74f98a70 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb | |||
| @@ -3,7 +3,7 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "BSD & LGPLv2+ | GPL-2.0" | 4 | LICENSE = "BSD & LGPLv2+ | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 6 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 7 | file://Source/WebCore/rendering/RenderApplet.h;endline=22;md5=fb9694013ad71b78f8913af7a5959680 \ | 7 | file://Source/WebCore/rendering/RenderApplet.h;endline=22;md5=fb9694013ad71b78f8913af7a5959680 \ |
| 8 | file://Source/WebKit/gtk/webkit/webkit.h;endline=21;md5=b4fbe9f4a944f1d071dba1d2c76b3351 \ | 8 | file://Source/WebKit/gtk/webkit/webkit.h;endline=21;md5=b4fbe9f4a944f1d071dba1d2c76b3351 \ |
| 9 | file://Source/JavaScriptCore/parser/Parser.h;endline=21;md5=bd69f72183a7af673863f057576e21ee \ | 9 | file://Source/JavaScriptCore/parser/Parser.h;endline=21;md5=bd69f72183a7af673863f057576e21ee \ |
| @@ -64,4 +64,4 @@ PACKAGES = "${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE | |||
| 64 | RUBY_SYS = "${@ '${BUILD_SYS}'.replace('i486', 'i386').replace('i586', 'i386').replace('i686', 'i386') }" | 64 | RUBY_SYS = "${@ '${BUILD_SYS}'.replace('i486', 'i386').replace('i586', 'i386').replace('i686', 'i386') }" |
| 65 | export RUBYLIB="${STAGING_DATADIR_NATIVE}/rubygems:${STAGING_LIBDIR_NATIVE}/ruby:${STAGING_LIBDIR_NATIVE}/ruby/${RUBY_SYS}" | 65 | export RUBYLIB="${STAGING_DATADIR_NATIVE}/rubygems:${STAGING_LIBDIR_NATIVE}/ruby:${STAGING_LIBDIR_NATIVE}/ruby/${RUBY_SYS}" |
| 66 | 66 | ||
| 67 | SRCREV = "ea590d74eae21dd70b189e0b8ba4bfb6a9bddb94" | 67 | SRCREV = "3f0fbb46e2e4e3d0d9ac9f0731b3f8435a504b4b" |
diff --git a/recipes-qt/qt5/qtwebsockets_git.bb b/recipes-qt/qt5/qtwebsockets_git.bb index 85e91567..b1e29519 100644 --- a/recipes-qt/qt5/qtwebsockets_git.bb +++ b/recipes-qt/qt5/qtwebsockets_git.bb | |||
| @@ -3,12 +3,11 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 4 | LICENSE = "GFDL-1.3 & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE;md5=4fbd65380cdd255951079008b364516c \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 8 | file://LGPL_EXCEPTION.txt;md5=bb426f3367c4805d1e12fad05bd0b750 \ |
| 9 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | ||
| 10 | " | 9 | " |
| 11 | 10 | ||
| 12 | DEPENDS += "qtbase qtdeclarative" | 11 | DEPENDS += "qtbase qtdeclarative" |
| 13 | 12 | ||
| 14 | SRCREV = "0002e934391ace7b77665a227068c3e06d576772" | 13 | SRCREV = "158ec0ca22f8f6713eb80f737eb8d0ef84f515ac" |
diff --git a/recipes-qt/qt5/qtx11extras_git.bb b/recipes-qt/qt5/qtx11extras_git.bb index 6f60f2b0..e73feb7d 100644 --- a/recipes-qt/qt5/qtx11extras_git.bb +++ b/recipes-qt/qt5/qtx11extras_git.bb | |||
| @@ -3,13 +3,13 @@ require qt5-git.inc | |||
| 3 | 3 | ||
| 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" | 4 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0) | GPL-2.0" |
| 5 | LIC_FILES_CHKSUM = " \ | 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 6 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 7 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 7 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 8 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 8 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 9 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 10 | file://LICENSE.GPLv2;md5=e782f55badfa137e5e59c330f12cc8ed \ | 10 | file://LICENSE.GPLv2;md5=05832301944453ec79e40ba3c3cfceec \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase" | 13 | DEPENDS += "qtbase" |
| 14 | 14 | ||
| 15 | SRCREV = "32b1ce9e1b1542f6779abcbcd78613b15149aaaa" | 15 | SRCREV = "f2da28b77cf3256d98e00ff7435938ebee44cb01" |
diff --git a/recipes-qt/qt5/qtxmlpatterns_git.bb b/recipes-qt/qt5/qtxmlpatterns_git.bb index 1be68533..cb6bf9df 100644 --- a/recipes-qt/qt5/qtxmlpatterns_git.bb +++ b/recipes-qt/qt5/qtxmlpatterns_git.bb | |||
| @@ -4,12 +4,12 @@ require qt5-git.inc | |||
| 4 | # There are no LGPLv3-only licensed files in this component. | 4 | # There are no LGPLv3-only licensed files in this component. |
| 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" | 5 | LICENSE = "GFDL-1.3 & BSD & (LGPL-2.1 & Digia-Qt-LGPL-Exception-1.1 | LGPL-3.0)" |
| 6 | LIC_FILES_CHKSUM = " \ | 6 | LIC_FILES_CHKSUM = " \ |
| 7 | file://LICENSE.LGPLv21;md5=cff17b12416c896e10ae2c17a64252e7 \ | 7 | file://LICENSE.LGPLv21;md5=58a180e1cf84c756c29f782b3a485c29 \ |
| 8 | file://LICENSE.LGPLv3;md5=c1939be5579666be947371bc8120425f \ | 8 | file://LICENSE.LGPLv3;md5=c4fe8c6de4eef597feec6e90ed62e962 \ |
| 9 | file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ | 9 | file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ |
| 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | 10 | file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | DEPENDS += "qtbase" | 13 | DEPENDS += "qtbase" |
| 14 | 14 | ||
| 15 | SRCREV = "c21924d67a8ef39282afdf3ae6fef798dfca7135" | 15 | SRCREV = "ae6504efc85adf754d60a02f81413e5949282d78" |
