]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
cleanup sort order, so that it is easier later to split the files into several CMakeL...
[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/settingspagebase.cpp
115 settings/startupsettingspage.cpp
116 settings/columnviewsettingspage.cpp
117 settings/dolphinfontrequester.cpp
118 settings/dolphinsettingsdialog.cpp
119 settings/detailsviewsettingspage.cpp
120 settings/generalsettingspage.cpp
121 settings/generalviewsettingspage.cpp
122 settings/iconsizegroupbox.cpp
123 settings/iconsviewsettingspage.cpp
124 settings/viewsettingspage.cpp
125 settings/viewsettingspagebase.cpp
126 statusbarspaceinfo.cpp
127 statusbarmessagelabel.cpp
128 zoomlevelinfo.cpp
129 )
130
131 kde4_add_kcfg_files(dolphin_SRCS
132 panels/folders/dolphin_folderspanelsettings.kcfgc)
133
134 if(Nepomuk_FOUND)
135 set(dolphin_SRCS
136 ${dolphin_SRCS}
137 panels/information/nepomukmassupdatejob.cpp
138 panels/information/tagcloud.cpp
139 panels/information/resourcetaggingwidget.cpp
140 panels/information/taggingpopup.cpp
141 panels/information/newtagdialog.cpp
142 )
143 kde4_add_ui_files(dolphin_SRCS panels/information/newtagdialog.ui)
144
145 endif(Nepomuk_FOUND)
146
147 if(NOT WIN32)
148 set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
149 endif(NOT WIN32)
150
151 qt4_add_dbus_adaptor(dolphin_SRCS
152 org.kde.dolphin.Application.xml
153 dolphinapplication.h DolphinApplication)
154 qt4_add_dbus_adaptor(dolphin_SRCS
155 org.kde.dolphin.MainWindow.xml
156 dolphinmainwindow.h DolphinMainWindow)
157
158 kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png")
159
160 kde4_add_executable(dolphin ${dolphin_SRCS})
161
162 target_link_libraries(dolphin ${KDE4_KIO_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} konq dolphinprivate)
163
164 if (Nepomuk_FOUND)
165 target_link_libraries(dolphin ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES})
166 endif (Nepomuk_FOUND)
167
168 install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
169
170 ##########################################
171
172 set(kcm_dolphin_PART_SRCS
173 kcmdolphin.cpp
174 settings/columnviewsettingspage.cpp
175 settings/detailsviewsettingspage.cpp
176 settings/dolphinfontrequester.cpp
177 settings/generalviewsettingspage.cpp
178 settings/iconsizegroupbox.cpp
179 settings/iconsviewsettingspage.cpp
180 settings/viewsettingspagebase.cpp
181 pixmapviewer.cpp
182 zoomlevelinfo.cpp
183 )
184
185 kde4_add_kcfg_files(kcm_dolphin_PART_SRCS
186 settings/dolphin_columnmodesettings.kcfgc
187 settings/dolphin_directoryviewpropertysettings.kcfgc
188 settings/dolphin_detailsmodesettings.kcfgc
189 settings/dolphin_iconsmodesettings.kcfgc
190 settings/dolphin_generalsettings.kcfgc)
191
192 kde4_add_plugin(kcm_dolphin ${kcm_dolphin_PART_SRCS})
193
194 target_link_libraries(kcm_dolphin ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
195 if (Nepomuk_FOUND)
196 target_link_libraries(kcm_dolphin ${NEPOMUK_LIBRARIES})
197 endif (Nepomuk_FOUND)
198
199 install(TARGETS kcm_dolphin DESTINATION ${PLUGIN_INSTALL_DIR} )
200
201 ########### install files ###############
202
203 install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
204 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} )
205 install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
206 install( FILES kcmdolphin.desktop DESTINATION ${SERVICES_INSTALL_DIR} )