diff --git a/indra/cmake/LLPhysicsExtensions.cmake b/indra/cmake/LLPhysicsExtensions.cmake
index 9c628b84b1d3351dccb9709246ef415d172d6983..36821447c9dbf70d3867c9b911b166aa72212d21 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 bf35500bad8faa5f6c4a6dd456ae9a20c2593f9d..7d83dc77c1fd5932a4ce297229bc7ea2e591d6f6 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 2ad40faa3778c8c74852e6d1f85462d8dcd6a892..74faf3d1b6f113c09a1bfe5b8a5e79b0bfb465c1 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)