Monolithic build features now zero setup configuration: click and run
[quassel.git] / src / qtui / CMakeLists.txt
1 # Builds the qtui module
2
3 set(QT_DONT_USE_QTGUI 0)
4 set(QT_USE_QTNETWORK 1)
5 set(QT_USE_QTDBUS 1)
6 include(${QT_USE_FILE})
7
8 set(SOURCES
9     aboutdlg.cpp
10     bufferwidget.cpp
11     channellistdlg.cpp
12     chatitem.cpp
13     chatline.cpp
14     chatlinemodel.cpp
15     chatlinemodelitem.cpp
16     chatmonitorfilter.cpp
17     chatmonitorview.cpp
18     chatscene.cpp
19     chatview.cpp
20     chatviewsearchbar.cpp
21     chatviewsearchcontroller.cpp
22     chatviewsettings.cpp
23     columnhandleitem.cpp
24     coreconfigwizard.cpp
25     coreconnectdlg.cpp
26     coreinfodlg.cpp
27     debugconsole.cpp
28     inputwidget.cpp
29     jumpkeyhandler.cpp
30     mainwin.cpp
31     msgprocessorstatuswidget.cpp
32     nicklistwidget.cpp
33     qtui.cpp
34     qtuiapplication.cpp
35     qtuimessageprocessor.cpp
36     qtuisettings.cpp
37     qtuistyle.cpp
38     sessionsettings.cpp
39     settingsdlg.cpp
40     settingspagedlg.cpp
41     systraynotificationbackend.cpp
42     taskbarnotificationbackend.cpp
43     titlesetter.cpp
44     topiclabel.cpp
45     topicwidget.cpp
46     verticaldock.cpp
47     webpreviewitem.cpp)
48
49 set(MOC_HDRS
50     aboutdlg.h
51     bufferwidget.h
52     channellistdlg.h
53     chatlinemodel.h
54     chatmonitorfilter.h
55     chatmonitorview.h
56     chatscene.h
57     chatview.h
58     chatviewsearchbar.h
59     chatviewsearchcontroller.h
60     columnhandleitem.h
61     coreconfigwizard.h
62     coreconnectdlg.h
63     coreinfodlg.h
64     debugconsole.h
65     inputwidget.h
66     jumpkeyhandler.h
67     mainwin.h
68     msgprocessorstatuswidget.h
69     nicklistwidget.h
70     qtui.h
71     qtuiapplication.h
72     qtuimessageprocessor.h
73     settingsdlg.h
74     settingspagedlg.h
75     systraynotificationbackend.h
76     taskbarnotificationbackend.h
77     titlesetter.h
78     topiclabel.h
79     topicwidget.h
80     verticaldock.h)
81
82 set(HEADERS
83     chatitem.h
84     chatline.h
85     chatlinemodelitem.h
86     chatviewsettings.h
87     qtuisettings.h
88     qtuistyle.h
89     webpreviewitem.h)
90
91 set(FORMS
92     aboutdlg.ui
93     bufferviewwidget.ui
94     bufferwidget.ui
95     channellistdlg.ui
96     chatviewsearchbar.ui
97     coreaccounteditdlg.ui
98     coreconfigwizardintropage.ui
99     coreconfigwizardadminuserpage.ui
100     coreconfigwizardstorageselectionpage.ui
101     coreconfigwizardsyncpage.ui
102     coreconnectdlg.ui
103     coreinfodlg.ui
104     debugconsole.ui
105     inputwidget.ui
106     msgprocessorstatuswidget.ui
107     nicklistwidget.ui
108     settingsdlg.ui
109     settingspagedlg.ui
110     topicwidget.ui)
111
112 IF(HAVE_DBUS)
113   set(SOURCES ${SOURCES} desktopnotificationbackend.cpp)
114   set(MOC_HDRS ${MOC_HDRS} desktopnotificationbackend.h)
115   set(FORMS ${FORMS} desktopnotificationconfigwidget.ui)
116   qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml desktopnotificationinterface)
117 ENDIF(HAVE_DBUS)
118
119 foreach(FORM ${FORMS})
120   set(FORMPATH ${FORMPATH} ui/${FORM})
121 endforeach(FORM ${FORMS})
122
123 # handle settingspages
124 include(settingspages/settingspages.inc)
125 foreach(SP ${SETTINGSPAGES})
126   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
127   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
128   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
129 endforeach(SP ${SETTINGSPAGES})
130 foreach(SRC ${SP_SOURCES})
131   set(SPSRC ${SPSRC} settingspages/${SRC})
132 endforeach(SRC ${SP_SOURCES})
133 foreach(HDR ${SP_HEADERS})
134   set(SPHDR ${SPHDR} settingspages/${HDR})
135 endforeach(HDR ${SP_HEADERS})
136 foreach(FRM ${SP_FORMS})
137   set(SPFRM ${SPFRM} settingspages/${FRM})
138 endforeach(FRM ${SP_FORMS})
139
140 qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR})
141 qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
142
143 include_directories(${CMAKE_SOURCE_DIR}/src/common
144                     ${CMAKE_SOURCE_DIR}/src/client
145                     ${CMAKE_SOURCE_DIR}/src/qtui
146                     ${CMAKE_SOURCE_DIR}/src/uisupport
147                     ${CMAKE_CURRENT_BINARY_DIR})
148
149 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS})
150 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)