]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
Get back names, and use "using" keyword to keep GCC silent on "method foo on base...
[dolphin.git] / src / CMakeLists.txt
1
2 find_package(QImageBlitz REQUIRED)
3
4 macro_optional_find_package(Nepomuk)
5 macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk" "http://www.kde.org" FALSE "" "For adding desktop-wide tagging support to dolphin")
6 macro_bool_to_01(Nepomuk_FOUND HAVE_NEPOMUK)
7 configure_file(config-nepomuk.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-nepomuk.h )
8
9 include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${QIMAGEBLITZ_INCLUDES} )
10
11 if (Nepomuk_FOUND)
12 # Yes, Soprano includes is what we need here
13 include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} )
14 endif (Nepomuk_FOUND)
15
16 ########### next target ###############
17
18 set(dolphinprivate_LIB_SRCS
19 dolphincontroller.cpp
20 dolphindetailsview.cpp
21 dolphiniconsview.cpp
22 dolphincolumnview.cpp
23 dolphincolumnviewcontainer.cpp
24 dolphindirlister.cpp
25 dolphinfileitemdelegate.cpp
26 dolphinmodel.cpp
27 dolphinnewmenuobserver.cpp
28 dolphinsortfilterproxymodel.cpp
29 dolphincategorydrawer.cpp
30 dolphinview.cpp
31 dolphinviewactionhandler.cpp
32 dolphinviewautoscroller.cpp
33 dolphinremoteencoding.cpp
34 dolphindetailsviewexpander.cpp
35 draganddrophelper.cpp
36 folderexpander.cpp
37 renamedialog.cpp
38 selectiontoggle.cpp
39 selectionmanager.cpp
40 settings/additionalinfodialog.cpp
41 settings/applyviewpropsjob.cpp
42 settings/dolphinsettings.cpp
43 settings/viewpropertiesdialog.cpp
44 settings/viewpropsprogressinfo.cpp
45 panels/information/kmetadataconfigurationdialog.cpp
46 panels/information/kmetadatamodel.cpp
47 panels/information/kmetadatawidget.cpp
48 panels/information/knfotranslator.cpp
49 tooltips/ktooltip.cpp
50 tooltips/ktooltipwindow.cpp
51 tooltips/tooltipmanager.cpp
52 versioncontrol/updateitemstatesthread.cpp
53 versioncontrol/versioncontrolobserver.cpp
54 viewextensionsfactory.cpp
55 viewproperties.cpp
56 zoomlevelinfo.cpp
57 )
58
59 if(Nepomuk_FOUND)
60 set(dolphinprivate_LIB_SRCS
61 ${dolphinprivate_LIB_SRCS}
62 panels/information/kcommentwidget.cpp
63 panels/information/kedittagsdialog.cpp
64 panels/information/kloadmetadatathread.cpp
65 panels/information/nepomukmassupdatejob.cpp
66 panels/information/ktaggingwidget.cpp
67 )
68 endif(Nepomuk_FOUND)
69
70 kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
71 settings/dolphin_columnmodesettings.kcfgc
72 settings/dolphin_directoryviewpropertysettings.kcfgc
73 settings/dolphin_detailsmodesettings.kcfgc
74 settings/dolphin_iconsmodesettings.kcfgc
75 settings/dolphin_generalsettings.kcfgc
76 settings/dolphin_versioncontrolsettings.kcfgc
77 )
78
79 kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
80
81 target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq ${KDE4_KNEWSTUFF3_LIBS} ${QIMAGEBLITZ_LIBRARIES})
82 if (Nepomuk_FOUND)
83 target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} ${SOPRANO_LIBRARIES})
84 endif (Nepomuk_FOUND)
85
86
87 set_target_properties(dolphinprivate PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
88 install(TARGETS dolphinprivate ${INSTALL_TARGETS_DEFAULT_ARGS})
89
90
91 ##########################################
92
93 set(dolphinpart_SRCS
94 dolphinpart.cpp
95 )
96
97 set(fileviewsvnplugin_SRCS
98 versioncontrol/fileviewsvnplugin.cpp
99 )
100
101 kde4_add_plugin(dolphinpart ${dolphinpart_SRCS})
102 kde4_add_plugin(fileviewsvnplugin ${fileviewsvnplugin_SRCS})
103
104 target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS})
105 target_link_libraries(fileviewsvnplugin ${KDE4_KIO_LIBS} konq)
106
107 install(TARGETS dolphinpart DESTINATION ${PLUGIN_INSTALL_DIR})
108 install(TARGETS fileviewsvnplugin DESTINATION ${PLUGIN_INSTALL_DIR})
109
110 install(FILES dolphinpart.rc DESTINATION ${DATA_INSTALL_DIR}/dolphinpart)
111 install(FILES dolphinpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
112 install(FILES versioncontrol/fileviewsvnplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR})
113 install(FILES versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR})
114
115 ##########################################
116
117 set(dolphin_SRCS
118 dolphinapplication.cpp
119 dolphinmainwindow.cpp
120 dolphinnewmenu.cpp
121 dolphinviewcontainer.cpp
122 dolphindirlister.cpp
123 dolphincontextmenu.cpp
124 filterbar.cpp
125 main.cpp
126 pixmapviewer.cpp
127 panels/information/informationpanel.cpp
128 panels/information/informationpanelcontent.cpp
129 panels/information/kmetadataconfigurationdialog.cpp
130 panels/information/kmetadatamodel.cpp
131 panels/information/kmetadatawidget.cpp
132 panels/information/knfotranslator.cpp
133 panels/information/phononwidget.cpp
134 panels/folders/ktreeview.cpp
135 panels/places/placespanel.cpp
136 panels/panel.cpp
137 panels/folders/treeviewcontextmenu.cpp
138 panels/folders/folderspanel.cpp
139 panels/folders/paneltreeview.cpp
140 search/dolphinsearchbox.cpp
141 search/searchoptiondialogbox.cpp
142 settings/behaviorsettingspage.cpp
143 settings/columnviewsettingspage.cpp
144 settings/contextmenusettingspage.cpp
145 settings/dolphinfontrequester.cpp
146 settings/dolphinsettingsdialog.cpp
147 settings/detailsviewsettingspage.cpp
148 settings/generalsettingspage.cpp
149 settings/iconsizegroupbox.cpp
150 settings/iconsviewsettingspage.cpp
151 settings/navigationsettingspage.cpp
152 settings/previewssettingspage.cpp
153 settings/servicessettingspage.cpp
154 settings/settingspagebase.cpp
155 settings/startupsettingspage.cpp
156 settings/statusbarsettingspage.cpp
157 settings/trashsettingspage.cpp
158 settings/viewsettingspage.cpp
159 settings/viewsettingspagebase.cpp
160 statusbar/dolphinstatusbar.cpp
161 statusbar/statusbarspaceinfo.cpp
162 statusbar/statusbarmessagelabel.cpp
163 zoomlevelinfo.cpp
164 )
165
166 kde4_add_kcfg_files(dolphin_SRCS
167 panels/folders/dolphin_folderspanelsettings.kcfgc
168 panels/information/dolphin_informationpanelsettings.kcfgc
169 search/dolphin_searchsettings.kcfgc
170 )
171
172 if(Nepomuk_FOUND)
173 set(dolphin_SRCS
174 ${dolphin_SRCS}
175 panels/information/kcommentwidget.cpp
176 panels/information/kedittagsdialog.cpp
177 panels/information/kloadmetadatathread.cpp
178 panels/information/nepomukmassupdatejob.cpp
179 panels/information/ktaggingwidget.cpp
180 search/dolphinsearchoptionsconfigurator.cpp
181 search/searchcriteriondescription.cpp
182 search/searchcriterionselector.cpp
183 search/searchcriterionvalue.cpp
184 )
185 endif(Nepomuk_FOUND)
186
187 if(Nepomuk_FOUND)
188 include(SopranoAddOntology)
189 soprano_add_ontology(dolphin_SRCS ${SHAREDDESKTOPONTOLOGIES_ROOT_DIR}/nie/nfo.trig "NFO" "Nepomuk::Vocabulary" "trig")
190 soprano_add_ontology(dolphin_SRCS ${SHAREDDESKTOPONTOLOGIES_ROOT_DIR}/nie/nie.trig "NIE" "Nepomuk::Vocabulary" "trig")
191 endif(Nepomuk_FOUND)
192
193 if(NOT WIN32)
194 set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
195 endif(NOT WIN32)
196
197 qt4_add_dbus_adaptor(dolphin_SRCS
198 org.kde.dolphin.Application.xml
199 dolphinapplication.h DolphinApplication)
200 qt4_add_dbus_adaptor(dolphin_SRCS
201 org.kde.dolphin.MainWindow.xml
202 dolphinmainwindow.h DolphinMainWindow)
203
204 kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png")
205
206 kde4_add_executable(dolphin ${dolphin_SRCS})
207
208 target_link_libraries(dolphin
209 ${KDE4_KDEPRINT_LIBS}
210 ${KDE4_KFILE_LIBS}
211 ${KDE4_KUTILS_LIBRARY}
212 konq
213 dolphinprivate
214 knewstuff3
215 ${KDE4_PHONON_LIBS}
216 )
217
218 if (Nepomuk_FOUND)
219 target_link_libraries(dolphin
220 ${NEPOMUK_LIBRARIES}
221 ${SOPRANO_LIBRARIES}
222 ${NEPOMUK_QUERY_LIBRARIES}
223 )
224 endif (Nepomuk_FOUND)
225
226 install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
227
228 ##########################################
229
230 set(kcm_dolphinviewmodes_PART_SRCS
231 kcm/kcmdolphinviewmodes.cpp
232 pixmapviewer.cpp
233 settings/columnviewsettingspage.cpp
234 settings/detailsviewsettingspage.cpp
235 settings/dolphinfontrequester.cpp
236 settings/iconsizegroupbox.cpp
237 settings/iconsviewsettingspage.cpp
238 settings/viewsettingspagebase.cpp
239 zoomlevelinfo.cpp)
240
241 set(kcm_dolphinnavigation_PART_SRCS
242 kcm/kcmdolphinnavigation.cpp
243 settings/navigationsettingspage.cpp
244 settings/settingspagebase.cpp)
245
246 set(kcm_dolphinservices_PART_SRCS
247 kcm/kcmdolphinservices.cpp
248 settings/servicessettingspage.cpp
249 settings/settingspagebase.cpp)
250
251 set(kcm_dolphingeneral_PART_SRCS
252 kcm/kcmdolphingeneral.cpp
253 panels/information/kmetadataconfigurationdialog.cpp
254 panels/information/kmetadatamodel.cpp
255 panels/information/kmetadatawidget.cpp
256 panels/information/knfotranslator.cpp
257 settings/behaviorsettingspage.cpp
258 settings/previewssettingspage.cpp
259 settings/contextmenusettingspage.cpp
260 settings/settingspagebase.cpp)
261 if (Nepomuk_FOUND)
262 set(kcm_dolphingeneral_PART_SRCS
263 ${kcm_dolphingeneral_PART_SRCS}
264 panels/information/kcommentwidget.cpp
265 panels/information/kedittagsdialog.cpp
266 panels/information/kloadmetadatathread.cpp
267 panels/information/nepomukmassupdatejob.cpp
268 panels/information/ktaggingwidget.cpp
269 )
270 endif (Nepomuk_FOUND)
271
272 kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
273 settings/dolphin_columnmodesettings.kcfgc
274 settings/dolphin_directoryviewpropertysettings.kcfgc
275 settings/dolphin_detailsmodesettings.kcfgc
276 settings/dolphin_iconsmodesettings.kcfgc
277 settings/dolphin_generalsettings.kcfgc
278 settings/dolphin_versioncontrolsettings.kcfgc
279 )
280
281 kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
282 settings/dolphin_generalsettings.kcfgc)
283
284 kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS
285 settings/dolphin_generalsettings.kcfgc)
286
287 kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS
288 settings/dolphin_generalsettings.kcfgc)
289
290 kde4_add_plugin(kcm_dolphinviewmodes ${kcm_dolphinviewmodes_PART_SRCS})
291 kde4_add_plugin(kcm_dolphinnavigation ${kcm_dolphinnavigation_PART_SRCS})
292 kde4_add_plugin(kcm_dolphinservices ${kcm_dolphinservices_PART_SRCS})
293 kde4_add_plugin(kcm_dolphingeneral ${kcm_dolphingeneral_PART_SRCS})
294
295 target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
296 target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
297 target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KNEWSTUFF3_LIBRARY} dolphinprivate)
298 target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate)
299 if (Nepomuk_FOUND)
300 target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
301 target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
302 target_link_libraries(kcm_dolphinservices ${NEPOMUK_LIBRARIES})
303 target_link_libraries(kcm_dolphingeneral ${NEPOMUK_LIBRARIES})
304 endif (Nepomuk_FOUND)
305
306 install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
307 install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )
308 install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} )
309 install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} )
310
311 ########### install files ###############
312
313 install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
314 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg
315 settings/dolphin_generalsettings.kcfg
316 settings/dolphin_columnmodesettings.kcfg
317 settings/dolphin_iconsmodesettings.kcfg
318 settings/dolphin_detailsmodesettings.kcfg
319 settings/dolphin_versioncontrolsettings.kcfg
320 DESTINATION ${KCFG_INSTALL_DIR} )
321 install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
322 install( FILES search/dolphinsearchcommands.desktop DESTINATION ${DATA_INSTALL_DIR}/dolphin )
323 install( FILES kcm/kcmdolphinviewmodes.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
324 install( FILES kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
325 install( FILES kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
326 install( FILES kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
327 install( FILES khns/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} )
328 install( PROGRAMS khns/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} )
329 install( PROGRAMS khns/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} )