All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I
@ 2018-02-22  4:29 Khem Raj
  2018-02-22  4:29 ` [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use Khem Raj
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Khem Raj @ 2018-02-22  4:29 UTC (permalink / raw)
  To: openembedded-devel

Fixes no-x11 builds (eglfs)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes-qt/qt5/qtbase-native_git.bb                |  1 +
 ...mon-gcc-base.conf-Use-I-instead-of-isyste.patch | 36 ++++++++++++++++++++++
 recipes-qt/qt5/qtbase_git.bb                       |  1 +
 3 files changed, 38 insertions(+)
 create mode 100644 recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch

diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb
index 20e24eb..5fa24d3 100644
--- a/recipes-qt/qt5/qtbase-native_git.bb
+++ b/recipes-qt/qt5/qtbase-native_git.bb
@@ -34,6 +34,7 @@ SRC_URI += "\
     file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
     file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
     file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
+    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
 "
 
 # common for qtbase-native and nativesdk-qtbase
diff --git a/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
new file mode 100644
index 0000000..44e9009
--- /dev/null
+++ b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
@@ -0,0 +1,36 @@
+From 61c858474804fd772d612e6c5b4bb6df261d521a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 14 Feb 2018 17:08:43 -0800
+Subject: [PATCH] mkspecs/common/gcc-base.conf: Use -I instead of -isystem
+
+-isystem fails to build when code uses include_next on certain files e.g.
+
+qtbase/5.10.0+gitAUTOINC+50117d738a-r0/recipe-sysroot/usr/include/c++/7.3.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
+ #include_next <stdlib.h>
+               ^~~~~~~~~~
+compilation terminated.
+make[2]: *** [Makefile:11592: .obj/qgenericpluginfactory.o] Error 1
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ mkspecs/common/gcc-base.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
+index 234f71d495..ee3da023e6 100644
+--- a/mkspecs/common/gcc-base.conf
++++ b/mkspecs/common/gcc-base.conf
+@@ -46,7 +46,7 @@ QMAKE_CFLAGS_DEBUG         += -g
+ QMAKE_CFLAGS_SHLIB         += $$QMAKE_CFLAGS_PIC
+ QMAKE_CFLAGS_STATIC_LIB    += $$QMAKE_CFLAGS_PIC
+ QMAKE_CFLAGS_APP           += $$QMAKE_CFLAGS_PIC
+-QMAKE_CFLAGS_ISYSTEM        = -isystem
++QMAKE_CFLAGS_ISYSTEM        = -I
+ QMAKE_CFLAGS_YACC          += -Wno-unused -Wno-parentheses
+ QMAKE_CFLAGS_HIDESYMS      += -fvisibility=hidden
+ QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
+-- 
+2.16.1
+
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index 522e261..e495b8c 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -30,6 +30,7 @@ SRC_URI += "\
     file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
     file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
     file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
+    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
 "
 
 # LGPL-3.0 is used only in src/plugins/platforms/android/extract.cpp
-- 
2.16.2



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

* [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use
  2018-02-22  4:29 [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
@ 2018-02-22  4:29 ` Khem Raj
  2018-02-23  1:27   ` Martin Jansa
  2018-02-22  5:03 ` [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
  2018-02-24  4:49 ` Denys Dmytriyenko
  2 siblings, 1 reply; 8+ messages in thread
From: Khem Raj @ 2018-02-22  4:29 UTC (permalink / raw)
  To: openembedded-devel

These features depend on underlying syscall support in kernel
and if older kernels are in use, then we can have a knob to
turn them off.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes-qt/qt5/qtbase_git.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index e495b8c..843648f 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -71,7 +71,7 @@ PACKAGECONFIG_DISTRO ?= ""
 PACKAGECONFIG_RELEASE ?= "release"
 # This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
 # PACKAGECONFIG_OPENSSL ?= "openssl"
-PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
+PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests renameat2 getentropy"
 
 PACKAGECONFIG ?= " \
     ${PACKAGECONFIG_RELEASE} \
@@ -146,6 +146,10 @@ PACKAGECONFIG[widgets] = "-widgets,-no-widgets"
 PACKAGECONFIG[libproxy] = "-libproxy,-no-libproxy,libproxy"
 PACKAGECONFIG[libinput] = "-libinput,-no-libinput,libinput"
 PACKAGECONFIG[journald] = "-journald,-no-journald,systemd"
+# needs kernel 3.16+
+PACKAGECONFIG[renameat2] = "-feature-renameat2,-no-feature-renameat2,"
+# needs kernel 3.17+
+PACKAGECONFIG[getentropy] = "-feature-getentropy,-no-feature-getentropy,"
 
 QT_CONFIG_FLAGS_GOLD = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-use-gold-linker', '-no-use-gold-linker', d)}"
 QT_CONFIG_FLAGS += " \
-- 
2.16.2



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

* Re: [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I
  2018-02-22  4:29 [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
  2018-02-22  4:29 ` [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use Khem Raj
@ 2018-02-22  5:03 ` Khem Raj
  2018-02-24  4:49 ` Denys Dmytriyenko
  2 siblings, 0 replies; 8+ messages in thread
From: Khem Raj @ 2018-02-22  5:03 UTC (permalink / raw)
  To: openembeded-devel

this patch is resent because now its rebased on top of master-next

On Wed, Feb 21, 2018 at 8:29 PM, Khem Raj <raj.khem@gmail.com> wrote:
> Fixes no-x11 builds (eglfs)
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  recipes-qt/qt5/qtbase-native_git.bb                |  1 +
>  ...mon-gcc-base.conf-Use-I-instead-of-isyste.patch | 36 ++++++++++++++++++++++
>  recipes-qt/qt5/qtbase_git.bb                       |  1 +
>  3 files changed, 38 insertions(+)
>  create mode 100644 recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
>
> diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb
> index 20e24eb..5fa24d3 100644
> --- a/recipes-qt/qt5/qtbase-native_git.bb
> +++ b/recipes-qt/qt5/qtbase-native_git.bb
> @@ -34,6 +34,7 @@ SRC_URI += "\
>      file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
>      file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
>      file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
> +    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
>  "
>
>  # common for qtbase-native and nativesdk-qtbase
> diff --git a/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
> new file mode 100644
> index 0000000..44e9009
> --- /dev/null
> +++ b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
> @@ -0,0 +1,36 @@
> +From 61c858474804fd772d612e6c5b4bb6df261d521a Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Wed, 14 Feb 2018 17:08:43 -0800
> +Subject: [PATCH] mkspecs/common/gcc-base.conf: Use -I instead of -isystem
> +
> +-isystem fails to build when code uses include_next on certain files e.g.
> +
> +qtbase/5.10.0+gitAUTOINC+50117d738a-r0/recipe-sysroot/usr/include/c++/7.3.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
> + #include_next <stdlib.h>
> +               ^~~~~~~~~~
> +compilation terminated.
> +make[2]: *** [Makefile:11592: .obj/qgenericpluginfactory.o] Error 1
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + mkspecs/common/gcc-base.conf | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
> +index 234f71d495..ee3da023e6 100644
> +--- a/mkspecs/common/gcc-base.conf
> ++++ b/mkspecs/common/gcc-base.conf
> +@@ -46,7 +46,7 @@ QMAKE_CFLAGS_DEBUG         += -g
> + QMAKE_CFLAGS_SHLIB         += $$QMAKE_CFLAGS_PIC
> + QMAKE_CFLAGS_STATIC_LIB    += $$QMAKE_CFLAGS_PIC
> + QMAKE_CFLAGS_APP           += $$QMAKE_CFLAGS_PIC
> +-QMAKE_CFLAGS_ISYSTEM        = -isystem
> ++QMAKE_CFLAGS_ISYSTEM        = -I
> + QMAKE_CFLAGS_YACC          += -Wno-unused -Wno-parentheses
> + QMAKE_CFLAGS_HIDESYMS      += -fvisibility=hidden
> + QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
> +--
> +2.16.1
> +
> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
> index 522e261..e495b8c 100644
> --- a/recipes-qt/qt5/qtbase_git.bb
> +++ b/recipes-qt/qt5/qtbase_git.bb
> @@ -30,6 +30,7 @@ SRC_URI += "\
>      file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
>      file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
>      file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
> +    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
>  "
>
>  # LGPL-3.0 is used only in src/plugins/platforms/android/extract.cpp
> --
> 2.16.2
>


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

* Re: [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use
  2018-02-22  4:29 ` [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use Khem Raj
@ 2018-02-23  1:27   ` Martin Jansa
  2018-02-23  2:17     ` Khem Raj
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Jansa @ 2018-02-23  1:27 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 6575 bytes --]

On Wed, Feb 21, 2018 at 08:29:40PM -0800, Khem Raj wrote:
> These features depend on underlying syscall support in kernel
> and if older kernels are in use, then we can have a knob to
> turn them off.
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  recipes-qt/qt5/qtbase_git.bb | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
> index e495b8c..843648f 100644
> --- a/recipes-qt/qt5/qtbase_git.bb
> +++ b/recipes-qt/qt5/qtbase_git.bb
> @@ -71,7 +71,7 @@ PACKAGECONFIG_DISTRO ?= ""
>  PACKAGECONFIG_RELEASE ?= "release"
>  # This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
>  # PACKAGECONFIG_OPENSSL ?= "openssl"
> -PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
> +PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests renameat2 getentropy"

Should renameat2 be enabled by default?

Either the test for it is broken in 5.11 or it's not available in
default setup.

In 2 very different builds it currently fail for me with:
| ERROR: Feature 'renameat2' was enabled, but the pre-condition 'config.linux && tests.renameat2' failed.

| Checking for renameat2()...
| + cd /OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/build/config.tests/renameat2 && PKG_CONFIG_SYSROOT_DIR=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot PKG_CONFIG_LIBDIR=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot/usr/lib/pkgconfig /OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot-native/usr/bin/qt5/qmake -qtconf /OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/build/bin/qt.conf "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += shared use_gold_linker warn_off console single_arch" "QMAKE_CFLAGS += --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot" "QMAKE_CXXFLAGS += --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot" "QMAKE_LFLAGS += --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot" -early "CONFIG += cross_compile" /OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/build/config.tests/renameat2
| + cd /OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/build/config.tests/renameat2 && MAKEFLAGS= make
| > aarch64-webos-linux-g++  --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot -c -pipe  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0=/usr/src/debug/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0 -fdebug-prefix-map=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot-native= -fdebug-prefix-map=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot=  -fvisibility-inlines-hidden --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot --sysroot=/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/recipe-sysroot -O2 -w -fPIC  -I. -I/OE/build/owpb/webos-ports/tmp-glibc/work/aarch64-webos-linux/qtbase/5.10.1+5.11-alpha+gitAUTOINC+17b73b0d2b-r0/git/mkspecs/linux-oe-g++ -o main.o main.cpp
| > main.cpp: In function 'int main(int, char**)':
| > main.cpp:9:53: error: 'RENAME_NOREPLACE' was not declared in this scope
| >      renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);
| >                                                      ^~~~~~~~~~~~~~~~
| > main.cpp:9:53: note: suggested alternative: '_IOS_NOREPLACE'
| >      renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);
| >                                                      ^~~~~~~~~~~~~~~~
| >                                                      _IOS_NOREPLACE
| > main.cpp:9:72: error: 'RENAME_WHITEOUT' was not declared in this scope
| >      renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);
| >                                                                         ^~~~~~~~~~~~~~~
| > main.cpp:9:5: error: 'renameat2' was not declared in this scope
| >      renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);
| >      ^~~~~~~~~
| > main.cpp:9:5: note: suggested alternative: 'renameat'
| >      renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);
| >      ^~~~~~~~~
| >      renameat
| > Makefile:174: recipe for target 'main.o' failed  
| > make: *** [main.o] Error 1
| test config.corelib.tests.renameat2 FAILED
|

I'll retry with 5.10(.1) soon.

>  
>  PACKAGECONFIG ?= " \
>      ${PACKAGECONFIG_RELEASE} \
> @@ -146,6 +146,10 @@ PACKAGECONFIG[widgets] = "-widgets,-no-widgets"
>  PACKAGECONFIG[libproxy] = "-libproxy,-no-libproxy,libproxy"
>  PACKAGECONFIG[libinput] = "-libinput,-no-libinput,libinput"
>  PACKAGECONFIG[journald] = "-journald,-no-journald,systemd"
> +# needs kernel 3.16+
> +PACKAGECONFIG[renameat2] = "-feature-renameat2,-no-feature-renameat2,"
> +# needs kernel 3.17+
> +PACKAGECONFIG[getentropy] = "-feature-getentropy,-no-feature-getentropy,"
>  
>  QT_CONFIG_FLAGS_GOLD = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-use-gold-linker', '-no-use-gold-linker', d)}"
>  QT_CONFIG_FLAGS += " \
> -- 
> 2.16.2
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

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

* Re: [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use
  2018-02-23  1:27   ` Martin Jansa
@ 2018-02-23  2:17     ` Khem Raj
  2018-02-23  8:00       ` Samuli Piippo
  0 siblings, 1 reply; 8+ messages in thread
From: Khem Raj @ 2018-02-23  2:17 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembeded-devel

On Thu, Feb 22, 2018 at 5:27 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> On Wed, Feb 21, 2018 at 08:29:40PM -0800, Khem Raj wrote:
>> These features depend on underlying syscall support in kernel
>> and if older kernels are in use, then we can have a knob to
>> turn them off.
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>  recipes-qt/qt5/qtbase_git.bb | 6 +++++-
>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
>> index e495b8c..843648f 100644
>> --- a/recipes-qt/qt5/qtbase_git.bb
>> +++ b/recipes-qt/qt5/qtbase_git.bb
>> @@ -71,7 +71,7 @@ PACKAGECONFIG_DISTRO ?= ""
>>  PACKAGECONFIG_RELEASE ?= "release"
>>  # This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
>>  # PACKAGECONFIG_OPENSSL ?= "openssl"
>> -PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
>> +PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests renameat2 getentropy"
>
> Should renameat2 be enabled by default?
>
> Either the test for it is broken in 5.11 or it's not available in
> default setup.
>

Its ok to keep them enabled by default. but I think this is a bug that
should be reported
to upstream QT, if the feature is knobbale then it should have worked.


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

* Re: [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use
  2018-02-23  2:17     ` Khem Raj
@ 2018-02-23  8:00       ` Samuli Piippo
  2018-02-23 14:53         ` Khem Raj
  0 siblings, 1 reply; 8+ messages in thread
From: Samuli Piippo @ 2018-02-23  8:00 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembeded-devel

renameat2 is a system call without a libc wrapper, so the configure
test will always fail. The system call will still be used if that is
defined, so PACKAGECONFIG doesn't make sense for it.

On 23 February 2018 at 04:17, Khem Raj <raj.khem@gmail.com> wrote:
> On Thu, Feb 22, 2018 at 5:27 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
>> On Wed, Feb 21, 2018 at 08:29:40PM -0800, Khem Raj wrote:
>>> These features depend on underlying syscall support in kernel
>>> and if older kernels are in use, then we can have a knob to
>>> turn them off.
>>>
>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>>> ---
>>>  recipes-qt/qt5/qtbase_git.bb | 6 +++++-
>>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
>>> index e495b8c..843648f 100644
>>> --- a/recipes-qt/qt5/qtbase_git.bb
>>> +++ b/recipes-qt/qt5/qtbase_git.bb
>>> @@ -71,7 +71,7 @@ PACKAGECONFIG_DISTRO ?= ""
>>>  PACKAGECONFIG_RELEASE ?= "release"
>>>  # This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
>>>  # PACKAGECONFIG_OPENSSL ?= "openssl"
>>> -PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
>>> +PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests renameat2 getentropy"
>>
>> Should renameat2 be enabled by default?
>>
>> Either the test for it is broken in 5.11 or it's not available in
>> default setup.
>>
>
> Its ok to keep them enabled by default. but I think this is a bug that
> should be reported
> to upstream QT, if the feature is knobbale then it should have worked.
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


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

* Re: [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use
  2018-02-23  8:00       ` Samuli Piippo
@ 2018-02-23 14:53         ` Khem Raj
  0 siblings, 0 replies; 8+ messages in thread
From: Khem Raj @ 2018-02-23 14:53 UTC (permalink / raw)
  To: Samuli Piippo; +Cc: openembeded-devel

On Fri, Feb 23, 2018 at 12:00 AM, Samuli Piippo <samuli.piippo@gmail.com> wrote:
> renameat2 is a system call without a libc wrapper, so the configure
> test will always fail. The system call will still be used if that is
> defined, so PACKAGECONFIG doesn't make sense for it.
>

thats what I was thinking that testing kernel headers for the syscall
may not be sufficient. We might have to pass minimum supported kernel
version to make this decision to enable/disable these calls.

> On 23 February 2018 at 04:17, Khem Raj <raj.khem@gmail.com> wrote:
>> On Thu, Feb 22, 2018 at 5:27 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
>>> On Wed, Feb 21, 2018 at 08:29:40PM -0800, Khem Raj wrote:
>>>> These features depend on underlying syscall support in kernel
>>>> and if older kernels are in use, then we can have a knob to
>>>> turn them off.
>>>>
>>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>>>> ---
>>>>  recipes-qt/qt5/qtbase_git.bb | 6 +++++-
>>>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
>>>> index e495b8c..843648f 100644
>>>> --- a/recipes-qt/qt5/qtbase_git.bb
>>>> +++ b/recipes-qt/qt5/qtbase_git.bb
>>>> @@ -71,7 +71,7 @@ PACKAGECONFIG_DISTRO ?= ""
>>>>  PACKAGECONFIG_RELEASE ?= "release"
>>>>  # This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
>>>>  # PACKAGECONFIG_OPENSSL ?= "openssl"
>>>> -PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
>>>> +PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests renameat2 getentropy"
>>>
>>> Should renameat2 be enabled by default?
>>>
>>> Either the test for it is broken in 5.11 or it's not available in
>>> default setup.
>>>
>>
>> Its ok to keep them enabled by default. but I think this is a bug that
>> should be reported
>> to upstream QT, if the feature is knobbale then it should have worked.
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


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

* Re: [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I
  2018-02-22  4:29 [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
  2018-02-22  4:29 ` [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use Khem Raj
  2018-02-22  5:03 ` [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
@ 2018-02-24  4:49 ` Denys Dmytriyenko
  2 siblings, 0 replies; 8+ messages in thread
From: Denys Dmytriyenko @ 2018-02-24  4:49 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-devel

Just replied to v1 of the patch - still can't reproduce the issue even with 
security_flags.inc


On Wed, Feb 21, 2018 at 08:29:39PM -0800, Khem Raj wrote:
> Fixes no-x11 builds (eglfs)
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  recipes-qt/qt5/qtbase-native_git.bb                |  1 +
>  ...mon-gcc-base.conf-Use-I-instead-of-isyste.patch | 36 ++++++++++++++++++++++
>  recipes-qt/qt5/qtbase_git.bb                       |  1 +
>  3 files changed, 38 insertions(+)
>  create mode 100644 recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
> 
> diff --git a/recipes-qt/qt5/qtbase-native_git.bb b/recipes-qt/qt5/qtbase-native_git.bb
> index 20e24eb..5fa24d3 100644
> --- a/recipes-qt/qt5/qtbase-native_git.bb
> +++ b/recipes-qt/qt5/qtbase-native_git.bb
> @@ -34,6 +34,7 @@ SRC_URI += "\
>      file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
>      file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
>      file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
> +    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
>  "
>  
>  # common for qtbase-native and nativesdk-qtbase
> diff --git a/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
> new file mode 100644
> index 0000000..44e9009
> --- /dev/null
> +++ b/recipes-qt/qt5/qtbase/0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch
> @@ -0,0 +1,36 @@
> +From 61c858474804fd772d612e6c5b4bb6df261d521a Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Wed, 14 Feb 2018 17:08:43 -0800
> +Subject: [PATCH] mkspecs/common/gcc-base.conf: Use -I instead of -isystem
> +
> +-isystem fails to build when code uses include_next on certain files e.g.
> +
> +qtbase/5.10.0+gitAUTOINC+50117d738a-r0/recipe-sysroot/usr/include/c++/7.3.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
> + #include_next <stdlib.h>
> +               ^~~~~~~~~~
> +compilation terminated.
> +make[2]: *** [Makefile:11592: .obj/qgenericpluginfactory.o] Error 1
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + mkspecs/common/gcc-base.conf | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
> +index 234f71d495..ee3da023e6 100644
> +--- a/mkspecs/common/gcc-base.conf
> ++++ b/mkspecs/common/gcc-base.conf
> +@@ -46,7 +46,7 @@ QMAKE_CFLAGS_DEBUG         += -g
> + QMAKE_CFLAGS_SHLIB         += $$QMAKE_CFLAGS_PIC
> + QMAKE_CFLAGS_STATIC_LIB    += $$QMAKE_CFLAGS_PIC
> + QMAKE_CFLAGS_APP           += $$QMAKE_CFLAGS_PIC
> +-QMAKE_CFLAGS_ISYSTEM        = -isystem
> ++QMAKE_CFLAGS_ISYSTEM        = -I
> + QMAKE_CFLAGS_YACC          += -Wno-unused -Wno-parentheses
> + QMAKE_CFLAGS_HIDESYMS      += -fvisibility=hidden
> + QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
> +-- 
> +2.16.1
> +
> diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
> index 522e261..e495b8c 100644
> --- a/recipes-qt/qt5/qtbase_git.bb
> +++ b/recipes-qt/qt5/qtbase_git.bb
> @@ -30,6 +30,7 @@ SRC_URI += "\
>      file://0009-Add-OE-specific-specs-for-clang-compiler.patch \
>      file://0010-linux-clang-Invert-conditional-for-defining-QT_SOCKL.patch \
>      file://0011-tst_qlocale-Enable-QT_USE_FENV-only-on-glibc.patch \
> +    file://0014-mkspecs-common-gcc-base.conf-Use-I-instead-of-isyste.patch \
>  "
>  
>  # LGPL-3.0 is used only in src/plugins/platforms/android/extract.cpp
> -- 
> 2.16.2
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


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

end of thread, other threads:[~2018-02-24  4:49 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-22  4:29 [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
2018-02-22  4:29 ` [meta-qt5][PATCH 2/2] qtbase: Add packageconfigs for renameat2 and getentropy use Khem Raj
2018-02-23  1:27   ` Martin Jansa
2018-02-23  2:17     ` Khem Raj
2018-02-23  8:00       ` Samuli Piippo
2018-02-23 14:53         ` Khem Raj
2018-02-22  5:03 ` [meta-qt5][PATCH 1/2] qtbase: Replace -isystem with -I Khem Raj
2018-02-24  4:49 ` Denys Dmytriyenko

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.