[CMake] Qt - Private implementation slot and required cmake special rules

Olaf Peter ope-devel at gmx.de
Wed Mar 3 14:17:39 EST 2010


John Drescher schrieb:
> On Wed, Mar 3, 2010 at 1:37 PM, Olaf Peter <ope-devel at gmx.de> wrote:
>> I try to use Qt's internal Stuff for my own purpose. I want to compile
>> the moc file separately which is with cmake very simple. Anyway, I have
>> to tweak moc for this.
>>
>> I have to add the private type to the moc file generated otherwise I get
>> an compiler error about incomplete type (the "public" header forwards
>> only the private), in this case simple by e.g.
>>
>> /usr/bin/moc-qt4 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
>> -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore
>> -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. slotTest.h
>> -fslotTest_p.h -o moc_slotTest.cpp
>>
>> Note the -fslotTest_p.h
>>
>> Now I've the private header included, but how to say this for cmake for
>> the general case?? QT4_WRAP_CPP allows addition options, but how to get
>> the private header?
>>
> 
> Use QT4_AUTOMOC in these cases.

Well, QT4_AUTOMOC requires #include "foo.moc" which I don't want.

Thanks,
Olaf


More information about the CMake mailing list