diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake
index 8d180502f8ed30a92ef17de66343ccdf07d282b4..d18872aee0f42974bf93012a8c1ec3b6caae6fc7 100644
--- a/indra/cmake/00-Common.cmake
+++ b/indra/cmake/00-Common.cmake
@@ -55,6 +55,10 @@ endif()
 # Warnings
 option(DISABLE_FATAL_WARNINGS "Disable warnings as errors" ON)
 
+if(USE_LTO)
+  set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ${USE_LTO})
+endif()
+
 # Platform-specific compilation flags.
 if (WINDOWS)
   # Don't build DLLs.
@@ -139,31 +143,10 @@ if (WINDOWS)
   endif()
 
   if (USE_LTO)
-    if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
-      if(INCREMENTAL_LINK)
-        add_link_options(/LTCG:incremental)
-        set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /LTCG")
-      else()
-        add_link_options(/LTCG)
-        set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /LTCG")
-      endif()
-      add_link_options(
-        $<$<CONFIG:Release>:/OPT:REF>
-        $<$<CONFIG:Release>:/OPT:ICF>
-        $<$<CONFIG:Release>:/INCREMENTAL:NO>
-        )
-      add_compile_options(/GL /Gy /Gw)
-    elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
-      if(INCREMENTAL_LINK)
-        add_compile_options(-flto=thin -fwhole-program-vtables /clang:-fforce-emit-vtables)
-      else()
-        add_compile_options(-flto=full -fwhole-program-vtables /clang:-fforce-emit-vtables)
-      endif()
-      add_link_options(
-        $<$<CONFIG:Release>:/OPT:REF>
-        $<$<CONFIG:Release>:/OPT:ICF>
-        )
-    endif()
+    add_link_options(
+      $<$<CONFIG:Release>:/OPT:REF>
+      $<$<CONFIG:Release>:/OPT:ICF>
+      )
   elseif (INCREMENTAL_LINK)
     add_link_options($<$<CONFIG:Release>:/INCREMENTAL>)
   else ()
@@ -233,14 +216,6 @@ if (LINUX)
     add_compile_options(-mfpmath=sse -msse -msse2 -msse3 -mssse3 -msse4 -msse4.1)
   endif ()
 
-  if (USE_LTO)
-    if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
-      add_compile_options(-flto=thin -fwhole-program-vtables -fforce-emit-vtables)
-    elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
-      add_compile_options(-flto=auto -fno-fat-lto-objects)
-    endif ()
-  endif ()
-
   if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
     if (USE_ASAN)
       add_compile_options(-fsanitize=address -fsanitize-recover=address)
@@ -262,10 +237,6 @@ if (LINUX)
     add_compile_options(-O3 -ffast-math)
   endif ()
 
-  if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" AND USE_LTO)
-    add_link_options(-fuse-ld=lld)
-  endif()
-
   # Enable these flags so we have a read only GOT and some linking opts
   add_link_options("LINKER:-z,relro" "LINKER:-z,now" "LINKER:--as-needed")
 endif ()
diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake
index 4cfc975fa119a4ee7c589a0b82239f20c1139c9d..81f91da21c9664a3998a55d32e4dd1ab758a8abc 100644
--- a/indra/cmake/Variables.cmake
+++ b/indra/cmake/Variables.cmake
@@ -172,9 +172,6 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
   set(CMAKE_XCODE_ATTRIBUTE_GCC_FAST_MATH NO)
   set(CMAKE_XCODE_ATTRIBUTE_GCC_STRICT_ALIASING NO)
   set(CMAKE_XCODE_ATTRIBUTE_GCC_SYMBOLS_PRIVATE_EXTERN YES)
-  if(USE_LTO)
-    set(CMAKE_XCODE_ATTRIBUTE_LLVM_LTO YES_THIN)
-  endif()
 
   set(CMAKE_XCODE_ATTRIBUTE_GCC_GENERATE_DEBUGGING_SYMBOLS YES)
   if(FULL_DEBUG_SYMS OR USE_SENTRY)
diff --git a/indra/deps/CMakeLists.txt b/indra/deps/CMakeLists.txt
index d931f4d29bdb4422eea8b076de3ef8ec90bb46f8..174d35966314b45b260ace33c6c9f83dc325204f 100644
--- a/indra/deps/CMakeLists.txt
+++ b/indra/deps/CMakeLists.txt
@@ -1,10 +1,12 @@
+
 project(deps)
 
 include(00-Common)
 include(FetchContent)
 
 set(CMAKE_FOLDER "Third Party")
-set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+set(CMAKE_POLICY_DEFAULT_CMP0069 NEW)
+set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
 
 set(deps_SOURCE_FILES
     CMakeLists.txt
@@ -18,17 +20,6 @@ add_library(deps
             ${deps_SOURCE_FILES}
             )
 
-
-if(${CMAKE_VERSION} VERSION_LESS 3.14)
-    macro(FetchContent_MakeAvailable NAME)
-        FetchContent_GetProperties(${NAME})
-        if(NOT ${NAME}_POPULATED)
-            FetchContent_Populate(${NAME})
-            add_subdirectory(${${NAME}_SOURCE_DIR} ${${NAME}_BINARY_DIR})
-        endif()
-    endmacro()
-endif()
-
 FetchContent_Declare(
   meshoptimizer
   GIT_REPOSITORY https://git.alchemyviewer.org/alchemy/mirrors/meshoptimizer.git
@@ -79,8 +70,7 @@ if(USE_TRACY)
   set(TRACY_ON_DEMAND ON)
   set(TRACY_ONLY_LOCALHOST ON)
   set(TRACY_FIBERS ON)
-  FetchContent_MakeAvailable (tracy)
+  FetchContent_MakeAvailable(tracy)
 endif()
 
 unset(CMAKE_FOLDER)
-unset(CMAKE_POSITION_INDEPENDENT_CODE)