diff --git a/indra/cmake/Havok.cmake b/indra/cmake/Havok.cmake
index 1b355792d0d168f9bd2422aebbd7fa405e1b9e80..949575709c990e22f382d0c936dee55154140c9e 100644
--- a/indra/cmake/Havok.cmake
+++ b/indra/cmake/Havok.cmake
@@ -3,50 +3,106 @@ include(Prebuilt)
 
 use_prebuilt_binary(havok)
 set(Havok_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/libraries/include/havok/Source)
-if (CMAKE_BUILD_TYPE MATCHES "Debug")
-   set(HAVOK_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/libraries/i686-win32/lib/debug/havok)
-else (CMAKE_BUILD_TYPE MATCHES "Debug")
-   set(HAVOK_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/libraries/i686-win32/lib/release/havok)
-endif (CMAKE_BUILD_TYPE MATCHES "Debug")
-
-find_library(HK_BASE_LIB                  hkBase              PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_COMPAT_LIB                hkCompat            PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_GEOMETRY_UTILITIES_LIB    hkGeometryUtilities PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_INTERNAL_LIB              hkInternal          PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_SERIALIZE_LIB             hkSerialize         PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_SCENEDATA_LIB             hkSceneData         PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_COLLIDE_LIB          hkpCollide          PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_UTILITIES_LIB        hkpUtilities        PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_CONSTRAINTSOLVER_LIB hkpConstraintSolver PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_DYNAMICS_LIB         hkpDynamics         PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_INTERNAL_LIB         hkpInternal         PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_AI_INTERNAL_LIB           hkaiInternal        PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_AI_PATHFINDING_LIB        hkaiPathfinding     PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_AI_AIPHYSICSBRIDGE_LIB    hkaiaiphysicsbridge PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_UTILITIES_LIB        hkputilities        PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_CD_INTERNAL_LIB           hkcdinternal        PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_PHYS_VEHICLE_LIB          hkpVehicle          PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_VISUALIZE_LIB             hkVisualize         PATHS ${HAVOK_LIBRARY_PATH})
-find_library(HK_AI_VISUALIZE_LIB          hkaiVisualize       PATHS ${HAVOK_LIBRARY_PATH})
+
+set(HAVOK_DEBUG_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/libraries/i686-win32/lib/debug/havok)
+set(HAVOK_RELEASE_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/libraries/i686-win32/lib/release/havok)
+
+find_library(HK_BASE_DEBUG_LIB                  hkBase              PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_COMPAT_DEBUG_LIB                hkCompat            PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_GEOMETRY_UTILITIES_DEBUG_LIB    hkGeometryUtilities PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_INTERNAL_DEBUG_LIB              hkInternal          PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_SERIALIZE_DEBUG_LIB             hkSerialize         PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_SCENEDATA_DEBUG_LIB             hkSceneData         PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_COLLIDE_DEBUG_LIB          hkpCollide          PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_UTILITIES_DEBUG_LIB        hkpUtilities        PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_CONSTRAINTSOLVER_DEBUG_LIB hkpConstraintSolver PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_DYNAMICS_DEBUG_LIB         hkpDynamics         PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_INTERNAL_DEBUG_LIB         hkpInternal         PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_AI_INTERNAL_DEBUG_LIB           hkaiInternal        PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_AI_PATHFINDING_DEBUG_LIB        hkaiPathfinding     PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_AI_AIPHYSICSBRIDGE_DEBUG_LIB    hkaiaiphysicsbridge PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_UTILITIES_DEBUG_LIB        hkputilities        PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_CD_INTERNAL_DEBUG_LIB           hkcdinternal        PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_PHYS_VEHICLE_DEBUG_LIB          hkpVehicle          PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_VISUALIZE_DEBUG_LIB             hkVisualize         PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+find_library(HK_AI_VISUALIZE_DEBUG_LIB          hkaiVisualize       PATHS ${HAVOK_DEBUG_LIBRARY_PATH})
+
+find_library(HK_BASE_RELEASE_LIB                  hkBase              PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_COMPAT_RELEASE_LIB                hkCompat            PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_GEOMETRY_UTILITIES_RELEASE_LIB    hkGeometryUtilities PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_INTERNAL_RELEASE_LIB              hkInternal          PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_SERIALIZE_RELEASE_LIB             hkSerialize         PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_SCENEDATA_RELEASE_LIB             hkSceneData         PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_COLLIDE_RELEASE_LIB          hkpCollide          PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_UTILITIES_RELEASE_LIB        hkpUtilities        PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_CONSTRAINTSOLVER_RELEASE_LIB hkpConstraintSolver PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_DYNAMICS_RELEASE_LIB         hkpDynamics         PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_INTERNAL_RELEASE_LIB         hkpInternal         PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_AI_INTERNAL_RELEASE_LIB           hkaiInternal        PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_AI_PATHFINDING_RELEASE_LIB        hkaiPathfinding     PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_AI_AIPHYSICSBRIDGE_RELEASE_LIB    hkaiaiphysicsbridge PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_UTILITIES_RELEASE_LIB        hkputilities        PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_CD_INTERNAL_RELEASE_LIB           hkcdinternal        PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_PHYS_VEHICLE_RELEASE_LIB          hkpVehicle          PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_VISUALIZE_RELEASE_LIB             hkVisualize         PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
+find_library(HK_AI_VISUALIZE_RELEASE_LIB          hkaiVisualize       PATHS ${HAVOK_RELEASE_LIBRARY_PATH})
 
 set(HK_LIBRARIES
-    ${HK_BASE_LIB}
-    ${HK_COMPAT_LIB}
-    ${HK_GEOMETRY_UTILITIES_LIB}
-    ${HK_INTERNAL_LIB}
-    ${HK_SERIALIZE_LIB}
-    ${HK_SCENEDATA_LIB}
-    ${HK_PHYS_COLLIDE_LIB}
-    ${HK_PHYS_UTILITIES_LIB}
-    ${HK_PHYS_CONSTRAINTSOLVER_LIB}
-    ${HK_PHYS_DYNAMICS_LIB}
-    ${HK_PHYS_INTERNAL_LIB}
-    ${HK_AI_INTERNAL_LIB}
-    ${HK_AI_PATHFINDING_LIB}
-    ${HK_AI_AIPHYSICSBRIDGE_LIB}
-    ${HK_PHYS_UTILITIES_LIB}
-    ${HK_CD_INTERNAL_LIB}
-    ${HK_PHYS_VEHICLE_LIB}
-    ${HK_VISUALIZE_LIB}
-    ${HK_AI_VISUALIZE_LIB}
+
+    debug     ${HK_BASE_DEBUG_LIB}
+    optimized ${HK_BASE_RELEASE_LIB}
+
+    debug     ${HK_COMPAT_DEBUG_LIB}
+    optimized ${HK_COMPAT_RELEASE_LIB}
+
+    debug     ${HK_GEOMETRY_UTILITIES_DEBUG_LIB}
+    optimized ${HK_GEOMETRY_UTILITIES_RELEASE_LIB}
+
+    debug     ${HK_INTERNAL_DEBUG_LIB}
+    optimized ${HK_INTERNAL_RELEASE_LIB}
+
+    debug     ${HK_SERIALIZE_DEBUG_LIB}
+    optimized ${HK_SERIALIZE_RELEASE_LIB}
+
+    debug     ${HK_SCENEDATA_DEBUG_LIB}
+    optimized ${HK_SCENEDATA_RELEASE_LIB}
+
+    debug     ${HK_PHYS_COLLIDE_DEBUG_LIB}
+    optimized ${HK_PHYS_COLLIDE_RELEASE_LIB}
+
+    debug     ${HK_PHYS_UTILITIES_DEBUG_LIB}
+    optimized ${HK_PHYS_UTILITIES_RELEASE_LIB}
+
+    debug     ${HK_PHYS_CONSTRAINTSOLVER_DEBUG_LIB}
+    optimized ${HK_PHYS_CONSTRAINTSOLVER_RELEASE_LIB}
+
+    debug     ${HK_PHYS_DYNAMICS_DEBUG_LIB}
+    optimized ${HK_PHYS_DYNAMICS_RELEASE_LIB}
+
+    debug     ${HK_PHYS_INTERNAL_DEBUG_LIB}
+    optimized ${HK_PHYS_INTERNAL_RELEASE_LIB}
+
+    debug     ${HK_AI_INTERNAL_DEBUG_LIB}
+    optimized ${HK_AI_INTERNAL_RELEASE_LIB}
+
+    debug     ${HK_AI_PATHFINDING_DEBUG_LIB}
+    optimized ${HK_AI_PATHFINDING_RELEASE_LIB}
+
+    debug     ${HK_AI_AIPHYSICSBRIDGE_DEBUG_LIB}
+    optimized ${HK_AI_AIPHYSICSBRIDGE_RELEASE_LIB}
+
+    debug     ${HK_PHYS_UTILITIES_DEBUG_LIB}
+    optimized ${HK_PHYS_UTILITIES_RELEASE_LIB}
+
+    debug     ${HK_CD_INTERNAL_DEBUG_LIB}
+    optimized ${HK_CD_INTERNAL_RELEASE_LIB}
+
+    debug     ${HK_PHYS_VEHICLE_DEBUG_LIB}
+    optimized ${HK_PHYS_VEHICLE_RELEASE_LIB}
+
+    debug     ${HK_VISUALIZE_DEBUG_LIB}
+    optimized ${HK_VISUALIZE_RELEASE_LIB}
+
+    debug     ${HK_AI_VISUALIZE_DEBUG_LIB}
+    optimized ${HK_AI_VISUALIZE_RELEASE_LIB}
 )
diff --git a/indra/cmake/LLPathingLib.cmake b/indra/cmake/LLPathingLib.cmake
index b92190ad0a4732d4d828109017edbe98ea964efd..c108b33e8cf55b4623e086c59d6ac7547bbc0ef6 100644
--- a/indra/cmake/LLPathingLib.cmake
+++ b/indra/cmake/LLPathingLib.cmake
@@ -3,14 +3,16 @@ include(Prebuilt)
 
 use_prebuilt_binary(llpathinglib)
 set(LLPATHING_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/libraries/include)
-if (CMAKE_BUILD_TYPE MATCHES "Debug")
-   set(LLPATHING_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug)
-else (CMAKE_BUILD_TYPE MATCHES "Debug")
-   set(LLPATHING_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release)
-endif (CMAKE_BUILD_TYPE MATCHES "Debug")
 
-find_library(LL_PATHING_LIB llpathinglib PATHS ${LLPATHING_LIBRARY_PATH})
+
+set(LLPATHING_DEBUG_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug)
+set(LLPATHING_RELEASE_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release)
+
+find_library(LL_PATHING_DEBUG_LIB llpathinglib PATHS ${LLPATHING_DEBUG_LIBRARY_PATH})
+find_library(LL_PATHING_RELEASE_LIB llpathinglib PATHS ${LLPATHING_RELEASE_LIBRARY_PATH})
 
 set(LLPATHING_LIBRARIES
-    ${LL_PATHING_LIB}
+
+    debug     ${LL_PATHING_DEBUG_LIB}
+    optimized ${LL_PATHING_RELEASE_LIB}
 )