2 FIND_PATH( KONQSIDEBAR_INCLUDE_DIR konqsidebarplugin.h
8 MESSAGE(STATUS "reactivate konquesidebar when it is ported")
9 #if(KONQSIDEBAR_INCLUDE_DIR)
10 # add_subdirectory( konquisidebar ) #disabling for now
11 #else(KONQSIDEBAR_INCLUDE_DIR)
12 # MESSAGE(STATUS "You're missing the kdebase header files")
13 # MESSAGE(STATUS "Konqueror sidebar will not be compiled.")
14 #endif(KONQSIDEBAR_INCLUDE_DIR)
16 ADD_DEFINITIONS(${TAGLIB_CFLAGS})
19 ADD_DEFINITIONS(-DHAVE_MP4V2)
20 include_directories( ${MP4V2_INCLUDE_DIR} )
24 set(mac_SRCS app_mac.cpp)
27 add_subdirectory( amarokcore )
28 add_subdirectory( data )
29 add_subdirectory( images )
30 add_subdirectory( scripts )
31 add_subdirectory( themes )
32 add_subdirectory( vis )
33 add_subdirectory( metadata )
34 add_subdirectory( engine )
35 add_subdirectory( mediadevice )
36 add_subdirectory( collectionscanner )
37 add_subdirectory( collection )
38 add_subdirectory( portabledevices )
39 add_subdirectory( podcasts )
40 add_subdirectory( strigi )
41 add_subdirectory( playlistbrowser )
42 add_subdirectory( context )
43 add_subdirectory( playlistmanager )
44 #add_subdirectory( device ) #not necessary at the moment, enable again when devicemanager has been ported to Solid
46 OPTION(USE_SYSTEM_SQLITE "Use system sqlite instead of amarok's own copy" OFF)
48 if (USE_SYSTEM_SQLITE)
49 find_package(Sqlite REQUIRED)
51 else (USE_SYSTEM_SQLITE)
53 set(libsqlite_SRCS sqlite/sqlite3.c)
54 endif (USE_SYSTEM_SQLITE)
69 #servicebrowser/magnatunestore
70 ${CMAKE_CURRENT_SOURCE_DIR}
76 ${CMAKE_CURRENT_BINARY_DIR} #for amarokconfig.h
83 set(libamarokcore_SRCS
84 amarokcore/amarokdbushandler.cpp
85 amarokcore/crashhandler.cpp
88 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.collection.xml amarokcore/amarokdbushandler.h Amarok::DbusCollectionHandler)
89 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.mediabrowser.xml amarokcore/amarokdbushandler.h Amarok::DbusMediaBrowserHandler)
90 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.player.xml amarokcore/amarokdbushandler.h Amarok::DbusPlayerHandler)
91 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.playlist.xml amarokcore/amarokdbushandler.h Amarok::DbusPlaylistHandler)
92 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.playlistbrowse.xml amarokcore/amarokdbushandler.h Amarok::DbusPlaylistBrowserHandler)
93 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.script.xml amarokcore/amarokdbushandler.h Amarok::DbusScriptHandler)
94 qt4_add_dbus_adaptor( libamarokcore_SRCS amarokcore/org.kde.amarok.context.xml amarokcore/amarokdbushandler.h Amarok::DbusContextHandler)
96 #####################################################################
98 #####################################################################
101 plugin/pluginconfig.cpp
104 #####################################################################
106 #####################################################################
107 set(libservicebrowser_SRCS
108 servicebrowser/servicebrowser.cpp
109 servicebrowser/servicebase.cpp
110 servicebrowser/servicemetabase.cpp
111 servicebrowser/servicecollection.cpp
112 servicebrowser/servicesqlquerymaker.cpp
113 servicebrowser/servicesqlcollection.cpp
114 servicebrowser/infoparserbase.cpp
115 servicebrowser/ServiceSqlRegistry.cpp
116 servicebrowser/ServiceAlbumCoverDownloader.cpp
117 servicebrowser/ServiceInfoProxy.cpp
121 #####################################################################
123 #####################################################################
124 set(libscriptableservice_SRCS
125 servicebrowser/scriptableservice/scriptableservicemanager.cpp
126 servicebrowser/scriptableservice/ScriptableServiceInfoParser.cpp
127 servicebrowser/scriptableservice/scriptableservice.cpp
128 servicebrowser/scriptableservice/ScriptableServiceCollection.cpp
131 #####################################################################
133 #####################################################################
134 set(libjamendoservice_SRCS
135 servicebrowser/jamendo/jamendoservice.cpp
136 servicebrowser/jamendo/JamendoMeta.cpp
137 servicebrowser/jamendo/jamendodatabasehandler.cpp
138 servicebrowser/jamendo/jamendoxmlparser.cpp
139 servicebrowser/jamendo/JamendoInfoParser.cpp
142 #####################################################################
144 #####################################################################
145 set(libmp3tunesservice_SRCS
146 servicebrowser/mp3tunes/mp3tunesservice.cpp
147 servicebrowser/mp3tunes/mp3tunesdatafetcher.cpp
150 qt4_add_dbus_adaptor( libscriptableservice_SRCS servicebrowser/scriptableservice/org.kde.amarok.ScriptableServiceManager.xml servicebrowser/scriptableservice/scriptableservicemanager.h ScriptableServiceManager)
152 #####################################################################
154 #####################################################################
155 set(libconfigdialog_SRCS
156 configdialog/ConfigDialog.cpp
157 configdialog/ConfigDialogBase.cpp
158 configdialog/dialogs/AppearanceConfig.cpp
159 configdialog/dialogs/CollectionConfig.cpp
160 configdialog/dialogs/EngineConfig.cpp
161 configdialog/dialogs/GeneralConfig.cpp
162 configdialog/dialogs/LastfmConfig.cpp
163 configdialog/dialogs/MediadeviceConfig.cpp
164 configdialog/dialogs/OsdConfig.cpp
165 configdialog/dialogs/PlaybackConfig.cpp
168 kde4_add_ui_files(libconfigdialog_SRCS
169 configdialog/dialogs/AppearanceConfig.ui
170 configdialog/dialogs/CollectionConfig.ui
171 configdialog/dialogs/GeneralConfig.ui
172 configdialog/dialogs/LastfmConfig.ui
173 configdialog/dialogs/OsdConfig.ui
174 configdialog/dialogs/PlaybackConfig.ui
177 #####################################################################
179 #####################################################################
180 set(libmagnatunestore_SRCS
181 servicebrowser/magnatunestore/magnatuneinfoparser.cpp
182 servicebrowser/magnatunestore/MagnatuneStore.cpp
183 servicebrowser/magnatunestore/magnatunedownloaddialog.cpp
184 servicebrowser/magnatunestore/magnatunepurchasedialog.cpp
185 servicebrowser/magnatunestore/magnatunepurchasehandler.cpp
186 #servicebrowser/magnatunestore/magnatunetypes.cpp
187 servicebrowser/magnatunestore/MagnatuneMeta.cpp
188 servicebrowser/magnatunestore/magnatunexmlparser.cpp
189 servicebrowser/magnatunestore/magnatunedatabasehandler.cpp
190 #servicebrowser/magnatunestore/magnatuneredownloaddialog.cpp
191 #servicebrowser/magnatunestore/magnatuneredownloadhandler.cpp
192 servicebrowser/magnatunestore/magnatunedownloadinfo.cpp
193 servicebrowser/magnatunestore/magnatunealbumdownloader.cpp
196 kde4_add_ui3_files(libmagnatunestore_SRCS
197 servicebrowser/magnatunestore/magnatunedownloaddialogbase.ui
198 #servicebrowser/magnatunestore/magnatunepurchasedialogbase.ui
199 servicebrowser/magnatunestore/magnatuneredownloaddialogbase.ui
202 kde4_add_ui_files(libconfigdialog_SRCS
203 servicebrowser/magnatunestore/magnatunepurchasedialogbase.ui
206 #####################################################################
208 #####################################################################
209 set(libcollectionbrowser_SRCS
210 collectionbrowser/collectiontreeview.cpp
211 collectionbrowser/CollectionTreeItemModelBase.cpp
212 collectionbrowser/collectiontreeitemmodel.cpp
213 collectionbrowser/singlecollectiontreeitemmodel.cpp
214 collectionbrowser/collectionsortfilterproxymodel.cpp
215 collectionbrowser/collectiontreeitem.cpp
216 collectionbrowser/CollectionWidget.cpp
219 #####################################################################
221 #####################################################################
222 set(libanalyzers_SRCS
223 analyzers/analyzerbase.cpp
224 analyzers/analyzerfactory.cpp
225 analyzers/baranalyzer.cpp
226 analyzers/blockanalyzer.cpp
227 analyzers/glanalyzer.cpp
228 analyzers/glanalyzer2.cpp
229 analyzers/glanalyzer3.cpp
230 analyzers/sonogram.cpp
231 # analyzers/turbine.cpp
232 #analyzers/boomanalyzer.cpp
235 #####################################################################
237 #####################################################################
238 set(libstatusbar_SRCS
239 statusbar/statusBarBase.cpp
240 statusbar/statusbar.cpp
241 statusbar/overlayWidget.cpp
242 statusbar/popupMessage.cpp
243 statusbar/progressBar.cpp
244 # statusbar/squeezedtextlabel.cpp
245 statusbar/queueLabel.cpp
246 statusbar/selectLabel.cpp
249 #####################################################################
251 #####################################################################
253 meta/lastfm/LastFmMeta.cpp
256 #####################################################################
258 #####################################################################
261 meta/proxy/MetaProxy.cpp
263 meta/stream/Stream.cpp
264 meta/PlaylistFileSupport.cpp
268 #####################################################################
270 #####################################################################
272 collection/BlockingQuery.cpp
273 collection/Collection.cpp
274 collection/CollectionManager.cpp
275 collection/CollectionLocation.cpp
276 collection/MetaQueryBuilder.cpp
277 collection/QueryMaker.cpp
278 collection/support/MemoryQueryMaker.cpp
281 #####################################################################
283 #####################################################################
286 set( libcontextview_SRCS
288 context/ColumnApplet.cpp
289 context/ContextView.cpp
290 context/ContextObserver.cpp
291 context/ContextScene.cpp
292 context/ControlBox.cpp
293 context/CoverBling.cpp
294 context/DataEngineManager.cpp
295 context/LyricsManager.cpp
297 context/widgets/TextWidget.cpp
298 context/widgets/VBoxLayout.cpp
301 #####################################################################
303 #####################################################################
305 podcasts/PodcastCollection.cpp
306 podcasts/PodcastReader.cpp
309 #####################################################################
311 #####################################################################
312 set(libplaylistbrowser_SRCS
313 playlistbrowser/PlaylistBrowser.cpp
314 playlistbrowser/PodcastModel.cpp
317 #####################################################################
319 #####################################################################
320 set(libqueuemanager_SRCS
321 queuemanager/QueueManager.cpp
322 queuemanager/QueueModel.cpp
325 #####################################################################
327 #####################################################################
328 set(libplaylistmanager_SRCS
329 playlistmanager/PlaylistManager.cpp
332 #####################################################################
334 #####################################################################
335 set(amaroklib_LIB_SRCS
336 ${libmagnatunestore_SRCS}
337 #${libmp3tunesservice_SRCS}
338 ${libscriptableservice_SRCS}
339 ${libamarokcore_SRCS}
341 ${libcontextview_SRCS}
342 ${libcollectionbrowser_SRCS}
343 ${libconfigdialog_SRCS}
344 ${libjamendoservice_SRCS}
347 ${libservicebrowser_SRCS}
354 ${libplaylistbrowser_SRCS}
355 ${libqueuemanager_SRCS}
356 ${libplaylistmanager_SRCS}
368 deviceconfiguredialog.cpp
376 equalizerpresetmanager.cpp
394 mountpointmanager.cpp
398 playlist/PlaylistHeader.cpp
399 playlist/PlaylistItem.cpp
400 playlist/PlaylistModel.cpp
401 playlist/PlaylistWidget.cpp
402 playlist/StandardTrackAdvancer.cpp
403 playlist/TrackAdvancer.cpp
404 playlist/UndoCommands.cpp
405 playlist/PlaylistGraphicsItem.cpp
406 playlist/PlaylistGraphicsView.cpp
409 playlistbrowseritem.cpp
412 playlistselection.cpp
415 portabledevices/SolidHandler.cpp
424 smartplaylisteditor.cpp
433 trackpickerdialog.cpp
436 widgets/analyzerwidget.cpp
437 widgets/progressslider.cpp
438 widgets/searchwidget.cpp
439 widgets/sidebarwidget.cpp
440 widgets/sliderwidget.cpp
441 widgets/volumewidget.cpp
447 set( amaroklib_DEPENDS "amarokplasma" )
449 kde4_add_kcfg_files(amaroklib_LIB_SRCS amarokcore/amarokconfig.kcfgc)
451 kde4_add_ui3_files(amaroklib_LIB_SRCS
455 collectionbrowser/OrganizeCollectionDialog.ui
456 podcastsettingsbase.ui
458 # tagguesserconfigdialog.ui
459 trackpickerdialogbase.ui
462 kde4_add_ui_files(amaroklib_LIB_SRCS
465 tagguesserconfigdialog.ui
468 kde4_add_library(amaroklib SHARED ${amaroklib_LIB_SRCS})
470 target_link_libraries(amaroklib
471 ${KDE4_KUTILS_LIBS} ${KDE4_KDEUI_LIBS} ${KDE4_KHTML_LIBS} ${KDE4_KNEWSTUFF_LIBS}
474 ${KDE4_KDE3SUPPORT_LIBS}
475 ${KDE4_THREADWEAVER_LIBRARIES}
476 ${QT_QTOPENGL_LIBRARY}
478 ${OPENGL_glu_LIBRARY}
484 target_link_libraries(amaroklib dl)
487 if(USE_SYSTEM_SQLITE)
488 target_link_libraries(amaroklib ${SQLITE_LIBRARIES})
489 endif(USE_SYSTEM_SQLITE)
491 set_target_properties(amaroklib PROPERTIES VERSION 1.0.0 SOVERSION 1 )
492 install(TARGETS amaroklib DESTINATION ${LIB_INSTALL_DIR} )
495 #####################################################################
497 #####################################################################
499 set(amarok_SRCS main.cpp )
502 kde4_add_executable(Amarok ${amarok_SRCS})
503 target_link_libraries(Amarok ${KDE4_KDECORE_LIBS} amaroklib )
504 install(TARGETS Amarok DESTINATION ${BIN_INSTALL_DIR})
508 kde4_add_executable(amarok ${amarok_SRCS})
509 target_link_libraries(amarok ${KDE4_KDECORE_LIBS} amaroklib )
510 install(TARGETS amarok DESTINATION ${BIN_INSTALL_DIR})
514 ########### install files ###############
516 install(FILES amarok.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
517 install(FILES amarok.profile.xml DESTINATION ${DATA_INSTALL_DIR}/profiles )
518 install(FILES amarokrc DESTINATION ${CONFIG_INSTALL_DIR})
519 install(FILES amarok_plugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR})
520 install(FILES amarokui.rc DESTINATION ${DATA_INSTALL_DIR}/amarok)
521 install(FILES amarok_append.desktop DESTINATION ${DATA_INSTALL_DIR}/konqueror/servicemenus)
523 install(FILES context/servicetypes/amarok_context_applet.desktop
524 context/servicetypes/amarok_data_engine.desktop
525 DESTINATION ${SERVICETYPES_INSTALL_DIR} )
527 kde4_install_icons( ${ICON_INSTALL_DIR} )