]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
added settings module for 'Navigation', that can be used by Konqueror
[dolphin.git] / src / CMakeLists.txt
1
2 add_subdirectory( pics )
3
4 find_package(QImageBlitz REQUIRED)
5
6 macro_optional_find_package(Nepomuk)
7 macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk" "http://www.kde.org" FALSE "" "For adding desktop-wide tagging support to dolphin")
8 macro_bool_to_01(Nepomuk_FOUND HAVE_NEPOMUK)
9 configure_file(config-nepomuk.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-nepomuk.h )
10
11 include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${QIMAGEBLITZ_INCLUDES} )
12
13 if (Nepomuk_FOUND)
14 # Yes, Soprano includes is what we need here
15 include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} )
16 endif (Nepomuk_FOUND)
17
18 ########### next target ###############
19
20 set(dolphinprivate_LIB_SRCS
21 dolphincontroller.cpp
22 dolphindetailsview.cpp
23 dolphiniconsview.cpp
24 dolphincolumnview.cpp
25 dolphincolumnwidget.cpp
26 dolphindirlister.cpp
27 dolphinfileitemdelegate.cpp
28 dolphinmodel.cpp
29 dolphinsortfilterproxymodel.cpp
30 dolphincategorydrawer.cpp
31 dolphinview.cpp
32 dolphinviewactionhandler.cpp
33 dolphinviewautoscroller.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 dolphinstatusbar.cpp
98 dolphindirlister.cpp
99 dolphincontextmenu.cpp
100 filterbar.cpp
101 main.cpp
102 pixmapviewer.cpp
103 panels/information/commentwidget.cpp
104 panels/information/commenteditwidget.cpp
105 panels/information/informationpanel.cpp
106 panels/information/metadatawidget.cpp
107 panels/information/metatextlabel.cpp
108 panels/folders/ktreeview.cpp
109 panels/places/placespanel.cpp
110 panels/panel.cpp
111 panels/folders/treeviewcontextmenu.cpp
112 panels/folders/folderspanel.cpp
113 panels/folders/paneltreeview.cpp
114 settings/behaviorsettingspage.cpp
115 settings/columnviewsettingspage.cpp
116 settings/contextmenusettingspage.cpp
117 settings/dolphinfontrequester.cpp
118 settings/dolphinsettingsdialog.cpp
119 settings/detailsviewsettingspage.cpp
120 settings/generalsettingspage.cpp
121 settings/iconsizegroupbox.cpp
122 settings/iconsviewsettingspage.cpp
123 settings/navigationsettingspage.cpp
124 settings/previewssettingspage.cpp
125 settings/servicessettingspage.cpp
126 settings/settingspagebase.cpp
127 settings/startupsettingspage.cpp
128 settings/statusbarsettingspage.cpp
129 settings/viewsettingspage.cpp
130 settings/viewsettingspagebase.cpp
131 statusbarspaceinfo.cpp
132 statusbarmessagelabel.cpp
133 zoomlevelinfo.cpp
134 )
135
136 kde4_add_kcfg_files(dolphin_SRCS
137 panels/folders/dolphin_folderspanelsettings.kcfgc)
138
139 if(Nepomuk_FOUND)
140 set(dolphin_SRCS
141 ${dolphin_SRCS}
142 panels/information/nepomukmassupdatejob.cpp
143 panels/information/tagcloud.cpp
144 panels/information/resourcetaggingwidget.cpp
145 panels/information/taggingpopup.cpp
146 panels/information/newtagdialog.cpp
147 )
148 kde4_add_ui_files(dolphin_SRCS panels/information/newtagdialog.ui)
149
150 endif(Nepomuk_FOUND)
151
152 if(NOT WIN32)
153 set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
154 endif(NOT WIN32)
155
156 qt4_add_dbus_adaptor(dolphin_SRCS
157 org.kde.dolphin.Application.xml
158 dolphinapplication.h DolphinApplication)
159 qt4_add_dbus_adaptor(dolphin_SRCS
160 org.kde.dolphin.MainWindow.xml
161 dolphinmainwindow.h DolphinMainWindow)
162
163 kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png")
164
165 kde4_add_executable(dolphin ${dolphin_SRCS})
166
167 target_link_libraries(dolphin ${KDE4_KIO_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} konq dolphinprivate)
168
169 if (Nepomuk_FOUND)
170 target_link_libraries(dolphin ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES})
171 endif (Nepomuk_FOUND)
172
173 install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
174
175 ##########################################
176
177 set(kcm_dolphinviewmodes_PART_SRCS
178 kcm/kcmdolphinviewmodes.cpp
179 settings/columnviewsettingspage.cpp
180 settings/detailsviewsettingspage.cpp
181 settings/dolphinfontrequester.cpp
182 settings/iconsizegroupbox.cpp
183 settings/iconsviewsettingspage.cpp
184 settings/viewsettingspagebase.cpp
185 pixmapviewer.cpp
186 zoomlevelinfo.cpp)
187
188 set(kcm_dolphinnavigation_PART_SRCS
189 kcm/kcmdolphinnavigation.cpp
190 settings/navigationsettingspage.cpp
191 settings/settingspagebase.cpp)
192
193 kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
194 settings/dolphin_columnmodesettings.kcfgc
195 settings/dolphin_directoryviewpropertysettings.kcfgc
196 settings/dolphin_detailsmodesettings.kcfgc
197 settings/dolphin_iconsmodesettings.kcfgc
198 settings/dolphin_generalsettings.kcfgc)
199
200 kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
201 settings/dolphin_generalsettings.kcfgc)
202
203 kde4_add_plugin(kcm_dolphinviewmodes ${kcm_dolphinviewmodes_PART_SRCS})
204 kde4_add_plugin(kcm_dolphinnavigation ${kcm_dolphinnavigation_PART_SRCS})
205
206 target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
207 target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
208 if (Nepomuk_FOUND)
209 target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
210 target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
211 endif (Nepomuk_FOUND)
212
213 install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
214 install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )
215
216 ########### install files ###############
217
218 install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
219 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} )
220 install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
221 install( FILES kcm/kcmdolphinviewmodes.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
222 install( FILES kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} )