259 Commits

Author SHA1 Message Date
Mirko Vogt
1f37050afa qt5: update to 5.15.0 (LTS release)
This also purges already back then (v5.9) legacy projects, such as Qt
Quick 1 / QML 1.

We also focus on software rendering only for now, postponing dealing
with messy vendor specific GL(ES) APIs, quirks and proprietary / binary
blobs. Implies certain features and packages being unavailable for the
moment.
2020-06-07 23:09:24 +00:00
Mirko Vogt
ef02574a6b Merge pull request #9 from titobrasolin/patch-1
Fix -iconv/-no-iconv switch
2018-01-15 13:02:18 +01:00
Tito Brasolin
a04ec9e180 Fix -iconv/-no-iconv switch
See comment:
e529dc6cc7 (r26652161)
2018-01-06 15:25:29 +01:00
Mirko Vogt
e611d59c05 qt5base: extend patch to prevent SEGV when hiding cursor is desired 2017-12-11 17:38:30 +01:00
Mirko Vogt
615ee01e17 qt5quick2: include *.js-files for QML plugins and include qmlrunner in test pkg 2017-12-11 15:38:49 +01:00
Mirko Vogt
ae7d0f7d24 qt5base: fix segfault if QT_QPA_FB_HIDECURSOR=1 2017-12-03 22:20:12 +01:00
Mirko Vogt
fae337e73c Revert "do not build GUI (and other) component(s) in host build"
This reverts commit 2b0949f460.
Some modules being built for the host require Gui / evdev support -
notably the kmap->qmap converter in qt5tools.
2017-12-03 21:55:35 +01:00
Mirko Vogt
2b0949f460 do not build GUI (and other) component(s) in host build 2017-11-29 16:02:16 +01:00
Mirko Vogt
ebe0834496 qt5base: partially revert previous commit which enabled libinput support by default
As switching to libinput by default resulted in a few issues, let's make
it optional however enable and depend on libudev (only) by default.
2017-11-29 16:01:39 +01:00
Mirko Vogt
808b3c6430 qt5base: use libinput by default
Due to the switch from hotplug2 to procd, libudev - which libinput
requires - was rendered unusable on OpenWrt/LEDE.
However since there's libudev-fbsd now which is used as a
drop-in-replacement for libudev, we can now make use of libinput again
and therewith avoid the need of passing platform specific env vars
telling the paths to mouse/touchscreen/keyboard (evdev).
2017-11-18 17:11:24 +01:00
Mirko Vogt
ab90b203ba upgrade Qt5 to version 5.9.1
5.9 is a LTS tree so we're gonna stick to that version for a while now.

WARNING: This upgrade introduces a new dependency to pcre2 which is not
available in the lede-17.01 release branch!
2017-07-03 16:03:57 +02:00
Mirko Vogt
fa3789dae6 [qt5base] also *directly* pass CFLAGS/CXXFLAGS/LDFLAGS to Makefiles
Signed-off-by: Mirko Vogt <mirko-dev@nanl.de>
2017-03-01 04:20:50 +01:00
Mirko Vogt
3d7eaf0719 [qt5base] fix path to target qmake 2017-02-22 02:24:54 +01:00
Mirko Vogt
2b3636767d examples are not built by default -> disable 2017-02-21 19:19:29 +01:00
Mirko Vogt
c26c09e61b use variables for calling qmake
We need to distinguish as carefully as possible
between qmake for the host builds and qmake for
target builds
2017-02-21 19:19:20 +01:00
Mirko Vogt
2190867b24 copy all host tools 2017-02-21 19:19:20 +01:00
Mirko Vogt
32b3fa76c9 make qt5base a build dependency for qt5base/host 2017-02-21 19:19:20 +01:00
Mirko Vogt
43fcb377d5 add key 'HomePage' 2017-02-21 03:37:18 +01:00
Mirko Vogt
3640885523 add qt5tools - for now only build as HostBuild 2017-02-21 03:16:04 +01:00
Mirko Vogt
8746e4a224 remove Build/Configure sections
The generic Build/Configure/Default doesn't need to get
passed the project file name anymore.
2017-02-20 19:19:04 +01:00
Mirko Vogt
0c39484ffc qt5base: also build for host
Although Qt has the functionality of <host_build>'s,
it's supposed to be used and explicitly stated in
project files, so it can't be switched on from the
outside (e.g. via flags or env vars).

On top of that all builds using the <host_build>
directive get linked against libQtBootstrap.a which
is not always desired.

libQtBootstrap.a is also the only file available for
host builds, which means, <host_build>'s can't just make
use of and and link against e.g. libQtCore, as those
objects only get compiled for the target, not for the
host.

Because of above reasons, we build Qt twice now, once
for the host, once for the target.
2017-02-20 19:19:01 +01:00
Mirko Vogt
19579c851d qt5base/qmake.mk: make arg for project file optional 2017-02-06 02:57:40 +01:00
Mirko Vogt
bbae76c997 bump to release (5.8.0) and adjust/change to sha256 hashes 2017-02-06 02:56:53 +01:00
Mirko Vogt
28c376c9a8 Make Qt less smart about cross-toolchain detection and pkgconfig
When using the pkgconfig macros inside qmake
project files, qmake silently returns since it
detects being run inside a cross-toolchain and
pkgconfig normally doesn't work as expected in
such an environment.

However we patched pkgconfig to work inside
OpenWrt / LEDE (pkgconfig.real), so stop Qt
failing for qmake projects using pkgconfig.
2017-01-24 20:00:38 +01:00
Mirko Vogt
eef8974950 qt5 GL stubs should not have a build dependency on qt5base
I honestly wonder why I added that back then,
however right now it doesn't make any sense to me.

