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