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