diff options
| author | palmer@945battery-guestB-224.lindenlab.com <palmer@945battery-guestB-224.lindenlab.com> | 2009-07-09 17:11:45 -0700 | 
|---|---|---|
| committer | palmer@945battery-guestB-224.lindenlab.com <palmer@945battery-guestB-224.lindenlab.com> | 2009-07-09 17:11:45 -0700 | 
| commit | 725de557ec1f8dfc3178edd3a19896473863e717 (patch) | |
| tree | 82180a22d83808b1bdaed3f25025ee4cc18bb4ec | |
| parent | bc852ca9276e19ce6cb75d189d58d783a7df5e6f (diff) | |
| parent | b5fef75dad1c0992c63ede83b96da0b1db1f9a37 (diff) | |
Merge of mani's changes... and who knows what.  Mercurial wanted a merge, but I had no changes
| -rw-r--r-- | indra/cmake/LLAddBuildTest.cmake | 9 | ||||
| -rw-r--r-- | indra/cmake/Linking.cmake | 1 | ||||
| -rw-r--r-- | indra/llcommon/CMakeLists.txt | 10 | ||||
| -rw-r--r-- | indra/newview/CMakeLists.txt | 22 | ||||
| -rwxr-xr-x | indra/newview/viewer_manifest.py | 12 | 
5 files changed, 43 insertions, 11 deletions
| diff --git a/indra/cmake/LLAddBuildTest.cmake b/indra/cmake/LLAddBuildTest.cmake index 4a61725e09..5717bc620a 100644 --- a/indra/cmake/LLAddBuildTest.cmake +++ b/indra/cmake/LLAddBuildTest.cmake @@ -118,9 +118,16 @@ MACRO(LL_ADD_PROJECT_UNIT_TESTS project sources)      IF(LL_TEST_VERBOSE)        MESSAGE(STATUS "LL_ADD_PROJECT_UNIT_TESTS ${name} test_cmd  = ${TEST_CMD}")      ENDIF(LL_TEST_VERBOSE) +	 +	IF(WINDOWS) +	  set(LD_LIBRARY_PATH ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}) +	ELSE(WINDOWS) +	  set(LD_LIBRARY_PATH ${ARCH_PREBUILT_DIRS}:/usr/lib) +	ENDIF(WINDOWS) +      SET(TEST_SCRIPT_CMD         ${CMAKE_COMMAND}  -      -DLD_LIBRARY_PATH=${ARCH_PREBUILT_DIRS}:/usr/lib +      -DLD_LIBRARY_PATH=${LD_LIBRARY_PATH}        -DTEST_CMD:STRING="${TEST_CMD}"         -P ${CMAKE_SOURCE_DIR}/cmake/RunBuildTest.cmake        ) diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake index eaa8a6dc29..ad52a82b20 100644 --- a/indra/cmake/Linking.cmake +++ b/indra/cmake/Linking.cmake @@ -5,6 +5,7 @@ if (NOT STANDALONE)      set(ARCH_PREBUILT_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib)      set(ARCH_PREBUILT_DIRS_RELEASE ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib/release)      set(ARCH_PREBUILT_DIRS_DEBUG ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib/debug) +	set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)    elseif (LINUX)      if (VIEWER)        set(ARCH_PREBUILT_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib_release_client) diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt index 06a295b410..aaeb4eebc3 100644 --- a/indra/llcommon/CMakeLists.txt +++ b/indra/llcommon/CMakeLists.txt @@ -9,6 +9,10 @@ include(Linking)  include(Boost)  include (Pth) +if (WINDOWS) +    include(CopyWinLibs) +endif (WINDOWS) +  include_directories(      ${EXPAT_INCLUDE_DIRS}      ${LLCOMMON_INCLUDE_DIRS} @@ -234,6 +238,10 @@ list(APPEND llcommon_SOURCE_FILES ${llcommon_HEADER_FILES})  if(LLCOMMON_LINK_SHARED)      add_library (llcommon SHARED ${llcommon_SOURCE_FILES})      add_definitions(-DLL_COMMON_BUILD=1) +	# *FIX:Mani --- +	# llcommon.dll get written to the DLL staging directory. +	# Also this directory is shared with RunBuildTest.cmake, y'know, for the tests. +	set_target_properties(llcommon PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${SHARED_LIB_STAGING_DIR})  else(LLCOMMON_LINK_SHARED)      add_library (llcommon ${llcommon_SOURCE_FILES})  endif(LLCOMMON_LINK_SHARED) @@ -250,6 +258,8 @@ target_link_libraries(      ${PTH_LIBRARIES}      ) +add_dependencies(llcommon stage_third_party_libs) +  include(LLAddBuildTest)  SET(llcommon_TEST_SOURCE_FILES    # WARNING: Please don't write tests against LLCommon or LLMath until this issue is resolved: https://jira.lindenlab.com/jira/browse/DEV-29456 diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 53a59031ed..d6108ab06e 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -38,10 +38,6 @@ include(LLKDU)  include(ViewerMiscLibs)  include(LLLogin) -if (WINDOWS) -    include(CopyWinLibs) -endif (WINDOWS) -  include_directories(      ${DBUSGLIB_INCLUDE_DIRS}      ${ELFIO_INCLUDE_DIR} @@ -1252,7 +1248,23 @@ if (WINDOWS)          COMMENT "Copying message.xml to the runtime folder."          ) -    add_dependencies(${VIEWER_BINARY_NAME} copy_win_libs) +	if(WINDOWS) +      # Copy Win Libs... +	  # This happens at build time, not config time. We can't glob files in this cmake. +	  # *FIX:Mani Write a sub script to glob the files... +	  add_custom_command( +        TARGET ${VIEWER_BINARY_NAME} PRE_BUILD +        COMMAND ${CMAKE_COMMAND} +        ARGS +          -E +          copy_directory +          ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR} +         ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR} +        COMMENT "Copying staged dlls." +		) +	endif(WINDOWS) +	 +	      if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)        add_dependencies(${VIEWER_BINARY_NAME} copy_win_scripts) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 7edf0bad6b..0217c8f864 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -168,9 +168,8 @@ class WindowsManifest(ViewerManifest):          # need to get the llcommon.dll from any of the build directories as well
          try:
 -            self.path(self.find_existing_file('../llcommon/%s/llcommon.dll' % self.args['configuration']),
 -                  dst='llcommon.dll')
              if self.prefix(src=self.args['configuration'], dst=""):
 +                self.path('llcommon.dll')
                  self.path('libapr-1.dll')
                  self.path('libaprutil-1.dll')
                  self.path('libapriconv-1.dll')
 @@ -181,8 +180,7 @@ class WindowsManifest(ViewerManifest):          # need to get the kdu dll from any of the build directories as well
          try:
 -            self.path(self.find_existing_file('../llkdu/%s/llkdu.dll' % self.args['configuration'],
 -                '../../libraries/i686-win32/lib/release/llkdu.dll'), 
 +            self.path(self.find_existing_file('%s/llkdu.dll' % self.args['configuration']), 
                    dst='llkdu.dll')
              pass
          except:
 @@ -394,7 +392,11 @@ class WindowsManifest(ViewerManifest):          # We use the Unicode version of NSIS, available from
          # http://www.scratchpaper.com/
 -        NSIS_path = 'C:\\Program Files\\NSIS\\Unicode\\makensis.exe'
 +        # Check two paths, one for Program Files, and one for Program Files (x86).
 +        # Yay 64bit windows.
 +        NSIS_path = os.path.expandvars('${ProgramFiles}\\NSIS\\Unicode\\makensis.exe')
 +        if not os.path.exists(NSIS_path):
 +            NSIS_path = os.path.expandvars('${ProgramFiles(x86)}\\NSIS\\Unicode\\makensis.exe')
          self.run_command('"' + proper_windows_path(NSIS_path) + '" ' + self.dst_path_of(tempfile))
          # self.remove(self.dst_path_of(tempfile))
          # If we're on a build machine, sign the code using our Authenticode certificate. JC
 | 
