summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/phonon/gstreamer/CMakeLists.txt
blob: 4946f5fbe8db5bc61087356c8797f2caf1de72b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
# Copyright (C) 2008 Matthias Kretz <kretz@kde.org>
#
# This library is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 2 or 3 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this library.  If not, see <http://www.gnu.org/licenses/>.

project(phonon-gstreamer)
include(ConfigureChecks.cmake)

if (BUILD_PHONON_GSTREAMER)
   include_directories(${GSTREAMER_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR}
      ${LIBXML2_INCLUDE_DIR})

   set(phonon_gstreamer_SRCS
      audiooutput.cpp
      artssink.cpp
      backend.cpp
      devicemanager.cpp
      effectmanager.cpp
      gsthelper.cpp
      mediaobject.cpp
      medianode.cpp
      effect.cpp
      medianodeevent.cpp
      videowidget.cpp
      qwidgetvideosink.cpp
      streamreader.cpp
      phononsrc.cpp
      message.cpp
      audioeffect.cpp
      abstractrenderer.cpp
      x11renderer.cpp
      widgetrenderer.cpp
      glrenderer.cpp
      volumefadereffect.cpp
      )

   find_package(Alsa)
   if(ALSA_FOUND)
      add_definitions(-DUSE_ALSASINK2)
      include_directories(${ALSA_INCLUDES})
      set(phonon_gstreamer_SRCS
         ${phonon_gstreamer_SRCS}
         alsasink2.c
         )
   endif(ALSA_FOUND)

   automoc4(phonon_gstreamer phonon_gstreamer_SRCS)
   add_library(phonon_gstreamer SHARED ${phonon_gstreamer_SRCS})
   set_target_properties(phonon_gstreamer PROPERTIES PREFIX "")
   target_link_libraries(phonon_gstreamer
      ${QT_QTOPENGL_LIBRARY}
      ${PHONON_LIBS} ${OPENGL_gl_LIBRARY}
      ${GSTREAMER_LIBRARIES} ${GSTREAMER_BASE_LIBRARY} ${GSTREAMER_INTERFACE_LIBRARY}
      ${GSTREAMER_PLUGIN_VIDEO_LIBRARIES} ${GSTREAMER_PLUGIN_AUDIO_LIBRARIES}
      ${GLIB2_LIBRARIES} ${GOBJECT_LIBRARIES})
   if(ALSA_FOUND)
      target_link_libraries(phonon_gstreamer ${ASOUND_LIBRARY})
   endif(ALSA_FOUND)

   install(TARGETS phonon_gstreamer DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/phonon_backend)
   install(FILES gstreamer.desktop DESTINATION ${SERVICES_INSTALL_DIR}/phononbackends)
endif (BUILD_PHONON_GSTREAMER)