So, drop it and wait for it to backfire..
2017-01-18 13:31:05 +01:00
Mirko Vogt
f85c7daeef bump qt5 to 5.8.0-rc1, getting rid of meta-pkgs 2017-01-18 13:31:05 +01:00
Mirko Vogt
e874136bc1 remove qq2-2d-sw-renderer as it's now officially part of qq2 2017-01-18 13:30:55 +01:00
Mirko Vogt
0109a001be add qt5graphicaleffects 2016-11-24 15:19:17 +01:00
Mirko Vogt
e8ffad8492 [qt5quick2-controls2] fix dependencies 2016-11-24 15:16:31 +01:00
Mirko Vogt
10ed06e0bd Revert "qt5base: also pass MAKE_VARS and MAKE_FLAGS"
This reverts commit 6f98fdca5a.
2016-11-23 23:25:06 +01:00
Mirko Vogt
6f98fdca5a qt5base: also pass MAKE_VARS and MAKE_FLAGS 2016-11-23 15:48:22 +01:00
Mirko Vogt
a7f70306b4 package qt5quick2-controls2 2016-11-23 15:37:36 +01:00
Mirko Vogt
ea6c0e6638 fix qt5quick2-qml-models 2016-11-23 14:57:06 +01:00
Mirko Vogt
e626039f13 purge patches which don't apply anymore 2016-11-22 19:46:58 +01:00
Mirko Vogt
5fb860e396 bump qtquick2 to 5.8.0-beta 2016-11-22 13:41:28 +01:00
Mirko Vogt
67eb1dd156 fix pkg-config for Qt inside LEDE/OpenWrt
Qt disables all pkg-config tests if it notices itself
being cross-compiled and PKG_CONFIG_SYSROOT_DIR being
unset.

However we do have a working pkg-config (wrapper around
pkg-config.real) which fixes the issues PKG_CONFIG_SYSROOT_DIR
tries to address.

Qt tries to be too smart in our case - force it to use
pkg-config.
2016-11-22 13:41:28 +01:00
Mirko Vogt
e529dc6cc7 level up Qt to 5.8.0-beta 2016-11-22 13:41:28 +01:00
Mirko Vogt
1e221209b9 package QtQuick2 2016-08-29 20:04:38 +02:00
Mirko Vogt
d4d2a3d5ea level Qt up to version 5.7.0 + several bug fixes
Qt5-GUI now gets compiled with support for OpenGL,
however only links against GL stubs provided by the
2d software renderer.
That way we can decide at runtime, whether we want to
use GL or not - with almost no overhead, if not.
This also enables QtQuick2 being built correctly,
which depends on GL support and provides the
possibility of using QtQuick2 with the 2d-sw-renderer
even on hardware without native support for GL.
2016-08-29 20:04:29 +02:00
Mirko Vogt
5c4360ede2 package qt5quick2-2d-sw-renderer[-GLstubs]
Both packages share the same source and I'd prefer handling
them in the very same Makefile, but unfortunately that would
create a circular dependency:
`qt5base` depends on `qt5quick2-2d-sw-renderer-GLstubs`, but
`qt5quick2-2d-sw-renderer` depends on `qt5quick2` which
depends on `qt5base`.
`qt5quick2-2d-sw-renderer` and `qt5quick2-2d-sw-renderer-GLstubs`
sharing the same Makefile results in `qt5base` depending on
`qt5quick2` which is meh.
2016-08-29 20:04:25 +02:00
Mirko Vogt
7a735d0986 Fix Qt host builds
Do not explicitly specify mkspec file when invoking qmake.
qmake itself is aware of the cross mkspec file (compiled in)
AND of the mkspec file for host builds.
Specifying it explicitly doesn't let qmake choose the
correct one and always tries to cross-compile everything.
2016-08-29 20:04:21 +02:00
Hauke Mehrtens
763942c2c8 qt5base: fix installation of qt5base-plugin-sqldrivers-sqlite
The install part was not executed, because it had the wrong name.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-07-23 22:57:49 +02:00
Hauke Mehrtens
f66892f71a qt5base: fix plugin loading
Do not use strip any more when it is selected because plugin loading
does not work for plugins build stripped with sstrip, use normal strip
instead.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-07-23 22:57:49 +02:00
Hauke Mehrtens
9194f1f76b qt5base: build widgets and examples only when activated
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-10 23:27:11 +01:00
Hauke Mehrtens
f348883282 qt5base: fix nls support
Instead of hard coding the dependency to libiconv-full use the macros
provided by OpenWrt. In the gnu iconv library the second parameter of
iconv(), often called inbuf, is not const, but qt5 assumes that it is
in the gnu version of libiconv. If we make qt5 use the code for the
posix version of libiconv it does not add the -liconv link parameter.
This patch adds the -liconv link parameter.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-10 23:22:42 +01:00
Hauke Mehrtens
9294ea108e qt5base: make sqlite configurable not sqlite2
sqlite2 should not be build, we want sqlite3 which is named sqlite in qt5.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-10 23:22:37 +01:00
Hauke Mehrtens
f8cd9c3589 qt5base: activate iconv support when libiconv-full is avaliable
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-07 00:13:15 +01:00
Mirko Vogt
3e0bedd1ad Merge pull request #4 from hauke/qt5base-fixes
Qt5base fixes
2015-12-06 23:04:56 +01:00
Hauke Mehrtens
b026c48f16 qt5base: deactivate some options
The libraries needed for these options are no dependencies of any
qt5base module so deactivate them.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-06 22:51:47 +01:00
Hauke Mehrtens
b5ce8864b7 qt5base: build some modules only when needed
Build some parts only depending on the parts which are selected in
OpenWrt menuconfig and not always.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2015-12-06 22:51:47 +01:00