From 4bff7b085381a514afb7e8546beaac5ad6117f9b Mon Sep 17 00:00:00 2001
From: brad kittenbrink <brad@lindenlab.com>
Date: Wed, 4 Nov 2009 18:50:35 -0500
Subject: [PATCH] Wrap-up work for DEV-41724/DEV-41725 - normalizing shared
 library staging on all 3 platforms. Should now work out of the box on all 3
 platforms and in the debugger.

---
 indra/cmake/Linking.cmake     | 2 +-
 indra/llcommon/CMakeLists.txt | 9 ++++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake
index cce73ba08bc..bca99caf2a5 100644
--- a/indra/cmake/Linking.cmake
+++ b/indra/cmake/Linking.cmake
@@ -22,7 +22,7 @@ if (NOT STANDALONE)
     set(ARCH_PREBUILT_DIRS ${ARCH_PREBUILT_DIRS_RELEASE})
     set(ARCH_PREBUILT_DIRS_DEBUG ${ARCH_PREBUILT_DIRS_RELEASE})
     set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs CACHE FILEPATH "Location of staged DLLs")
-    set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs CACHE FILEPATH "Location of staged executables")
+    set(EXE_STAGING_DIR "${CMAKE_BINARY_DIR}/sharedlibs/\$(CONFIGURATION)" CACHE FILEPATH "Location of staged executables")
   endif (WINDOWS)
 endif (NOT STANDALONE)
 
diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt
index 7a7281a4a7e..1e39a4474fe 100644
--- a/indra/llcommon/CMakeLists.txt
+++ b/indra/llcommon/CMakeLists.txt
@@ -248,6 +248,13 @@ if(LLCOMMON_LINK_SHARED)
         if(NOT WINDOWS)
           get_target_property(LLCOMMON_PATH llcommon LOCATION)
           get_filename_component(LLCOMMON_FILE ${LLCOMMON_PATH} NAME)
+          if(DARWIN)
+            set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}/Resources)
+          else(DARWIN)
+            set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR})
+          endif(DARWIN)
+
+          # *TODO - maybe make this a symbolic link? -brad
           add_custom_command(
             TARGET llcommon POST_BUILD
             COMMAND ${CMAKE_COMMAND}
@@ -255,7 +262,7 @@ if(LLCOMMON_LINK_SHARED)
               -E
               copy_if_different
               ${LLCOMMON_PATH}
-              ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}/${LLCOMMON_FILE}
+              ${SHARED_LIB_STAGING_DIR_CONFIG}/${LLCOMMON_FILE}
             COMMENT "Copying llcommon to the staging folder."
             )
         endif(NOT WINDOWS)
-- 
GitLab