Hello,

The device specs indeed assume cross-compiling (after all it's just a shorthand 
for -xplatform plus some common stuff to avoid duplication in the specs for 
each device) but note how for instance the linux-nuc-g++ device spec is used to 
build for an Intel device on an Intel host using an Intel compiler and sysroot. 
The architecture being the same all the way is not interesting, what matters is 
that there is a separate compiler and sysroot.

Therefore this won't be suitable in your case.

Introducing freebsd-clang-rasp-pi as a plain makespec works but does not sound 
very appealing as it is step back to the structure of device-specific makespecs 
from pre-Qt5 times. One alternative, out of my head, would be to add the 
support next to freebsd-clang and use -device-option with some custom, 
freebsd-clang-specific variable to trigger the RPi/ARM specifics - by doing a 
conditional include() for the RPi-specific snippet (or whatever device was 
specified, hence this would work just fine once you need to add FreeBSD support 
for some other device as well). Or something along these lines.

Best regards,
Laszlo


________________________________________
From: Development <development-bounces+laszlo.agocs=qt...@qt-project.org> on 
behalf of Sylvain Garrigues <sylv...@sylvaingarrigues.com>
Sent: Tuesday, May 17, 2016 10:50 PM
To: development@qt-project.org
Subject: [Development] FreeBSD / Clang / Raspberry Pi

Hello,

I have ported Qt 5.6 to FreeBSD / Raspberry Pi and would like to share my 
config. I have a question though.

I have created a « device » mkspec (mkspecs/device/freebsd-rasp-pi-clang/ to 
follow the scheme) and I am using it with '-platform freebsd-clang -device 
freebsd-rasp-pi-clang’ but technically *I am not cross-compiling* as either the 
port is built on the Pi or it will later be on the FreeBSD packages building 
infrastructures which runs QEMU arm simulators which emulate a complete arm 
system (filesystem, kernel, etc). Therefore it’s always an arm compiler 
producing arm binaries on a freebsd system - no cross compiling.

So should I just create a mkspecs/freebsd-clang-rasp-pi/ in the top mkspecs 
folder and just use -platform freebsd-clang-rasp-pi? (no -device option)

I can see that using a device is triggering a cross_compile qmake feature with 
configure, and it has side effects (e.g. no stripping) - hence the question.

Happy to hear your thoughts.

Sylvain.
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to