On 27/03/15 11:05, René J.V. Bertin wrote:
Hello,

I've managed to get Qt 5.3 to build on OS X 10.6 and adapt my qt5-mac-devel 
Portfile for that. No small feat, as this is not officially supported by Digia. 
Main issue here: the system compilers on 10.6 (*gcc-4.2, and clang from Xcode 
3.2 as well as Xcode 4.2) are incapable of building Qt 5.3 and care must thus 
be taken not to use them accidentally.

This requires a modern version of clang, and in order to avoid ending up with a 
hard-wired clang version dependency my current approach instructs the user to 
use `port select` (or equivalent). The actual requirement is to have a modern 
compiler in the path (I've only tested with clang because that's what Qt 5.3 
builds with on supported OS X versions). My own requirement is that there be no 
version information in the compiler name, in order to avoid said hard-wired 
dependencies and unnecessary rebuilds.

I caught flak on my trac ticket for "requiring" port select, despite IMHO 
conforming to its intended use, i.e. user convenience. This requirement takes the form of 
testing for ${prefix}/bin/clang{,++} and aborting with instructions if those items are 
missing. Those would normally be one-time instructions, of course.

What other approaches are there? I can only see a few

- Change the rewriting of several Qt build script/config files so that they 
don't contain a full path to ${prefix}/bin/clang{,++}, presume that 
${prefix}/bin will always and reliably be first in the path, and cross eyes, 
fingers and toes that everything builds correctly. Qt and Qt applications alike.

- Hack the build system even more in order to provide a Qt-specific equivalent 
for the port select mechanism.

- Drop the idea of supporting OS X 10.6 in an official port

How does requiring 'port select' to have been run work with the buildbots, where this cannot be done ? Personally, I agree with the comments that this is not something you should be requiring.

IMHO, if upstream have 'officially' dropped support for OSX10.6, then this is not something MacPorts ports should second guess, so my preference would be for the 3rd option, just drop support. This is what I did with the root6 port, which had a similar issue.

cheers Chris


If I'm missing something obvious and more elegant than asking the user to use 
`port select` I'd love to hear about it, but as things stand I think it's the 
best compromise that doesn't even violate official dogma.

BTW, it would also be about time to publish this port (and qt4-mac) so that 
more users can start installing and testing Qt4 and Qt5 applications alongside.

The current port directory: 
https://trac.macports.org/attachment/ticket/46536/port%3Dqt5-mac-devel.tar.bz2

R.
_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev


_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to