All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl
@ 2019-05-05 12:47 Fabrice Fontaine
  2019-05-10 15:07 ` Arnout Vandecappelle
  0 siblings, 1 reply; 5+ messages in thread
From: Fabrice Fontaine @ 2019-05-05 12:47 UTC (permalink / raw)
  To: buildroot

qt5enginio needs Qt5 with ssl support, a dependency could be added on
BR2_PACKAGE_QT5BASE_OPENSSL but this proposal was rejected in the first
iteration of this patch

Qt5 has ssl support through libressl on Qt 5.6 or openssl in latest Qt
however we can't select libressl without adding a circular dependency as
some packages (such as sqlcipher) force openssl through
BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL

So, as suggested by Arnout:
 - add a hidden BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL option that
   selects BR2_PACKAGE_OPENSSL if qt5enginio is selected
 - remove select on BR2_PACKAGE_QT5BASE to avoid a circular dependency
   and because it's not needed as BR2_PACKAGE_QT5 already selects
   BR2_PACKAGE_QT5BASE
 - add dependencies of BR2_PACKAGE_LIBRESSL if Qt 5.6 is selected (but
   don't select libressl to avoid a circular dependency)

Fixes:
 - http://autobuild.buildroot.org/results/60678cab68ec9aa17184b8417b64b3b79adf428a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
Changes v1 -> v2 (after review of Thomas Petazzoni and Arnout
Vandecappelle):
 - Remove dependency on BR2_PACKAGE_QT5BASE_OPENSSL

 package/qt5/qt5enginio/Config.in | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in
index 102058e7c5..94bf295396 100644
--- a/package/qt5/qt5enginio/Config.in
+++ b/package/qt5/qt5enginio/Config.in
@@ -1,7 +1,15 @@
+# This is a hack to avoid circular dependencies when selecting OPENSSL
+config BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL
+	bool
+	default y if BR2_PACKAGE_QT5ENGINIO
+	select BR2_PACKAGE_OPENSSL
+
 config BR2_PACKAGE_QT5ENGINIO
 	bool "qt5enginio"
-	select BR2_PACKAGE_OPENSSL
-	select BR2_PACKAGE_QT5BASE
+	depends on !BR2_PACKAGE_QT5_VERSION_5_6 || \
+		(BR2_PACKAGE_QT5_VERSION_5_6 && \
+		(!BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL && \
+		!(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU)))
 	select BR2_PACKAGE_QT5BASE_GUI
 	select BR2_PACKAGE_QT5BASE_NETWORK
 	help
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl
  2019-05-05 12:47 [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl Fabrice Fontaine
@ 2019-05-10 15:07 ` Arnout Vandecappelle
  2019-05-10 20:57   ` Fabrice Fontaine
  2019-05-26  9:16   ` Peter Korsgaard
  0 siblings, 2 replies; 5+ messages in thread
From: Arnout Vandecappelle @ 2019-05-10 15:07 UTC (permalink / raw)
  To: buildroot

 Hi Fabrice,

