All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
@ 2019-12-21 11:12 Bartosz Bilas
  2019-12-21 18:24 ` Giulio Benetti
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Bartosz Bilas @ 2019-12-21 11:12 UTC (permalink / raw)
  To: buildroot

This commit adds a patch from upstream chromium [1].

Fixes:
  ../../3rdparty/chromium/third_party/skia/third_party/skcms/skcms.cc:1909:16:
  note: in definition of macro 'NS'
  #define NS(id) id

[1] https://chromium.googlesource.com/chromium/src/+/a8c8396fd20d98666d517c45b358c63736e345ef

Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
---
v1 -> v2:
 - keep gcc 4.8 as a minimum required version (suggested by Giulio Benetti)
 ..._config-Fixes-when-use_sysroot-false.patch | 57 +++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 package/qt5/qt5webengine/5.12.5/0001-pkg_config-Fixes-when-use_sysroot-false.patch

diff --git a/package/qt5/qt5webengine/5.12.5/0001-pkg_config-Fixes-when-use_sysroot-false.patch b/package/qt5/qt5webengine/5.12.5/0001-pkg_config-Fixes-when-use_sysroot-false.patch
new file mode 100644
index 0000000000..a0fdad4da3
--- /dev/null
+++ b/package/qt5/qt5webengine/5.12.5/0001-pkg_config-Fixes-when-use_sysroot-false.patch
@@ -0,0 +1,57 @@
+From cc35cac78c053c14da01d6b1e5b05b0615360148 Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@chromium.org>
+Date: Thu, 2 Aug 2018 01:59:28 +0000
+Subject: [PATCH] pkg_config: Fixes when use_sysroot=false
+
+This CL introduces 2 changes to the behavior of pkg_config when
+use_sysroot=false:
+
+1. The path is not made relative to the build directory.  This fixes the case
+where your src directory may be mounted at different locations.
+
+2. -I is used instead of -isystem.  When -isystem is used, dep files do not
+reference the system header files.  This is OK when using the sysroot because
+the CR_SYSROOT_HASH macro contains the sysroot revision so any source files will
+be rebuilt when the sysroot updates.
+
+R=dpranke
+
+Change-Id: Ia3d7df51880205fee888923283b76078ccb3112f
+Reviewed-on: https://chromium-review.googlesource.com/1159689
+Reviewed-by: Dirk Pranke <dpranke@chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Original-Commit-Position: refs/heads/master@{#580030}
+Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
+Cr-Mirrored-Commit: a8c8396fd20d98666d517c45b358c63736e345ef
+Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
+---
+ src/3rdparty/chromium/build/config/linux/pkg_config.gni | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/src/3rdparty/chromium/build/config/linux/pkg_config.gni b/src/3rdparty/chromium/build/config/linux/pkg_config.gni
+index 53ee353af..428e44ac0 100644
+--- a/src/3rdparty/chromium/build/config/linux/pkg_config.gni
++++ b/src/3rdparty/chromium/build/config/linux/pkg_config.gni
+@@ -103,11 +103,15 @@ template("pkg_config") {
+     pkgresult = exec_script(pkg_config_script, args, "value")
+     cflags = pkgresult[1]
+ 
+-    # We want the system include paths to use -isystem instead of -I to suppress
+-    # warnings in those headers.
+     foreach(include, pkgresult[0]) {
+-      include_relativized = rebase_path(include, root_build_dir)
+-      cflags += [ "-isystem$include_relativized" ]
++      if (use_sysroot) {
++        # We want the system include paths to use -isystem instead of -I to
++        # suppress warnings in those headers.
++        include_relativized = rebase_path(include, root_build_dir)
++        cflags += [ "-isystem$include_relativized" ]
++      } else {
++        cflags += [ "-I$include" ]
++      }
+     }
+ 
+     if (!defined(invoker.ignore_libs) || !invoker.ignore_libs) {
+-- 
+2.21.0
+
-- 
2.24.1

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 11:12 [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error Bartosz Bilas
@ 2019-12-21 18:24 ` Giulio Benetti
  2019-12-21 18:26   ` Giulio Benetti
  2019-12-21 21:35 ` Thomas Petazzoni
  2019-12-25 18:07 ` Peter Korsgaard
  2 siblings, 1 reply; 7+ messages in thread
From: Giulio Benetti @ 2019-12-21 18:24 UTC (permalink / raw)
  To: buildroot

Hi Bartosz,

On 12/21/19 12:12 PM, Bartosz Bilas wrote:
> This commit adds a patch from upstream chromium [1].
> 
> Fixes:
>    ../../3rdparty/chromium/third_party/skia/third_party/skcms/skcms.cc:1909:16:
>    note: in definition of macro 'NS'
>    #define NS(id) id

This is not what this patch fixes. That build log is not an error log, 
previously it was pointing a gcc ICE, but now not anymore because gcc 
it's been fixed. The error instead we're experiencing here, in 
qt5webengine, is this:
'''
  In file included from 
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/bits/stl_algo.h:59:0,
                  from 
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/algorithm:62,
                  from /usr/include/qt5/QtCore/qglobal.h:85,
                  from /usr/include/qt5/QtCore/qalgorithms.h:37,
                  from /usr/include/qt5/QtCore/qlist.h:37,
                  from /usr/include/qt5/QtCore/qstringlist.h:34,
                  from /usr/include/qt5/QtCore/QStringList:1,
                  from base/http/requestparser.cpp:32:
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/cstdlib:75:25: 
fatal error: stdlib.h: No such file or directory
  #include_next <stdlib.h>
'''

Please can you update commit log with:
'''
This commit adds a patch from upstream chromium[1] that allows passing 
-I instead of -isystem to CFLAGS.

Fixes:
  In file included from 
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/bits/stl_algo.h:59:0,
                  from 
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/algorithm:62,
                  from /usr/include/qt5/QtCore/qglobal.h:85,
                  from /usr/include/qt5/QtCore/qalgorithms.h:37,
                  from /usr/include/qt5/QtCore/qlist.h:37,
                  from /usr/include/qt5/QtCore/qstringlist.h:34,
                  from /usr/include/qt5/QtCore/QStringList:1,
                  from base/http/requestparser.cpp:32:
/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/cstdlib:75:25: 
fatal error: stdlib.h: No such file or directory
  #include_next <stdlib.h>

[1] 
https://chromium.googlesource.com/chromium/src/+/a8c8396fd20d98666d517c45b358c63736e345ef
'''

and send a v3?

Thank you
Best regards
-- 
Giulio Benetti
Benetti Engineering sas

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 18:24 ` Giulio Benetti
@ 2019-12-21 18:26   ` Giulio Benetti
  2019-12-21 21:37     ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Giulio Benetti @ 2019-12-21 18:26 UTC (permalink / raw)
  To: buildroot

And...

On 12/21/19 7:24 PM, Giulio Benetti wrote:
> Hi Bartosz,
> 
> On 12/21/19 12:12 PM, Bartosz Bilas wrote:
>> This commit adds a patch from upstream chromium [1].
>>
>> Fixes:
>>     ../../3rdparty/chromium/third_party/skia/third_party/skcms/skcms.cc:1909:16:
>>     note: in definition of macro 'NS'
>>     #define NS(id) id
> 
> This is not what this patch fixes. That build log is not an error log,
> previously it was pointing a gcc ICE, but now not anymore because gcc
> it's been fixed. The error instead we're experiencing here, in
> qt5webengine, is this:
> '''
>    In file included from
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/bits/stl_algo.h:59:0,
>                    from
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/algorithm:62,
>                    from /usr/include/qt5/QtCore/qglobal.h:85,
>                    from /usr/include/qt5/QtCore/qalgorithms.h:37,
>                    from /usr/include/qt5/QtCore/qlist.h:37,
>                    from /usr/include/qt5/QtCore/qstringlist.h:34,
>                    from /usr/include/qt5/QtCore/QStringList:1,
>                    from base/http/requestparser.cpp:32:
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/cstdlib:75:25:
> fatal error: stdlib.h: No such file or directory
>    #include_next <stdlib.h>
> '''
> 
> Please can you update commit log with:
> '''
> This commit adds a patch from upstream chromium[1] that allows passing
> -I instead of -isystem to CFLAGS.

which caused bug [2],

> 
> Fixes:
>    In file included from
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/bits/stl_algo.h:59:0,
>                    from
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/algorithm:62,
>                    from /usr/include/qt5/QtCore/qglobal.h:85,
>                    from /usr/include/qt5/QtCore/qalgorithms.h:37,
>                    from /usr/include/qt5/QtCore/qlist.h:37,
>                    from /usr/include/qt5/QtCore/qstringlist.h:34,
>                    from /usr/include/qt5/QtCore/QStringList:1,
>                    from base/http/requestparser.cpp:32:
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/g++-v6/cstdlib:75:25:
> fatal error: stdlib.h: No such file or directory
>    #include_next <stdlib.h>
> 
> [1]
> https://chromium.googlesource.com/chromium/src/+/a8c8396fd20d98666d517c45b358c63736e345ef

[2]
https://bugreports.qt.io/browse/QTBUG-53375

> '''
> 
> and send a v3?
> 
> Thank you
> Best regards
> 

Thanks again
-- 
Giulio Benetti
Benetti Engineering sas

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 11:12 [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error Bartosz Bilas
  2019-12-21 18:24 ` Giulio Benetti
