From 78dc1c872aa966de010ca94c4d7a651259679502 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Tue, 6 Feb 2024 17:28:35 +0200
Subject: Enable OpenAL Soft on MacOS

---
 indra/cmake/Copy3rdPartyLibs.cmake | 4 ++++
 indra/cmake/OPENAL.cmake           | 5 ++++-
 indra/newview/viewer_manifest.py   | 8 ++++++++
 3 files changed, 16 insertions(+), 1 deletion(-)

(limited to 'indra')

diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake
index 7938d4f54b..ff0cd0a4e5 100644
--- a/indra/cmake/Copy3rdPartyLibs.cmake
+++ b/indra/cmake/Copy3rdPartyLibs.cmake
@@ -182,6 +182,10 @@ elseif(DARWIN)
       set(release_files ${release_files} libfmod.dylib)
     endif ()
 
+    if (TARGET ll::openal)
+	  list(APPEND release_files libalut.dylib libopenal.dylib)
+    endif ()
+
 elseif(LINUX)
     # linux is weird, multiple side by side configurations aren't supported
     # and we don't seem to have any debug shared libs built yet anyways...
diff --git a/indra/cmake/OPENAL.cmake b/indra/cmake/OPENAL.cmake
index 0b6a7c2853..347dd02cd7 100644
--- a/indra/cmake/OPENAL.cmake
+++ b/indra/cmake/OPENAL.cmake
@@ -33,6 +33,9 @@ if (USE_OPENAL)
             alut
             )
   else()
-    message(FATAL_ERROR "OpenAL is not available for this platform")
+    target_link_libraries( ll::openal INTERFACE
+            openal
+            alut
+            )
   endif()
 endif ()
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index 1fa4df1682..07c659df0c 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -1031,6 +1031,14 @@ class Darwin_x86_64_Manifest(ViewerManifest):
                                     "libfmod.dylib",
                                     ):
                             dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile)
+                            
+                # OpenAL dylibs
+                if self.args['openal'] == 'ON':
+                    for libfile in (
+                                "libopenal.dylib",
+                                "libalut.dylib",
+                                ):
+                        dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile)
 
                 # our apps
                 executable_path = {}
-- 
cgit v1.2.3