aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Thomas Petazzoni <thomas.petazzoni@bootlin.com>2019-08-04 17:45:45 +0200
committerGravatar Thomas Petazzoni <thomas.petazzoni@bootlin.com>2019-08-13 15:13:55 +0200
commit035540b64acd920f75cdab22585590ed22d640f8 (patch)
treed5799306471ab22289c1c43c3db69b74ed2062c8
parent20ab45c56c76f3d6b8525189da9e7731bc936ae2 (diff)
downloadbuildroot-035540b64acd920f75cdab22585590ed22d640f8.tar.gz
buildroot-035540b64acd920f75cdab22585590ed22d640f8.tar.bz2
package/qt5/qt5enginio: switch to a depends on for SSL support
qt5enginio requires SSL support in qt5base. However, the SSL support in qt5base is a bit annoying: while it can be provided by either openssl or libressl for Qt latest, it can only be provided by libressl for Qt 5.6. Fabrice Fontaine initially proposed [0] a dependency on BR2_PACKAGE_QT5BASE_OPENSSL, and a long discussion followed. Ultimately, we found the dependency to not be nice, as it required users to know that they need to enable some SSL implementation to be able to enable qt5enginio. The current solution enables BR2_PACKAGE_OPENSSL (the virtual package), which can be either openssl or libressl. This choice was done under the assumption that we anyway don't test Qt 5.6 in the autobuilders. However, this is incorrect: Qt latest needs gcc >= 4.8 on host and target, and we have configurations in the autobuilders that don't meet this requirement, and therefore build Qt 5.6, and face a build issue due to OpenSSL being used instead of LibreSSL. After additional thinking, this commit simply gets back to the original solution proposed by Fabrice: a "depends on". We simply add Config.in comments to help the user in knowing what is missing to enable qt5enginio. An alternate solution would have been to disallow selecting qt5enginio when Qt 5.6 is used. But fixing the qt5enginio build is also needed for the LTS branch, and we can't drop qt5enginio on Qt 5.6 in the LTS branch, as that could bother users. Fixes: http://autobuild.buildroot.net/results/227d4b9e2b48c5b3f2dcf0fad9eefa2816c1eb0c/ [0] https://patchwork.ozlabs.org/patch/1053883/ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-rw-r--r--package/qt5/qt5enginio/Config.in15
1 files changed, 9 insertions, 6 deletions
diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in
index ac2d13b3ab..e5b4782040 100644
--- a/package/qt5/qt5enginio/Config.in
+++ b/package/qt5/qt5enginio/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_QT5ENGINIO
bool "qt5enginio"
select BR2_PACKAGE_QT5BASE_GUI
select BR2_PACKAGE_QT5BASE_NETWORK
- select BR2_PACKAGE_OPENSSL
+ depends on BR2_PACKAGE_QT5BASE_OPENSSL
help
Qt is a cross-platform application and UI framework for
developers using C++.
@@ -15,9 +15,12 @@ config BR2_PACKAGE_QT5ENGINIO
http://doc.qt.io/archives/qt-5.5/enginio-index.html
-# Forcibly selecting libressl is not possible because it is from a choice, and
-# depending on it is also not possible because we select openssl. So just a
-# a warning.
-comment "qt5enginio needs libressl for Qt5.6"
+# When Qt 5.6 is removed, replace the depends on
+# BR2_PACKAGE_QT5BASE_OPENSSL above by a select BR2_PACKAGE_OPENSSL.
+comment "qt5enginio needs libressl"
depends on BR2_PACKAGE_QT5_VERSION_5_6
- depends on !BR2_PACKAGE_LIBRESSL
+ depends on !BR2_PACKAGE_QT5BASE_OPENSSL
+
+comment "qt5enginio needs openssl"
+ depends on BR2_PACKAGE_QT5_VERSION_LATEST
+ depends on !BR2_PACKAGE_QT5BASE_OPENSSL