Say hello (again) to CMake!
[quassel.git] / src / qtui / CMakeLists.txt
1 # Builds the qtui module
2
3 set(QT_USE_QTNETWORK 1)
4 include(${QT_USE_FILE})
5
6 set(SOURCES
7     aboutdlg.cpp
8     bufferwidget.cpp
9     coreconfigwizard.cpp
10     coreconnectdlg.cpp
11     configwizard.cpp
12     debugconsole.cpp
13     inputwidget.cpp
14     jumpkeyhandler.cpp
15     mainwin.cpp
16     nicklistwidget.cpp
17     qtui.cpp
18     qtuisettings.cpp
19     qtuistyle.cpp
20     settingsdlg.cpp
21     settingspagedlg.cpp
22     titlesetter.cpp
23     topicbutton.cpp
24     topicwidget.cpp
25     verticaldock.cpp)
26
27 set(HEADERS
28     aboutdlg.h
29     bufferwidget.h
30     coreconfigwizard.h
31     coreconnectdlg.h
32     configwizard.h
33     debugconsole.h
34     inputwidget.h
35     jumpkeyhandler.h
36     mainwin.h
37     nicklistwidget.h
38     qtui.h
39     settingsdlg.h
40     settingspagedlg.h
41     titlesetter.h
42     topicbutton.h
43     topicwidget.h
44     verticaldock.h)
45
46 if(SPUTDEV)
47   set(SOURCES ${SOURCES} chatitem.cpp chatline.cpp chatlinemodelitem.cpp
48                          chatlinemodel.cpp chatscene.cpp chatview.cpp)
49   set(HEADERS ${HEADERS} chatlinemodel.h chatscene.h chatview.h)
50 else(SPUTDEV)
51   set(SOURCES ${SOURCES} chatline-old.cpp chatwidget.cpp)
52   set(HEADERS ${HEADERS} chatline-old.h chatwidget.h)
53 endif(SPUTDEV)
54
55 set(FORMS
56     aboutdlg.ui
57     bufferviewwidget.ui
58     bufferwidget.ui
59     coreaccounteditdlg.ui
60     coreconfigwizardintropage.ui
61     coreconfigwizardadminuserpage.ui
62     coreconfigwizardstorageselectionpage.ui
63     coreconfigwizardsyncpage.ui
64     coreconnectdlg.ui
65     debugconsole.ui
66     inputwidget.ui
67     mainwin.ui
68     nicklistwidget.ui
69     settingsdlg.ui
70     settingspagedlg.ui
71     topicwidget.ui)
72
73 foreach(FORM ${FORMS})
74   set(FORMPATH ${FORMPATH} ui/${FORM})
75 endforeach(FORM ${FORMS})
76
77 # handle settingspages
78 include(settingspages/settingspages.inc)
79 foreach(SP ${SETTINGSPAGES})
80   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
81   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
82   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
83 endforeach(SP ${SETTINGSPAGES})
84 foreach(SRC ${SP_SOURCES})
85   set(SPSRC ${SPSRC} settingspages/${SRC})
86 endforeach(SRC ${SP_SOURCES})
87 foreach(HDR ${SP_HEADERS})
88   set(SPHDR ${SPHDR} settingspages/${HDR})
89 endforeach(HDR ${SP_HEADERS})
90 foreach(FRM ${SP_FORMS})
91   set(SPFRM ${SPFRM} settingspages/${FRM})
92 endforeach(FRM ${SP_FORMS})
93
94
95 qt4_wrap_cpp(MOC ${HEADERS} ${SPHDR})
96 qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
97
98 include_directories(${CMAKE_SOURCE_DIR}/src/common
99                     ${CMAKE_SOURCE_DIR}/src/client
100                     ${CMAKE_SOURCE_DIR}/src/qtui
101                     ${CMAKE_SOURCE_DIR}/src/uisupport
102                     ${CMAKE_CURRENT_BINARY_DIR})
103
104 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${UI})
105 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)