On Wednesday 30 November 2011, Stephen Kelly wrote: > Alexander Neundorf wrote: > > On Tuesday 29 November 2011, Stephen Kelly wrote: > >> Alexander Neundorf wrote: > >> >> I can't generate the files. I'm asking people with windows and mac > >> >> setups to generate them and post them for review. I don't have those > >> >> setups. > >> > > >> > Just the ones for Linux would already help :-) > >> > >> I managed to get generated files for windows and mac through some IRC > >> puppeteering, so I've attached them here now. > >> > >> Thanks, > > > > I looked through the QtCore files. > > > > Some things: > > > > if (NOT _Qt5Core_target) > > > > set(_Qt5Core_target 1) > > add_library(Qt5Core SHARED IMPORTED) > > if (NOT "" STREQUAL "") > > > > set_property(TARGET Qt5Core PROPERTY FRAMEWORK 1) > > > > endif() > > > > endif() > > > > I think you can simply do: > > > > if(NOT TARGET Qt5Core) > > > > add_library(Qt5Core SHARED IMPORTED) > > if (NOT "" STREQUAL "") > > > > set_property(TARGET Qt5Core PROPERTY FRAMEWORK 1) > > > > endif() > > > > endif() > > I didn't do it like this because that could potentially hide errors as > described here: > > http://thread.gmane.org/gmane.comp.programming.tools.cmake.devel/2147/focus > =2152 > > Someone else could define a target called QtCore (in theory at least), and > it makes sense to show a failure as early as possible.
Hmm, ok. Somebody could also have set that variable already... ;-) For Qt4 I have put the imported targets into a "namespace" "Qt4::", so they are e.g. "Qt4::QtCore". It looks nice and it makes somewhat clear that "Qt5Core" is not the name of an in-project target, or the name of a library to link against, but something special (an imported target). I'd do that here too, so it would be "Qt5::Qt5Core" etc. This also reduces the risk of name clashes even more. > > Can this also handle already static builds of Qt ? > > Nope, not yet. > > Static builds of Qt are no longer tested by Nokia at least as far as I > know. I don't know if it is even possible to build Qt statically on all > (or any) platforms anymore. Ah, ok. So if we (at work) would like to have static builds, we maybe should take action ? Alex -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers