generic: build system cleanups

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2015-11-03 10:14:43 +02:00
parent 211d80fc88
commit 20ca58afa6
17 changed files with 735 additions and 482 deletions

View file

@ -4,7 +4,7 @@ if(KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
set(PLASMA_NO_KIO TRUE)
set(PLASMA_NO_KUTILS TRUE)
set(PLASMA_NO_GLOBAL_SHORTCUTS TRUE)
endif(KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
endif()
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
@ -19,26 +19,26 @@ include_directories(
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)
endif()
if(NOT PLASMA_NO_KDEWEBKIT)
include_directories(${CMAKE_SOURCE_DIR}/kdewebkit/)
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} kdewebkit)
endif(NOT PLASMA_NO_KDEWEBKIT)
endif()
if(NOT PLASMA_NO_SOLID)
include_directories(${CMAKE_BINARY_DIR}/solid/)
include_directories(${CMAKE_SOURCE_DIR}/solid/)
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${KDE4_SOLID_LIBS})
endif(NOT PLASMA_NO_SOLID)
endif()
if(NOT PLASMA_NO_KUTILS)
include_directories(${CMAKE_SOURCE_DIR}/kutils)
set(PLASMA_EXTRA_LIBS ${PLASMA_EXTRA_LIBS} ${KDE4_KCMUTILS_LIBRARY})
endif(NOT PLASMA_NO_KUTILS)
endif()
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/config-plasma.h.cmake
config-plasma.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/config-plasma.h
)
@ -170,55 +170,66 @@ set(plasma_LIB_SRCS
widgets/webview.cpp
)
kde4_add_kcfg_files(plasma_LIB_SRCS data/kconfigxt/libplasma-theme-global.kcfgc)
kde4_add_kcfg_files(plasma_LIB_SRCS
data/kconfigxt/libplasma-theme-global.kcfgc
)
if(PHONON_FOUND)
message(STATUS "Adding support for Phonon to libplasma")
include_directories(${KDE4_PHONON_INCLUDES})
set(plasma_LIB_SRCS
${plasma_LIB_SRCS}
widgets/videowidget.cpp)
endif(PHONON_FOUND)
widgets/videowidget.cpp
)
endif()
add_library(plasma ${LIBRARY_TYPE} ${plasma_LIB_SRCS})
target_link_libraries(plasma PRIVATE ${QT_QTUITOOLS_LIBRARY} ${QT_QTWEBKIT_LIBRARY}
${QT_QTSCRIPT_LIBRARY} ${QT_QTNETWORK_LIBRARY}
${QT_QTXML_LIBRARY} ${QT_QTSQL_LIBRARY}
${QT_QTDECLARATIVE_LIBRARY} ${KDE4_KDEUI_LIBS}
${KDE4_THREADWEAVER_LIBS} kdeclarative
${PLASMA_EXTRA_LIBS})
target_link_libraries(plasma
${QT_QTUITOOLS_LIBRARY}
${QT_QTWEBKIT_LIBRARY}
${QT_QTSCRIPT_LIBRARY}
${QT_QTNETWORK_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTSQL_LIBRARY}
${QT_QTDECLARATIVE_LIBRARY}
${KDE4_KDECORE_LIBS}
${KDE4_KDEUI_LIBS}
${KDE4_THREADWEAVER_LIBS}
${KDE4_KDECLARATIVE_LIBS}
${PLASMA_EXTRA_LIBS}
)
if(X11_FOUND)
target_link_libraries(plasma PRIVATE ${X11_LIBRARIES})
target_link_libraries(plasma ${X11_LIBRARIES})
endif(X11_FOUND)
if(PHONON_FOUND)
target_link_libraries(plasma PRIVATE ${KDE4_PHONON_LIBS})
target_link_libraries(plasma ${KDE4_PHONON_LIBS})
endif(PHONON_FOUND)
if(DL_LIBRARY)
target_link_libraries(plasma PRIVATE ${DL_LIBRARY})
target_link_libraries(plasma ${DL_LIBRARY})
endif(DL_LIBRARY)
target_link_libraries(plasma PUBLIC kdeui kdecore ${QT_QTGUI_LIBRARY})
set_target_properties(plasma PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION})
install(TARGETS plasma EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
set_target_properties(plasma PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(
TARGETS plasma
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
########### install files ###############
set(plasmagik_HEADERS
install(
FILES
packagemetadata.h
packagestructure.h
package.h
)
install(FILES ${plasmagik_HEADERS} DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/ COMPONENT Devel)
set(plasma_LIB_INCLUDES
abstractdialogmanager.h
abstractrunner.h
abstracttoolbox.h
@ -257,13 +268,13 @@ set(plasma_LIB_INCLUDES
tooltipmanager.h
version.h
view.h
wallpaper.h)
wallpaper.h
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma
COMPONENT Devel
)
install(FILES
${plasma_LIB_INCLUDES}
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma COMPONENT Devel)
install(FILES
install(
FILES
widgets/checkbox.h
widgets/combobox.h
widgets/declarativewidget.h
@ -291,28 +302,40 @@ install(FILES
widgets/treeview.h
widgets/textedit.h
widgets/webview.h
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/widgets COMPONENT Devel)
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/widgets
COMPONENT Devel
)
install(FILES
install(
FILES
scripting/appletscript.h
scripting/dataenginescript.h
scripting/runnerscript.h
scripting/wallpaperscript.h
scripting/scriptengine.h
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/scripting COMPONENT Devel)
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/scripting
COMPONENT Devel
)
if(PHONON_FOUND)
install (FILES
install(
FILES
widgets/videowidget.h
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/widgets COMPONENT Devel)
endif(PHONON_FOUND)
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/widgets
COMPONENT Devel
)
endif()
install(FILES
install(
FILES
animations/animation.h
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/animations COMPONENT Devel)
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/animations
COMPONENT Devel
)
install(FILES
install(
FILES
data/servicetypes/plasma-animator.desktop
data/servicetypes/plasma-applet.desktop
data/servicetypes/plasma-applet-popupapplet.desktop
@ -325,14 +348,21 @@ install(FILES
data/servicetypes/plasma-service.desktop
data/servicetypes/plasma-toolbox.desktop
data/servicetypes/plasma-wallpaper.desktop
DESTINATION ${SERVICETYPES_INSTALL_DIR})
DESTINATION ${SERVICETYPES_INSTALL_DIR}
)
install(FILES
install(
FILES
data/services/plasma-applet-extenderapplet.desktop
data/services/plasma.protocol
DESTINATION ${SERVICES_INSTALL_DIR})
DESTINATION ${SERVICES_INSTALL_DIR}
)
install(FILES data/operations/dataengineservice.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
install(FILES data/operations/plasmoidservice.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
install(FILES data/operations/storage.operations DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
install(
FILES
data/operations/dataengineservice.operations
data/operations/plasmoidservice.operations
data/operations/storage.operations
DESTINATION ${DATA_INSTALL_DIR}/plasma/services
)

View file

@ -1,13 +1,16 @@
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
MACRO(PLASMA_UNIT_TESTS)
FOREACH(_testname ${ARGN})
kde4_add_test(plasma-${_testname} ${_testname}.cpp)
target_link_libraries(plasma-${_testname} ${QT_QTTEST_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY}
${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} plasma)
target_link_libraries(plasma-${_testname}
${QT_QTTEST_LIBRARY}
${QT_QTDECLARATIVE_LIBRARY}
${KDE4_KIO_LIBS}
${KDE4_KDEUI_LIBS}
plasma
)
if(QT_QTOPENGL_FOUND)
target_link_libraries(plasma-${_testname} ${QT_QTOPENGL_LIBRARY})
endif(QT_QTOPENGL_FOUND)
endif()
ENDFOREACH(_testname)
ENDMACRO(PLASMA_UNIT_TESTS)
@ -19,8 +22,21 @@ PLASMA_UNIT_TESTS(
configloadertest
)
kde4_add_test(plasma-storagetest storagetest.cpp ../private/storage.cpp ../private/storagethread.cpp)
target_link_libraries(plasma-storagetest ${QT_QTTEST_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY} ${QT_QTSQL_LIBRARY} ${KDE4_KIO_LIBS} plasma)
set(storatetest_SRCS
storagetest.cpp
../private/storage.cpp
../private/storagethread.cpp
)
kde4_add_test(plasma-storagetest ${storatetest_SRCS})
target_link_libraries(plasma-storagetest
${QT_QTTEST_LIBRARY}
${QT_QTDECLARATIVE_LIBRARY}
${QT_QTSQL_LIBRARY}
${KDE4_KIO_LIBS}
plasma
)
if(QT_QTOPENGL_FOUND)
target_link_libraries(plasma-storagetest ${QT_QTOPENGL_LIBRARY})
endif(QT_QTOPENGL_FOUND)
endif()

View file

@ -1,13 +1,29 @@
include_directories( ${OPENSSL_INCLUDE_DIR} )
include_directories( ${KDE4_KPARTS_INCLUDES} )
include_directories( ${CMAKE_BINARY_DIR}/kio/kssl )
include_directories( ${CMAKE_SOURCE_DIR}/kio/kssl )
include_directories(
${OPENSSL_INCLUDE_DIR}
${KDE4_KPARTS_INCLUDES}
${CMAKE_BINARY_DIR}/kio/kssl
${CMAKE_SOURCE_DIR}/kio/kssl
)
set(kcm_crypto_PART_SRCS crypto.cpp certexport.cpp kdatetimedlg.cpp )
set(kcm_crypto_PART_SRCS
crypto.cpp
certexport.cpp
kdatetimedlg.cpp
)
kde4_add_plugin(kcm_crypto ${kcm_crypto_PART_SRCS})
target_link_libraries(kcm_crypto ${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} ${OPENSSL_LIBRARIES})
target_link_libraries(kcm_crypto
${KDE4_KIO_LIBS}
${KDE4_KDEUI_LIBS}
${OPENSSL_LIBRARIES}
)
install(TARGETS kcm_crypto DESTINATION ${PLUGIN_INSTALL_DIR} )
install( FILES crypto.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install(
TARGETS kcm_crypto
DESTINATION ${PLUGIN_INSTALL_DIR}
)
install(
FILES crypto.desktop
DESTINATION ${SERVICES_INSTALL_DIR}
)

View file

@ -1,17 +1,28 @@
project(kcert)
include_directories( ${OPENSSL_INCLUDE_DIR} )
include_directories( ${KDE4_KPARTS_INCLUDES} )
include_directories( ${CMAKE_BINARY_DIR}/kio/kssl )
include_directories( ${CMAKE_SOURCE_DIR}/kio/kssl )
include_directories( ${KDE4_KIO_INCLUDES} )
include_directories(
${OPENSSL_INCLUDE_DIR}
${KDE4_KPARTS_INCLUDES}
${CMAKE_BINARY_DIR}/kio/kssl
${CMAKE_SOURCE_DIR}/kio/kssl
${KDE4_KIO_INCLUDES}
)
set(kcertpart_PART_SRCS kcertpart.cc )
kde4_add_plugin(kcertpart ${kcertpart_PART_SRCS})
kde4_add_plugin(kcertpart kcertpart.cc)
target_link_libraries(kcertpart ${KDE4_KPARTS_LIBS})
install(TARGETS kcertpart DESTINATION ${PLUGIN_INSTALL_DIR} )
install( FILES kcertpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install( FILES kcertpart.rc DESTINATION ${DATA_INSTALL_DIR}/kcertpart )
install(
TARGETS kcertpart
DESTINATION ${PLUGIN_INSTALL_DIR}
)
install(
FILES kcertpart.desktop
DESTINATION ${SERVICES_INSTALL_DIR}
)
install(
FILES kcertpart.rc
DESTINATION ${DATA_INSTALL_DIR}/kcertpart
)

View file

@ -1,44 +1,69 @@
set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
add_subdirectory( ifaces )
include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} )
include_directories( ${QT_QTDBUS_INCLUDE_DIR} ${QT_QTGUI_INCLUDE_DIR})
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${QT_QTDBUS_INCLUDE_DIR}
${QT_QTGUI_INCLUDE_DIR}
)
configure_file(solid_export.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/solid_export.h)
configure_file(
solid_export.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/solid_export.h
)
include (CheckCXXSourceCompiles)
check_cxx_source_compiles(" #ifdef __SUNPRO_CC
check_cxx_source_compiles("
#ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"pxor %mm0, %mm0\") ; }" HAVE_X86_MMX)
check_cxx_source_compiles(" #ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"xorps %xmm0, %xmm0\"); }" HAVE_X86_SSE)
check_cxx_source_compiles(" #ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"xorpd %xmm0, %xmm0\"); }" HAVE_X86_SSE2)
check_cxx_source_compiles(" #ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"femms\"); }" HAVE_X86_3DNOW)
check_cxx_source_compiles(" #ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"mtspr 256, %0; vand %%v0, %%v0, %%v0\" : : \"r\"(-1) ); }" HAVE_PPC_ALTIVEC)
int main() { __asm__(\"pxor %mm0, %mm0\") ; }"
HAVE_X86_MMX
)
configure_file(config-processor.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-processor.h )
check_cxx_source_compiles("
#ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"xorps %xmm0, %xmm0\"); }"
HAVE_X86_SSE
)
check_cxx_source_compiles("
#ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"xorpd %xmm0, %xmm0\"); }"
HAVE_X86_SSE2
)
check_cxx_source_compiles("
#ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"femms\"); }"
HAVE_X86_3DNOW
)
check_cxx_source_compiles("
#ifdef __SUNPRO_CC
#define __asm__ asm
#endif
int main() { __asm__(\"mtspr 256, %0; vand %%v0, %%v0, %%v0\" : : \"r\"(-1) ); }"
HAVE_PPC_ALTIVEC
)
configure_file(
config-processor.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/config-processor.h
)
########### next target ###############
file(MAKE_DIRECTORY
${CMAKE_CURRENT_BINARY_DIR}/backends/fakehw
${CMAKE_CURRENT_BINARY_DIR}/backends/udev
)
make_directory(${CMAKE_CURRENT_BINARY_DIR}/backends/fakehw)
make_directory(${CMAKE_CURRENT_BINARY_DIR}/backends/udev)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${KDE4_C_FLAGS}") # enable -fvisibility=hidden for C sources
# enable -fvisibility=hidden for C sources
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${KDE4_C_FLAGS}")
set(solid_LIB_SRCS
networking.cpp
@ -186,7 +211,10 @@ else()
set(WITH_SOLID_UDISKS2 OFF)
endif()
configure_file( config-solid.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-solid.h )
configure_file(
config-solid.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/config-solid.h
)
if(UDEV_FOUND)
message(STATUS "Building Solid UDev backend." )
@ -214,21 +242,23 @@ if ( UDEV_FOUND )
set(UDEV_DETAILED_OUTPUT OFF CACHE BOOL "provide extended output regarding udev events")
if(UDEV_DETAILED_OUTPUT)
add_definitions(-DUDEV_DETAILED_OUTPUT)
endif(UDEV_DETAILED_OUTPUT)
endif()
# check for media-player-info (runtime-only optional dependency)
set(XDG_DATA_DIRS_ENV $ENV{XDG_DATA_DIRS}) # if(ENV{..}) does not work for me
if(XDG_DATA_DIRS_ENV)
find_path(MEDIAPLAYERINFO_PATH sony_psp.mpi
PATHS ENV XDG_DATA_DIRS
PATH_SUFFIXES "media-player-info" NO_DEFAULT_PATH
PATH_SUFFIXES "media-player-info"
NO_DEFAULT_PATH
)
else(XDG_DATA_DIRS_ENV)
set(XDG_DATA_DIRS "/usr/share")
message(STATUS "Warning: environment variable XDG_DATA_DIRS not set, falling back to ${XDG_DATA_DIRS}")
find_path(MEDIAPLAYERINFO_PATH sony_psp.mpi
PATHS "${XDG_DATA_DIRS}"
PATH_SUFFIXES "media-player-info" NO_DEFAULT_PATH
PATH_SUFFIXES "media-player-info"
NO_DEFAULT_PATH
)
endif(XDG_DATA_DIRS_ENV)
@ -254,7 +284,8 @@ set(solid_LIB_SRCS ${solid_LIB_SRCS}
if(WITH_SOLID_UDISKS2)
message(STATUS "Building Solid UDisks2 backend." )
add_definitions(-DWITH_SOLID_UDISKS2)
set(solid_LIB_SRCS ${solid_LIB_SRCS}
set(solid_LIB_SRCS
${solid_LIB_SRCS}
backends/udisks2/udisksmanager.cpp
backends/udisks2/udisksdevice.cpp
backends/udisks2/udisksdevicebackend.cpp
@ -270,7 +301,8 @@ if ( WITH_SOLID_UDISKS2 )
)
else(WITH_SOLID_UDISKS2)
message(STATUS "Building Solid UDisks backend." )
set(solid_LIB_SRCS ${solid_LIB_SRCS}
set(solid_LIB_SRCS
${solid_LIB_SRCS}
backends/udisks/udisksmanager.cpp
backends/udisks/udisksdevice.cpp
backends/udisks/udisksblock.cpp
@ -285,7 +317,8 @@ else ( WITH_SOLID_UDISKS2 )
endif(WITH_SOLID_UDISKS2)
message(STATUS "Building Solid fstab backend." )
set(solid_LIB_SRCS ${solid_LIB_SRCS}
set(solid_LIB_SRCS
${solid_LIB_SRCS}
backends/fstab/fstabmanager.cpp
backends/fstab/fstabdevice.cpp
backends/fstab/fstabnetworkshare.cpp
@ -294,17 +327,22 @@ set(solid_LIB_SRCS ${solid_LIB_SRCS}
backends/fstab/fstabwatcher.cpp
)
set_source_files_properties( org.freedesktop.PowerManagement.xml
set_source_files_properties(
org.freedesktop.PowerManagement.xml
org.freedesktop.PowerManagement.Inhibit.xml
org.kde.Solid.PowerManagement.PolicyAgent.xml
PROPERTIES NO_NAMESPACE TRUE)
qt4_add_dbus_interfaces(solid_LIB_SRCS org.freedesktop.PowerManagement.xml
qt4_add_dbus_interfaces(solid_LIB_SRCS
org.freedesktop.PowerManagement.xml
org.freedesktop.PowerManagement.Inhibit.xml
org.kde.Solid.PowerManagement.PolicyAgent.xml)
org.kde.Solid.PowerManagement.PolicyAgent.xml
)
qt4_add_dbus_interface(solid_LIB_SRCS org.kde.Solid.Networking.Client.xml
org_kde_solid_networking_client)
qt4_add_dbus_interface(solid_LIB_SRCS
org.kde.Solid.Networking.Client.xml
org_kde_solid_networking_client
)
set(solid_OPTIONAL_LIBS)
@ -312,43 +350,90 @@ add_library(solid ${LIBRARY_TYPE} ${solid_LIB_SRCS})
if(HUPNP_FOUND)
set(solid_OPTIONAL_LIBS ${solid_OPTIONAL_LIBS} ${HUPNP_LIBS})
endif( HUPNP_FOUND )
endif()
if(UDEV_FOUND)
set(solid_OPTIONAL_LIBS ${solid_OPTIONAL_LIBS} ${UDEV_LIBS})
endif ( UDEV_FOUND )
endif()
target_link_libraries(solid PRIVATE ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTGUI_LIBRARY} ${solid_OPTIONAL_LIBS} )
target_link_libraries(solid PUBLIC ${QT_CORE_LIBRARY} )
target_link_libraries(solid
${QT_QTCORE_LIBRARY}
${QT_QTDBUS_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTGUI_LIBRARY}
${QT_CORE_LIBRARY}
${solid_OPTIONAL_LIBS}
)
set_target_properties(solid PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(TARGETS solid EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
install(
TARGETS solid
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
install(FILES org.kde.Solid.Networking.Client.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR})
install(FILES org.kde.Solid.PowerManagement.PolicyAgent.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR})
install(FILES org.freedesktop.PowerManagement.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR})
install(FILES org.freedesktop.PowerManagement.Inhibit.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR})
install(
FILES
org.kde.Solid.Networking.Client.xml
org.kde.Solid.PowerManagement.PolicyAgent.xml
org.freedesktop.PowerManagement.xml
org.freedesktop.PowerManagement.Inhibit.xml
DESTINATION ${DBUS_INTERFACES_INSTALL_DIR}
)
########### static lib for tests ###############
if(ENABLE_TESTING)
add_library(solid_static STATIC ${solid_LIB_SRCS})
target_link_libraries(solid_static ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTGUI_LIBRARY} ${solid_OPTIONAL_LIBS})
target_link_libraries(solid_static
${QT_QTCORE_LIBRARY}
${QT_QTDBUS_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTGUI_LIBRARY}
${solid_OPTIONAL_LIBS}
)
endif()
########### install files ###############
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/solid_export.h solidnamespace.h device.h
devicenotifier.h deviceinterface.h genericinterface.h processor.h block.h
storageaccess.h storagedrive.h opticaldrive.h storagevolume.h opticaldisc.h
camera.h portablemediaplayer.h networkinterface.h acadapter.h battery.h
button.h audiointerface.h dvbinterface.h predicate.h powermanagement.h
networking.h video.h serialinterface.h smartcardreader.h internetgateway.h
networkshare.h DESTINATION ${INCLUDE_INSTALL_DIR}/solid COMPONENT Devel)
install(
FILES
${CMAKE_CURRENT_BINARY_DIR}/solid_export.h
solidnamespace.h
device.h
devicenotifier.h
deviceinterface.h
genericinterface.h
processor.h
block.h
storageaccess.h
storagedrive.h
opticaldrive.h
storagevolume.h
opticaldisc.h
camera.h
portablemediaplayer.h
networkinterface.h
acadapter.h
battery.h
button.h
audiointerface.h
dvbinterface.h
predicate.h
powermanagement.h
networking.h
video.h
serialinterface.h
smartcardreader.h
internetgateway.h
networkshare.h
DESTINATION ${INCLUDE_INSTALL_DIR}/solid
COMPONENT Devel
)
########### parser build ###############
@ -356,31 +441,33 @@ set(lexer_FILE predicate_lexer)
set(parser_FILE predicate_parser)
find_package(FLEX)
set_package_properties(FLEX PROPERTIES DESCRIPTION "Allows the Solid predicate parser to be updated"
set_package_properties(FLEX PROPERTIES
DESCRIPTION "Allows the Solid predicate parser to be updated"
URL "http://flex.sourceforge.net"
TYPE OPTIONAL
PURPOSE "Required by the UpdateSolidPredicateParser target (mainly useful for developers)"
TYPE OPTIONAL
)
find_package(BISON)
set_package_properties(BISON PROPERTIES DESCRIPTION "Allows the Solid predicate parser to be updated"
set_package_properties(BISON PROPERTIES
DESCRIPTION "Allows the Solid predicate parser to be updated"
URL "http://www.gnu.org/software/bison"
TYPE OPTIONAL
PURPOSE "Required by the UpdateSolidPredicateParser target (mainly useful for developers)"
TYPE OPTIONAL
)
if(FLEX_FOUND AND BISON_FOUND)
add_custom_target(UpdateSolidPredicateParser
COMMAND ${FLEX_EXECUTABLE} -P Solid -o${lexer_FILE}.c ${lexer_FILE}.l
COMMAND ${BISON_EXECUTABLE} -p Solid -d -b ${parser_FILE} ${parser_FILE}.y
COMMAND ${CMAKE_COMMAND} -E copy ${parser_FILE}.tab.c ${CMAKE_CURRENT_SOURCE_DIR}/${parser_FILE}.c
COMMAND ${CMAKE_COMMAND} -E copy ${parser_FILE}.tab.h ${CMAKE_CURRENT_SOURCE_DIR}/${parser_FILE}.h
COMMAND ${CMAKE_COMMAND} -E remove ${parser_FILE}.tab.c ${parser_FILE}.tab.h
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
else()
add_custom_target(UpdateSolidPredicateParser
COMMAND echo "flex and/or bison not found, so target UpdateSolidPredicateParser inactive")
COMMAND echo "flex and/or bison not found, so target UpdateSolidPredicateParser inactive"
)
endif()

View file

@ -1,25 +1,40 @@
include_directories(
${CMAKE_SOURCE_DIR}
${CMAKE_BINARY_DIR}
${KDE4_KDECORE_INCLUDES}
${KDE4_KDEUI_INCLUDES}
${KDE4_KIO_INCLUDES}
${CMAKE_CURRENT_SOURCE_DIR}/../solid/backends/fakehw
)
########### fakehardwaretest ###############
set(fakehardwaretest_SRCS fakehardwaretest.cpp )
kde4_add_test(solid-fakehardwaretest fakehardwaretest.cpp)
target_link_libraries(solid-fakehardwaretest
solid_static
${QT_QTCORE_LIBRARY}
${QT_QTDBUS_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTTEST_LIBRARY}
)
kde4_add_test(solid-fakehardwaretest ${fakehardwaretest_SRCS})
target_link_libraries(solid-fakehardwaretest solid_static ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTTEST_LIBRARY} )
add_definitions(-DTEST_DATA="\\"${CMAKE_CURRENT_SOURCE_DIR}/../solid/backends/fakehw/fakecomputer.xml\\"")
########### solidhwtest ###############
set(solidhwtest_SRCS
solidhwtest.cpp )
kde4_add_test(solid-solidhwtest solidhwtest.cpp)
kde4_add_test(solid-solidhwtest ${solidhwtest_SRCS})
add_definitions(-DFAKE_COMPUTER_XML="\\"${CMAKE_CURRENT_SOURCE_DIR}/../solid/backends/fakehw/fakecomputer.xml\\"")
include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/../solid/backends/fakehw )
target_link_libraries(solid-solidhwtest ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTTEST_LIBRARY} ${LIBS} solid_static)
target_link_libraries(solid-solidhwtest
${QT_QTCORE_LIBRARY}
${QT_QTDBUS_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTTEST_LIBRARY}
solid_static
)
########### solidnettestdbusservice ###############
@ -32,19 +47,20 @@ target_link_libraries(solid-solidhwtest ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY
#kde4_add_manual_test(solidnettestdbusservice ${solidnettestdbusservice_SRCS})
#target_link_libraries(solidnettestdbusservice ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTTEST_LIBRARY})
#target_link_libraries(solidnettestdbusservice
# ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTTEST_LIBRARY})
########### networkingclient ###############
include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}
${KDE4_KDECORE_INCLUDES} ${KDE4_KDEUI_INCLUDES} ${KDE4_KIO_INCLUDES})
set(networkingclient_SRCS
networkingclient.cpp
)
set(networkingclient_SRCS networkingclient.cpp networkingclientview.ui)
qt4_add_dbus_interface(networkingclient_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/../solid/org.kde.Solid.Networking.Client.xml clientinterface)
qt4_add_dbus_interface(networkingclient_SRCS
../solid/org.kde.Solid.Networking.Client.xml
clientinterface
)
kde4_add_manual_test(solid-networkingclient ${networkingclient_SRCS})
target_link_libraries(solid-networkingclient solid_static ${KDE4_KDEUI_LIBS})
########### install files ###############

View file

@ -1,4 +1,3 @@
project(sonnet)
add_subdirectory(plugins)

View file

@ -1,6 +1,6 @@
include_directories(
${CMAKE_SOURCE_DIR}/kdecore/sonnet ${KDE4_KDECORE_INCLUDES}
${CMAKE_SOURCE_DIR}/kdecore/sonnet
${KDE4_KDECORE_INCLUDES}
)
# you can find macro_optional_find_package() in kdelibs/cmake/modules/OptionalFindPackage.cmake
@ -9,13 +9,13 @@ include_directories(
macro_optional_find_package(HSPELL)
set_package_properties(HSPELL PROPERTIES
URL "http://ivrix.org.il/projects/spell-checker/"
TYPE OPTIONAL
PURPOSE "Spell checking support for Hebrew"
TYPE OPTIONAL
)
if(HSPELL_FOUND)
add_subdirectory(hspell)
endif (HSPELL_FOUND)
endif()
macro_optional_find_package(ENCHANT)
set_package_properties(ENCHANT PROPERTIES
@ -40,5 +40,5 @@ endif()
if(HUNSPELL_FOUND)
add_subdirectory(hunspell)
endif (HUNSPELL_FOUND)
endif()

View file

@ -1,20 +1,30 @@
include_directories( ${ENCHANT_INCLUDE_DIR} "${ENCHANT_INCLUDE_DIR}/.." )
include_directories(
${ENCHANT_INCLUDE_DIR}
"${ENCHANT_INCLUDE_DIR}/.."
)
########### next target ###############
set(kspell_enchant_PART_SRCS enchantdict.cpp enchantclient.cpp )
set(kspell_enchant_PART_SRCS
enchantdict.cpp
enchantclient.cpp
)
kde4_add_plugin(kspell_enchant ${kspell_enchant_PART_SRCS})
target_link_libraries(kspell_enchant ${KDE4_KDECORE_LIBS} ${ENCHANT_LIBRARIES} )
install(TARGETS kspell_enchant DESTINATION ${PLUGIN_INSTALL_DIR} )
target_link_libraries(kspell_enchant
${KDE4_KDECORE_LIBS}
${ENCHANT_LIBRARIES}
)
install(
TARGETS kspell_enchant
DESTINATION ${PLUGIN_INSTALL_DIR}
)
########### install files ###############
install( FILES kspell_enchant.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install(
FILES kspell_enchant.desktop
DESTINATION ${SERVICES_INSTALL_DIR}
)

View file

@ -1,23 +1,30 @@
include_directories( ${HSPELL_INCLUDE_DIR} )
include_directories(
${HSPELL_INCLUDE_DIR}
)
########### next target ###############
set(kspell_hspell_PART_SRCS kspell_hspellclient.cpp kspell_hspelldict.cpp )
set(kspell_hspell_PART_SRCS
kspell_hspellclient.cpp
kspell_hspelldict.cpp
)
kde4_add_plugin(kspell_hspell ${kspell_hspell_PART_SRCS})
target_link_libraries(kspell_hspell ${KDE4_KDECORE_LIBS} ${HSPELL_LIBRARIES} ${ZLIB_LIBRARY} )
install(TARGETS kspell_hspell DESTINATION ${PLUGIN_INSTALL_DIR} )
target_link_libraries(kspell_hspell
${KDE4_KDECORE_LIBS}
${HSPELL_LIBRARIES}
${ZLIB_LIBRARY}
)
install(
TARGETS kspell_hspell
DESTINATION ${PLUGIN_INSTALL_DIR}
)
########### install files ###############
install( FILES kspell_hspell.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install(
FILES kspell_hspell.desktop
DESTINATION ${SERVICES_INSTALL_DIR}
)

View file

@ -1,22 +1,25 @@
########### next target ###############
include_directories(${HUNSPELL_INCLUDE_DIR})
MESSAGE(status "dd ${HUNSPELL_INCLUDE_DIR}")
set(kspell_hunspell_PART_SRCS kspell_hunspellclient.cpp kspell_hunspelldict.cpp )
set(kspell_hunspell_PART_SRCS
kspell_hunspellclient.cpp
kspell_hunspelldict.cpp
)
kde4_add_plugin(kspell_hunspell ${kspell_hunspell_PART_SRCS})
target_link_libraries(kspell_hunspell ${KDE4_KDECORE_LIBS} ${HUNSPELL_LIBRARIES} )
install(TARGETS kspell_hunspell DESTINATION ${PLUGIN_INSTALL_DIR} )
target_link_libraries(kspell_hunspell
${KDE4_KDECORE_LIBS}
${HUNSPELL_LIBRARIES}
)
install(
TARGETS kspell_hunspell
DESTINATION ${PLUGIN_INSTALL_DIR}
)
########### install files ###############
install( FILES kspell_hunspell.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
install(
FILES kspell_hunspell.desktop
DESTINATION ${SERVICES_INSTALL_DIR}
)

View file

@ -1,19 +1,13 @@
PROJECT( parseucd )
project(parseucd)
SET( SOURCE_FILES
./parseucd/parseucd.cpp
)
FIND_PACKAGE( Qt4 REQUIRED )
INCLUDE( ${QT_USE_FILE} )
INCLUDE_DIRECTORIES( ${CMAKE_BINARY_DIR}
include_directories(
${CMAKE_BINARY_DIR}
${X11_INCLUDE_DIR}
)
ADD_EXECUTABLE( parseucd ${SOURCE_FILES} )
add_executable(parseucd parseucd/parseucd.cpp)
TARGET_LINK_LIBRARIES( parseucd
target_link_libraries(parseucd
${QT_LIBRARIES}
${X11_LIBRARIES}
)

View file

@ -10,4 +10,9 @@ add_subdirectory(Weaver)
# add_subdirectory(Experimental)
# add_subdirectory(Examples)
install(FILES threadweaver_export.h DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver COMPONENT Devel)
install(
FILES
threadweaver_export.h
DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver
COMPONENT Devel
)

View file

@ -1,17 +1,31 @@
include_directories(${QT_INCLUDE_DIR} ${QT_QTCORE_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/Weaver )
include_directories(
${QT_INCLUDE_DIR}
${QT_QTCORE_INCLUDE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/Weaver
../Weaver
)
add_library(ThreadWeaverExperimental ${LIBRARY_TYPE} FileLoaderJob.cpp)
set(ThreadWeaverExperimental_LIB_SRCS FileLoaderJob.cpp )
include_directories( ../Weaver )
add_library(ThreadWeaverExperimental ${LIBRARY_TYPE} ${ThreadWeaverExperimental_LIB_SRCS})
target_link_libraries(ThreadWeaverExperimental threadweaver)
set_target_properties(ThreadWeaverExperimental PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION})
install(TARGETS ThreadWeaverExperimental EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
set_target_properties(ThreadWeaverExperimental PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(FILES FileLoaderJob.h
DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver/ COMPONENT Devel )
install(
TARGETS ThreadWeaverExperimental
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
install(
FILES
FileLoaderJob.h
DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver
COMPONENT Devel
)

View file

@ -1,33 +1,52 @@
include_directories(${QT_INCLUDE_DIR} ${QT_QTCORE_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
include_directories( ../Weaver/ )
set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
include_directories(
${QT_INCLUDE_DIR}
${QT_QTCORE_INCLUDE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
../Weaver
)
########### next target ###############
set(JobTests_SRCS JobTests.cpp AppendCharacterJob.cpp AppendCharacterAndVerifyJob.cpp)
set(JobTests_SRCS
JobTests.cpp
AppendCharacterJob.cpp
AppendCharacterAndVerifyJob.cpp
)
kde4_add_test(ThreadWeaverJobTests ${JobTests_SRCS})
target_link_libraries(ThreadWeaverJobTests ${QT_QTTEST_LIBRARY} threadweaver)
target_link_libraries(ThreadWeaverJobTests
${QT_QTTEST_LIBRARY}
threadweaver
)
########### next target ###############
set(QueueTests_SRCS QueueTests.cpp AppendCharacterJob.cpp)
set(QueueTests_SRCS
QueueTests.cpp
AppendCharacterJob.cpp
)
kde4_add_test(ThreadWeaverQueueTests ${QueueTests_SRCS})
target_link_libraries(ThreadWeaverQueueTests ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} threadweaver)
target_link_libraries(ThreadWeaverQueueTests
${QT_QTTEST_LIBRARY}
${QT_QTCORE_LIBRARY}
threadweaver
)
########### next target ###############
set(DeleteTest_SRCS DeleteTest.cpp AppendCharacterJob.cpp)
set(DeleteTest_SRCS
DeleteTest.cpp
AppendCharacterJob.cpp
)
kde4_add_test(ThreadWeaverDeleteTest ${DeleteTest_SRCS})
target_link_libraries(ThreadWeaverDeleteTest ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} threadweaver)
target_link_libraries(ThreadWeaverDeleteTest
${QT_QTTEST_LIBRARY}
${QT_QTCORE_LIBRARY}
threadweaver
)

View file

@ -1,4 +1,9 @@
include_directories(${QT_INCLUDE_DIR} ${QT_QTCORE_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
include_directories(
${QT_INCLUDE_DIR}
${QT_QTCORE_INCLUDE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
)
########### next target ###############
@ -24,18 +29,22 @@ set(ThreadWeaver_LIB_SRCS
ResourceRestrictionPolicy.cpp
)
add_library(threadweaver ${LIBRARY_TYPE} ${ThreadWeaver_LIB_SRCS})
target_link_libraries(threadweaver PRIVATE ${QT_QTCORE_LIBRARY})
target_link_libraries(threadweaver PUBLIC ${QT_QTCORE_LIBRARY} )
target_link_libraries(threadweaver ${QT_QTCORE_LIBRARY})
set_target_properties(threadweaver PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(TARGETS threadweaver EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
install(
TARGETS threadweaver
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
install(FILES
install(
FILES
WeaverInterface.h
ThreadWeaver.h
DebuggingAids.h

View file

@ -1,17 +1,34 @@
include_directories(${QT_INCLUDE_DIR} ${QT_QTCORE_INCLUDE_DIR} ${QT_QTGUI_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/Weaver/)
set(ThreadWeaverGui_LIB_SRCS WeaverThreadGrid.cpp )
include_directories( ../Weaver )
add_library(ThreadWeaverGui ${LIBRARY_TYPE} ${ThreadWeaverGui_LIB_SRCS})
target_link_libraries(ThreadWeaverGui threadweaver ${QT_QTGUI_LIBRARY})
set_target_properties(ThreadWeaverGui PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION})
install(TARGETS ThreadWeaverGui EXPORT kdelibsLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES WeaverThreadGrid.h
DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver/ COMPONENT Devel
include_directories(
${QT_INCLUDE_DIR}
${QT_QTCORE_INCLUDE_DIR}
${QT_QTGUI_INCLUDE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/Weaver
../Weaver
)
add_library(ThreadWeaverGui ${LIBRARY_TYPE} WeaverThreadGrid.cpp)
target_link_libraries(ThreadWeaverGui
threadweaver
${QT_QTGUI_LIBRARY}
)
set_target_properties(ThreadWeaverGui PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(
TARGETS ThreadWeaverGui
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
install(
FILES
WeaverThreadGrid.h
DESTINATION ${INCLUDE_INSTALL_DIR}/threadweaver
COMPONENT Devel
)