@ 2019-12-21 21:35 ` Thomas Petazzoni
  2019-12-25 18:07 ` Peter Korsgaard
  2 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2019-12-21 21:35 UTC (permalink / raw)
  To: buildroot

On Sat, 21 Dec 2019 12:12:18 +0100
Bartosz Bilas <b.bilas@grinn-global.com> wrote:

> This commit adds a patch from upstream chromium [1].
> 
> Fixes:
>   ../../3rdparty/chromium/third_party/skia/third_party/skcms/skcms.cc:1909:16:
>   note: in definition of macro 'NS'
>   #define NS(id) id
> 
> [1] https://chromium.googlesource.com/chromium/src/+/a8c8396fd20d98666d517c45b358c63736e345ef
> 
> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
> ---
> v1 -> v2:
>  - keep gcc 4.8 as a minimum required version (suggested by Giulio Benetti)
>  ..._config-Fixes-when-use_sysroot-false.patch | 57 +++++++++++++++++++
>  1 file changed, 57 insertions(+)
>  create mode 100644 package/qt5/qt5webengine/5.12.5/0001-pkg_config-Fixes-when-use_sysroot-false.patch

Thanks! I've applied to master, after improving the commit log as
suggested from the first reply of Giulio.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 18:26   ` Giulio Benetti
@ 2019-12-21 21:37     ` Thomas Petazzoni
  2019-12-21 21:45       ` giulio.benetti at benettiengineering.com
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2019-12-21 21:37 UTC (permalink / raw)
  To: buildroot

Hello Giulio,

On Sat, 21 Dec 2019 19:26:42 +0100
Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:

> > This commit adds a patch from upstream chromium[1] that allows passing
> > -I instead of -isystem to CFLAGS.  
> 
> which caused bug [2],

[...]
> 
> [2]
> https://bugreports.qt.io/browse/QTBUG-53375

I disagree: this bug report is about an issue in qmake, while the patch
from Bartosz is fixing the Chromium code. So even if both are related
to -isystem issues, they are not the same problem as far as I can see.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 21:37     ` Thomas Petazzoni
@ 2019-12-21 21:45       ` giulio.benetti at benettiengineering.com
  0 siblings, 0 replies; 7+ messages in thread
From: giulio.benetti at benettiengineering.com @ 2019-12-21 21:45 UTC (permalink / raw)
  To: buildroot

An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20191221/68798ca9/attachment.html>

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

* [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error
  2019-12-21 11:12 [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error Bartosz Bilas
  2019-12-21 18:24 ` Giulio Benetti
  2019-12-21 21:35 ` Thomas Petazzoni
@ 2019-12-25 18:07 ` Peter Korsgaard
  2 siblings, 0 replies; 7+ messages in thread
