diff options
Diffstat (limited to 'tdescreensaver/kdesavers/CMakeLists.txt')
-rw-r--r-- | tdescreensaver/kdesavers/CMakeLists.txt | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/tdescreensaver/kdesavers/CMakeLists.txt b/tdescreensaver/kdesavers/CMakeLists.txt new file mode 100644 index 00000000..f2e3f027 --- /dev/null +++ b/tdescreensaver/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 tdescreensaver-shared tdeui-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}/tdescreensaver ) + +# Actually the only screensaver tha uses this data is kfiresaver +add_subdirectory( data ) |