Re: [Development] FreeBSD / Clang / Raspberry Pi

2016-05-18 Thread Laszlo Agocs
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  on 
behalf of Sylvain Garrigues 
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


Re: [Development] FreeBSD / Clang / Raspberry Pi

2016-05-18 Thread Sylvain Garrigues
Sure I will share with Oleksandr, my work is based on what he has already done 
anyway, just couldn’t wait to try to port other modules on my Pi :-)

I dug into the build process and noticed what I explained about the -device and 
the detection of the cross_compile feature, but anyway I let you discuss the 
side effects later. Will join you on #kde-freebsd.

Have a good day

  
> Le 18 mai 2016 à 07:21, Ralf Nolden  a écrit :
> 
> Hi Sylvain,
> 
> You may want to get in contact with Oleksandr who has also done a porting:
> http://kernelnomicon.org/?p=598
> 
> Olelksandr is in the process of merging his additions to the dev branch while 
> I'm doing the ports integration in the meanwhile by using patches to the 
> freebsd ports at https://freebsd.kde.org/ and merging our ports patches to Qt.
> 
> You may want to join us on #kde-freebsd so we can find the solution that we 
> end 
> up without any patches in ports. 
> 
> From the qt perspective things like the pi are devices so for consistency 
> that 
> should land in the devices section (I think Oleksandr has done it that way, 
> you may compare your patch with his one on his website). For any side 
> effects, 
> we should discuss whatever is the best solution here.
> 
> One thing that should work out of the box is using qtcreator.
> 
> Am Dienstag, 17. Mai 2016, 22:50:59 schrieb Sylvain Garrigues:
>> 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
> 
> -- 
> Kind regards,
> 
> Ralf Nolden
> 

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


Re: [Development] FreeBSD / Clang / Raspberry Pi

2016-05-17 Thread Ralf Nolden
Hi Sylvain,

You may want to get in contact with Oleksandr who has also done a porting:
http://kernelnomicon.org/?p=598

Olelksandr is in the process of merging his additions to the dev branch while 
I'm doing the ports integration in the meanwhile by using patches to the 
freebsd ports at https://freebsd.kde.org/ and merging our ports patches to Qt.

You may want to join us on #kde-freebsd so we can find the solution that we end 
up without any patches in ports. 

From the qt perspective things like the pi are devices so for consistency that 
should land in the devices section (I think Oleksandr has done it that way, 
you may compare your patch with his one on his website). For any side effects, 
we should discuss whatever is the best solution here.

One thing that should work out of the box is using qtcreator.

Am Dienstag, 17. Mai 2016, 22:50:59 schrieb Sylvain Garrigues:
> 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

-- 
Kind regards,

Ralf Nolden

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


[Development] FreeBSD / Clang / Raspberry Pi

2016-05-17 Thread Sylvain Garrigues
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