2009-12-23 13:27:31 +01:00
|
|
|
|
2012-02-01 12:41:32 +01:00
|
|
|
# This option should be removed, or moved down as far as possible.
|
|
|
|
# That means porting the existing frameworks to the CMake automoc
|
|
|
|
# feature. Porting is mostly removing explicit moc includes, and
|
|
|
|
# leaving the ones which are truly needed (ie, if you remove
|
|
|
|
# them, the build fails).
|
|
|
|
set(CMAKE_AUTOMOC_RELAXED_MODE ON)
|
|
|
|
|
2010-04-29 07:57:34 +02:00
|
|
|
if(KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
|
|
|
|
set(PLASMA_NO_KNEWSTUFF TRUE)
|
|
|
|
set(PLASMA_NO_SOLID TRUE)
|
2010-10-14 14:27:15 +02:00
|
|
|
set(PLASMA_NO_KIO TRUE)
|
2011-08-01 21:53:32 +02:00
|
|
|
set(PLASMA_NO_PACKAGEKIT TRUE)
|
2011-07-21 14:39:55 +02:00
|
|
|
set(PLASMA_NO_PACKAGE_EXTRADATA TRUE)
|
2011-11-02 17:22:36 +01:00
|
|
|
set(PLASMA_NO_KUTILS TRUE)
|
2011-11-14 21:19:53 +01:00
|
|
|
set(PLASMA_NO_GLOBAL_SHORTCUTS TRUE)
|
2010-04-29 07:57:34 +02:00
|
|
|
endif(KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
|
2009-12-23 13:27:31 +01:00
|
|
|
|
2012-08-03 11:38:59 +02:00
|
|
|
if(NOT X11_FOUND)
|
2011-08-01 21:53:32 +02:00
|
|
|
set(PLASMA_NO_PACKAGEKIT TRUE)
|
2012-08-03 11:38:59 +02:00
|
|
|
endif(NOT X11_FOUND)
|
2011-08-01 21:53:32 +02:00
|
|
|
|
2012-04-28 21:43:25 +02:00
|
|
|
#find_package(KdepimLibs 4.5.60)
|
|
|
|
#find_package(Gpgme)
|
|
|
|
#macro_log_feature(KDEPIMLIBS_FOUND "kdepimlibs" "KDE PIM libraries" "http://www.kde.org" FALSE "" "Needed for building several Plasma DataEngines")
|
|
|
|
|
2008-11-04 03:20:46 +01:00
|
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}
|
2012-06-16 22:06:11 +02:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}
|
2013-01-30 17:31:32 +01:00
|
|
|
${KDE4_INCLUDE_DIR}
|
|
|
|
${KDE4_INCLUDE_DIR}/KDE
|
2009-09-03 23:10:33 +02:00
|
|
|
${CMAKE_SOURCE_DIR}/plasma/remote
|
2009-09-02 04:27:16 +02:00
|
|
|
${CMAKE_SOURCE_DIR}/plasma/private/qtjolie-branch/qtjolie
|
|
|
|
${CMAKE_SOURCE_DIR}/plasma/private/qtjolie-branch
|
|
|
|
${CMAKE_SOURCE_DIR}/plasma/private/qtjolie-branch/includes
|
2012-11-28 13:05:46 +01:00
|
|
|
${ki18n_SOURCE_DIR}/src
|
|
|
|
${ki18n_BINARY_DIR}/src
|
2013-01-30 17:31:32 +01:00
|
|
|
${KDE4_INCLUDE_DIR}/threadweaver
|
2013-02-01 14:34:57 +01:00
|
|
|
${KDE4_INCLUDE_DIR}/kio
|
2013-01-30 17:31:32 +01:00
|
|
|
#FIXME: this will go into Qt upstream
|
|
|
|
${CMAKE_INSTALL_PREFIX}/include/kdeqt5staging/
|
2009-09-02 04:27:16 +02:00
|
|
|
)
|
|
|
|
|
2010-04-29 19:23:01 +02:00
|
|
|
if(NOT PLASMA_NO_KIO)
|
|
|
|
include_directories(${KDE4_KIO_INCLUDES})
|
|
|
|
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${KDE4_KIO_LIBS})
|
|
|
|
endif(NOT PLASMA_NO_KIO)
|
|
|
|
|
2010-04-29 07:57:34 +02:00
|
|
|
if(NOT PLASMA_NO_SOLID)
|
2013-01-31 11:30:25 +01:00
|
|
|
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${solid_LIBRARIES})
|
2010-04-29 07:57:34 +02:00
|
|
|
endif(NOT PLASMA_NO_SOLID)
|
|
|
|
|
2011-08-01 21:53:32 +02:00
|
|
|
if(NOT PLASMA_NO_PACKAGEKIT)
|
|
|
|
add_definitions(-DPLASMA_ENABLE_PACKAGEKIT_SUPPORT=1)
|
|
|
|
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${QT_QTDBUS_LIBRARY})
|
|
|
|
endif(NOT PLASMA_NO_PACKAGEKIT)
|
|
|
|
|
2011-11-03 11:06:05 +01:00
|
|
|
if (NOT PLASMA_NO_KUTILS)
|
2013-02-05 17:26:50 +01:00
|
|
|
#FIXME: for kcmodule classes; should not be in libplasma if possible
|
2011-11-03 11:06:05 +01:00
|
|
|
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${KDE4_KUTILS_LIBS})
|
|
|
|
endif(NOT PLASMA_NO_KUTILS)
|
|
|
|
|
2009-09-09 15:40:16 +02:00
|
|
|
if(QCA2_FOUND)
|
|
|
|
include_directories(${QCA2_INCLUDE_DIR})
|
|
|
|
set(ENABLE_REMOTE_WIDGETS TRUE)
|
|
|
|
endif(QCA2_FOUND)
|
2009-09-10 09:26:04 +02:00
|
|
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-plasma.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-plasma.h)
|
2009-09-02 04:27:16 +02:00
|
|
|
|
2011-04-29 15:18:35 +02:00
|
|
|
#FIXME: gpgme++ is in kdepimlibs, must move somewhere else!
|
2012-02-18 11:11:02 +01:00
|
|
|
include_directories(${KDEPIMLIBS_INCLUDE_DIRS} ${GPGME_INCLUDES})
|
2011-04-29 15:18:35 +02:00
|
|
|
|
2008-11-04 00:08:39 +01:00
|
|
|
add_subdirectory(tests)
|
|
|
|
add_definitions(-DKDE_DEFAULT_DEBUG_AREA=1209)
|
|
|
|
|
|
|
|
########### next target ###############
|
|
|
|
|
|
|
|
set(plasma_LIB_SRCS
|
2009-09-04 10:58:34 +02:00
|
|
|
abstractrunner.cpp
|
2011-05-31 01:16:44 +02:00
|
|
|
abstractdialogmanager.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
configloader.cpp
|
2009-08-18 00:31:32 +02:00
|
|
|
containmentactions.cpp
|
2009-10-05 22:50:57 +02:00
|
|
|
containmentactionspluginsconfig.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
datacontainer.cpp
|
|
|
|
dataengine.cpp
|
2012-09-24 15:51:14 +02:00
|
|
|
dataengineconsumer.cpp
|
2011-05-31 01:04:33 +02:00
|
|
|
package.cpp
|
2011-07-19 21:36:29 +02:00
|
|
|
packagestructure.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
paintutils.cpp
|
2011-05-31 01:04:33 +02:00
|
|
|
pluginloader.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
framesvg.cpp
|
|
|
|
plasma.cpp
|
2011-05-31 01:05:01 +02:00
|
|
|
pluginloader.cpp
|
|
|
|
|
2009-09-16 19:08:45 +02:00
|
|
|
private/associatedapplicationmanager.cpp
|
2011-08-01 21:53:32 +02:00
|
|
|
private/componentinstaller.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
private/datacontainer_p.cpp
|
2012-09-24 16:09:16 +02:00
|
|
|
private/dataenginemanager.cpp
|
2009-09-02 04:27:16 +02:00
|
|
|
private/dataengineservice.cpp
|
2011-11-17 14:40:53 +01:00
|
|
|
private/effects/halopainter.cpp
|
2009-09-02 04:27:16 +02:00
|
|
|
private/getsource.cpp
|
2012-12-09 14:12:55 +01:00
|
|
|
|
2008-11-04 00:08:39 +01:00
|
|
|
private/packages.cpp
|
2012-12-09 14:12:55 +01:00
|
|
|
private/packagejob.cpp
|
|
|
|
private/packagejobthread.cpp
|
2009-09-02 04:27:16 +02:00
|
|
|
private/plasmoidservice.cpp
|
|
|
|
private/remotedataengine.cpp
|
2009-09-02 04:21:41 +02:00
|
|
|
private/remoteservice.cpp
|
|
|
|
private/remoteservicejob.cpp
|
2009-02-11 12:16:09 +01:00
|
|
|
private/runnerjobs.cpp
|
2009-09-02 04:21:41 +02:00
|
|
|
private/serviceprovider.cpp
|
2010-07-12 22:51:12 +02:00
|
|
|
private/storage.cpp
|
2011-04-28 17:51:51 +02:00
|
|
|
private/storagethread.cpp
|
2012-07-17 13:44:50 +02:00
|
|
|
private/applet_p.cpp
|
2012-07-17 14:21:45 +02:00
|
|
|
private/containment_p.cpp
|
2012-02-28 18:15:00 +01:00
|
|
|
|
2009-09-04 10:58:34 +02:00
|
|
|
querymatch.cpp
|
2009-09-03 23:10:33 +02:00
|
|
|
remote/accessmanager.cpp
|
|
|
|
remote/accessappletjob.cpp
|
|
|
|
remote/authorizationinterface.cpp
|
|
|
|
remote/authorizationmanager.cpp
|
|
|
|
remote/authorizationrule.cpp
|
|
|
|
remote/clientpinrequest.cpp
|
|
|
|
remote/credentials.cpp
|
2011-04-29 15:18:35 +02:00
|
|
|
remote/denyallauthorization.cpp
|
|
|
|
remote/pinpairingauthorization.cpp
|
|
|
|
remote/pinpairingdialog.cpp
|
2009-09-03 23:10:33 +02:00
|
|
|
remote/serviceaccessjob.cpp
|
2012-04-28 21:43:25 +02:00
|
|
|
#remote/signing.cpp TODO: re-enable, needs gpgmepp though
|
2011-04-29 15:18:35 +02:00
|
|
|
remote/trustedonlyauthorization.cpp
|
2009-09-04 10:58:34 +02:00
|
|
|
runnercontext.cpp
|
|
|
|
runnermanager.cpp
|
|
|
|
runnersyntax.cpp
|
2008-11-04 00:08:39 +01:00
|
|
|
scripting/appletscript.cpp
|
|
|
|
scripting/dataenginescript.cpp
|
|
|
|
scripting/runnerscript.cpp
|
|
|
|
scripting/scriptengine.cpp
|
|
|
|
service.cpp
|
|
|
|
servicejob.cpp
|
|
|
|
svg.cpp
|
|
|
|
theme.cpp
|
|
|
|
version.cpp
|
2011-05-31 01:05:01 +02:00
|
|
|
|
|
|
|
|
|
|
|
#Temporary QtJolie branch
|
|
|
|
private/qtjolie-branch/qtjolie/abstractadaptor.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/client.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/clientthread.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/value.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/fault.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/message.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/metaservice.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/pendingcall.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/pendingcallwatcher.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/pendingreply.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/server.cpp
|
|
|
|
private/qtjolie-branch/qtjolie/serverthread.cpp
|
2012-02-28 18:15:00 +01:00
|
|
|
applet.cpp
|
|
|
|
containment.cpp
|
|
|
|
corona.cpp
|
2011-05-31 01:05:01 +02:00
|
|
|
)
|
|
|
|
|
2013-02-08 11:13:06 +01:00
|
|
|
set(plasma_LIB_SRCS ${plasma_LIB_SRCS} private/effectwatcher.cpp)
|
2012-11-23 20:09:15 +01:00
|
|
|
|
2012-05-12 17:15:01 +02:00
|
|
|
kconfig_add_kcfg_files(plasma_LIB_SRCS data/kconfigxt/libplasma-theme-global.kcfgc)
|
2009-10-07 20:44:33 +02:00
|
|
|
|
2009-09-02 04:27:16 +02:00
|
|
|
kde4_add_ui_files(plasma_LIB_SRCS
|
2011-04-29 15:18:35 +02:00
|
|
|
remote/pinpairing.ui
|
2009-09-02 04:27:16 +02:00
|
|
|
private/publish.ui)
|
2008-11-04 00:08:39 +01:00
|
|
|
#NEPOMUK_GENERATE_FROM_ONTOLOGY(
|
|
|
|
# nwc.nrl
|
|
|
|
# ${metadata_test_BINARY_DIR}
|
|
|
|
# TEST_HEADERS
|
|
|
|
# TEST_SOURCES
|
|
|
|
# TEST_INCLUDES
|
|
|
|
#)
|
|
|
|
|
|
|
|
|
2013-02-08 01:06:27 +01:00
|
|
|
kde4_add_library(plasma SHARED ${plasma_LIB_SRCS})
|
2008-11-04 00:08:39 +01:00
|
|
|
|
2012-11-09 14:29:59 +01:00
|
|
|
target_link_libraries(plasma ${QT_QTUITOOLS_LIBRARY}
|
2013-02-08 01:06:27 +01:00
|
|
|
${QT_QTNETWORK_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSQL_LIBRARY}
|
2013-02-07 18:38:03 +01:00
|
|
|
${KDE4_KDEUI_LIBS} kdnssd KF5::threadweaver kauth KF5::kwindowsystem ${PLASMA_EXTRA_LIBS} kcoreaddons ki18n)
|
2011-04-29 15:18:35 +02:00
|
|
|
#FIXME gpgme++ is in kdepimlibs, neeeds to be elsewhere
|
2013-02-07 18:27:34 +01:00
|
|
|
target_link_libraries(plasma ${KDEPIMLIBS_GPGMEPP_LIBS} kdeclarative KF5::karchive)
|
2009-09-09 20:47:11 +02:00
|
|
|
|
|
|
|
if(QCA2_FOUND)
|
|
|
|
target_link_libraries(plasma ${QCA2_LIBRARIES})
|
|
|
|
endif(QCA2_FOUND)
|
|
|
|
|
2008-11-04 09:13:55 +01:00
|
|
|
if(X11_FOUND)
|
|
|
|
target_link_libraries(plasma ${X11_LIBRARIES})
|
|
|
|
endif(X11_FOUND)
|
|
|
|
|
2008-11-04 00:08:39 +01:00
|
|
|
if(DL_LIBRARY)
|
2008-11-12 23:56:18 +01:00
|
|
|
target_link_libraries(plasma ${DL_LIBRARY})
|
2008-11-04 00:08:39 +01:00
|
|
|
endif(DL_LIBRARY)
|
|
|
|
|
2013-02-05 21:37:42 +01:00
|
|
|
target_link_libraries(plasma LINK_INTERFACE_LIBRARIES kdecore Qt5::Widgets)
|
2008-11-11 00:52:13 +01:00
|
|
|
|
2008-11-04 00:29:54 +01:00
|
|
|
#do NOT use GENERIC versioning -- the plasma team will take care of versioning
|
2008-11-04 00:08:39 +01:00
|
|
|
set_target_properties(plasma PROPERTIES
|
2011-04-26 22:53:32 +02:00
|
|
|
VERSION 4.0.0
|
|
|
|
SOVERSION 4
|
2008-11-04 00:08:39 +01:00
|
|
|
)
|
|
|
|
|
2012-02-12 16:32:16 +01:00
|
|
|
install(TARGETS plasma EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
|
2008-11-04 00:08:39 +01:00
|
|
|
|
|
|
|
########### install files ###############
|
2012-06-16 22:06:11 +02:00
|
|
|
generate_export_header(plasma)
|
2008-11-04 00:08:39 +01:00
|
|
|
|
|
|
|
set(plasma_LIB_INCLUDES
|
2010-04-03 21:10:32 +02:00
|
|
|
abstractdialogmanager.h
|
2009-09-04 10:58:34 +02:00
|
|
|
abstractrunner.h
|
2008-11-04 00:08:39 +01:00
|
|
|
applet.h
|
|
|
|
configloader.h
|
|
|
|
containment.h
|
2009-08-18 00:31:32 +02:00
|
|
|
containmentactions.h
|
2009-10-05 22:50:57 +02:00
|
|
|
containmentactionspluginsconfig.h
|
2008-11-04 00:08:39 +01:00
|
|
|
corona.h
|
|
|
|
datacontainer.h
|
|
|
|
dataengine.h
|
2010-07-15 23:06:21 +02:00
|
|
|
pluginloader.h
|
2008-11-04 00:08:39 +01:00
|
|
|
paintutils.h
|
|
|
|
framesvg.h
|
2011-05-31 01:04:33 +02:00
|
|
|
package.h
|
2011-07-19 21:36:29 +02:00
|
|
|
packagestructure.h
|
2008-11-04 00:08:39 +01:00
|
|
|
plasma.h
|
2012-06-16 22:06:11 +02:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/plasma_export.h
|
2009-09-04 10:58:34 +02:00
|
|
|
querymatch.h
|
2009-09-03 23:10:33 +02:00
|
|
|
remote/accessappletjob.h
|
|
|
|
remote/accessmanager.h
|
|
|
|
remote/authorizationmanager.h
|
|
|
|
remote/authorizationrule.h
|
|
|
|
remote/authorizationinterface.h
|
|
|
|
remote/clientpinrequest.h
|
|
|
|
remote/credentials.h
|
|
|
|
remote/serviceaccessjob.h
|
2009-09-04 10:58:34 +02:00
|
|
|
runnercontext.h
|
|
|
|
runnermanager.h
|
|
|
|
runnersyntax.h
|
2008-11-04 00:08:39 +01:00
|
|
|
service.h
|
|
|
|
servicejob.h
|
|
|
|
svg.h
|
|
|
|
theme.h
|
2013-01-29 19:36:46 +01:00
|
|
|
version.h)
|
2008-11-04 00:08:39 +01:00
|
|
|
|
|
|
|
|
|
|
|
install(FILES
|
|
|
|
${plasma_LIB_INCLUDES}
|
|
|
|
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma COMPONENT Devel)
|
|
|
|
|
2013-02-05 17:48:34 +01:00
|
|
|
install(DIRECTORY
|
|
|
|
includes/Plasma
|
|
|
|
DESTINATION ${INCLUDE_INSTALL_DIR}/KDE/ COMPONENT Devel)
|
|
|
|
|
2008-11-04 00:08:39 +01:00
|
|
|
|
|
|
|
install(FILES
|
|
|
|
scripting/appletscript.h
|
|
|
|
scripting/dataenginescript.h
|
|
|
|
scripting/runnerscript.h
|
|
|
|
scripting/scriptengine.h
|
|
|
|
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/scripting COMPONENT Devel)
|
|
|
|
|
|
|
|
install(FILES
|
2009-09-03 22:40:22 +02:00
|
|
|
data/servicetypes/plasma-applet.desktop
|
|
|
|
data/servicetypes/plasma-containment.desktop
|
|
|
|
data/servicetypes/plasma-containmentactions.desktop
|
|
|
|
data/servicetypes/plasma-dataengine.desktop
|
|
|
|
data/servicetypes/plasma-packagestructure.desktop
|
|
|
|
data/servicetypes/plasma-runner.desktop
|
|
|
|
data/servicetypes/plasma-scriptengine.desktop
|
2010-10-23 16:19:07 +02:00
|
|
|
data/servicetypes/plasma-service.desktop
|
2008-11-04 00:08:39 +01:00
|
|
|
DESTINATION ${SERVICETYPES_INSTALL_DIR})
|
|
|
|
|
|
|
|
install(FILES
|
2011-04-29 16:55:42 +02:00
|
|
|
data/services/plasma.protocol
|
2008-11-04 00:08:39 +01:00
|
|
|
DESTINATION ${SERVICES_INSTALL_DIR})
|
|
|
|
|
2009-09-03 22:40:22 +02:00
|
|
|
install(FILES data/operations/dataengineservice.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
|
|
|
|
install(FILES data/operations/plasmoidservice.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
|
2010-07-12 22:51:12 +02:00
|
|
|
install(FILES data/operations/storage.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
|
2009-09-02 11:45:52 +02:00
|
|
|
|