SVN_SILENT made messages (.desktop file)
[kdeartwork.git] / kscreensaver / kdesavers / CMakeLists.txt
blobc4bd5a5eda63578aa7ecdc2d52bbe81733639334
1 check_include_files(limits      HAVE_NUMERIC_LIMITS)
2 configure_file (config-kdesavers.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kdesavers.h )
4 find_package(Strigi REQUIRED)
5 macro_optional_find_package(Eigen2)
6 macro_log_feature(EIGEN2_FOUND "Eigen2" "A C++ template library for linear algebra" "kdesupport" FALSE "" "Needed to build the krotation and kpendulum screensavers" )
8 option(KSCREENSAVER_SOUND_SUPPORT "Build with sound support" OFF)
10 include_directories(${KDE4WORKSPACE_INCLUDE_DIR})
12 add_subdirectory( data )
13 macro_optional_add_subdirectory( asciiquarium )
15 ########### next target ###############
17 set(kbanner.kss_SRCS banner.cpp )
19 kde4_add_executable(kbanner.kss ${kbanner.kss_SRCS})
21 target_link_libraries(kbanner.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
23 install(TARGETS kbanner.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
26 ########### next target ###############
28 set(kpolygon.kss_SRCS polygon.cpp )
30 kde4_add_executable(kpolygon.kss ${kpolygon.kss_SRCS})
32 target_link_libraries(kpolygon.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
34 install(TARGETS kpolygon.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
37 ########### next target ###############
39 set(kslideshow.kss_SRCS slideshow.cpp )
41 kde4_add_ui_files(kslideshow.kss_SRCS slideshowcfg.ui )
43 kde4_add_executable(kslideshow.kss ${kslideshow.kss_SRCS})
45 target_link_libraries(kslideshow.kss  ${KDE4_KIO_LIBS}  m  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
47 install(TARGETS kslideshow.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
50 ########### next target ###############
52 set(klines.kss_SRCS lines.cpp )
54 kde4_add_executable(klines.kss ${klines.kss_SRCS})
56 target_link_libraries(klines.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
58 install(TARGETS klines.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
61 ########### next target ###############
63 set(klorenz.kss_SRCS lorenz.cpp )
65 kde4_add_executable(klorenz.kss ${klorenz.kss_SRCS})
67 target_link_libraries(klorenz.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} m  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
69 install(TARGETS klorenz.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
72 ########### next target ###############
74 set(kblob.kss_SRCS blob.cpp )
76 kde4_add_executable(kblob.kss ${kblob.kss_SRCS})
78 target_link_libraries(kblob.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} m  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
80 install(TARGETS kblob.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
83 ########### next target ###############
85 set(kvm.kss_SRCS kvm.cpp vm.c vm_random.c )
87 kde4_add_executable(kvm.kss ${kvm.kss_SRCS})
89 target_link_libraries(kvm.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
91 install(TARGETS kvm.kss  ${INSTALL_TARGETS_DEFAULT_ARGS} )
94 ########### next target ###############
96 set(kclock.kss_SRCS kclock.cpp )
98 kde4_add_executable(kclock.kss ${kclock.kss_SRCS})
100 target_link_libraries(kclock.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} m  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
102 install(TARGETS kclock.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
103 install(FILES KClock.desktop DESTINATION ${SERVICES_INSTALL_DIR}/ScreenSavers)
106 ########### next target ###############
108 #set($(X11_KSAVERS)_SRCS dummy.cpp )
109 set(kscience.kss_SRCS science.cpp )
111 kde4_add_executable(kscience.kss ${kscience.kss_SRCS})
113 target_link_libraries(kscience.kss  ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
115 install(TARGETS kscience.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
116 install(FILES KScience.desktop DESTINATION ${SERVICES_INSTALL_DIR}/ScreenSavers)
119 ########### next target ###############
121 message(STATUS "readd opengl+sound support screensaver")
122 if(OPENGL_FOUND AND OPENGL_GLU_FOUND AND KSCREENSAVER_SOUND_SUPPORT)
123 #set(kfiresaver.kss_SRCS firesaverparticle.cpp firesaverwriter.cpp firesaver.cpp )
124 #kde4_add_ui3_files(kfiresaver.kss_SRCS aversetup.ui)
125 ##kde4_add_executable(kfiresaver.kss ${kfiresaver.kss_SRCS})
126 #target_link_libraries(kfiresaver.kss  ${KDE4_KDEUI_LIBS} )
127 #install(TARGETS kfiresaver.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
128 #install( FILES KFiresaver.desktop DESTINATION  ${SERVICES_INSTALL_DIR}/ScreenSavers )
129 endif(OPENGL_FOUND AND OPENGL_GLU_FOUND AND KSCREENSAVER_SOUND_SUPPORT)
131 ########### next target ###############
132 if(OPENGL_FOUND AND OPENGL_GLU_FOUND AND QT_QTOPENGL_LIBRARY)
134   ## krotation, kpendulum need Eigen2
135   if (EIGEN2_FOUND)
136     include_directories(${EIGEN2_INCLUDE_DIR})
138     set(krotation.kss_SRCS rotation.cpp sspreviewarea.cpp)
139     kde4_add_ui_files(krotation.kss_SRCS rotationcfg.ui)
140     kde4_add_executable(krotation.kss ${krotation.kss_SRCS})
141     target_link_libraries(krotation.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
142     install(TARGETS krotation.kss ${INSTALL_TARGETS_DEFAULT_ARGS})
144     set(kpendulum.kss_SRCS pendulum.cpp sspreviewarea.cpp)
145     kde4_add_ui_files(kpendulum.kss_SRCS pendulumcfg.ui)
146     kde4_add_executable(kpendulum.kss ${kpendulum.kss_SRCS})
147     target_link_libraries(kpendulum.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
148     install(TARGETS kpendulum.kss ${INSTALL_TARGETS_DEFAULT_ARGS})
149   endif (EIGEN2_FOUND)
151   set(ksolarwinds.kss_SRCS SolarWinds.cpp )
152   kde4_add_executable(ksolarwinds.kss ${ksolarwinds.kss_SRCS})
153   target_link_libraries( ksolarwinds.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES}  ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY}  ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
154   install(TARGETS ksolarwinds.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
156   set(kflux.kss_SRCS Flux.cpp )
157   kde4_add_executable(kflux.kss ${kflux.kss_SRCS})
158   target_link_libraries( kflux.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
159   install(TARGETS kflux.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
161   set(keuphoria.kss_SRCS Euphoria.cpp )
162   kde4_add_executable(keuphoria.kss ${keuphoria.kss_SRCS})
163   target_link_libraries( keuphoria.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
164   install(TARGETS keuphoria.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
166   set(kfountain.kss_SRCS fountain.cpp )
167   kde4_add_ui_files(kfountain.kss_SRCS fountaincfg.ui)
168   kde4_add_executable(kfountain.kss ${kfountain.kss_SRCS})
169   target_link_libraries( kfountain.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
170   install(TARGETS kfountain.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
172   set(kwave.kss_SRCS wave.cpp )
173   kde4_add_ui_files(kwave.kss_SRCS wavecfg.ui)
174   kde4_add_executable(kwave.kss ${kwave.kss_SRCS})
175   target_link_libraries( kwave.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
176   install(TARGETS kwave.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
178   set(kgravity.kss_SRCS gravity.cpp )
179   kde4_add_ui_files(kgravity.kss_SRCS gravitycfg.ui)
180   kde4_add_executable(kgravity.kss ${kgravity.kss_SRCS})
181   target_link_libraries( kgravity.kss ${KDE4_KDEUI_LIBS} ${STRIGI_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${OPENGL_glu_LIBRARY} ${KDE4WORKSPACE_KSCREENSAVER_LIBRARY})
182   install(TARGETS kgravity.kss ${INSTALL_TARGETS_DEFAULT_ARGS} )
184   install( FILES KGravity.desktop KWave.desktop KFountain.desktop KFlux.desktop KEuphoria.desktop KSolarWinds.desktop KRotation.desktop KPendulum.desktop DESTINATION  ${SERVICES_INSTALL_DIR}/ScreenSavers )
186 endif(OPENGL_FOUND AND OPENGL_GLU_FOUND AND QT_QTOPENGL_LIBRARY)
188 ########### install files ###############
190 install( FILES kscience.png particle.png image.png  DESTINATION  ${DATA_INSTALL_DIR}/kscreensaver )
191 install( FILES KBanner.desktop KPolygon.desktop KSlideshow.desktop KLines-saver.desktop KLorenz.desktop KBlob.desktop KVm.desktop DESTINATION  ${SERVICES_INSTALL_DIR}/ScreenSavers )