diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..9331b43 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,88 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +cmake_minimum_required( VERSION 2.8 ) + + +#### general package setup + +project( kaffeine ) +set( VERSION R14.1.0 ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckFunctionExists ) +include( CheckSymbolExists ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) + + +#### include our cmake modules + +set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) +include( TDEMacros ) + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + + +##### optional stuff + +option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) +option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} ) + +option( WITH_DPMS "Enable support for dpms" ${WITH_ALL_OPTIONS} ) +option( WITH_XTEST "Enable support for XTest" ${WITH_ALL_OPTIONS} ) +option( WITH_XINERAMA "Enable support for xinerama" ${WITH_ALL_OPTIONS} ) +option( WITH_XCB "Enable support for xcb" ${WITH_ALL_OPTIONS} ) +option( WITH_GSTREAMER "Enable support for gstreamer backend" ${WITH_ALL_OPTIONS} ) +option( WITH_OGGVORBIS "Enable support for oggvorbis" ${WITH_ALL_OPTIONS} ) +option( WITH_LAME "Enable support for lame" ${WITH_ALL_OPTIONS} ) +option( WITH_DVB "Enable support for dvb" ${WITH_ALL_OPTIONS} ) +option( USE_TQT_ONLY "Build with tqt support only" OFF ) +option( WITH_XINIT_WORKAROUND "Enable support for xinit workaround" OFF ) + +##### user requested modules + +option( BUILD_ALL "Build all" OFF ) +option( BUILD_DOC "Build documentation" ${BUILD_ALL} ) +option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) + + +###### global compiler settings + +add_definitions( -DHAVE_CONFIG_H ) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" ) + + +##### directories + +add_subdirectory( ${PROJECT_NAME} ) +tde_conditional_add_subdirectory( BUILD_DOC doc ) +tde_conditional_add_subdirectory( BUILD_TRANSLATIONS po ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake new file mode 100644 index 0000000..cdd8548 --- /dev/null +++ b/ConfigureChecks.cmake @@ -0,0 +1,176 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +# required stuff +find_package( TQt ) +find_package( TDE ) + +tde_setup_architecture_flags( ) + +include(TestBigEndian) +test_big_endian(WORDS_BIGENDIAN) + +tde_setup_largefiles( ) + + +##### check for gcc visibility support + +if( WITH_GCC_VISIBILITY ) + tde_setup_gcc_visibility( ) +endif( WITH_GCC_VISIBILITY ) + + +##### check for X11 + +find_package( X11 ) + + +##### check for dvb header + +if( WITH_DVB ) + check_include_file( "linux/dvb/frontend.h" HAVE_DVB ) + if( NOT HAVE_DVB ) + tde_message_fatal( "dvb support has been requested but no dvb headers were found on your system." ) + endif() + set( KAFFEINE_DVB_LIBRARY kaffeinedvb-static ) +endif() + + +##### check for libcdio vs cdparanoia + +pkg_search_module( CDIO_CDDA libcdio_cdda ) +pkg_search_module( CDIO_PARANOIA libcdio_paranoia ) + +check_include_file( "cdio/paranoia/cdda.h" HAVE_LIBCDIO_090 ) +check_include_file( "cdio/cdda.h" HAVE_CDPARANOIA ) +if( (NOT HAVE_LIBCDIO_090) AND (NOT HAVE_CDPARANOIA) ) + tde_message_fatal( "libcdio >= 0.90 or cdparanoia are required but were not found on your system." ) +endif() + + +##### check for xinelib + +pkg_search_module( XINE libxine ) +if( XINE_FOUND ) + set( HAVE_XINE 1 ) + if( ${XINE_VERSION} VERSION_GREATER "1.1.0" ) + set( XINE_PARAM_GAPLESS_SWITCH 1 ) + set( XINE_PARAM_EARLY_FINISHED_EVENT 1 ) + endif() + else() + tde_message_fatal( "Xine support has been requested but libxine was not found on your system." ) +endif() + + +##### check for xinerama + +if( WITH_XINERAMA ) +if( X11_Xinerama_FOUND ) + set( HAVE_XINERAMA 1) + else() + tde_message_fatal( "Xinerama support has been requested but was not found on your system." ) +endif() +endif( WITH_XINERAMA ) + + +##### check for xcb + +if( WITH_XCB ) +pkg_search_module( XCB xcb ) + +if( XCB_FOUND ) + set( HAVE_XCB 1 ) + else() + tde_message_fatal( "Xcb support has been requested but was not found on your system." ) +endif() +endif( WITH_XCB ) + + +##### check for dpms(X11) + +if( WITH_DPMS ) +if( X11_dpms_FOUND ) + set( HAVE_DPMS 1 ) + else() + tde_message_fatal( "Dpms support has been requested but was not found on your system." ) +endif() +endif( WITH_DPMS ) + + +##### check for XTest + +if( WITH_XTEST ) +if( X11_XTest_FOUND ) + set( HAVE_XTEST 1 ) + else() + tde_message_fatal( "XTest support has been requested but was not found on your system." ) +endif() +endif( WITH_XTEST ) + + +##### check for gstreamer + +if( WITH_GSTREAMER ) +pkg_search_module( GST gstreamer-1.0>=1.0.0 gstreamer-0.10>=0.10.0 ) +if( NOT GST_FOUND ) + tde_message_fatal( "gstreamer support has been requested but neither gstreamer-1.0 or gstreamer-0.10 were found on your system." ) +endif() + +if( ${GST_VERSION} GREATER "0.11.0" ) + pkg_search_module( GSTREAMER_VIDEO gstreamer-video-1.0 ) + pkg_search_module( GSTREAMER_PLUGIN gstreamer-plugins-base-1.0 ) +else() + pkg_search_module( GSTREAMER_VIDEO gstreamer-interfaces-0.10 ) + pkg_search_module( GSTREAMER_PLUGIN gstreamer-plugins-base-0.10 ) +endif() + +message( STATUS "gstreamer version: ${GST_VERSION}" ) +message( STATUS "gstreamer version: ${GSTREAMER_VIDEO_VERSION}" ) +message( STATUS "gstreamer version: ${GSTREAMER_PLUGIN_VERSION}" ) +endif( WITH_GSTREAMER ) + + +##### check for lame + +if( WITH_LAME ) +find_path( LAME_INCLUDE_DIR "lame/lame.h" ) +find_library( LAME_LIBRARIES mp3lame ) +message( STATUS "Found Lame includes directory: ${LAME_INCLUDE_DIR}" ) + +if( NOT LAME_INCLUDE_DIR OR NOT LAME_LIBRARIES ) + tde_message_fatal( "Lame support has been requested but lame was not found on your system." ) +endif() +endif( WITH_LAME ) + + +##### check for ogg and vorbis + +if( WITH_OGGVORBIS ) +pkg_search_module( OGG ogg ) +pkg_search_module( VORBIS vorbis ) +pkg_search_module( VORBISENC vorbisenc ) + +if( (NOT VORBISENC_FOUND) OR (NOT OGG_FOUND) ) + tde_message_fatal( "oggvorbis support has been requested but neither ogg or vorbis were not found on your system" ) +endif() +endif( WITH_OGGVORBIS ) + + +##### tqt support only + +if( USE_TQT_ONLY ) + set( USE_TQT_ONLY 1 ) +endif() + + +##### xinit workaround + +if( WITH_XINIT_WORKAROUND ) + set( XINIT_WKRND 1 ) +endif() diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 0000000..9e8ebf2 --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,39 @@ +#define VERSION "@VERSION@" + +// Defined if you have fvisibility and fvisibility-inlines-hidden support. +#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@ + +/* Defined if you have xinerama */ +#cmakedefine HAVE_XINERAMA 1 + +/* Defined if you have the xcb library */ +#cmakedefine HAVE_XCB 1 + +/* Defined if you have the xine library (libxine) */ +#cmakedefine HAVE_XINE 1 + +/* Defined if xinelib greater than "1.1.0" */ +#cmakedefine XINE_PARAM_GAPLESS_SWITCH 1 +#cmakedefine XINE_PARAM_EARLY_FINISHED_EVENT 1 + +/* Defined if you have the X11 dpms headers */ +#cmakedefine HAVE_DPMS 1 + +/* Defined if you have the xtest library */ +#cmakedefine HAVE_XTEST 1 + +/* Defined if you want tqt support only */ +#cmakedefine USE_TQT_ONLY 1 + +/* Defined if you want the xinit workaround */ +#cmakedefine XINIT_WKRND 1 + +/* Defined if you have libcdio header */ +#cmakedefine HAVE_LIBCDIO_090 1 + +/* Defined if you have linux dvb header */ +#cmakedefine HAVE_DVB diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt new file mode 100644 index 0000000..633b623 --- /dev/null +++ b/doc/CMakeLists.txt @@ -0,0 +1,2 @@ + +tde_auto_add_subdirectories( ) diff --git a/doc/kaffeine/CMakeLists.txt b/doc/kaffeine/CMakeLists.txt new file mode 100644 index 0000000..65ddbc7 --- /dev/null +++ b/doc/kaffeine/CMakeLists.txt @@ -0,0 +1,8 @@ +##### help page + + +file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.docbook *.css *.png *.jpg ) +tde_create_handbook( + FILES ${_srcs} + DESTINATION ${PROJECT_NAME} +) diff --git a/doc/man/CMakeLists.txt b/doc/man/CMakeLists.txt new file mode 100644 index 0000000..8512250 --- /dev/null +++ b/doc/man/CMakeLists.txt @@ -0,0 +1,5 @@ +INSTALL( + FILES ${PROJECT_NAME}.1 + DESTINATION ${MAN_INSTALL_DIR}/man1 + COMPONENT doc +) diff --git a/doc/man/kaffeine.1 b/doc/man/kaffeine.1 new file mode 100644 index 0000000..0d66e29 --- /dev/null +++ b/doc/man/kaffeine.1 @@ -0,0 +1,187 @@ +.\" This file was generated by kdemangen.pl +.TH KAFFEINE 1 "Apr 2005" "Trinity Desktop Environment" "A media player for TDE" +.SH NAME +kaffeine +- A media player for TDE that can use multiple backends for playback. +.SH SYNOPSIS +kaffeine [Qt-options] [TDE-options] [options] [file] +.SH DESCRIPTION +Kaffeine is a media player for TDE. While it supports multiple player +engines, its default engine is Xine, giving Kaffeine a wide variety of +supported media types and letting Kaffeine access CDs, DVDs, and +network streams easily. + +Kaffeine can keep track of multiple playlists simultaneously, and supports +autoloading of subtitles files for use while playing video. + +Author: Jürgen Kofler +Homepage: http://kaffeine.sourceforge.net + + +.SH OPTIONS +.SS +.SS Arguments: +.TP +.B file +File(s) to play. Can be a local file, a URL, a directory or 'DVD', 'VCD', 'AudioCD'. +.SS Options: +.TP +.B -p, --play +Start playing immediately +.TP +.B -f, --fullscreen +Start in fullscreen mode +.TP +.B -a, --audiodriver +Set audio driver [default] +.TP +.B -x, --videodriver +Set video driver [default] +.TP +.B -d, --device +Set Audio-CD/VCD/DVD device path. [default] +.TP +.B --verbose +Output xine debug messages +.TP +.B -w, --wizard +Run installation wizard +.SS +.SS Generic options: +.TP +.B --help +Show help about options +.TP +.B --help-qt +Show Qt specific options +.TP +.B --help-tde +Show TDE specific options +.TP +.B --help-all +Show all options +.TP +.B --author +Show author information +.TP +.B -v, --version +Show version information +.TP +.B --license +Show license information +.TP +.B -- +End of options +.SS +.SS TDE options: +.TP +.B --caption +Use 'caption' as name in the titlebar +.TP +.B --icon +Use 'icon' as the application icon +.TP +.B --miniicon +Use 'icon' as the icon in the titlebar +.TP +.B --config +Use alternative configuration file +.TP +.B --dcopserver +Use the DCOP Server specified by 'server' +.TP +.B --nocrashhandler +Disable crash handler, to get core dumps +.TP +.B --waitforwm +Waits for a WM_NET compatible windowmanager +.TP +.B --style