src/3rdparty/phonon/gstreamer/CMakeLists.txt
changeset 3 41300fa6a67c
parent 0 1918ee327afb
child 30 5dc02b23752f
--- a/src/3rdparty/phonon/gstreamer/CMakeLists.txt	Tue Jan 26 12:42:25 2010 +0200
+++ b/src/3rdparty/phonon/gstreamer/CMakeLists.txt	Tue Feb 02 00:43:10 2010 +0200
@@ -17,8 +17,20 @@
 include(ConfigureChecks.cmake)
 
 if (BUILD_PHONON_GSTREAMER)
-   include_directories(${GSTREAMER_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR}
-      ${LIBXML2_INCLUDE_DIR})
+   include_directories(
+	  ${CMAKE_CURRENT_BINARY_DIR}
+	  ${GSTREAMER_INCLUDE_DIR} 
+	  ${GLIB2_INCLUDE_DIR}
+      ${LIBXML2_INCLUDE_DIR}
+	  ${X11_X11_INCLUDE_PATH})
+   add_definitions(-DPHONON_BACKEND_VERSION_4_2)
+
+   # configure plugin api
+   if(USE_INSTALL_PLUGIN)
+      set(PLUGIN_INSTALL_API TRUE)
+   endif(USE_INSTALL_PLUGIN)
+
+   configure_file(phonon-config-gstreamer.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/phonon-config-gstreamer.h )
 
    set(phonon_gstreamer_SRCS
       audiooutput.cpp
@@ -45,17 +57,17 @@
       )
 
    find_package(Alsa)
-   if(ALSA_FOUND)
+   macro_ensure_version("0.10.22" ${GSTREAMER_VERSION} GSTREAMER_HAS_NONBLOCKING_ALSASINK)
+   if(ALSA_FOUND AND NOT GSTREAMER_HAS_NONBLOCKING_ALSASINK)
       add_definitions(-DUSE_ALSASINK2)
       include_directories(${ALSA_INCLUDES})
       set(phonon_gstreamer_SRCS
          ${phonon_gstreamer_SRCS}
          alsasink2.c
          )
-   endif(ALSA_FOUND)
+   endif(ALSA_FOUND AND NOT GSTREAMER_HAS_NONBLOCKING_ALSASINK)
 
-   automoc4(phonon_gstreamer phonon_gstreamer_SRCS)
-   add_library(phonon_gstreamer SHARED ${phonon_gstreamer_SRCS})
+   automoc4_add_library(phonon_gstreamer MODULE ${phonon_gstreamer_SRCS})
    set_target_properties(phonon_gstreamer PROPERTIES PREFIX "")
    target_link_libraries(phonon_gstreamer
       ${QT_QTOPENGL_LIBRARY}