On 05/05/2019 14:47, Fabrice Fontaine wrote:
> qt5enginio needs Qt5 with ssl support, a dependency could be added on
> BR2_PACKAGE_QT5BASE_OPENSSL but this proposal was rejected in the first
> iteration of this patch
> 
> Qt5 has ssl support through libressl on Qt 5.6 or openssl in latest Qt
> however we can't select libressl without adding a circular dependency as
> some packages (such as sqlcipher) force openssl through
> BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
> 
> So, as suggested by Arnout:
>  - add a hidden BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL option that
>    selects BR2_PACKAGE_OPENSSL if qt5enginio is selected
>  - remove select on BR2_PACKAGE_QT5BASE to avoid a circular dependency
>    and because it's not needed as BR2_PACKAGE_QT5 already selects
>    BR2_PACKAGE_QT5BASE
>  - add dependencies of BR2_PACKAGE_LIBRESSL if Qt 5.6 is selected (but
>    don't select libressl to avoid a circular dependency)
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/60678cab68ec9aa17184b8417b64b3b79adf428a
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
> Changes v1 -> v2 (after review of Thomas Petazzoni and Arnout
> Vandecappelle):
>  - Remove dependency on BR2_PACKAGE_QT5BASE_OPENSSL
> 
>  package/qt5/qt5enginio/Config.in | 12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in
> index 102058e7c5..94bf295396 100644
> --- a/package/qt5/qt5enginio/Config.in
> +++ b/package/qt5/qt5enginio/Config.in
> @@ -1,7 +1,15 @@
> +# This is a hack to avoid circular dependencies when selecting OPENSSL
> +config BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL
> +	bool
> +	default y if BR2_PACKAGE_QT5ENGINIO
> +	select BR2_PACKAGE_OPENSSL

 Unfortunately, this still doesn't work for Qt5.6.

 However, there is not much we can do there. Selecting libressl is not possible,
so we have to depend on it, so we can't select libopenssl or we'd get a circular
dependency.

 So, I've gone back to your original patch but changed the depends into a
select, and I added a comment that for Qt5.6 you need to select libressl:

comment "qt5enginio needs libressl for Qt5.6"
       depends on BR2_PACKAGE_QT5_VERSION_5_6
       depends on !BR2_PACKAGE_LIBRESSL


 This would still lead to autobuild failures for Qt5.6, of course, because it is
still possible to select libopenssl instead of libressl. But we don't test Qt5.6
in the autobuilders, so that's fine.

 With that, I've applied to master. Many thanks for keeping on trying to fix
this properly.


 Regards,
 Arnout

> +
>  config BR2_PACKAGE_QT5ENGINIO
>  	bool "qt5enginio"
> -	select BR2_PACKAGE_OPENSSL
> -	select BR2_PACKAGE_QT5BASE
> +	depends on !BR2_PACKAGE_QT5_VERSION_5_6 || \
> +		(BR2_PACKAGE_QT5_VERSION_5_6 && \
> +		(!BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL && \
> +		!(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU)))
>  	select BR2_PACKAGE_QT5BASE_GUI
>  	select BR2_PACKAGE_QT5BASE_NETWORK
>  	help
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl
  2019-05-10 15:07 ` Arnout Vandecappelle
@ 2019-05-10 20:57   ` Fabrice Fontaine
  2019-05-26 12:20     ` Arnout Vandecappelle
  2019-05-26  9:16   ` Peter Korsgaard
  1 sibling, 1 reply; 5+ messages in thread
From: Fabrice Fontaine @ 2019-05-10 20:57 UTC (permalink / raw)
  To: buildroot

Dear Arnout,

Le ven. 10 mai 2019 ? 17:07, Arnout Vandecappelle <arnout@mind.be> a ?crit :
>
>  Hi Fabrice,
>
> On 05/05/2019 14:47, Fabrice Fontaine wrote:
> > qt5enginio needs Qt5 with ssl support, a dependency could be added on
> > BR2_PACKAGE_QT5BASE_OPENSSL but this proposal was rejected in the first
> > iteration of this patch
> >
> > Qt5 has ssl support through libressl on Qt 5.6 or openssl in latest Qt
> > however we can't select libressl without adding a circular dependency as
> > some packages (such as sqlcipher) force openssl through
> > BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
> >
> > So, as suggested by Arnout:
> >  - add a hidden BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL option that
> >    selects BR2_PACKAGE_OPENSSL if qt5enginio is selected
> >  - remove select on BR2_PACKAGE_QT5BASE to avoid a circular dependency
> >    and because it's not needed as BR2_PACKAGE_QT5 already selects
> >    BR2_PACKAGE_QT5BASE
> >  - add dependencies of BR2_PACKAGE_LIBRESSL if Qt 5.6 is selected (but
> >    don't select libressl to avoid a circular dependency)
> >
> > Fixes:
> >  - http://autobuild.buildroot.org/results/60678cab68ec9aa17184b8417b64b3b79adf428a
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ---
> > Changes v1 -> v2 (after review of Thomas Petazzoni and Arnout
> > Vandecappelle):
> >  - Remove dependency on BR2_PACKAGE_QT5BASE_OPENSSL
> >
> >  package/qt5/qt5enginio/Config.in | 12 ++++++++++--
> >  1 file changed, 10 insertions(+), 2 deletions(-)
> >
> > diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in
> > index 102058e7c5..94bf295396 100644
> > --- a/package/qt5/qt5enginio/Config.in
> > +++ b/package/qt5/qt5enginio/Config.in
> > @@ -1,7 +1,15 @@
> > +# This is a hack to avoid circular dependencies when selecting OPENSSL
> > +config BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL
> > +     bool
> > +     default y if BR2_PACKAGE_QT5ENGINIO
> > +     select BR2_PACKAGE_OPENSSL
>
>  Unfortunately, this still doesn't work for Qt5.6.
>
>  However, there is not much we can do there. Selecting libressl is not possible,
> so we have to depend on it, so we can't select libopenssl or we'd get a circular
> dependency.
>
>  So, I've gone back to your original patch but changed the depends into a
> select, and I added a comment that for Qt5.6 you need to select libressl:
>
> comment "qt5enginio needs libressl for Qt5.6"
>        depends on BR2_PACKAGE_QT5_VERSION_5_6
>        depends on !BR2_PACKAGE_LIBRESSL
>
>
>  This would still lead to autobuild failures for Qt5.6, of course, because it is
> still possible to select libopenssl instead of libressl. But we don't test Qt5.6
> in the autobuilders, so that's fine.
Are you sure that we're not testing Qt5.6 in autobuilders?
Here is the latest build failure on qt5enginio:
http://autobuild.buildroot.org/results/969/969d38b9ff1db51959e68343cf6e932dc8645688/config.
But I agree that perhaps we should remove Qt5.6 from autobuilders.
>
>  With that, I've applied to master. Many thanks for keeping on trying to fix
> this properly.
>
>
>  Regards,
>  Arnout
>
> > +
> >  config BR2_PACKAGE_QT5ENGINIO
> >       bool "qt5enginio"
> > -     select BR2_PACKAGE_OPENSSL
> > -     select BR2_PACKAGE_QT5BASE
> > +     depends on !BR2_PACKAGE_QT5_VERSION_5_6 || \
> > +             (BR2_PACKAGE_QT5_VERSION_5_6 && \
> > +             (!BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL && \
> > +             !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU)))
> >       select BR2_PACKAGE_QT5BASE_GUI
> >       select BR2_PACKAGE_QT5BASE_NETWORK
> >       help
> >
Best Regards,

Fabrice

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl
  2019-05-10 15:07 ` Arnout Vandecappelle
  2019-05-10 20:57   ` Fabrice Fontaine
@ 2019-05-26  9:16   ` Peter Korsgaard
  1 sibling, 0 replies; 5+ messages in thread
From: Peter Korsgaard @ 2019-05-26  9:16 UTC (permalink / raw)
  To: buildroot

>>>>> "Arnout" == Arnout Vandecappelle <arnout@mind.be> writes:

 >  Hi Fabrice,
 > On 05/05/2019 14:47, Fabrice Fontaine wrote:
 >> qt5enginio needs Qt5 with ssl support, a dependency could be added on
 >> BR2_PACKAGE_QT5BASE_OPENSSL but this proposal was rejected in the first
 >> iteration of this patch
 >> 
 >> Qt5 has ssl support through libressl on Qt 5.6 or openssl in latest Qt
 >> however we can't select libressl without adding a circular dependency as
 >> some packages (such as sqlcipher) force openssl through
 >> BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
 >> 
 >> So, as suggested by Arnout:
 >> - add a hidden BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL option that
 >> selects BR2_PACKAGE_OPENSSL if qt5enginio is selected
 >> - remove select on BR2_PACKAGE_QT5BASE to avoid a circular dependency
 >> and because it's not needed as BR2_PACKAGE_QT5 already selects
 >> BR2_PACKAGE_QT5BASE
 >> - add dependencies of BR2_PACKAGE_LIBRESSL if Qt 5.6 is selected (but
 >> don't select libressl to avoid a circular dependency)
 >> 
 >> Fixes:
 >> - http://autobuild.buildroot.org/results/60678cab68ec9aa17184b8417b64b3b79adf428a
 >> 
 >> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
 >> ---
 >> Changes v1 -> v2 (after review of Thomas Petazzoni and Arnout
 >> Vandecappelle):
 >> - Remove dependency on BR2_PACKAGE_QT5BASE_OPENSSL
 >> 
 >> package/qt5/qt5enginio/Config.in | 12 ++++++++++--
 >> 1 file changed, 10 insertions(+), 2 deletions(-)
 >> 
 >> diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in
 >> index 102058e7c5..94bf295396 100644
 >> --- a/package/qt5/qt5enginio/Config.in
 >> +++ b/package/qt5/qt5enginio/Config.in
 >> @@ -1,7 +1,15 @@
 >> +# This is a hack to avoid circular dependencies when selecting OPENSSL
 >> +config BR2_PACKAGE_QT5ENGINIO_SELECT_OPENSSL
 >> +	bool
 >> +	default y if BR2_PACKAGE_QT5ENGINIO
 >> +	select BR2_PACKAGE_OPENSSL

 >  Unfortunately, this still doesn't work for Qt5.6.

 >  However, there is not much we can do there. Selecting libressl is not possible,
 > so we have to depend on it, so we can't select libopenssl or we'd get a circular
 > dependency.

 >  So, I've gone back to your original patch but changed the depends into a
 > select, and I added a comment that for Qt5.6 you need to select libressl:

 > comment "qt5enginio needs libressl for Qt5.6"
 >        depends on BR2_PACKAGE_QT5_VERSION_5_6
 >        depends on !BR2_PACKAGE_LIBRESSL


 >  This would still lead to autobuild failures for Qt5.6, of course, because it is
 > still possible to select libopenssl instead of libressl. But we don't test Qt5.6
 > in the autobuilders, so that's fine.

 >  With that, I've applied to master. Many thanks for keeping on trying to fix
 > this properly.

Committed to 2019.02.x, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl
  2019-05-10 20:57   ` Fabrice Fontaine
@ 2019-05-26 12:20     ` Arnout Vandecappelle
  0 siblings, 0 replies; 5+ messages in thread
From: Arnout Vandecappelle @ 2019-05-26 12:20 UTC (permalink / raw)
  To: buildroot



On 10/05/2019 22:57, Fabrice Fontaine wrote:
>>  This would still lead to autobuild failures for Qt5.6, of course, because it is
>> still possible to select libopenssl instead of libressl. But we don't test Qt5.6
>> in the autobuilders, so that's fine.
> Are you sure that we're not testing Qt5.6 in autobuilders?

 Thomas said so and I believed him :-)

> Here is the latest build failure on qt5enginio:
> http://autobuild.buildroot.org/results/969/969d38b9ff1db51959e68343cf6e932dc8645688/config.

 We don't actively select QT5.6 in the autobuilders, but there are some
toolchains that don't support Qt5.9+ so in these cases Qt5.6 is still selected.

> But I agree that perhaps we should remove Qt5.6 from autobuilders.

 Or remove Qt5.6 completely :-)

 Regards,
 Arnout

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-05-26 12:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-05 12:47 [Buildroot] [PATCH v2,1/1] package/qt5enginio: needs ssl Fabrice Fontaine
2019-05-10 15:07 ` Arnout Vandecappelle
2019-05-10 20:57   ` Fabrice Fontaine
2019-05-26 12:20     ` Arnout Vandecappelle
2019-05-26  9:16   ` Peter Korsgaard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.