]> cloud.milkyroute.net Git - dolphin.git/blob - src/CMakeLists.txt
Group classes into folders, Dolphin is too big in the meantime for having a flat...
[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 settings/additionalinfodialog.cpp
22 settings/applyviewpropsjob.cpp
23 dolphincontroller.cpp
24 dolphindetailsview.cpp
25 dolphiniconsview.cpp
26 dolphincolumnview.cpp
27 dolphincolumnwidget.cpp
28 dolphindirlister.cpp
29 dolphinfileitemdelegate.cpp
30 dolphinmodel.cpp
31 settings/dolphinsettings.cpp
32 dolphinsortfilterproxymodel.cpp
33 tooltips/dolphintooltip.cpp
34 dolphincategorydrawer.cpp
35 dolphinview.cpp
36 dolphinviewactionhandler.cpp
37 dolphinviewautoscroller.cpp
38 draganddrophelper.cpp
39 folderexpander.cpp
40 tooltips/ktooltip.cpp
41 tooltips/kformattedballoontipdelegate.cpp
42 renamedialog.cpp
43 selectiontoggle.cpp
44 selectionmanager.cpp
45 tooltips/tooltipmanager.cpp
46 viewproperties.cpp
47 settings/viewpropertiesdialog.cpp
48 settings/viewpropsprogressinfo.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 settings/columnviewsettingspage.cpp
94 panels/information/commentwidget.cpp
95 panels/information/commenteditwidget.cpp
96 settings/detailsviewsettingspage.cpp
97 dolphinapplication.cpp
98 settings/dolphinfontrequester.cpp
99 dolphinmainwindow.cpp
100 dolphinnewmenu.cpp
101 dolphinviewcontainer.cpp
102 dolphinstatusbar.cpp
103 dolphindirlister.cpp
104 dolphincontextmenu.cpp
105 panels/places/dolphinfileplacesview.cpp
106 settings/dolphinsettingsdialog.cpp
107 filterbar.cpp
108 settings/generalsettingspage.cpp
109 settings/generalviewsettingspage.cpp
110 settings/iconsizegroupbox.cpp
111 settings/iconsviewsettingspage.cpp
112 panels/information/infosidebarpage.cpp
113 panels/folders/ktreeview.cpp
114 main.cpp
115 panels/information/metadatawidget.cpp
116 panels/information/metatextlabel.cpp
117 pixmapviewer.cpp
118 settings/settingspagebase.cpp
119 panels/sidebarpage.cpp
120 settings/startupsettingspage.cpp
121 statusbarspaceinfo.cpp
122 statusbarmessagelabel.cpp
123 panels/folders/treeviewcontextmenu.cpp
124 panels/folders/treeviewsidebarpage.cpp
125 panels/folders/sidebartreeview.cpp
126 settings/viewsettingspage.cpp
127 settings/viewsettingspagebase.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/terminalsidebarpage.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 pixmapviewer.cpp
181 settings/viewsettingspagebase.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} )