Re: [ptxdist] Ptxdists use of pkg-config causing issues with Qt-5.9

2018-02-23 Thread Michael Olbrich
Hi,

On Fri, Feb 23, 2018 at 01:09:19PM +0100, Benjamin Federau wrote:
> I tried to get Qt 5.9 built with PTXDist and after I have set the
> PKG_CONFIG_SYSROOT_DIR=/ and have done some minor adjustments to qt5.make
> regarding configure parameter it builds until it reaches the QtWebengine
> part.
> 
> [2/14208] CXX obj/dbus/dbus/property.o
> FAILED: obj/dbus/dbus/property.o
> /opt/wsp/s-bsp/platform-abc/sysroot-host/lib/wrapper/arm-v7a-linux-gnueabihf-g++
>  -MMD -MF obj/dbus/dbus/property.o.d -DDBUS_IMPLEMENTATION 
> -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_OPENSSL_CERTS=1 
> -DUSE_OZONE=1 -DNO_TCMALLOC -DDISABLE_NACL -DENABLE_TASK_MANAGER=1 
> -DENABLE_THEMES=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD 
> -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED 
> -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE 
> -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND 
> -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 
> -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE 
> -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER 
> -DHAVE_PTHREAD -Igen 
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium
>  
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/include/dbus-1.0
>  
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/lib/dbus-1.0/include
>  
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/icu/source/common
>  
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/icu/source/i18n
>  
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/protobuf/src
>  -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector 
> -funwind-tables -fPIC -pipe -pthread -march=armv7-a -mfloat-abi=hard 
> -mtune=generic-armv7-a -mfpu=vfpv3-d16 -mthumb -Wall -U_FORTIFY_SOURCE 
> -D_FORTIFY_SOURCE=2 -Wno-psabi -Wno-unused-local-typedefs 
> -Wno-maybe-uninitialized -Wno-missing-field-initializers 
> -Wno-unused-parameter -O2 -fno-ident -fdata-sections -ffunction-sections -g0 
> -fvisibility=hidden -fno-threadsafe-statics -fvisibility-inlines-hidden 
> -std=gnu++11 -Wno-narrowing -fno-rtti -fno-exceptions -c 
> ../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.cc
>  -o obj/dbus/dbus/property.o
> In file included from 
> ../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.h:20:0,
>  from 
> ../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.cc:5:
> ../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/message.h:8:23:
>  fatal error: dbus/dbus.h: No such file or directory
>  #include 
>    ^
> compilation terminated.
> ninja: build stopped: subcommand failed.
> 
> The problem is here that 
> -I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/include/dbus-1.0
>  isn't a valid include path.
> 
> I'm not sure if this is related to the pkg-config issue, but any hints are 
> welcome how to solve this?

You need to set PKG_CONFIG_SYSROOT_DIR to '/.'. Otherwise you'll get
//opt/wsp/s-bsp/platform-abc/sysroot-target/usr/include/dbus-1.0 as include
path and 'gn' treats the '//' as a path relative to the chromium source
directory.

Michael

-- 
Pengutronix e.K.   | |
Industrial Linux Solutions | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |

___
ptxdist mailing list
ptxdist@pengutronix.de

Re: [ptxdist] Ptxdists use of pkg-config causing issues with Qt-5.9

2018-02-23 Thread Benjamin Federau
Hello,

I tried to get Qt 5.9 built with PTXDist and after I have set the 
PKG_CONFIG_SYSROOT_DIR=/ and have done some minor adjustments to qt5.make 
regarding configure parameter it builds until it reaches the QtWebengine part.

[2/14208] CXX obj/dbus/dbus/property.o
FAILED: obj/dbus/dbus/property.o
/opt/wsp/s-bsp/platform-abc/sysroot-host/lib/wrapper/arm-v7a-linux-gnueabihf-g++
 -MMD -MF obj/dbus/dbus/property.o.d -DDBUS_IMPLEMENTATION 
-DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_OPENSSL_CERTS=1 
-DUSE_OZONE=1 -DNO_TCMALLOC -DDISABLE_NACL -DENABLE_TASK_MANAGER=1 
-DENABLE_THEMES=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD 
-DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED 
-DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE 
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND 
-DDYNAMIC_ANNOTATIONS_ENABLED=0 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 
-DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE 
-DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER 
-DHAVE_PTHREAD -Igen 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium
 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/include/dbus-1.0
 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/lib/dbus-1.0/include
 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/icu/source/common
 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/icu/source/i18n
 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/third_party/protobuf/src
 -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector 
-funwind-tables -fPIC -pipe -pthread -march=armv7-a -mfloat-abi=hard 
-mtune=generic-armv7-a -mfpu=vfpv3-d16 -mthumb -Wall -U_FORTIFY_SOURCE 
-D_FORTIFY_SOURCE=2 -Wno-psabi -Wno-unused-local-typedefs 
-Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-unused-parameter 
-O2 -fno-ident -fdata-sections -ffunction-sections -g0 -fvisibility=hidden 
-fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -Wno-narrowing 
-fno-rtti -fno-exceptions -c 
../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.cc
 -o obj/dbus/dbus/property.o
In file included from 
../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.h:20:0,
 from 
../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/property.cc:5:
../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/dbus/message.h:8:23:
 fatal error: dbus/dbus.h: No such file or directory
 #include 
   ^
compilation terminated.
ninja: build stopped: subcommand failed.

The problem is here that 
-I../../../../../qt-everywhere-opensource-src-5.9.4/qtwebengine/src/3rdparty/chromium/opt/wsp/s-bsp/platform-abc/sysroot-target/usr/include/dbus-1.0
 isn't a valid include path.

I'm not sure if this is related to the pkg-config issue, but any hints are 
welcome how to solve this?

Regards
-
Benjamin Federau
___
ptxdist mailing list
ptxdist@pengutronix.de

Re: [ptxdist] Ptxdists use of pkg-config causing issues with Qt-5.9

2017-06-23 Thread Michael Olbrich
Hi,

On Fri, Jun 23, 2017 at 10:15:42AM +, Baeuerle, Florian wrote:
> I've been working on getting Qt-5.9 built with the latest ptxdist and I
> encountered a bug which is related to the way, ptxdist uses pkg-config.
> 
> I already found a (hacky) workaround, but I think the root cause
> actually is how ptxdist uses pkg-config.
> 
> The problem is already described in the Qt-Bug-Tracker in detail, so
> I'll just refer to that:
> 
> https://bugreports.qt.io/browse/QTBUG-61593

I am aware of this issue. The problem is, that there is no setup that works
for all packages. Packages like Qt that try to be clever usually cause the
biggest problems because the are all 'clever' in different way.
Having a pkg-config that just provides the correct paths works for most
things. The initial implementation of our current pkg-config wrapper
predates PKG_CONFIG_SYSROOT_DIR. Maybe we could change this now, but this
will take a lot of careful review.
Setting PKG_CONFIG_SYSROOT_DIR=/ will help in this case.

Regards,
Michael

-- 
Pengutronix e.K.   | |
Industrial Linux Solutions | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |

___
ptxdist mailing list
ptxdist@pengutronix.de