From 739358779267413887a57d2a6d6b651312245495 Mon Sep 17 00:00:00 2001
From: "Nyx (Neal Orman)" <nyx@lindenlab.com>
Date: Wed, 25 Jan 2012 18:46:19 -0500
Subject: [PATCH] PATH-192 WIP adding convex decomp to pathing

First pass at using new llPhysicsExtensions library which
combines pathing and convex decomp.
---
 autobuild.xml                           | 160 ++----------------------
 indra/cmake/CMakeLists.txt              |   2 +-
 indra/cmake/LLConvexDecomposition.cmake |  12 --
 indra/cmake/LLPathingLib.cmake          |  23 ----
 indra/cmake/LLPhysicsExtensions.cmake   |  31 +++++
 indra/newview/CMakeLists.txt            |   8 +-
 6 files changed, 43 insertions(+), 193 deletions(-)
 delete mode 100644 indra/cmake/LLConvexDecomposition.cmake
 delete mode 100644 indra/cmake/LLPathingLib.cmake
 create mode 100644 indra/cmake/LLPhysicsExtensions.cmake

diff --git a/autobuild.xml b/autobuild.xml
index 240defbf436..f6d6e40aedf 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -855,54 +855,6 @@
           </map>
         </map>
       </map>
-      <key>havok</key>
-      <map>
-        <key>license</key>
-        <string>havok-ares</string>
-        <key>license_file</key>
-        <string>LICENSES/havok.txt</string>
-        <key>name</key>
-        <string>havok</string>
-        <key>platforms</key>
-        <map>
-          <key>darwin</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>286741271be3dc3473af3044ad6d002e</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-havok/rev/224189/arch/Darwin/installer/havok-0.1-darwin-20110316.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>darwin</string>
-          </map>
-          <key>linux</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>1b6c85fc7705779cd2c2b02f7437fb24</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-havok/rev/224189/arch/Linux/installer/havok-0.1-linux-20110316.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>linux</string>
-          </map>
-          <key>windows</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>534c5217692bef44a60a3cf26ccb08d9</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-havok-source_Windows-vs2010/rev/245961/arch/CYGWIN/installer/havok_source-2011.2-windows-20111130.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>windows</string>
-          </map>
-        </map>
-      </map>
       <key>jpeglib</key>
       <map>
         <key>license</key>
@@ -1143,110 +1095,14 @@
           </map>
         </map>
       </map>
-      <key>llconvexdecomposition</key>
-      <map>
-        <key>license</key>
-        <string>llconvexdecomposition</string>
-        <key>license_file</key>
-        <string>on_file</string>
-        <key>name</key>
-        <string>llconvexdecomposition</string>
-        <key>platforms</key>
-        <map>
-          <key>darwin</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>362654a472ef7368d4c803ae3fb89d95</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/Darwin/installer/llconvexdecomposition-0.1-darwin-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>darwin</string>
-          </map>
-          <key>linux</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>c7801d899daec5338fbe95053255b7e7</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/Linux/installer/llconvexdecomposition-0.1-linux-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>linux</string>
-          </map>
-          <key>windows</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>6ecf2f85f03c5ae87fe45769566a5660</string>
-              <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/CYGWIN/installer/llconvexdecomposition-0.1-windows-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>windows</string>
-          </map>
-        </map>
-      </map>
-      <key>llconvexdecompositionstub</key>
-      <map>
-        <key>license</key>
-        <string>lgpl</string>
-        <key>license_file</key>
-        <string>LICENSES/LLConvexDecompositionStubLicense.txt</string>
-        <key>name</key>
-        <string>llconvexdecompositionstub</string>
-        <key>platforms</key>
-        <map>
-          <key>darwin</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>a5f53e09f67271fd50f1131ffdda9d27</string>
-              <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/Darwin/installer/llconvexdecompositionstub-0.3-darwin-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>darwin</string>
-          </map>
-          <key>linux</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>0006a964f1497f55a5f181b7042d2d22</string>
-              <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/Linux/installer/llconvexdecompositionstub-0.3-linux-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>linux</string>
-          </map>
-          <key>windows</key>
-          <map>
-            <key>archive</key>
-            <map>
-              <key>hash</key>
-              <string>b859e7e3bb03ebb467f0309f46422995</string>
-              <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/CYGWIN/installer/llconvexdecompositionstub-0.3-windows-20110819.tar.bz2</string>
-            </map>
-            <key>name</key>
-            <string>windows</string>
-          </map>
-        </map>
-      </map>
-      <key>llpathinglib</key>
+      <key>llphysicsextensions</key>
       <map>
         <key>license</key>
