summaryrefslogtreecommitdiffstats
path: root/kscreensaver/kdesavers
diff options
context:
space:
mode:
Diffstat (limited to 'kscreensaver/kdesavers')
-rw-r--r--kscreensaver/kdesavers/CMakeLists.txt145
-rw-r--r--kscreensaver/kdesavers/data/CMakeLists.txt17
2 files changed, 162 insertions, 0 deletions
diff --git a/kscreensaver/kdesavers/CMakeLists.txt b/kscreensaver/kdesavers/CMakeLists.txt
new file mode 100644
index 00000000..3a74df96
--- /dev/null
+++ b/kscreensaver/kdesavers/CMakeLists.txt
@@ -0,0 +1,145 @@
+#################################################
+#
+# (C) 2011 Golubev Alexander
+# fatzer2 (AT) gmail.com
+#
+# Improvements and feedback are welcome
+#
+# This file is released under GPL >= 2
+#
+#################################################
+
+include_directories(
+ ${CMAKE_CURRENT_BINARY_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_BINARY_DIR}
+ ${TDE_INCLUDE_DIR}
+ ${TQT_INCLUDE_DIRS}
+)
+
+link_directories(
+ ${TQT_LIBRARY_DIRS}
+ ${TDE_LIB_DIR}
+)
+
+# ##### The "normal" screensavers ###############
+
+set( kbanner_SOURCES banner.cpp )
+set( kbanner_DESKTOP KBanner.desktop )
+set( kpolygon_SOURCES polygon.cpp )
+set( kpolygon_DESKTOP KPolygon.desktop )
+set( klines_SOURCES lines.cpp )
+set( klines_DESKTOP KLines-saver.desktop )
+set( klorenz_SOURCES lorenz.cpp )
+set( klorenz_DESKTOP KLorenz.desktop )
+set( kslideshow_SOURCES slideshow.cpp slideshowcfg.ui )
+set( kslideshow_DESKTOP KSlideshow.desktop )
+set( kblob_SOURCES blob.cpp )
+set( kblob_DESKTOP KBlob.desktop )
+set( kvm_SOURCES kvm.cpp vm.c vm_random.c )
+set( kvm_DESKTOP KVm.desktop )
+
+set( kslideshow_LINK kio-shared )
+
+set( NORMAL_SCREENSAVERS
+ kbanner kpolygon kslideshow klines klorenz kblob kvm )
+
+##### X11 screensavers ##########################
+
+set( kscience_SOURCES science.cpp )
+set( kscience_DESKTOP KScience.desktop )
+
+set( X11_SCREENSAVERS kscience)
+
+##### The GL screensavers #######################
+
+set( kfountain_SOURCES fountain.cpp fountaincfg.ui )
+set( kfountain_DESKTOP KFountain.desktop )
+set( kwave_SOURCES wave.cpp wavecfg.ui )
+set( kwave_DESKTOP KWave.desktop )
+set( kgravity_SOURCES gravity.cpp gravitycfg.ui )
+set( kgravity_DESKTOP KGravity.desktop )
+set( kflux_SOURCES Flux.cpp )
+set( kflux_DESKTOP KFlux.desktop )
+set( keuphoria_SOURCES Euphoria.cpp )
+set( keuphoria_DESKTOP KEuphoria.desktop )
+set( ksolarwinds_SOURCES SolarWinds.cpp )
+set( ksolarwinds_DESKTOP KSolarWinds.desktop )
+set( krotation_SOURCES rotation.cpp rotationcfg.ui sspreviewarea.cpp
+ rkodesolver.cpp vec3.cpp )
+set( krotation_DESKTOP KRotation.desktop )
+set( kpendulum_SOURCES pendulum.cpp pendulumcfg.ui sspreviewarea.cpp
+ rkodesolver.cpp )
+set( kpendulum_DESKTOP KPendulum.desktop )
+set( OPENGL_SCREENSAVERS kfountain kwave kgravity kflux keuphoria ksolarwinds
+ krotation kpendulum )
+
+##### The GL-Arts screensavers ##################
+
+set( kfiresaver_SOURCES firesaversetup.ui firesaverparticle.cpp
+ firesaverwriter.cpp firesaver.cpp )
+set( kfiresaver_DESKTOP KFiresaver.desktop )
+set( kfiresaver_LINK artskde-shared )
+set( GL_ARTS_SCREENSAVERS kfiresaver )
+
+##### The LIBART screensavers ###################
+
+set( kclock_SOURCES kclock.cpp )
+set( kclock_DESKTOP KClock.desktop )
+
+set( LIBART_SCREENSAVERS kclock )
+
+##### LIBART conditions #########################
+
+if( WITH_LIBART )
+ list( APPEND SCREENSAVERS ${LIBART_SCREENSAVERS} )
+
+ include_directories( ${LIBART_INCLUDE_DIRS} )
+ link_directories( ${LIBART_LIBRARY_DIRS} )
+ foreach( saver ${LIBART_SCREENSAVERS} )
+ list ( APPEND ${saver}_LINK ${LIBART_LIBRARIES} )
+ endforeach( saver ${LIBART_SCREENSAVERS} )
+endif( WITH_LIBART )
+
+##### GL conditions #############################
+
+if( WITH_OPENGL )
+ if( WITH_ARTS )
+ list( APPEND OPENGL_SCREENSAVERS ${GL_ARTS_SCREENSAVERS} )
+ endif( WITH_ARTS )
+
+ list( APPEND SCREENSAVERS ${OPENGL_SCREENSAVERS} )
+
+ include_directories( ${OPENGL_INCLUDE_DIRS} )
+ link_directories( ${OPENGL_LIBRARY_DIRS} )
+ foreach( saver ${OPENGL_SCREENSAVERS} )
+ list ( APPEND ${saver}_LINK ${OPENGL_LIBRARIES} )
+ endforeach( saver ${OPENGL_SCREENSAVERS} )
+
+endif( WITH_OPENGL )
+
+##### add normal screensavers ###################
+
+# FIXME: check for X includes/libraries
+# this screensavers will work only in X
+list( APPEND SCREENSAVERS ${X11_SCREENSAVERS} )
+list( APPEND SCREENSAVERS ${NORMAL_SCREENSAVERS} )
+
+##### create install/compile rules ##############
+foreach( saver ${SCREENSAVERS} )
+ tde_add_executable( ${saver}.kss AUTOMOC
+ SOURCES ${${saver}_SOURCES}
+ LINK kscreensaver-shared kdeui-shared ${${saver}_LINK}
+ DESTINATION ${BIN_INSTALL_DIR}
+ )
+ install( FILES ${${saver}_DESKTOP}
+ DESTINATION ${APPS_INSTALL_DIR}/System/ScreenSavers )
+endforeach( saver ${SCREENSAVERS} )
+
+##### install various data ######################
+
+install( FILES image.png kscience.png particle.png
+ DESTINATION ${DATA_INSTALL_DIR}/kscreensaver )
+
+# Actually the only screensaver tha uses this data is kfiresaver
+add_subdirectory( data )
diff --git a/kscreensaver/kdesavers/data/CMakeLists.txt b/kscreensaver/kdesavers/data/CMakeLists.txt
new file mode 100644
index 00000000..c9718d9a
--- /dev/null
+++ b/kscreensaver/kdesavers/data/CMakeLists.txt
@@ -0,0 +1,17 @@
+#################################################
+#
+# (C) 2011 Golubev Alexander
+# fatzer2 (AT) gmail.com
+#
+# Improvements and feedback are welcome
+#
+# This file is released under GPL >= 2
+#
+#################################################
+
+install( FILES
+ kfs_particle.png kfs_particle_flare.png
+ kfs_particle_diastar.png kfs_kde.png
+ kfs_tux.png kfs_letters1.png kfs_letters2.png
+ kfs_letters.desc kfs_explode.ogg kfs_debris.ogg
+ DESTINATION ${DATA_INSTALL_DIR}/kfiresaver )