]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
* move classes for searching into an own folder (new classes will be added soon)
[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 draganddrophelper.cpp
35 folderexpander.cpp
36 renamedialog.cpp
37 selectiontoggle.cpp
38 selectionmanager.cpp
39 settings/additionalinfodialog.cpp
40 settings/applyviewpropsjob.cpp
41 settings/dolphinsettings.cpp
42 settings/viewpropertiesdialog.cpp
43 settings/viewpropsprogressinfo.cpp
44 tooltips/dolphintooltip.cpp
45 tooltips/ktooltip.cpp
46 tooltips/ktooltipdelegate.cpp
47 tooltips/ktooltipitem.cpp
48 tooltips/kformattedballoontipdelegate.cpp
49 tooltips/tooltipmanager.cpp
50 versioncontrolobserver.cpp
51 viewextensionsfactory.cpp
52 viewproperties.cpp
53 zoomlevelinfo.cpp
54 )
55
56 kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
57 settings/dolphin_columnmodesettings.kcfgc
58 settings/dolphin_directoryviewpropertysettings.kcfgc
59 settings/dolphin_detailsmodesettings.kcfgc
60 settings/dolphin_iconsmodesettings.kcfgc
61 settings/dolphin_generalsettings.kcfgc)
62
63 kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
64
65 target_link_libraries(dolphinprivate ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS} konq ${QIMAGEBLITZ_LIBRARIES} ${X11_LIBRARIES})
66 if(X11_Xrender_FOUND)
67 target_link_libraries(dolphinprivate ${X11_Xrender_LIB} )
68 endif(X11_Xrender_FOUND)
69 if (Nepomuk_FOUND)
70 target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES})
71 endif (Nepomuk_FOUND)
72
73
74 set_target_properties(dolphinprivate PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
75 install(TARGETS dolphinprivate ${INSTALL_TARGETS_DEFAULT_ARGS})
76
77
78 ##########################################
79
80 set(dolphinpart_SRCS
81 dolphinpart.cpp
82 )
83
84 set(fileviewsvnplugin_SRCS
85 fileviewsvnplugin.cpp
86 )
87
88 kde4_add_plugin(dolphinpart ${dolphinpart_SRCS})
89 kde4_add_plugin(fileviewsvnplugin ${fileviewsvnplugin_SRCS})
90
91 target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS})
92 target_link_libraries(fileviewsvnplugin ${KDE4_KDECORE_LIBS} ${QT_QTGUI_LIBRARY} ${KDE4_KIO_LIBS} konq)
93
94 install(TARGETS dolphinpart DESTINATION ${PLUGIN_INSTALL_DIR})
95 install(TARGETS fileviewsvnplugin DESTINATION ${PLUGIN_INSTALL_DIR})
96
97 install(FILES dolphinpart.rc DESTINATION ${DATA_INSTALL_DIR}/dolphinpart)
98 install(FILES dolphinpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
99 install(FILES fileviewsvnplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR})
100
101 ##########################################
102
103 set(dolphin_SRCS
104 dolphinapplication.cpp
105 dolphinmainwindow.cpp
106 dolphinnewmenu.cpp
107 dolphinviewcontainer.cpp
108 dolphindirlister.cpp
109 dolphincontextmenu.cpp
110 filterbar.cpp
111 main.cpp
112 pixmapviewer.cpp
113 panels/information/informationpanel.cpp
114 panels/information/informationpanelcontent.cpp
115 panels/information/metadatawidget.cpp
116 panels/information/metadataconfigurationdialog.cpp
117 panels/information/phononwidget.cpp
118 panels/folders/ktreeview.cpp
119 panels/places/placespanel.cpp
120 panels/panel.cpp
121 panels/folders/treeviewcontextmenu.cpp
122 panels/folders/folderspanel.cpp
123 panels/folders/paneltreeview.cpp
124 search/dolphinsearchbox.cpp
125 settings/behaviorsettingspage.cpp
126 settings/columnviewsettingspage.cpp
127 settings/contextmenusettingspage.cpp
128 settings/dolphinfontrequester.cpp
129 settings/dolphinsettingsdialog.cpp
130 settings/detailsviewsettingspage.cpp
131 settings/generalsettingspage.cpp
132 settings/iconsizegroupbox.cpp
133 settings/iconsviewsettingspage.cpp
134 settings/navigationsettingspage.cpp
135 settings/previewssettingspage.cpp
136 settings/servicessettingspage.cpp
137 settings/settingspagebase.cpp
138 settings/startupsettingspage.cpp
139 settings/statusbarsettingspage.cpp
140 settings/trashsettingspage.cpp
141 settings/viewsettingspage.cpp
142 settings/viewsettingspagebase.cpp
143 statusbar/dolphinstatusbar.cpp
144 statusbar/statusbarspaceinfo.cpp
145 statusbar/statusbarmessagelabel.cpp
146 zoomlevelinfo.cpp
147 )
148
149 kde4_add_kcfg_files(dolphin_SRCS
150 panels/folders/dolphin_folderspanelsettings.kcfgc
151 panels/information/dolphin_informationpanelsettings.kcfgc)
152
153 if(Nepomuk_FOUND)
154 set(dolphin_SRCS
155 ${dolphin_SRCS}
156 panels/information/commentwidget.cpp
157 panels/information/edittagsdialog.cpp
158 panels/information/nepomukmassupdatejob.cpp
159 panels/information/taggingwidget.cpp
160 )
161
162 endif(Nepomuk_FOUND)
163
164 if(NOT WIN32)
165 set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
166 endif(NOT WIN32)
167
168 qt4_add_dbus_adaptor(dolphin_SRCS
169 org.kde.dolphin.Application.xml
170 dolphinapplication.h DolphinApplication)
171 qt4_add_dbus_adaptor(dolphin_SRCS
172 org.kde.dolphin.MainWindow.xml
173 dolphinmainwindow.h DolphinMainWindow)
174
175 kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png")
176
177 kde4_add_executable(dolphin ${dolphin_SRCS})
178
179 target_link_libraries(dolphin ${KDE4_KIO_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KUTILS_LIBRARY} konq dolphinprivate ${KDE4_PHONON_LIBS})
180
181 if (Nepomuk_FOUND)
182 target_link_libraries(dolphin ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES})
183 endif (Nepomuk_FOUND)
184
185 install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
186
187 ##########################################
188
189 set(kcm_dolphinviewmodes_PART_SRCS
190 kcm/kcmdolphinviewmodes.cpp
191 settings/columnviewsettingspage.cpp
192 settings/detailsviewsettingspage.cpp
193 settings/dolphinfontrequester.cpp
194 settings/iconsizegroupbox.cpp
195 settings/iconsviewsettingspage.cpp
196 settings/viewsettingspagebase.cpp
197 pixmapviewer.cpp
198 zoomlevelinfo.cpp)
199
200 set(kcm_dolphinnavigation_PART_SRCS
201 kcm/kcmdolphinnavigation.cpp
202 settings/navigationsettingspage.cpp
203 settings/settingspagebase.cpp)
204
205 set(kcm_dolphinservices_PART_SRCS
206 kcm/kcmdolphinservices.cpp
207 settings/servicessettingspage.cpp
208 settings/settingspagebase.cpp)
209
210 set(kcm_dolphingeneral_PART_SRCS
211 kcm/kcmdolphingeneral.cpp
212 settings/behaviorsettingspage.cpp
213 settings/previewssettingspage.cpp
214 settings/contextmenusettingspage.cpp
215 settings/settingspagebase.cpp)
216
217 kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
218 settings/dolphin_columnmodesettings.kcfgc
219 settings/dolphin_directoryviewpropertysettings.kcfgc
220 settings/dolphin_detailsmodesettings.kcfgc
221 settings/dolphin_iconsmodesettings.kcfgc
222 settings/dolphin_generalsettings.kcfgc)
223
224 kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
225 settings/dolphin_generalsettings.kcfgc)
226
227 kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS
228 settings/dolphin_generalsettings.kcfgc)
229
230 kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS
231 settings/dolphin_generalsettings.kcfgc)
232
233 kde4_add_plugin(kcm_dolphinviewmodes ${kcm_dolphinviewmodes_PART_SRCS})
234 kde4_add_plugin(kcm_dolphinnavigation ${kcm_dolphinnavigation_PART_SRCS})
235 kde4_add_plugin(kcm_dolphinservices ${kcm_dolphinservices_PART_SRCS})
236 kde4_add_plugin(kcm_dolphingeneral ${kcm_dolphingeneral_PART_SRCS})
237
238 target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
239 target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
240 target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate)
241 target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
242 if (Nepomuk_FOUND)
243 target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
244 target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
245 target_link_libraries(kcm_dolphinservices ${NEPOMUK_LIBRARIES})
246 target_link_libraries(kcm_dolphingeneral ${NEPOMUK_LIBRARIES})
247 endif (Nepomuk_FOUND)
248
249 install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
250 install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )
251 install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} )
252 install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} )
253
254 ########### install files ###############
255
256 install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
257 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg settings/dolphin_generalsettings.kcfg settings/dolphin_columnmodesettings.kcfg settings/dolphin_iconsmodesettings.kcfg settings/dolphin_detailsmodesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
258 install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
259 install( FILES search/dolphinsearchcommands.desktop DESTINATION ${DATA_INSTALL_DIR}/dolphin )
260 install( FILES kcm/kcmdolphinviewmodes.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
261 install( FILES kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
262 install( FILES kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
263 install( FILES kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} )