update buildroot to 2017.02.11
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
From 91c3b111e45dd476aba057836b1b618eacf90f3f Mon Sep 17 00:00:00 2001
|
||||
From: Julien Corjon <corjon.j@ecagroup.com>
|
||||
Date: Tue, 21 Jul 2015 09:58:14 +0200
|
||||
Subject: [PATCH] eglfs - fix rasp-pi header inclusion
|
||||
|
||||
eglplateform.h include headers for low level instruction and fail on brcm
|
||||
headers inclusion
|
||||
For the brcm presence test we use egl pkg-config file
|
||||
For the eglfs-plugin compilation we use the egl configuration
|
||||
|
||||
Upstream-Status: https://bugreports.qt.io/browse/QTBUG-47339
|
||||
Signed-off-by: Julien Corjon <corjon.j@ecagroup.com>
|
||||
---
|
||||
config.tests/qpa/eglfs-brcm/eglfs-brcm.pro | 2 ++
|
||||
src/plugins/platforms/eglfs/eglfs-plugin.pro | 1 +
|
||||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
|
||||
index ce16a3a..192a8ad 100644
|
||||
--- a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
|
||||
+++ b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
|
||||
@@ -1,6 +1,8 @@
|
||||
SOURCES = eglfs-brcm.cpp
|
||||
|
||||
CONFIG -= qt
|
||||
+CONFIG += link_pkgconfig
|
||||
+PKGCONFIG += egl
|
||||
|
||||
INCLUDEPATH += $$QMAKE_INCDIR_EGL
|
||||
|
||||
diff --git a/src/plugins/platforms/eglfs/eglfs-plugin.pro b/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
index 0f493fd..8479496 100644
|
||||
--- a/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
+++ b/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
@@ -6,6 +6,7 @@ PLUGIN_CLASS_NAME = QEglFSIntegrationPlugin
|
||||
load(qt_plugin)
|
||||
|
||||
QT += platformsupport-private eglfs_device_lib-private
|
||||
+CONFIG += egl
|
||||
|
||||
SOURCES += $$PWD/qeglfsmain.cpp
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
From 74af93f5298b54bc2327843f390bf202776f2f48 Mon Sep 17 00:00:00 2001
|
||||
From: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
||||
Date: Tue, 10 Jan 2017 14:18:02 +0100
|
||||
Subject: [PATCH] fix parallel builds with -qt-freetype -system-libpng
|
||||
|
||||
freetype has no dependency on gui, so it needs to pull in gui's
|
||||
configuration manually, as that's where the system libpng is found.
|
||||
|
||||
Task-number: QTBUG-58038
|
||||
Change-Id: I881495f7d2a8f7c1a45d7d4c9e7698ff1d30f2a9
|
||||
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
||||
Reviewed-by: Joni Poikelin <joni.poikelin@qt.io>
|
||||
|
||||
Upstream: https://code.qt.io/cgit/qt/qtbase.git/commit/?id=4dcfd90e4fd7d4c49138038dbbcbda8794a9fbff
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
---
|
||||
src/3rdparty/freetype/freetype.pro | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/3rdparty/freetype/freetype.pro b/src/3rdparty/freetype/freetype.pro
|
||||
index 5b1eb92e..390a6da7 100644
|
||||
--- a/src/3rdparty/freetype/freetype.pro
|
||||
+++ b/src/3rdparty/freetype/freetype.pro
|
||||
@@ -69,6 +69,7 @@ DEFINES += FT_CONFIG_OPTION_SYSTEM_ZLIB
|
||||
include(../zlib_dependency.pri)
|
||||
|
||||
DEFINES += FT_CONFIG_OPTION_USE_PNG
|
||||
+include($$OUT_PWD/../../gui/qtgui-config.pri)
|
||||
QMAKE_USE_PRIVATE += libpng
|
||||
|
||||
DEFINES += TT_CONFIG_OPTION_SUBPIXEL_HINTING
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
From 35ee8b53549fab6ebffe289417e1d94298447af7 Mon Sep 17 00:00:00 2001
|
||||
From: Shawn Rutledge <shawn.rutledge@digia.com>
|
||||
Date: Fri, 10 Feb 2017 13:56:58 +0100
|
||||
Subject: [PATCH] fix VNC platform plugin build on big-endian machines
|
||||
|
||||
Task-number: QTBUG-58734
|
||||
Change-Id: I3e44ee4be5003acaba2f1b8ed2658a3ff1bd700e
|
||||
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
||||
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
|
||||
|
||||
Upstream: http://code.qt.io/cgit/qt/qtbase.git/patch/?id=6f64bfa654fb7e20bb75ec3b0544b81482babb44
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
---
|
||||
src/plugins/platforms/vnc/qvncclient.cpp | 6 +++---
|
||||
src/plugins/platforms/vnc/qvncscreen.cpp | 7 ++++++-
|
||||
src/plugins/platforms/vnc/qvncscreen.h | 2 +-
|
||||
3 files changed, 10 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/plugins/platforms/vnc/qvncclient.cpp b/src/plugins/platforms/vnc/qvncclient.cpp
|
||||
index dae3e83f..58dcfc9b 100644
|
||||
--- a/src/plugins/platforms/vnc/qvncclient.cpp
|
||||
+++ b/src/plugins/platforms/vnc/qvncclient.cpp
|
||||
@@ -142,7 +142,7 @@ void QVncClient::convertPixels(char *dst, const char *src, int count) const
|
||||
case 16: {
|
||||
quint16 p = *reinterpret_cast<const quint16*>(src);
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- if (swapBytes)
|
||||
+ if (m_swapBytes)
|
||||
p = ((p & 0xff) << 8) | ((p & 0xff00) >> 8);
|
||||
#endif
|
||||
r = (p >> 11) & 0x1f;
|
||||
@@ -484,7 +484,7 @@ void QVncClient::setPixelFormat()
|
||||
m_sameEndian = (QSysInfo::ByteOrder == QSysInfo::BigEndian) == !!m_pixelFormat.bigEndian;
|
||||
m_needConversion = pixelConversionNeeded();
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- m_swapBytes = qvnc_screen->swapBytes();
|
||||
+ m_swapBytes = server()->screen()->swapBytes();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -639,7 +639,7 @@ bool QVncClient::pixelConversionNeeded() const
|
||||
return true;
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- if (qvnc_screen->swapBytes())
|
||||
+ if (server()->screen()->swapBytes())
|
||||
return true;
|
||||
#endif
|
||||
|
||||
diff --git a/src/plugins/platforms/vnc/qvncscreen.cpp b/src/plugins/platforms/vnc/qvncscreen.cpp
|
||||
index 34def457..64f1bc0b 100644
|
||||
--- a/src/plugins/platforms/vnc/qvncscreen.cpp
|
||||
+++ b/src/plugins/platforms/vnc/qvncscreen.cpp
|
||||
@@ -43,6 +43,7 @@
|
||||
#include <QtFbSupport/private/qfbcursor_p.h>
|
||||
|
||||
#include <QtGui/QPainter>
|
||||
+#include <QtGui/QScreen>
|
||||
#include <QtCore/QRegularExpression>
|
||||
|
||||
|
||||
@@ -172,14 +173,18 @@ QPixmap QVncScreen::grabWindow(WId wid, int x, int y, int width, int height) con
|
||||
}
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
-bool QVNCScreen::swapBytes() const
|
||||
+bool QVncScreen::swapBytes() const
|
||||
{
|
||||
+ return false;
|
||||
+
|
||||
+ /* TODO
|
||||
if (depth() != 16)
|
||||
return false;
|
||||
|
||||
if (screen())
|
||||
return screen()->frameBufferLittleEndian();
|
||||
return frameBufferLittleEndian();
|
||||
+ */
|
||||
}
|
||||
#endif
|
||||
|
||||
diff --git a/src/plugins/platforms/vnc/qvncscreen.h b/src/plugins/platforms/vnc/qvncscreen.h
|
||||
index 785abd6d..0b42c3c7 100644
|
||||
--- a/src/plugins/platforms/vnc/qvncscreen.h
|
||||
+++ b/src/plugins/platforms/vnc/qvncscreen.h
|
||||
@@ -73,7 +73,7 @@ public:
|
||||
void clearDirty() { dirtyRegion = QRegion(); }
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- bool swapBytes() const
|
||||
+ bool swapBytes() const;
|
||||
#endif
|
||||
|
||||
QStringList mArgs;
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
From c5d7425f8ad391112758db161e3e08f18dc9d299 Mon Sep 17 00:00:00 2001
|
||||
From: Marc Mutz <marc.mutz@kdab.com>
|
||||
Date: Thu, 26 May 2016 08:30:26 +0200
|
||||
Subject: [PATCH] QAtomic: pass explicit failure mode to
|
||||
std::atomic::compare_exchange_strong
|
||||
|
||||
... in an attempt to avoid GCC 4.8 errors such as
|
||||
|
||||
bits/atomic_base.h:577:70: error: failure memory model cannot be stronger than success memory model for '__atomic_compare_exchange'
|
||||
return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 0, __m1, __m2);
|
||||
^
|
||||
|
||||
as seen on Android.
|
||||
|
||||
Change-Id: If046e735888cf331d2d6506d8d5ca9aa7402f9ad
|
||||
[Bug report: https://bugreports.qt.io/browse/QTBUG-59399
|
||||
Patch sent upstream: https://codereview.qt-project.org/#/c/187980/]
|
||||
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.org>
|
||||
---
|
||||
src/corelib/arch/qatomic_cxx11.h | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/corelib/arch/qatomic_cxx11.h b/src/corelib/arch/qatomic_cxx11.h
|
||||
index bb49aae..d6731ec 100644
|
||||
--- a/src/corelib/arch/qatomic_cxx11.h
|
||||
+++ b/src/corelib/arch/qatomic_cxx11.h
|
||||
@@ -153,7 +153,7 @@ template <typename X> struct QAtomicOps
|
||||
template <typename T>
|
||||
static bool testAndSetRelaxed(std::atomic<T> &_q_value, T expectedValue, T newValue, T *currentValue = Q_NULLPTR) Q_DECL_NOTHROW
|
||||
{
|
||||
- bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_relaxed);
|
||||
+ bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_relaxed, std::memory_order_relaxed);
|
||||
if (currentValue)
|
||||
*currentValue = expectedValue;
|
||||
return tmp;
|
||||
@@ -162,7 +162,7 @@ template <typename X> struct QAtomicOps
|
||||
template <typename T>
|
||||
static bool testAndSetAcquire(std::atomic<T> &_q_value, T expectedValue, T newValue, T *currentValue = Q_NULLPTR) Q_DECL_NOTHROW
|
||||
{
|
||||
- bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_acquire);
|
||||
+ bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_acquire, std::memory_order_acquire);
|
||||
if (currentValue)
|
||||
*currentValue = expectedValue;
|
||||
return tmp;
|
||||
@@ -171,7 +171,7 @@ template <typename X> struct QAtomicOps
|
||||
template <typename T>
|
||||
static bool testAndSetRelease(std::atomic<T> &_q_value, T expectedValue, T newValue, T *currentValue = Q_NULLPTR) Q_DECL_NOTHROW
|
||||
{
|
||||
- bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_release);
|
||||
+ bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_release, std::memory_order_relaxed);
|
||||
if (currentValue)
|
||||
*currentValue = expectedValue;
|
||||
return tmp;
|
||||
@@ -180,7 +180,7 @@ template <typename X> struct QAtomicOps
|
||||
template <typename T>
|
||||
static bool testAndSetOrdered(std::atomic<T> &_q_value, T expectedValue, T newValue, T *currentValue = Q_NULLPTR) Q_DECL_NOTHROW
|
||||
{
|
||||
- bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_acq_rel);
|
||||
+ bool tmp = _q_value.compare_exchange_strong(expectedValue, newValue, std::memory_order_acq_rel, std::memory_order_acquire);
|
||||
if (currentValue)
|
||||
*currentValue = expectedValue;
|
||||
return tmp;
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
From 8902f4d7b7c532592d1a34ad117698d3e380e9e1 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seiderer <ps.report@gmx.net>
|
||||
Date: Fri, 10 Mar 2017 22:23:06 +0100
|
||||
Subject: [PATCH] eglfs: fix x11 header related compile failure
|
||||
|
||||
Add egl config and QT_EGL_NO_X11 define (as all other eglfs project
|
||||
files do).
|
||||
|
||||
Task-number: QTBUG-59427
|
||||
Change-Id: Ifbb11eae0fdf0e58c0b7feecb9a7914a889c8f77
|
||||
|
||||
Upstream: https://codereview.qt-project.org/188158
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
---
|
||||
src/plugins/platforms/eglfs/eglfs-plugin.pro | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/plugins/platforms/eglfs/eglfs-plugin.pro b/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
index cf4863975a..ec229796e5 100644
|
||||
--- a/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
+++ b/src/plugins/platforms/eglfs/eglfs-plugin.pro
|
||||
@@ -2,6 +2,11 @@ TARGET = qeglfs
|
||||
|
||||
QT += eglfsdeviceintegration-private
|
||||
|
||||
+CONFIG += egl
|
||||
+
|
||||
+# Avoid X11 header collision, use generic EGL native types
|
||||
+DEFINES += QT_EGL_NO_X11
|
||||
+
|
||||
SOURCES += $$PWD/qeglfsmain.cpp
|
||||
|
||||
OTHER_FILES += $$PWD/eglfs.json
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From fe8a9bacf781fcf290e04a08f2b8e37d881d58bb Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seiderer <ps.report@gmx.net>
|
||||
Date: Thu, 27 Apr 2017 22:41:28 +0200
|
||||
Subject: [PATCH] examples: fix compile without gui module
|
||||
|
||||
Fixes:
|
||||
|
||||
Project ERROR: Could not find feature opengl.
|
||||
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
---
|
||||
examples/gui/gui.pro | 2 +-
|
||||
examples/widgets/widgets.pro | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/examples/gui/gui.pro b/examples/gui/gui.pro
|
||||
index a4d960d3f5..b8080c2075 100644
|
||||
--- a/examples/gui/gui.pro
|
||||
+++ b/examples/gui/gui.pro
|
||||
@@ -6,5 +6,5 @@ CONFIG += no_docs_target
|
||||
|
||||
SUBDIRS += analogclock
|
||||
SUBDIRS += rasterwindow
|
||||
-qtConfig(opengl): \
|
||||
+qtHaveModule(gui):qtConfig(opengl): \
|
||||
SUBDIRS += openglwindow
|
||||
diff --git a/examples/widgets/widgets.pro b/examples/widgets/widgets.pro
|
||||
index 513ddc91f2..cef4936d32 100644
|
||||
--- a/examples/widgets/widgets.pro
|
||||
+++ b/examples/widgets/widgets.pro
|
||||
@@ -22,7 +22,7 @@ SUBDIRS = \
|
||||
tutorials \
|
||||
widgets
|
||||
|
||||
-qtConfig(opengl): \
|
||||
+qtHaveModule(gui):qtConfig(opengl): \
|
||||
SUBDIRS += windowcontainer
|
||||
|
||||
contains(DEFINES, QT_NO_CURSOR): SUBDIRS -= mainwindows
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
From f0c02fb22bc277e2015a18e562b551ec7b3eed9e Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seiderer <ps.report@gmx.net>
|
||||
Date: Sun, 16 Jul 2017 00:05:44 +0200
|
||||
Subject: [PATCH] Fix error attribute(target("+crc")) is unknown
|
||||
|
||||
Task-number: QTBUG-61975
|
||||
Change-Id: I0b1b55c0737dad485b5ace8e6eb7cb842589453d
|
||||
---
|
||||
src/corelib/tools/qhash.cpp | 2 ++
|
||||
src/corelib/tools/qsimd_p.h | 3 +++
|
||||
2 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/corelib/tools/qhash.cpp b/src/corelib/tools/qhash.cpp
|
||||
index 1f9c05c..bbf6efb 100644
|
||||
--- a/src/corelib/tools/qhash.cpp
|
||||
+++ b/src/corelib/tools/qhash.cpp
|
||||
@@ -144,7 +144,9 @@ static inline bool hasFastCrc32()
|
||||
}
|
||||
|
||||
template <typename Char>
|
||||
+#if defined(__aarch64__)
|
||||
QT_FUNCTION_TARGET(CRC32)
|
||||
+#endif
|
||||
static uint crc32(const Char *ptr, size_t len, uint h)
|
||||
{
|
||||
// The crc32[whbd] instructions on Aarch64/Aarch32 calculate a 32-bit CRC32 checksum
|
||||
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h
|
||||
index 023a4b0..a85d572 100644
|
||||
--- a/src/corelib/tools/qsimd_p.h
|
||||
+++ b/src/corelib/tools/qsimd_p.h
|
||||
@@ -326,7 +326,10 @@
|
||||
#endif
|
||||
// AArch64/ARM64
|
||||
#if defined(Q_PROCESSOR_ARM_V8) && defined(__ARM_FEATURE_CRC32)
|
||||
+#if defined(__aarch64__)
|
||||
+// only available on aarch64
|
||||
#define QT_FUNCTION_TARGET_STRING_CRC32 "+crc"
|
||||
+#endif
|
||||
# include <arm_acle.h>
|
||||
#endif
|
||||
|
||||
--
|
||||
2.7.4
|
||||
|
||||
289
bsp/buildroot-2017.02.11/package/qt5/qt5base/Config.in
Normal file
289
bsp/buildroot-2017.02.11/package/qt5/qt5base/Config.in
Normal file
@@ -0,0 +1,289 @@
|
||||
config BR2_PACKAGE_QT5BASE
|
||||
bool "qt5base"
|
||||
select BR2_PACKAGE_ZLIB
|
||||
select BR2_PACKAGE_PCRE
|
||||
select BR2_PACKAGE_PCRE_16
|
||||
select BR2_PACKAGE_PCRE_UTF
|
||||
help
|
||||
Qt is a cross-platform application and UI framework for
|
||||
developers using C++.
|
||||
|
||||
This package corresponds to the qt5base module, which
|
||||
contains the base Qt libraries: QtCore, QtNetwork, QtGui,
|
||||
QtWidgets, etc.
|
||||
|
||||
http://qt.io
|
||||
|
||||
if BR2_PACKAGE_QT5BASE
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_CUSTOM_CONF_OPTS
|
||||
string "Custom configuration options"
|
||||
help
|
||||
Define custom qt5 configuration options which can be used to
|
||||
enable or disable options not managed by buildroot. These
|
||||
options are appended to the ones generated by buildroot and
|
||||
passed to qt5base during configuration.
|
||||
|
||||
E.g. to remove the Windows Vista style option, add the option
|
||||
-no-feature-style_windowsvista.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_LICENSE_APPROVED
|
||||
bool "Approve free license"
|
||||
help
|
||||
Select this if you approve one of the available free licenses for the
|
||||
Qt5 library.
|
||||
By doing this you will not be asked while the library is compiled.
|
||||
Please read and understand the license terms before approving this.
|
||||
|
||||
LGPL: http://doc.qt.io/qt-5/lgpl.html
|
||||
|
||||
See also http://doc.qt.io/qt-5/licensing.html
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_CONFIG_FILE
|
||||
string "Config file"
|
||||
help
|
||||
Configure options allow to set which modules are being
|
||||
compiled or not in Qt, but Qt also provide a more
|
||||
fine-grained mechanism to configure which features should be
|
||||
enabled or disabled, through a header file. Examples of such
|
||||
header files can be found in src/corelib/global/qconfig-*.h
|
||||
in the Qt sources.
|
||||
|
||||
This option allows to set the path of such a configuration
|
||||
file, which Buildroot will give to Qt at compile time.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_EXAMPLES
|
||||
bool "Compile and install examples (with code)"
|
||||
select BR2_PACKAGE_QT5BASE_NETWORK
|
||||
select BR2_PACKAGE_QT5BASE_XML
|
||||
help
|
||||
If unsure, say N.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_NETWORK
|
||||
def_bool y
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_CONCURRENT
|
||||
bool "concurrent module"
|
||||
help
|
||||
This options enables the Qt5Concurrent library.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_SQL
|
||||
def_bool y
|
||||
|
||||
if BR2_PACKAGE_QT5BASE_SQL
|
||||
config BR2_PACKAGE_QT5BASE_MYSQL
|
||||
bool "MySQL Plugin"
|
||||
select BR2_PACKAGE_MYSQL
|
||||
select BR2_PACKAGE_NCURSES
|
||||
select BR2_PACKAGE_READLINE
|
||||
depends on BR2_USE_MMU # mysql
|
||||
help
|
||||
Build MySQL plugin
|
||||
If unsure, say n.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_PSQL
|
||||
bool "PostgreSQL Plugin"
|
||||
select BR2_PACKAGE_POSTGRESQL
|
||||
depends on BR2_USE_MMU # postgresql
|
||||
depends on !BR2_STATIC_LIBS
|
||||
help
|
||||
Build PostgreSQL plugin
|
||||
If unsure, say n.
|
||||
|
||||
comment "PostgreSQL plugin needs a toolchain w/ dynamic library"
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_STATIC_LIBS
|
||||
|
||||
choice
|
||||
prompt "SQLite 3 support"
|
||||
default BR2_PACKAGE_QT5BASE_SQLITE_NONE
|
||||
help
|
||||
Select SQLite support.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_SQLITE_NONE
|
||||
bool "No sqlite support"
|
||||
help
|
||||
Do not compile any kind of SQLite support.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_SQLITE_QT
|
||||
bool "Qt SQLite"
|
||||
help
|
||||
Use Qt bundled SQLite support.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM
|
||||
bool "System SQLite"
|
||||
select BR2_PACKAGE_SQLITE
|
||||
help
|
||||
Use system SQLite.
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_TEST
|
||||
def_bool y
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_XML
|
||||
def_bool y
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_GUI
|
||||
bool "gui module"
|
||||
select BR2_PACKAGE_FREETYPE
|
||||
# At least one graphic backend must be enabled, so enable
|
||||
# linuxfb if nothing is enabled.
|
||||
select BR2_PACKAGE_QT5BASE_LINUXFB if \
|
||||
!BR2_PACKAGE_QT5BASE_DIRECTFB && \
|
||||
!BR2_PACKAGE_QT5BASE_XCB && \
|
||||
!BR2_PACKAGE_QT5BASE_EGLFS
|
||||
help
|
||||
This option enables the Qt5Gui library.
|
||||
|
||||
if BR2_PACKAGE_QT5BASE_GUI
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_WIDGETS
|
||||
bool "widgets module"
|
||||
select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT5BASE_XCB
|
||||
help
|
||||
This option enables the Qt5Widgets library.
|
||||
|
||||
comment "OpenGL support needs an OpenGL-capable backend"
|
||||
depends on !BR2_PACKAGE_QT5_GL_AVAILABLE
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_OPENGL
|
||||
bool "OpenGL support"
|
||||
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
|
||||
help
|
||||
This option enables OpenGL support.
|
||||
|
||||
if BR2_PACKAGE_QT5BASE_OPENGL
|
||||
|
||||
choice
|
||||
prompt "OpenGL API"
|
||||
help
|
||||
Select OpenGL API.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_OPENGL_DESKTOP
|
||||
bool "Desktop OpenGL"
|
||||
depends on BR2_PACKAGE_HAS_LIBGL
|
||||
help
|
||||
Use desktop OpenGL.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_OPENGL_ES2
|
||||
bool "OpenGL ES 2.0+"
|
||||
depends on BR2_PACKAGE_HAS_LIBGLES
|
||||
help
|
||||
Use OpenGL ES 2.0 and later versions.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_OPENGL_LIB
|
||||
bool "opengl module"
|
||||
select BR2_PACKAGE_QT5BASE_WIDGETS
|
||||
help
|
||||
This option enables the Qt5OpenGL library. This library includes
|
||||
OpenGL support classes provided to ease porting from Qt 4.x.
|
||||
|
||||
endif
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_LINUXFB
|
||||
bool "linuxfb support"
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_DIRECTFB
|
||||
bool "directfb support"
|
||||
depends on BR2_PACKAGE_DIRECTFB
|
||||
|
||||
comment "directfb backend available if directfb is enabled"
|
||||
depends on !BR2_PACKAGE_DIRECTFB
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_XCB
|
||||
bool "X.org XCB support"
|
||||
depends on BR2_PACKAGE_XORG7
|
||||
select BR2_PACKAGE_XLIB_LIBX11
|
||||
select BR2_PACKAGE_LIBXCB
|
||||
select BR2_PACKAGE_XCB_UTIL_IMAGE
|
||||
select BR2_PACKAGE_XCB_UTIL_KEYSYMS
|
||||
select BR2_PACKAGE_XCB_UTIL_WM
|
||||
select BR2_PACKAGE_LIBXKBCOMMON
|
||||
|
||||
comment "X.org XCB backend available if X.org is enabled"
|
||||
depends on !BR2_PACKAGE_XORG7
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_EGLFS
|
||||
bool "eglfs support"
|
||||
select BR2_PACKAGE_QT5BASE_OPENGL
|
||||
depends on BR2_PACKAGE_HAS_LIBEGL
|
||||
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
|
||||
|
||||
comment "eglfs backend available if OpenGL and EGL are enabled"
|
||||
depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_QT5_GL_AVAILABLE
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_DEFAULT_QPA
|
||||
string "Default graphical platform"
|
||||
help
|
||||
Choose the default platform abstraction to use for graphical
|
||||
applications (e.g xcb, linuxfb, eglfs, ...). If this is empty, the
|
||||
default for your architecture will be used (usually this is eglfs).
|
||||
|
||||
You can get a list of supported platforms by running a Qt application
|
||||
with the option "-platform help" on your target. You can choose a
|
||||
different platform at runtime with the -platform option.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
|
||||
depends on BR2_PACKAGE_QT5BASE_WIDGETS
|
||||
def_bool y
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_FONTCONFIG
|
||||
bool "fontconfig support"
|
||||
select BR2_PACKAGE_FONTCONFIG
|
||||
help
|
||||
This option enables Fontconfig and Freetype support using
|
||||
the system fontconfig and freetype2 libraries.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_GIF
|
||||
bool "GIF support"
|
||||
help
|
||||
This compiles and installs the plugin for GIF reading support.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_JPEG
|
||||
bool "JPEG support"
|
||||
select BR2_PACKAGE_JPEG
|
||||
help
|
||||
This option enables JPEG support using the system libjpeg
|
||||
library.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_PNG
|
||||
bool "PNG support"
|
||||
select BR2_PACKAGE_LIBPNG
|
||||
help
|
||||
This option enables PNG support using the system libpng
|
||||
library.
|
||||
|
||||
endif
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_DBUS
|
||||
bool "DBus module"
|
||||
select BR2_PACKAGE_DBUS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_USE_MMU
|
||||
help
|
||||
This option enables the D-Bus module.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_ICU
|
||||
bool "Enable ICU support"
|
||||
select BR2_PACKAGE_ICU
|
||||
depends on !BR2_BINFMT_FLAT # icu
|
||||
help
|
||||
This option enables ICU support in Qt5. This is for example
|
||||
needed for Qt5Webkit.
|
||||
|
||||
config BR2_PACKAGE_QT5BASE_TSLIB
|
||||
bool "Enable Tslib support"
|
||||
depends on !BR2_STATIC_LIBS # dlopen
|
||||
select BR2_PACKAGE_TSLIB
|
||||
help
|
||||
This options enables the Tslib plugin
|
||||
|
||||
comment "tslib support needs a toolchain w/ dynamic library"
|
||||
depends on BR2_STATIC_LIBS
|
||||
|
||||
endif
|
||||
28
bsp/buildroot-2017.02.11/package/qt5/qt5base/qmake.conf
Normal file
28
bsp/buildroot-2017.02.11/package/qt5/qt5base/qmake.conf
Normal file
@@ -0,0 +1,28 @@
|
||||
# Qt5 has a mechanism to support "device" profiles, so that people can
|
||||
# specify the compiler, compiler flags and so on for a specific device.
|
||||
|
||||
# We leverage this mechanism in the Buildroot packaging of qt5 to
|
||||
# simplify cross-compilation: we have our own "device" definition, which
|
||||
# allows us to easily pass the cross-compiler paths and flags from our
|
||||
# qt5.mk.
|
||||
|
||||
include(../common/linux_device_pre.conf)
|
||||
|
||||
# modifications to g++-unix.conf
|
||||
QMAKE_CC = $${CROSS_COMPILE}gcc
|
||||
QMAKE_CXX = $${CROSS_COMPILE}g++
|
||||
|
||||
# modifications to gcc-base.conf
|
||||
QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS}
|
||||
QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS}
|
||||
QMAKE_CXXFLAGS_RELEASE += -O3
|
||||
CONFIG += nostrip
|
||||
|
||||
QMAKE_LIBS += -lrt -lpthread -ldl
|
||||
QMAKE_CFLAGS_ISYSTEM =
|
||||
|
||||
# Architecturespecific configuration
|
||||
include(arch.conf)
|
||||
|
||||
include(../common/linux_device_post.conf)
|
||||
load(qt_config)
|
||||
@@ -0,0 +1 @@
|
||||
#include "../../linux-g++/qplatformdefs.h"
|
||||
@@ -0,0 +1,5 @@
|
||||
# Hash from: https://download.qt.io/official_releases/qt/5.6/5.6.3/submodules/qtbase-opensource-src-5.6.3.tar.xz.mirrorlist
|
||||
sha256 fef48529a6fc2617a30d75d952cb327c6be341fd104154993922184b3b3b4da1 qtbase-opensource-src-5.6.3.tar.xz
|
||||
|
||||
# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtbase-opensource-src-5.8.0.tar.xz
|
||||
sha256 c17111ae02a44dc7be1ec2cf979a47ee9e58edf4904041a525c21f4fa53fc005 qtbase-opensource-src-5.8.0.tar.xz
|
||||
314
bsp/buildroot-2017.02.11/package/qt5/qt5base/qt5base.mk
Normal file
314
bsp/buildroot-2017.02.11/package/qt5/qt5base/qt5base.mk
Normal file
@@ -0,0 +1,314 @@
|
||||
################################################################################
|
||||
#
|
||||
# qt5base
|
||||
#
|
||||
################################################################################
|
||||
|
||||
QT5BASE_VERSION = $(QT5_VERSION)
|
||||
QT5BASE_SITE = $(QT5_SITE)
|
||||
QT5BASE_SOURCE = qtbase-opensource-src-$(QT5BASE_VERSION).tar.xz
|
||||
|
||||
QT5BASE_DEPENDENCIES = host-pkgconf zlib pcre
|
||||
QT5BASE_INSTALL_STAGING = YES
|
||||
|
||||
# A few comments:
|
||||
# * -no-pch to workaround the issue described at
|
||||
# http://comments.gmane.org/gmane.comp.lib.qt.devel/5933.
|
||||
# * -system-zlib because zlib is mandatory for Qt build, and we
|
||||
# want to use the Buildroot packaged zlib
|
||||
# * -system-pcre because pcre is mandatory to build Qt, and we
|
||||
# want to use the one packaged in Buildroot
|
||||
QT5BASE_CONFIGURE_OPTS += \
|
||||
-optimized-qmake \
|
||||
-no-cups \
|
||||
-no-iconv \
|
||||
-system-zlib \
|
||||
-system-pcre \
|
||||
-no-pch \
|
||||
-shared
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(call qstrip,$(BR2_PACKAGE_QT5BASE_CUSTOM_CONF_OPTS))
|
||||
|
||||
# Uses libgbm from mesa3d
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -kms -gbm
|
||||
QT5BASE_DEPENDENCIES += mesa3d
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-kms
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_ENABLE_DEBUG),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -debug
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -release
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -largefile
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -opensource -confirm-license
|
||||
ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
|
||||
QT5BASE_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs)
|
||||
QT5BASE_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL
|
||||
else
|
||||
QT5BASE_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs)
|
||||
QT5BASE_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL
|
||||
endif
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y)
|
||||
QT5BASE_LICENSE := $(QT5BASE_LICENSE), BSD-3c (examples)
|
||||
QT5BASE_LICENSE_FILES += header.BSD
|
||||
endif
|
||||
else
|
||||
QT5BASE_LICENSE = Commercial license
|
||||
QT5BASE_REDISTRIBUTE = NO
|
||||
endif
|
||||
|
||||
QT5BASE_CONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_QT5BASE_CONFIG_FILE))
|
||||
|
||||
ifneq ($(QT5BASE_CONFIG_FILE),)
|
||||
QT5BASE_CONFIGURE_OPTS += -qconfig buildroot
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
|
||||
QT5BASE_DEPENDENCIES += udev
|
||||
endif
|
||||
|
||||
# Qt5 SQL Plugins
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_SQL),y)
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_MYSQL),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -plugin-sql-mysql -mysql_config $(STAGING_DIR)/usr/bin/mysql_config
|
||||
QT5BASE_DEPENDENCIES += mysql
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-sql-mysql
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_PSQL),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -plugin-sql-psql -psql_config $(STAGING_DIR)/usr/bin/pg_config
|
||||
QT5BASE_DEPENDENCIES += postgresql
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-sql-psql
|
||||
endif
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_QT),-plugin-sql-sqlite)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM),-system-sqlite)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM),sqlite)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_NONE),-no-sql-sqlite)
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_GUI),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -gui -system-freetype
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5_VERSION_5_6),-I$(STAGING_DIR)/usr/include/freetype2)
|
||||
QT5BASE_DEPENDENCIES += freetype
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-gui -no-freetype
|
||||
endif
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets)
|
||||
# We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb
|
||||
# is to add a link against the "inuxfb" library.
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_LINUXFB),--enable-linuxfb,-no-linuxfb)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),-directfb,-no-directfb)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),directfb)
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -xcb -system-xkbcommon
|
||||
QT5BASE_DEPENDENCIES += \
|
||||
libxcb \
|
||||
xcb-util-wm \
|
||||
xcb-util-image \
|
||||
xcb-util-keysyms \
|
||||
xlib_libX11 \
|
||||
libxkbcommon
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_WIDGETS),y)
|
||||
QT5BASE_DEPENDENCIES += xlib_libXext
|
||||
endif
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-xcb
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_OPENGL_DESKTOP),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -opengl desktop
|
||||
QT5BASE_DEPENDENCIES += libgl
|
||||
else ifeq ($(BR2_PACKAGE_QT5BASE_OPENGL_ES2),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -opengl es2
|
||||
QT5BASE_DEPENDENCIES += libgles
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-opengl
|
||||
endif
|
||||
|
||||
QT5BASE_DEFAULT_QPA = $(call qstrip,$(BR2_PACKAGE_QT5BASE_DEFAULT_QPA))
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(QT5BASE_DEFAULT_QPA),-qpa $(QT5BASE_DEFAULT_QPA))
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5BASE_EGLFS),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -eglfs
|
||||
QT5BASE_DEPENDENCIES += libegl
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-eglfs
|
||||
endif
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_OPENSSL),-openssl,-no-openssl)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_OPENSSL),openssl)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),-fontconfig,-no-fontconfig)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),fontconfig)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GIF),,-no-gif)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_JPEG),-system-libjpeg,-no-libjpeg)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_JPEG),jpeg)
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_PNG),-system-libpng,-no-libpng)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_PNG),libpng)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DBUS),-dbus,-no-dbus)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_DBUS),dbus)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_TSLIB),-tslib,-no-tslib)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_TSLIB),tslib)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_LIBGLIB2),-glib,-no-glib)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBGLIB2),libglib2)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_ICU),-icu,-no-icu)
|
||||
QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_ICU),icu)
|
||||
|
||||
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_EXAMPLES),-make,-nomake) examples
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y)
|
||||
# gstreamer 0.10 support is broken in qt5multimedia
|
||||
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -gstreamer 1.0
|
||||
QT5BASE_DEPENDENCIES += gst1-plugins-base
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-gstreamer
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBINPUT),y)
|
||||
QT5BASE_CONFIGURE_OPTS += -libinput
|
||||
QT5BASE_DEPENDENCIES += libinput
|
||||
else
|
||||
QT5BASE_CONFIGURE_OPTS += -no-libinput
|
||||
endif
|
||||
|
||||
# Build the list of libraries to be installed on the target
|
||||
QT5BASE_INSTALL_LIBS_y += Qt5Core
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XCB) += Qt5XcbQpa
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK) += Qt5Network
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_CONCURRENT) += Qt5Concurrent
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL) += Qt5Sql
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_TEST) += Qt5Test
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XML) += Qt5Xml
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_OPENGL_LIB) += Qt5OpenGL
|
||||
ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFSDeviceIntegration
|
||||
ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFsKmsSupport
|
||||
endif
|
||||
else
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglDeviceIntegration
|
||||
endif
|
||||
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_GUI) += Qt5Gui
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_WIDGETS) += Qt5Widgets
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
|
||||
|
||||
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
|
||||
|
||||
ifneq ($(QT5BASE_CONFIG_FILE),)
|
||||
define QT5BASE_CONFIGURE_CONFIG_FILE
|
||||
cp $(QT5BASE_CONFIG_FILE) $(@D)/src/corelib/global/qconfig-buildroot.h
|
||||
endef
|
||||
endif
|
||||
|
||||
QT5BASE_ARCH_CONFIG_FILE = $(@D)/mkspecs/devices/linux-buildroot-g++/arch.conf
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC)$(BR2_PACKAGE_QT5_VERSION_LATEST),yy)
|
||||
# Qt 5.8 needs atomics, which on various architectures are in -latomic
|
||||
define QT5BASE_CONFIGURE_ARCH_CONFIG
|
||||
printf 'LIBS += -latomic\n' >$(QT5BASE_ARCH_CONFIG_FILE)
|
||||
endef
|
||||
endif
|
||||
|
||||
define QT5BASE_CONFIGURE_CMDS
|
||||
$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
|
||||
$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
|
||||
$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \
|
||||
$(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
|
||||
$(QT5BASE_CONFIGURE_CONFIG_FILE)
|
||||
touch $(QT5BASE_ARCH_CONFIG_FILE)
|
||||
$(QT5BASE_CONFIGURE_ARCH_CONFIG)
|
||||
(cd $(@D); \
|
||||
$(TARGET_MAKE_ENV) \
|
||||
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
|
||||
PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig" \
|
||||
PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
|
||||
MAKEFLAGS="$(MAKEFLAGS) -j$(PARALLEL_JOBS)" \
|
||||
./configure \
|
||||
-v \
|
||||
-prefix /usr \
|
||||
-hostprefix $(HOST_DIR)/usr \
|
||||
-headerdir /usr/include/qt5 \
|
||||
-sysroot $(STAGING_DIR) \
|
||||
-plugindir /usr/lib/qt/plugins \
|
||||
-examplesdir /usr/lib/qt/examples \
|
||||
-no-rpath \
|
||||
-nomake tests \
|
||||
-device buildroot \
|
||||
-device-option CROSS_COMPILE="$(TARGET_CROSS)" \
|
||||
-device-option BR_COMPILER_CFLAGS="$(TARGET_CFLAGS) $(QT5BASE_EXTRA_CFLAGS)" \
|
||||
-device-option BR_COMPILER_CXXFLAGS="$(TARGET_CXXFLAGS) $(QT5BASE_EXTRA_CFLAGS)" \
|
||||
$(QT5BASE_CONFIGURE_OPTS) \
|
||||
)
|
||||
endef
|
||||
|
||||
define QT5BASE_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
|
||||
endef
|
||||
|
||||
define QT5BASE_INSTALL_STAGING_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
|
||||
$(QT5_LA_PRL_FILES_FIXUP)
|
||||
endef
|
||||
|
||||
define QT5BASE_INSTALL_TARGET_LIBS
|
||||
for lib in $(QT5BASE_INSTALL_LIBS_y); do \
|
||||
cp -dpf $(STAGING_DIR)/usr/lib/lib$${lib}.so.* $(TARGET_DIR)/usr/lib || exit 1 ; \
|
||||
done
|
||||
endef
|
||||
|
||||
define QT5BASE_INSTALL_TARGET_PLUGINS
|
||||
if [ -d $(STAGING_DIR)/usr/lib/qt/plugins/ ] ; then \
|
||||
mkdir -p $(TARGET_DIR)/usr/lib/qt/plugins ; \
|
||||
cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/* $(TARGET_DIR)/usr/lib/qt/plugins ; \
|
||||
fi
|
||||
endef
|
||||
|
||||
ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y)
|
||||
define QT5BASE_INSTALL_TARGET_FONTS
|
||||
if [ -d $(STAGING_DIR)/usr/lib/fonts/ ] ; then \
|
||||
mkdir -p $(TARGET_DIR)/usr/lib/fonts ; \
|
||||
cp -dpfr $(STAGING_DIR)/usr/lib/fonts/* $(TARGET_DIR)/usr/lib/fonts ; \
|
||||
fi
|
||||
endef
|
||||
endif
|
||||
|
||||
define QT5BASE_INSTALL_TARGET_EXAMPLES
|
||||
if [ -d $(STAGING_DIR)/usr/lib/qt/examples/ ] ; then \
|
||||
mkdir -p $(TARGET_DIR)/usr/lib/qt/examples ; \
|
||||
cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/* $(TARGET_DIR)/usr/lib/qt/examples ; \
|
||||
fi
|
||||
endef
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
define QT5BASE_INSTALL_TARGET_CMDS
|
||||
$(QT5BASE_INSTALL_TARGET_FONTS)
|
||||
$(QT5BASE_INSTALL_TARGET_EXAMPLES)
|
||||
endef
|
||||
else
|
||||
define QT5BASE_INSTALL_TARGET_CMDS
|
||||
$(QT5BASE_INSTALL_TARGET_LIBS)
|
||||
$(QT5BASE_INSTALL_TARGET_PLUGINS)
|
||||
$(QT5BASE_INSTALL_TARGET_FONTS)
|
||||
$(QT5BASE_INSTALL_TARGET_EXAMPLES)
|
||||
endef
|
||||
endif
|
||||
|
||||
$(eval $(generic-package))
|
||||
Reference in New Issue
Block a user