Re: [Development] FreeBSD / Clang / Raspberry Pi
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
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
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
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