From: Peter Korsgaard @ 2019-12-25 18:07 UTC (permalink / raw)
  To: buildroot

>>>>> "Bartosz" == Bartosz Bilas <b.bilas@grinn-global.com> writes:

 > This commit adds a patch from upstream chromium [1].
 > Fixes:
 >   ../../3rdparty/chromium/third_party/skia/third_party/skcms/skcms.cc:1909:16:
 >   note: in definition of macro 'NS'
 >   #define NS(id) id

 > [1] https://chromium.googlesource.com/chromium/src/+/a8c8396fd20d98666d517c45b358c63736e345ef

 > Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
 > ---
 > v1 -> v2:
 >  - keep gcc 4.8 as a minimum required version (suggested by Giulio Benetti)

Committed to 2019.11.x, thanks.

-- 
Bye, Peter Korsgaard

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

end of thread, other threads:[~2019-12-25 18:07 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-21 11:12 [Buildroot] [PATCH v2 1/1] package/qt5/qt5webengine: fix build error Bartosz Bilas
2019-12-21 18:24 ` Giulio Benetti
2019-12-21 18:26   ` Giulio Benetti
2019-12-21 21:37     ` Thomas Petazzoni
2019-12-21 21:45       ` giulio.benetti at benettiengineering.com
2019-12-21 21:35 ` Thomas Petazzoni
2019-12-25 18:07 ` 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.