Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
@ 2017-11-08 18:21 Giulio Benetti
  2017-11-08 18:21 ` [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option Giulio Benetti
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 18:21 UTC (permalink / raw)
  To: buildroot

EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)

Starting from qmake.conf.in, 
generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
according to Package selection

Changes v1 -> v2:

* Moved qmake.conf to qmake.conf.in
* Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
* Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/qt5/qt5base/{qmake.conf => qmake.conf.in} |  2 ++
 package/qt5/qt5base/qt5base.mk                    | 12 +++++++++---
 2 files changed, 11 insertions(+), 3 deletions(-)
 rename package/qt5/qt5base/{qmake.conf => qmake.conf.in} (95%)

diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf.in
similarity index 95%
rename from package/qt5/qt5base/qmake.conf
rename to package/qt5/qt5base/qmake.conf.in
index 8b6debe..fb698b9 100644
--- a/package/qt5/qt5base/qmake.conf
+++ b/package/qt5/qt5base/qmake.conf.in
@@ -24,5 +24,7 @@ QMAKE_CFLAGS_ISYSTEM   =
 # Architecturespecific configuration
 include(arch.conf)
 
+EGLFS_DEVICE_INTEGRATION = @EGLFS_DEVICE@
+
 include(../common/linux_device_post.conf)
 load(qt_config)
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index b3f9c79..d58a58a 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -243,8 +243,13 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
 ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
 # use vivante backend
 define QT5BASE_CONFIGURE_QMAKE_CONFIG
-	echo "EGLFS_DEVICE_INTEGRATION = eglfs_viv" >> \
-		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
+	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
+		$(QT5BASE_PKGDIR)/qmake.conf
+endef
+else
+define QT5BASE_CONFIGURE_QMAKE_CONFIG
+	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
+		$(QT5BASE_PKGDIR)/qmake.conf
 endef
 endif
 
@@ -263,9 +268,10 @@ endef
 endif
 
 define QT5BASE_CONFIGURE_CMDS
+	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
 	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
 		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
-	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
+	$(RM) $(QT5BASE_PKGDIR)/qmake.conf
 	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \
 		$(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
 	$(QT5BASE_CONFIGURE_CONFIG_FILE)
-- 
2.7.4

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

* [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option
  2017-11-08 18:21 [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Giulio Benetti
@ 2017-11-08 18:21 ` Giulio Benetti
  2017-11-08 22:39   ` Arnout Vandecappelle
  2017-11-08 18:42 ` [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Joshua Henderson
  2017-11-08 22:30 ` Arnout Vandecappelle
  2 siblings, 1 reply; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 18:21 UTC (permalink / raw)
  To: buildroot

Package qt5base didn't treat eglfs_mali.
Add support for eglfs_mali according to package selection

Changes v1->v2:
* Add eglfs_mali support

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/qt5/qt5base/qt5base.mk | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index d58a58a..23f5138 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -240,18 +240,27 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
 
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
 
-ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
-# use vivante backend
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y)
+# use eglfs vivante backend
 define QT5BASE_CONFIGURE_QMAKE_CONFIG
 	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
 		$(QT5BASE_PKGDIR)/qmake.conf
 endef
+else ifeq ($(filter y,$(BR2_PACKAGE_SUNXI_MALI) $(BR2_PACKAGE_SUNXI_MALI_MAINLINE)),y)
+# use eglfs mali backend
+define QT5BASE_CONFIGURE_QMAKE_CONFIG
+	sed 's/@EGLFS_DEVICE@/eglfs_mali/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
+		$(QT5BASE_PKGDIR)/qmake.conf
+endef
 else
+# don't use any eglfs backend
 define QT5BASE_CONFIGURE_QMAKE_CONFIG
 	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
 		$(QT5BASE_PKGDIR)/qmake.conf
 endef
 endif
+endif
 
 ifneq ($(QT5BASE_CONFIG_FILE),)
 define QT5BASE_CONFIGURE_CONFIG_FILE
-- 
2.7.4

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 18:21 [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Giulio Benetti
  2017-11-08 18:21 ` [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option Giulio Benetti
@ 2017-11-08 18:42 ` Joshua Henderson
  2017-11-08 18:52   ` Giulio Benetti
  2017-11-08 22:30 ` Arnout Vandecappelle
  2 siblings, 1 reply; 11+ messages in thread
From: Joshua Henderson @ 2017-11-08 18:42 UTC (permalink / raw)
  To: buildroot

Giulio,

On 11/08/2017 11:21 AM, Giulio Benetti wrote:
> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
> 
> Starting from qmake.conf.in, 
> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
> according to Package selection
> 

---

Tip: In the future, put 3 dashes right here so the revision notes, and any notes
in general you want to include in the email, are not included in the final
commit log. You can apply the generated email yourself to a clean tree and see
that anything below the 3 dashes is dropped.

> Changes v1 -> v2:
> 
> * Moved qmake.conf to qmake.conf.in
> * Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
> * Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---

...

Josh

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 18:42 ` [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Joshua Henderson
@ 2017-11-08 18:52   ` Giulio Benetti
  2017-11-08 18:53     ` Giulio Benetti
  2017-11-08 20:03     ` Joshua Henderson
  0 siblings, 2 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 18:52 UTC (permalink / raw)
  To: buildroot

Hi,

> Il giorno 08 nov 2017, alle ore 19:42, Joshua Henderson <joshua.henderson@microchip.com> ha scritto:
> 
> Giulio,
> 
>> On 11/08/2017 11:21 AM, Giulio Benetti wrote:
>> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
>> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
>> 
>> Starting from qmake.conf.in, 
>> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
>> according to Package selection
>> 
> 
> ---
> 
> Tip: In the future, put 3 dashes right here so the revision notes, and any notes
> in general you want to include in the email, are not included in the final
> commit log. You can apply the generated email yourself to a clean tree and see
> that anything below the 3 dashes is dropped.

Ok, I didn?t know about that.
Thank you very much!

> 
>> Changes v1 -> v2:
>> 
>> * Moved qmake.conf to qmake.conf.in
>> * Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
>> * Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed
>> 
>> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
>> ---
> 
> ...
> 
> Josh

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 18:52   ` Giulio Benetti
@ 2017-11-08 18:53     ` Giulio Benetti
  2017-11-08 20:03     ` Joshua Henderson
  1 sibling, 0 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 18:53 UTC (permalink / raw)
  To: buildroot

Need to re-submit patch?

Giulio

> Il giorno 08 nov 2017, alle ore 19:52, Giulio Benetti <giulio.benetti@micronovasrl.com> ha scritto:
> 
> Hi,
> 
>> Il giorno 08 nov 2017, alle ore 19:42, Joshua Henderson <joshua.henderson@microchip.com> ha scritto:
>> 
>> Giulio,
>> 
>>> On 11/08/2017 11:21 AM, Giulio Benetti wrote:
>>> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
>>> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
>>> 
>>> Starting from qmake.conf.in, 
>>> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
>>> according to Package selection
>>> 
>> 
>> ---
>> 
>> Tip: In the future, put 3 dashes right here so the revision notes, and any notes
>> in general you want to include in the email, are not included in the final
>> commit log. You can apply the generated email yourself to a clean tree and see
>> that anything below the 3 dashes is dropped.
> 
> Ok, I didn?t know about that.
> Thank you very much!
> 
>> 
>>> Changes v1 -> v2:
>>> 
>>> * Moved qmake.conf to qmake.conf.in
>>> * Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
>>> * Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed
>>> 
>>> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
>>> ---
>> 
>> ...
>> 
>> Josh

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 18:52   ` Giulio Benetti
  2017-11-08 18:53     ` Giulio Benetti
@ 2017-11-08 20:03     ` Joshua Henderson
  2017-11-08 21:50       ` Giulio Benetti
  1 sibling, 1 reply; 11+ messages in thread
From: Joshua Henderson @ 2017-11-08 20:03 UTC (permalink / raw)
  To: buildroot

Giulio,

On 11/08/2017 11:52 AM, Giulio Benetti wrote:
> Hi,
> 
>> Il giorno 08 nov 2017, alle ore 19:42, Joshua Henderson <joshua.henderson@microchip.com> ha scritto:
>>
>> Giulio,
>>
>>> On 11/08/2017 11:21 AM, Giulio Benetti wrote:
>>> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
>>> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
>>>
>>> Starting from qmake.conf.in, 
>>> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
>>> according to Package selection
>>>
>>
>> ---
>>
>> Tip: In the future, put 3 dashes right here so the revision notes, and any notes
>> in general you want to include in the email, are not included in the final
>> commit log. You can apply the generated email yourself to a clean tree and see
>> that anything below the 3 dashes is dropped.
> 
> Ok, I didn?t know about that.
> Thank you very much!
> 

You might want to look into git notes and git format-patch --notes to automate it and
keep notes separate.  Maybe wait a bit before submitting a new patch just for this
right now, unless requested.

Josh

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 20:03     ` Joshua Henderson
@ 2017-11-08 21:50       ` Giulio Benetti
  0 siblings, 0 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 21:50 UTC (permalink / raw)
  To: buildroot

Hi,

Il 08/11/2017 21:03, Joshua Henderson ha scritto:
> Giulio,
> 
> On 11/08/2017 11:52 AM, Giulio Benetti wrote:
>> Hi,
>>
>>> Il giorno 08 nov 2017, alle ore 19:42, Joshua Henderson <joshua.henderson@microchip.com> ha scritto:
>>>
>>> Giulio,
>>>
>>>> On 11/08/2017 11:21 AM, Giulio Benetti wrote:
>>>> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
>>>> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
>>>>
>>>> Starting from qmake.conf.in,
>>>> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
>>>> according to Package selection
>>>>
>>>
>>> ---
>>>
>>> Tip: In the future, put 3 dashes right here so the revision notes, and any notes
>>> in general you want to include in the email, are not included in the final
>>> commit log. You can apply the generated email yourself to a clean tree and see
>>> that anything below the 3 dashes is dropped.
>>
>> Ok, I didn?t know about that.
>> Thank you very much!
>>
> 
> You might want to look into git notes and git format-patch --notes to automate it and
> keep notes separate.  Maybe wait a bit before submitting a new patch just for this
> right now, unless requested.
> 
> Josh
> 

Thank you very much for hint.
I will follow it for sure
and let's wait for Maintainers about patchset.

-- 
Giulio Benetti
R&D Manager &
Advanced Research

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 18:21 [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Giulio Benetti
  2017-11-08 18:21 ` [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option Giulio Benetti
  2017-11-08 18:42 ` [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Joshua Henderson
@ 2017-11-08 22:30 ` Arnout Vandecappelle
  2017-11-08 22:43   ` Giulio Benetti
  2 siblings, 1 reply; 11+ messages in thread
From: Arnout Vandecappelle @ 2017-11-08 22:30 UTC (permalink / raw)
  To: buildroot

 Hi Giulio,

On 08-11-17 19:21, Giulio Benetti wrote:
> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
> 
> Starting from qmake.conf.in, 
> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
> according to Package selection

 The commit message is still not entirely clear. Howe about this:

qt5: correct eglfs support in qmake.conf.in

Setting EGLFS_DEVICE_INTEGRATION at the end of qmake.conf like is done by commit
0c219ddb8a doesn't work correctly: it has to be set before the
include(../common/linux_device_post.conf)

Instead of appending to the file, change it into a qmake.conf.in template file
that contains an EGLFS_DEVICE_INTEGRATION assignment and update it with sed.

> 
> Changes v1 -> v2:
> 
> * Moved qmake.conf to qmake.conf.in
> * Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
> * Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
>  package/qt5/qt5base/{qmake.conf => qmake.conf.in} |  2 ++
>  package/qt5/qt5base/qt5base.mk                    | 12 +++++++++---
>  2 files changed, 11 insertions(+), 3 deletions(-)
>  rename package/qt5/qt5base/{qmake.conf => qmake.conf.in} (95%)
> 
> diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf.in
> similarity index 95%
> rename from package/qt5/qt5base/qmake.conf
> rename to package/qt5/qt5base/qmake.conf.in
> index 8b6debe..fb698b9 100644
> --- a/package/qt5/qt5base/qmake.conf
> +++ b/package/qt5/qt5base/qmake.conf.in
> @@ -24,5 +24,7 @@ QMAKE_CFLAGS_ISYSTEM   =
>  # Architecturespecific configuration
>  include(arch.conf)
>  
> +EGLFS_DEVICE_INTEGRATION = @EGLFS_DEVICE@
> +
>  include(../common/linux_device_post.conf)
>  load(qt_config)
> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
> index b3f9c79..d58a58a 100644
> --- a/package/qt5/qt5base/qt5base.mk
> +++ b/package/qt5/qt5base/qt5base.mk
> @@ -243,8 +243,13 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
>  ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
>  # use vivante backend
>  define QT5BASE_CONFIGURE_QMAKE_CONFIG
> -	echo "EGLFS_DEVICE_INTEGRATION = eglfs_viv" >> \
> -		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
> +	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
> +		$(QT5BASE_PKGDIR)/qmake.conf

 What I meant is to write directly to the target file, so
		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf

> +endef
> +else
> +define QT5BASE_CONFIGURE_QMAKE_CONFIG
> +	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
> +		$(QT5BASE_PKGDIR)/qmake.conf
>  endef
>  endif
>  
> @@ -263,9 +268,10 @@ endef
>  endif
>  
>  define QT5BASE_CONFIGURE_CMDS
> +	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
>  	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
>  		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf

 So remove this

> -	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
> +	$(RM) $(QT5BASE_PKGDIR)/qmake.conf

 And this.


 Regards,
 Arnout

>  	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \
>  		$(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
>  	$(QT5BASE_CONFIGURE_CONFIG_FILE)
> 

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option
  2017-11-08 18:21 ` [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option Giulio Benetti
@ 2017-11-08 22:39   ` Arnout Vandecappelle
  2017-11-08 22:45     ` Giulio Benetti
  0 siblings, 1 reply; 11+ messages in thread
From: Arnout Vandecappelle @ 2017-11-08 22:39 UTC (permalink / raw)
  To: buildroot



On 08-11-17 19:21, Giulio Benetti wrote:
> Package qt5base didn't treat eglfs_mali.
> Add support for eglfs_mali according to package selection
> 
> Changes v1->v2:
> * Add eglfs_mali support
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
>  package/qt5/qt5base/qt5base.mk | 13 +++++++++++--
>  1 file changed, 11 insertions(+), 2 deletions(-)
> 
> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
> index d58a58a..23f5138 100644
> --- a/package/qt5/qt5base/qt5base.mk
> +++ b/package/qt5/qt5base/qt5base.mk
> @@ -240,18 +240,27 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
>  
>  QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
>  
> -ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
> -# use vivante backend
> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y)
> +# use eglfs vivante backend
>  define QT5BASE_CONFIGURE_QMAKE_CONFIG
>  	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>  		$(QT5BASE_PKGDIR)/qmake.conf
>  endef
> +else ifeq ($(filter y,$(BR2_PACKAGE_SUNXI_MALI) $(BR2_PACKAGE_SUNXI_MALI_MAINLINE)),y)

 Since the sunxi-mali-mainline package has not been accepted yet, this is not
correct (yet). To solve that, the easiest way is to include all three in a
single series.

> +# use eglfs mali backend
> +define QT5BASE_CONFIGURE_QMAKE_CONFIG
> +	sed 's/@EGLFS_DEVICE@/eglfs_mali/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
> +		$(QT5BASE_PKGDIR)/qmake.conf
> +endef

 This is getting complicated, especially since there will probably be more
backends that need this... How about:

ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y)
QT5BASE_EGLFS_DEVICE = eglfs_viv
else ifeq ($(BR2_PACKAGE_SUNXI_MALI),y)
QT5BASE_EGLFS_DEVICE = eglfs_mali
endif
endif

ifeq ($(QT5BASE_EGLFS_DEVICE),)
	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
else
 	sed 's/@EGLFS_DEVICE@/$(QT5BASE_EGLFS_DEVICE)/g'
$(QT5BASE_PKGDIR)/qmake.conf.in > \
		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
endif


 Regards,
 Arnout

>  else
> +# don't use any eglfs backend
>  define QT5BASE_CONFIGURE_QMAKE_CONFIG
>  	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>  		$(QT5BASE_PKGDIR)/qmake.conf
>  endef
>  endif
> +endif
>  
>  ifneq ($(QT5BASE_CONFIG_FILE),)
>  define QT5BASE_CONFIGURE_CONFIG_FILE
> 

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs
  2017-11-08 22:30 ` Arnout Vandecappelle
@ 2017-11-08 22:43   ` Giulio Benetti
  0 siblings, 0 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 22:43 UTC (permalink / raw)
  To: buildroot

Hi Arnout,

Il 08/11/2017 23:30, Arnout Vandecappelle ha scritto:
>   Hi Giulio,
> 
> On 08-11-17 19:21, Giulio Benetti wrote:
>> EGLFS_DEVICE_INTEGRATION = eglfs_* doesn't work correctly with previous patch
>> EGLFS_DEVICE_INTEGRATION = eglfs_viv/eglfs_* must be written before include(../common/linux_device_post.conf)
>>
>> Starting from qmake.conf.in,
>> generate qmake.conf substituting @EGLFS_DEVICE@ with eglfs_viv or eglfs_mali
>> according to Package selection
> 
>   The commit message is still not entirely clear. Howe about this:
> 
> qt5: correct eglfs support in qmake.conf.in
> 
> Setting EGLFS_DEVICE_INTEGRATION at the end of qmake.conf like is done by commit
> 0c219ddb8a doesn't work correctly: it has to be set before the
> include(../common/linux_device_post.conf)
> 
> Instead of appending to the file, change it into a qmake.conf.in template file
> that contains an EGLFS_DEVICE_INTEGRATION assignment and update it with sed.

Thank you for the example, it is precious to me.

> 
>>
>> Changes v1 -> v2:
>>
>> * Moved qmake.conf to qmake.conf.in
>> * Added @EGLFS_DEVICE@ placeholder into qmake.conf.in
>> * Modified QT5BASE_CONFIGURE_QMAKE_CONFIG to use sed
>>
>> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
>> ---
>>   package/qt5/qt5base/{qmake.conf => qmake.conf.in} |  2 ++
>>   package/qt5/qt5base/qt5base.mk                    | 12 +++++++++---
>>   2 files changed, 11 insertions(+), 3 deletions(-)
>>   rename package/qt5/qt5base/{qmake.conf => qmake.conf.in} (95%)
>>
>> diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf.in
>> similarity index 95%
>> rename from package/qt5/qt5base/qmake.conf
>> rename to package/qt5/qt5base/qmake.conf.in
>> index 8b6debe..fb698b9 100644
>> --- a/package/qt5/qt5base/qmake.conf
>> +++ b/package/qt5/qt5base/qmake.conf.in
>> @@ -24,5 +24,7 @@ QMAKE_CFLAGS_ISYSTEM   =
>>   # Architecturespecific configuration
>>   include(arch.conf)
>>   
>> +EGLFS_DEVICE_INTEGRATION = @EGLFS_DEVICE@
>> +
>>   include(../common/linux_device_post.conf)
>>   load(qt_config)
>> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
>> index b3f9c79..d58a58a 100644
>> --- a/package/qt5/qt5base/qt5base.mk
>> +++ b/package/qt5/qt5base/qt5base.mk
>> @@ -243,8 +243,13 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
>>   ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
>>   # use vivante backend
>>   define QT5BASE_CONFIGURE_QMAKE_CONFIG
>> -	echo "EGLFS_DEVICE_INTEGRATION = eglfs_viv" >> \
>> -		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
>> +	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>> +		$(QT5BASE_PKGDIR)/qmake.conf
> 
>   What I meant is to write directly to the target file, so
> 		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf

I wanted to do the same, but directory "linux-buildroot-g++" doesn't 
exists, so sed failed.
But it makes more sense to "mkdir -p 
$(@D)/mkspecs/devices/linux-buildroot-g++/" at the beginning and make it 
behaving like you've written down, so....

> 
>> +endef
>> +else
>> +define QT5BASE_CONFIGURE_QMAKE_CONFIG
>> +	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>> +		$(QT5BASE_PKGDIR)/qmake.conf
>>   endef
>>   endif
>>   
>> @@ -263,9 +268,10 @@ endef
>>   endif
>>   
>>   define QT5BASE_CONFIGURE_CMDS
>> +	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
>>   	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
>>   		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf

I remove this

> 
>   So remove this
> 
>> -	$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
>> +	$(RM) $(QT5BASE_PKGDIR)/qmake.conf

and this

> 
>   And this.
> 
> 
>   Regards,
>   Arnout
> 
>>   	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \
>>   		$(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
>>   	$(QT5BASE_CONFIGURE_CONFIG_FILE)
>>
> 


-- 
Giulio Benetti
R&D Manager &
Advanced Research

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option
  2017-11-08 22:39   ` Arnout Vandecappelle
@ 2017-11-08 22:45     ` Giulio Benetti
  0 siblings, 0 replies; 11+ messages in thread
From: Giulio Benetti @ 2017-11-08 22:45 UTC (permalink / raw)
  To: buildroot

Hi Arnout,

Il 08/11/2017 23:39, Arnout Vandecappelle ha scritto:
> 
> 
> On 08-11-17 19:21, Giulio Benetti wrote:
>> Package qt5base didn't treat eglfs_mali.
>> Add support for eglfs_mali according to package selection
>>
>> Changes v1->v2:
>> * Add eglfs_mali support
>>
>> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
>> ---
>>   package/qt5/qt5base/qt5base.mk | 13 +++++++++++--
>>   1 file changed, 11 insertions(+), 2 deletions(-)
>>
>> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
>> index d58a58a..23f5138 100644
>> --- a/package/qt5/qt5base/qt5base.mk
>> +++ b/package/qt5/qt5base/qt5base.mk
>> @@ -240,18 +240,27 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
>>   
>>   QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
>>   
>> -ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
>> -# use vivante backend
>> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
>> +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y)
>> +# use eglfs vivante backend
>>   define QT5BASE_CONFIGURE_QMAKE_CONFIG
>>   	sed 's/@EGLFS_DEVICE@/eglfs_viv/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>>   		$(QT5BASE_PKGDIR)/qmake.conf
>>   endef
>> +else ifeq ($(filter y,$(BR2_PACKAGE_SUNXI_MALI) $(BR2_PACKAGE_SUNXI_MALI_MAINLINE)),y)
> 
>   Since the sunxi-mali-mainline package has not been accepted yet, this is not
> correct (yet). To solve that, the easiest way is to include all three in a
> single series.

You're right,
so I will add BR2_PACKAGE_SUNXI_MALI_MAINLINE later.

> 
>> +# use eglfs mali backend
>> +define QT5BASE_CONFIGURE_QMAKE_CONFIG
>> +	sed 's/@EGLFS_DEVICE@/eglfs_mali/g' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>> +		$(QT5BASE_PKGDIR)/qmake.conf
>> +endef
> 
>   This is getting complicated, especially since there will probably be more
> backends that need this... How about:
> 
> ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y)
> QT5BASE_EGLFS_DEVICE = eglfs_viv
> else ifeq ($(BR2_PACKAGE_SUNXI_MALI),y)
> QT5BASE_EGLFS_DEVICE = eglfs_mali
> endif
> endif
> 
> ifeq ($(QT5BASE_EGLFS_DEVICE),)
> 	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
> 		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
> else
>   	sed 's/@EGLFS_DEVICE@/$(QT5BASE_EGLFS_DEVICE)/g'
> $(QT5BASE_PKGDIR)/qmake.conf.in > \
> 		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
> endif
> 

Good idea, I will modify that way and submit [PATCH v3]

> 
>   Regards,
>   Arnout
> 
>>   else
>> +# don't use any eglfs backend
>>   define QT5BASE_CONFIGURE_QMAKE_CONFIG
>>   	sed '/@EGLFS_DEVICE@/,+1d' $(QT5BASE_PKGDIR)/qmake.conf.in > \
>>   		$(QT5BASE_PKGDIR)/qmake.conf
>>   endef
>>   endif
>> +endif
>>   
>>   ifneq ($(QT5BASE_CONFIG_FILE),)
>>   define QT5BASE_CONFIGURE_CONFIG_FILE
>>
> 

Best regards!

-- 
Giulio Benetti
R&D Manager &
Advanced Research

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

end of thread, other threads:[~2017-11-08 22:45 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-08 18:21 [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Giulio Benetti
2017-11-08 18:21 ` [Buildroot] [PATCH v2 2/2] add qmake.conf eglfs_mali option Giulio Benetti
2017-11-08 22:39   ` Arnout Vandecappelle
2017-11-08 22:45     ` Giulio Benetti
2017-11-08 18:42 ` [Buildroot] [PATCH v2 1/2] qt5 add qmake.conf.in for eglfs Joshua Henderson
2017-11-08 18:52   ` Giulio Benetti
2017-11-08 18:53     ` Giulio Benetti
2017-11-08 20:03     ` Joshua Henderson
2017-11-08 21:50       ` Giulio Benetti
2017-11-08 22:30 ` Arnout Vandecappelle
2017-11-08 22:43   ` Giulio Benetti

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox