From 1e1a38d5745a680c712be9bcc088a75f6eafa7da Mon Sep 17 00:00:00 2001
From: Nat Goodspeed <nat@lindenlab.com>
Date: Thu, 30 Jul 2009 18:51:17 -0400
Subject: [PATCH] DEV-34837: Improve Mac support for LLCOMMON_LINK_SHARED.
 Update Mac apr_suite package, introducing libapr-1.0.3.7.dylib and
 libaprutil-1.0.3.8.dylib. We want to use dynamic APR libraries, but
 libllcommon.dylib isn't allowed to depend on .so libraries: must be .dylibs
 themselves. Tweak APR.cmake to reference the aforementioned .dylibs when on
 Mac with LLCOMMON_LINK_SHARED set. Eliminate some redundancy in Windows
 section. For .dylibs, RunBuildTest.cmake must set DYLD_LIBRARY_PATH:
 LD_LIBRARY_PATH only affects search for .so files.

PENDING:
CMake dependencies broken? With LLCOMMON_LINK_SHARED on, it seems we need to
build libllcommon.dylib explicitly before full build can succeed.
This snapshot does NOT yet copy the llcommon, apr or aprutil dylibs into the
app bundle.
---
 indra/cmake/APR.cmake | 53 ++++++++++++++++++++-----------------------
 install.xml           |  4 ++--
 2 files changed, 27 insertions(+), 30 deletions(-)

diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake
index efd47f756a9..f4706dd4f27 100644
--- a/indra/cmake/APR.cmake
+++ b/indra/cmake/APR.cmake
@@ -14,40 +14,37 @@ else (STANDALONE)
   use_prebuilt_binary(apr_suite)
   if (WINDOWS)
     if (LLCOMMON_LINK_SHARED)
-      set(APR_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libapr-1.lib
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.lib
-        )
-      set(APRICONV_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libapriconv-1.lib
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libapriconv-1.lib
-        )
-      set(APRUTIL_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libaprutil-1.lib ${APRICONV_LIBRARIES}
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.lib ${APRICONV_LIBRARIES}
-        )
+      set(APR_selector "lib")
     else (LLCOMMON_LINK_SHARED)
-      set(APR_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/apr-1.lib
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/apr-1.lib
-        )
-      set(APRICONV_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/apriconv-1.lib
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/apriconv-1.lib
-        )
-      set(APRUTIL_LIBRARIES 
-        debug ${ARCH_PREBUILT_DIRS_DEBUG}/aprutil-1.lib ${APRICONV_LIBRARIES}
-        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/aprutil-1.lib ${APRICONV_LIBRARIES}
-        )
+      set(APR_selector "")
     endif (LLCOMMON_LINK_SHARED)
+    set(APR_LIBRARIES 
+      debug ${ARCH_PREBUILT_DIRS_DEBUG}/${APR_selector}apr-1.lib
+      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/${APR_selector}apr-1.lib
+      )
+    set(APRICONV_LIBRARIES 
+      debug ${ARCH_PREBUILT_DIRS_DEBUG}/${APR_selector}apriconv-1.lib
+      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/${APR_selector}apriconv-1.lib
+      )
+    set(APRUTIL_LIBRARIES 
+      debug ${ARCH_PREBUILT_DIRS_DEBUG}/${APR_selector}aprutil-1.lib ${APRICONV_LIBRARIES}
+      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/${APR_selector}aprutil-1.lib ${APRICONV_LIBRARIES}
+      )
   elseif (DARWIN)
+    if (LLCOMMON_LINK_SHARED)
+      set(APR_selector     "0.3.7.dylib")
+      set(APRUTIL_selector "0.3.8.dylib")
+    else (LLCOMMON_LINK_SHARED)
+      set(APR_selector     "a")
+      set(APRUTIL_selector "a")
+    endif (LLCOMMON_LINK_SHARED)
     set(APR_LIBRARIES 
-      debug ${ARCH_PREBUILT_DIRS_DEBUG}/libapr-1.a
-      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.a
+      debug ${ARCH_PREBUILT_DIRS_DEBUG}/libapr-1.${APR_selector}
+      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.${APR_selector}
       )
     set(APRUTIL_LIBRARIES 
-      debug ${ARCH_PREBUILT_DIRS_DEBUG}/libaprutil-1.a
-      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.a
+      debug ${ARCH_PREBUILT_DIRS_DEBUG}/libaprutil-1.${APRUTIL_selector}
+      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.${APRUTIL_selector}
       )
     set(APRICONV_LIBRARIES iconv)
   else (WINDOWS)
diff --git a/install.xml b/install.xml
index 787defbb0f3..379af00af20 100644
--- a/install.xml
+++ b/install.xml
@@ -85,9 +85,9 @@
           <key>darwin</key>
           <map>
             <key>md5sum</key>
-            <string>abd07d760cdc7d23da3b861f34b09c92</string>
+            <string>c4de63e9416a800155aff3f96b149a0c</string>
             <key>url</key>
-            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/apr_suite-1.2.8-darwin-20080812.tar.bz2</uri>
+            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/apr_suite-1.3.7-darwin-20090730.tar.bz2</uri>
           </map>
           <key>linux</key>
           <map>
-- 
GitLab