From 68c680599b3ee038a33bcad36ac52912725cf3cd Mon Sep 17 00:00:00 2001
From: Nicky Dasmijn <nicky.dasmijn@posteo.nl>
Date: Sat, 17 Sep 2022 11:21:06 +0200
Subject: [PATCH] Try to make sure this also works with the havok version of
 llphysicsextension.

---
 indra/cmake/LLPhysicsExtensions.cmake | 10 +++++-----
 indra/llprimitive/CMakeLists.txt      |  2 +-
 indra/newview/CMakeLists.txt          |  7 ++++++-
 3 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/indra/cmake/LLPhysicsExtensions.cmake b/indra/cmake/LLPhysicsExtensions.cmake
index 9c628b84b1d..36821447c9d 100644
--- a/indra/cmake/LLPhysicsExtensions.cmake
+++ b/indra/cmake/LLPhysicsExtensions.cmake
@@ -11,7 +11,7 @@ if (INSTALL_PROPRIETARY)
 endif (INSTALL_PROPRIETARY)
 
 include_guard()
-add_library( llphysicsextensions INTERFACE IMPORTED )
+add_library( llphysicsextensions_impl INTERFACE IMPORTED )
 
 
 # Note that the use_prebuilt_binary macros below do not in fact include binaries;
@@ -22,14 +22,14 @@ if (HAVOK)
    include(Havok)
    use_prebuilt_binary(llphysicsextensions_source)
    set(LLPHYSICSEXTENSIONS_SRC_DIR ${LIBS_PREBUILT_DIR}/llphysicsextensions/src)
-   target_link_libraries( llphysicsextensions INTERFACE llphysicsextensions)
+   target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensions)
 elseif (HAVOK_TPV)
    use_prebuilt_binary(llphysicsextensions_tpv)
-   target_link_libraries( llphysicsextensions INTERFACE llphysicsextensions_tpv)
+   target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensions_tpv)
 else (HAVOK)
    use_prebuilt_binary(llphysicsextensions_stub)
    set(LLPHYSICSEXTENSIONS_SRC_DIR ${LIBS_PREBUILT_DIR}/llphysicsextensions/stub)
-   target_link_libraries( llphysicsextensions INTERFACE llphysicsextensionsstub)
+   target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensionsstub)
 endif (HAVOK)
 
-target_include_directories( llphysicsextensions  INTERFACE   ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
+target_include_directories( llphysicsextensions_impl INTERFACE   ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
diff --git a/indra/llprimitive/CMakeLists.txt b/indra/llprimitive/CMakeLists.txt
index bf35500bad8..7d83dc77c1f 100644
--- a/indra/llprimitive/CMakeLists.txt
+++ b/indra/llprimitive/CMakeLists.txt
@@ -60,7 +60,7 @@ target_link_libraries(llprimitive
         llcorehttp
         llxml
         llcharacter
-        llphysicsextensions
+        llphysicsextensions_impl
         ll::colladadom
         ll::pcre
 		ll::glh_linear
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 2ad40faa377..74faf3d1b6f 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -61,7 +61,12 @@ if (NOT HAVOK_TPV)
 
    # Another hack that works with newer cmake versions:
    cmake_policy( SET CMP0079 NEW)
-   target_link_libraries(llphysicsextensionsstub llcommon llmath)
+   if( TARGET llphysicsextensionsstub )
+      target_link_libraries(llphysicsextensionsstub llcommon llmath)
+   endif()
+   if( TARGET llphysicsextensions )
+      target_link_libraries(llphysicsextensions llrender )
+   endif()
 endif (NOT HAVOK_TPV)
 
 
-- 
GitLab