From 1b27c4f9c762d68fae5b47dc08a31a2699ca9fe5 Mon Sep 17 00:00:00 2001
From: Techwolf Lupindo <bitbucket.org@trap.wereanimal.net>
Date: Sun, 22 Aug 2010 19:20:29 -0400
Subject: [PATCH] SNOW-599/SNOW-747: Pulseaudio should be optional on Linux.

---
 doc/contributions.txt                     |  2 ++
 indra/cmake/PulseAudio.cmake              | 38 +++++++++++------------
 indra/media_plugins/webkit/CMakeLists.txt |  5 ++-
 3 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index 8c6bd5e0fea..56e22d3990b 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -517,6 +517,8 @@ Ringo Tuxing
 Robin Cornelius
 	SNOW-108
 	SNOW-204
+	SNOW-599
+	SNOW-747
 	VWR-2488
 	VWR-9557
 	VWR-11128
diff --git a/indra/cmake/PulseAudio.cmake b/indra/cmake/PulseAudio.cmake
index f8087a80831..e918de0198a 100644
--- a/indra/cmake/PulseAudio.cmake
+++ b/indra/cmake/PulseAudio.cmake
@@ -1,28 +1,28 @@
 # -*- cmake -*-
 include(Prebuilt)
 
-if (STANDALONE)
-  include(FindPkgConfig)
+set(PULSEAUDIO ON CACHE BOOL "Build with PulseAudio support, if available.")
 
-  pkg_check_modules(PULSEAUDIO REQUIRED libpulse-mainloop-glib)
+if (PULSEAUDIO)
+  if (STANDALONE)
+    include(FindPkgConfig)
+
+    pkg_check_modules(PULSEAUDIO libpulse)
 
-elseif (LINUX)
-  use_prebuilt_binary(pulseaudio)
-  set(PULSEAUDIO_FOUND ON FORCE BOOL)
-  set(PULSEAUDIO_INCLUDE_DIRS
-      ${LIBS_PREBUILT_DIR}/include
+  elseif (LINUX)
+    use_prebuilt_binary(pulseaudio)
+    set(PULSEAUDIO_FOUND ON FORCE BOOL)
+    set(PULSEAUDIO_INCLUDE_DIRS
+        ${LIBS_PREBUILT_DIR}/include
+        )
+    # We don't need to explicitly link against pulseaudio itself, because
+    # the viewer probes for the system's copy at runtime.
+    set(PULSEAUDIO_LIBRARIES
+      # none needed!
       )
-  # We don't need to explicitly link against pulseaudio itself, because
-  # the viewer probes for the system's copy at runtime.
-  set(PULSEAUDIO_LIBRARIES
-    # none needed!
-    )
-endif (STANDALONE)
+  endif (STANDALONE)
+endif (PULSEAUDIO)
 
 if (PULSEAUDIO_FOUND)
-  set(PULSEAUDIO ON CACHE BOOL "Build with PulseAudio support, if available.")
-endif (PULSEAUDIO_FOUND)
-
-if (PULSEAUDIO)
   add_definitions(-DLL_PULSEAUDIO_ENABLED=1)
-endif (PULSEAUDIO)
+endif (PULSEAUDIO_FOUND)
diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt
index d576638dd7e..6bb87ec3061 100644
--- a/indra/media_plugins/webkit/CMakeLists.txt
+++ b/indra/media_plugins/webkit/CMakeLists.txt
@@ -53,6 +53,8 @@ set(media_plugin_webkit_LINK_LIBRARIES
 if (LINUX)
   if (PULSEAUDIO)
     list(APPEND media_plugin_webkit_SOURCE_FILES linux_volume_catcher.cpp)
+  else (PULSEAUDIO)
+    list(APPEND media_plugin_webkit_SOURCE_FILES dummy_volume_catcher.cpp)
   endif (PULSEAUDIO)
   list(APPEND media_plugin_webkit_LINK_LIBRARIES
        ${UI_LIBRARIES}     # for glib/GTK
@@ -67,9 +69,6 @@ elseif (DARWIN)
        )
 elseif (WINDOWS)
   list(APPEND media_plugin_webkit_SOURCE_FILES windows_volume_catcher.cpp)
-else (LINUX)
-  # All other platforms use the dummy volume catcher for now.
-  list(APPEND media_plugin_webkit_SOURCE_FILES dummy_volume_catcher.cpp)
 endif (LINUX)
 
 set_source_files_properties(${media_plugin_webkit_HEADER_FILES}
-- 
GitLab