-        <string>llpathinglib</string>
+        <string>llphysicsextensions</string>
         <key>license_file</key>
-        <string>LICENSES/llpathinglib.txt</string>
+        <string>LICENSES/llphysicsextensions.txt</string>
         <key>name</key>
-        <string>llpathinglib</string>
+        <string>llphysicsextensions</string>
         <key>platforms</key>
         <map>
           <key>linux</key>
@@ -1254,9 +1110,9 @@
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>2acaf6db01ba22e12b8e3a66fb4d647b</string>
+              <string>c863c80eb41b330f978a8440a7c16c1b</string>
               <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/248387/arch/Linux/installer/llpathinglibrary-0.1-linux-20120125.tar.bz2</string>
+              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/248410/arch/Linux/installer/llphysicsextensions-0.1-linux-20120125.tar.bz2</string>
             </map>
             <key>name</key>
             <string>linux</string>
@@ -1266,9 +1122,9 @@
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>ff8541aecfcb301d6dcb5f8a59f83a91</string>
+              <string>7f61547aa706e28504b2bab532f065d9</string>
               <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/248387/arch/CYGWIN/installer/llpathinglibrary-0.1-windows-20120125.tar.bz2</string>
+              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/248410/arch/CYGWIN/installer/llphysicsextensions-0.1-windows-20120125.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows</string>
diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt
index 279d577a278..7fccf3327fd 100644
--- a/indra/cmake/CMakeLists.txt
+++ b/indra/cmake/CMakeLists.txt
@@ -42,7 +42,6 @@ set(cmake_SOURCE_FILES
     LLAudio.cmake
     LLCharacter.cmake
     LLCommon.cmake
-    LLConvexDecomposition.cmake
     LLCrashLogger.cmake
     LLDatabase.cmake
     LLImage.cmake
@@ -53,6 +52,7 @@ set(cmake_SOURCE_FILES
     LLMessage.cmake
     LLPlugin.cmake
     LLPrimitive.cmake
+    LLPhysicsExtensions.cmake
     LLRender.cmake
     LLScene.cmake
     LLTestCommand.cmake
diff --git a/indra/cmake/LLConvexDecomposition.cmake b/indra/cmake/LLConvexDecomposition.cmake
deleted file mode 100644
index 17318533008..00000000000
--- a/indra/cmake/LLConvexDecomposition.cmake
+++ /dev/null
@@ -1,12 +0,0 @@
-# -*- cmake -*-
-include(Prebuilt)
-
-set(LLCONVEXDECOMP_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include)
-  
-# if (INSTALL_PROPRIETARY AND NOT STANDALONE)
-#   use_prebuilt_binary(llconvexdecomposition)
-#   set(LLCONVEXDECOMP_LIBRARY llconvexdecomposition)
-# else (INSTALL_PROPRIETARY AND NOT STANDALONE)
-  use_prebuilt_binary(llconvexdecompositionstub)
-  set(LLCONVEXDECOMP_LIBRARY llconvexdecompositionstub)
-# endif (INSTALL_PROPRIETARY AND NOT STANDALONE)
diff --git a/indra/cmake/LLPathingLib.cmake b/indra/cmake/LLPathingLib.cmake
deleted file mode 100644
index 8e622d83db7..00000000000
--- a/indra/cmake/LLPathingLib.cmake
+++ /dev/null
@@ -1,23 +0,0 @@
-# -*- cmake -*-
-include(Prebuilt)
-
-use_prebuilt_binary(llpathinglib)
-set(LLPATHING_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/libraries/include)
-
-
-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
-
-    debug     ${LL_PATHING_DEBUG_LIB}
-    optimized ${LL_PATHING_RELEASE_LIB}
-)
-
-if (LINUX)
-    list(INSERT LLPATHING_LIBRARIES 0 -Wl,--start-group)
-    list(APPEND LLPATHING_LIBRARIES -Wl,--end-group)
-endif (LINUX)
diff --git a/indra/cmake/LLPhysicsExtensions.cmake b/indra/cmake/LLPhysicsExtensions.cmake
new file mode 100644
index 00000000000..252be44d300
--- /dev/null
+++ b/indra/cmake/LLPhysicsExtensions.cmake
@@ -0,0 +1,31 @@
+# -*- cmake -*-
+include(Prebuilt)
+
+use_prebuilt_binary(llpysicsextensions)
+set(LLPHYSICS_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/lib/include)
+
+set(LLPHYSICS_DEBUG_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug)
+set(LLPHYSICS_RELEASE_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release)
+
+find_library(LL_PHYSICS_DEBUG_LIB llpathinglib PATHS ${LLPHYSICS_DEBUG_LIBRARY_PATH})
+find_library(LL_PHYSICS_RELEASE_LIB llpathinglib PATHS ${LLPHYSICS_RELEASE_LIBRARY_PATH})
+
+set(LLPHYSICS_LIBRARIES
+
+    debug     ${LL_PHYSICS_DEBUG_LIB}
+    optimized ${LL_PHYSICS_RELEASE_LIB}
+)
+
+if (LINUX)
+    list(INSERT LLPHYSICS_LIBRARIES 0 -Wl,--start-group)
+    list(APPEND LLPHYSICS_LIBRARIES -Wl,--end-group)
+endif (LINUX)
+
+# if (INSTALL_PROPRIETARY AND NOT STANDALONE)
+#   use_prebuilt_binary(llconvexdecomposition)
+#   set(LLCONVEXDECOMP_LIBRARY llconvexdecomposition)
+# else (INSTALL_PROPRIETARY AND NOT STANDALONE)
+#  use_prebuilt_binary(llconvexdecompositionstub)
+#  set(LLCONVEXDECOMP_LIBRARY llconvexdecompositionstub)
+# endif (INSTALL_PROPRIETARY AND NOT STANDALONE)
+
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 81ab4116b01..9a15b65f838 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -17,13 +17,12 @@ include(JsonCpp)
 include(LLAudio)
 include(LLCharacter)
 include(LLCommon)
-include(LLConvexDecomposition)
 include(LLImage)
 include(LLImageJ2COJ)
 include(LLInventory)
 include(LLMath)
 include(LLMessage)
-include(LLPathingLib)
+include(LLPhysicsExtensions)
 include(LLPlugin)
 include(LLPrimitive)
 include(LLRender)
@@ -52,8 +51,7 @@ include_directories(
     ${LLAUDIO_INCLUDE_DIRS}
     ${LLCHARACTER_INCLUDE_DIRS}
     ${LLCOMMON_INCLUDE_DIRS}
-    ${LLCONVEXDECOMP_INCLUDE_DIRS}
-    ${LLPATHING_INCLUDE_DIRS}
+    ${LLPHYSICS_INCLUDE_DIRS}
     ${FMOD_INCLUDE_DIR}
     ${LLIMAGE_INCLUDE_DIRS}
     ${LLKDU_INCLUDE_DIRS}
@@ -1776,7 +1774,7 @@ target_link_libraries(${VIEWER_BINARY_NAME}
     ${OPENSSL_LIBRARIES}
     ${CRYPTO_LIBRARIES}
     ${LLLOGIN_LIBRARIES}
-    ${LLCONVEXDECOMP_LIBRARY}
+    ${LLPHYSICS_LIBRARIES}
     ${TCMALLOC_LIBRARIES}
     )
 
-- 
GitLab