diff mbox

[RESEND] qt: add QT_COORD_TYPE to double option

Message ID 1429691658-13139-1-git-send-email-richard.genoud@gmail.com
State Accepted
Headers show

Commit Message

Richard Genoud April 22, 2015, 8:34 a.m. UTC
From: Julien D'Ascenzio <jdascenzio@paratronic.fr>

On ARM-based platforms, qreal is a typedef for float for performance
reasons.
But we may want a double precision anyway.

Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
---
Rebased and compiled on master (21 april 2015) for arm926ej-s

 package/qt/Config.in | 7 +++++++
 package/qt/qt.mk     | 5 +++++
 2 files changed, 12 insertions(+)

Comments

Yann E. MORIN April 25, 2015, 10:22 p.m. UTC | #1
Richard, All,

On 2015-04-22 10:34 +0200, Richard Genoud spake thusly:
> From: Julien D'Ascenzio <jdascenzio@paratronic.fr>
> 
> On ARM-based platforms, qreal is a typedef for float for performance
> reasons.
> But we may want a double precision anyway.
> 
> Signed-off-by: Richard Genoud <richard.genoud@gmail.com>

Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[build-tested only with a minimal Qt config for cCortex A7]

Regards,
Yann E. MORIN.

> ---
> Rebased and compiled on master (21 april 2015) for arm926ej-s
> 
>  package/qt/Config.in | 7 +++++++
>  package/qt/qt.mk     | 5 +++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/package/qt/Config.in b/package/qt/Config.in
> index 43f5a0fc7c0d..c3922abb9f23 100644
> --- a/package/qt/Config.in
> +++ b/package/qt/Config.in
> @@ -120,6 +120,13 @@ config BR2_PACKAGE_QT_CONFIG_FILE
>  	  This option allows to set the path of such a configuration
>  	  file, which Buildroot will give to Qt at compile time.
>  
> +config BR2_PACKAGE_QT_QT_COORD_TYPE_DOUBLE
> +	bool "QT_COORD_TYPE to double"
> +	help
> +	  Set QT_COORD_TYPE to double
> +	  On ARM-based platforms, qreal is a typedef for float for performance reasons.
> +	  If unsure say n.
> +
>  config BR2_PACKAGE_QT_QT3SUPPORT
>  	bool "Compatibility with Qt3"
>  	depends on BR2_PACKAGE_QT_GUI_MODULE
> diff --git a/package/qt/qt.mk b/package/qt/qt.mk
> index 76acbfcea476..ce0a21ab288a 100644
> --- a/package/qt/qt.mk
> +++ b/package/qt/qt.mk
> @@ -46,6 +46,11 @@ QT_CFLAGS += -marm
>  QT_CXXFLAGS += -marm
>  endif
>  
> +ifeq ($(BR2_PACKAGE_QT_QT_COORD_TYPE_DOUBLE),y)
> +QT_CFLAGS += -DQT_COORD_TYPE=double
> +QT_CXXFLAGS += -DQT_COORD_TYPE=double
> +endif
> +
>  ifeq ($(BR2_PACKAGE_QT_QT3SUPPORT),y)
>  QT_CONFIGURE_OPTS += -qt3support
>  else
> -- 
> 2.3.4
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Thomas Petazzoni April 26, 2015, 10:16 a.m. UTC | #2
Dear Richard Genoud,

On Wed, 22 Apr 2015 10:34:18 +0200, Richard Genoud wrote:
> From: Julien D'Ascenzio <jdascenzio@paratronic.fr>
> 
> On ARM-based platforms, qreal is a typedef for float for performance
> reasons.
> But we may want a double precision anyway.
> 
> Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
> ---
> Rebased and compiled on master (21 april 2015) for arm926ej-s

Applied after slightly improving the Config.in help text, thanks.

Thomas
Peter Korsgaard April 28, 2015, 9:42 a.m. UTC | #3
>>>>> "Richard" == Richard Genoud <richard.genoud@gmail.com> writes:

 > From: Julien D'Ascenzio <jdascenzio@paratronic.fr>
 > On ARM-based platforms, qreal is a typedef for float for performance
 > reasons.
 > But we may want a double precision anyway.

 > Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
 > ---
 > Rebased and compiled on master (21 april 2015) for arm926ej-s

This causes compilation issues with the test module as it defines a
template using double and one using qreal:

http://autobuild.buildroot.net/?reason=qt-4.8.6

Care to take a look and send a fix?
Richard Genoud April 28, 2015, 10:24 a.m. UTC | #4
2015-04-28 11:42 GMT+02:00 Peter Korsgaard <peter@korsgaard.com>:
>>>>>> "Richard" == Richard Genoud <richard.genoud@gmail.com> writes:
>
>  > From: Julien D'Ascenzio <jdascenzio@paratronic.fr>
>  > On ARM-based platforms, qreal is a typedef for float for performance
>  > reasons.
>  > But we may want a double precision anyway.
>
>  > Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
>  > ---
>  > Rebased and compiled on master (21 april 2015) for arm926ej-s
>
> This causes compilation issues with the test module as it defines a
> template using double and one using qreal:
>
> http://autobuild.buildroot.net/?reason=qt-4.8.6
>
> Care to take a look and send a fix?
yes, I'll have a look.
thanks !
diff mbox

Patch

diff --git a/package/qt/Config.in b/package/qt/Config.in
index 43f5a0fc7c0d..c3922abb9f23 100644
--- a/package/qt/Config.in
+++ b/package/qt/Config.in
@@ -120,6 +120,13 @@  config BR2_PACKAGE_QT_CONFIG_FILE
 	  This option allows to set the path of such a configuration
 	  file, which Buildroot will give to Qt at compile time.
 
+config BR2_PACKAGE_QT_QT_COORD_TYPE_DOUBLE
+	bool "QT_COORD_TYPE to double"
+	help
+	  Set QT_COORD_TYPE to double
+	  On ARM-based platforms, qreal is a typedef for float for performance reasons.
+	  If unsure say n.
+
 config BR2_PACKAGE_QT_QT3SUPPORT
 	bool "Compatibility with Qt3"
 	depends on BR2_PACKAGE_QT_GUI_MODULE
diff --git a/package/qt/qt.mk b/package/qt/qt.mk
index 76acbfcea476..ce0a21ab288a 100644
--- a/package/qt/qt.mk
+++ b/package/qt/qt.mk
@@ -46,6 +46,11 @@  QT_CFLAGS += -marm
 QT_CXXFLAGS += -marm
 endif
 
+ifeq ($(BR2_PACKAGE_QT_QT_COORD_TYPE_DOUBLE),y)
+QT_CFLAGS += -DQT_COORD_TYPE=double
+QT_CXXFLAGS += -DQT_COORD_TYPE=double
+endif
+
 ifeq ($(BR2_PACKAGE_QT_QT3SUPPORT),y)
 QT_CONFIGURE_OPTS += -qt3support
 else