5a6101d32739f181c8965af804ff8829561ab363
[WebKit-https.git] / Source / cmake / GStreamerChecks.cmake
1 if (ENABLE_VIDEO OR ENABLE_WEB_AUDIO)
2     set(GSTREAMER_COMPONENTS app pbutils)
3     SET_AND_EXPOSE_TO_BUILD(USE_GSTREAMER TRUE)
4     if (ENABLE_VIDEO)
5         list(APPEND GSTREAMER_COMPONENTS video mpegts tag gl)
6     endif ()
7
8     if (ENABLE_WEB_AUDIO)
9         list(APPEND GSTREAMER_COMPONENTS audio fft)
10         SET_AND_EXPOSE_TO_BUILD(USE_WEBAUDIO_GSTREAMER TRUE)
11     endif ()
12
13     find_package(GStreamer 1.2.3 REQUIRED COMPONENTS ${GSTREAMER_COMPONENTS})
14
15     if (ENABLE_WEB_AUDIO)
16         if (NOT PC_GSTREAMER_AUDIO_FOUND OR NOT PC_GSTREAMER_FFT_FOUND)
17             message(FATAL_ERROR "WebAudio requires the audio and fft GStreamer libraries. Please check your gst-plugins-base installation.")
18         else ()
19             SET_AND_EXPOSE_TO_BUILD(USE_WEBAUDIO_GSTREAMER TRUE)
20         endif ()
21     endif ()
22
23     if (ENABLE_VIDEO)
24         if (NOT PC_GSTREAMER_APP_FOUND OR NOT PC_GSTREAMER_PBUTILS_FOUND OR NOT PC_GSTREAMER_TAG_FOUND OR NOT PC_GSTREAMER_VIDEO_FOUND)
25             message(FATAL_ERROR "Video playback requires the following GStreamer libraries: app, pbutils, tag, video. Please check your gst-plugins-base installation.")
26         endif ()
27     endif ()
28
29     if (USE_GSTREAMER_MPEGTS)
30         if (NOT PC_GSTREAMER_MPEGTS_FOUND)
31             message(FATAL_ERROR "GStreamer MPEG-TS is needed for USE_GSTREAMER_MPEGTS.")
32         endif ()
33     endif ()
34
35     if (USE_GSTREAMER_GL)
36         if (PC_GSTREAMER_VERSION VERSION_LESS "1.10")
37             set(USE_GSTREAMER_GL OFF)
38             message(STATUS "Disabling GSTREAMER_GL as the GStreamer version is older than 1.10.")
39         else ()
40             if (NOT PC_GSTREAMER_GL_FOUND)
41                 message(FATAL_ERROR "GStreamerGL is needed for USE_GSTREAMER_GL.")
42             endif ()
43         endif ()
44     endif ()
45
46     SET_AND_EXPOSE_TO_BUILD(USE_GSTREAMER TRUE)
47 endif ()