diff options
| -rw-r--r-- | autobuild.xml | 16 | ||||
| -rwxr-xr-x | build.sh | 4 | ||||
| -rw-r--r-- | indra/cmake/Havok.cmake | 128 | ||||
| -rwxr-xr-x | indra/newview/viewer_manifest.py | 2 | 
4 files changed, 68 insertions, 82 deletions
| diff --git a/autobuild.xml b/autobuild.xml index 1ff5d8ade4..85211414b6 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -1376,9 +1376,9 @@              <key>archive</key>              <map>                <key>hash</key> -              <string>cbaa7619050123c3fd2a88959f88bd47</string> +              <string>71a1a177654dc14242bb5ea96fbae0d7</string>                <key>url</key> -              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/749/1553/havok_source-2012.1-2-darwin64-500739.tar.bz2</string> +              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/4475/13298/havok_source-2012.1-2-darwin64-504463.tar.bz2</string>              </map>              <key>name</key>              <string>darwin64</string> @@ -1412,9 +1412,9 @@              <key>archive</key>              <map>                <key>hash</key> -              <string>dab55cc0555d7126fda925e20af851ea</string> +              <string>b048e59efc0c51cb55c20445a2cb7944</string>                <key>url</key> -              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/1194/2807/havok_source-2012.1-2-windows-501181.tar.bz2</string> +              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/4477/13310/havok_source-2012.1-2-windows-504463.tar.bz2</string>              </map>              <key>name</key>              <string>windows</string> @@ -1424,9 +1424,9 @@              <key>archive</key>              <map>                <key>hash</key> -              <string>7bbc1c3512a5665b7576b4b0357a9eb7</string> +              <string>7a120851d55adefdea504af8b2905d31</string>                <key>url</key> -              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/1195/2816/havok_source-2012.1-2-windows64-501181.tar.bz2</string> +              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/ct2/4476/13304/havok_source-2012.1-2-windows64-504463.tar.bz2</string>              </map>              <key>name</key>              <string>windows64</string> @@ -3340,7 +3340,6 @@                  <array>                    <string>-G</string>                    <string>Xcode</string> -                  <string>-DHAVOK:BOOL=OFF</string>                  </array>                </map>                <key>default</key> @@ -3368,7 +3367,6 @@                  <array>                    <string>-G</string>                    <string>Xcode</string> -                  <string>-DHAVOK:BOOL=OFF</string>                  </array>                </map>                <key>name</key> @@ -3402,7 +3400,6 @@                  <array>                    <string>-G</string>                    <string>Xcode</string> -                  <string>-DHAVOK:BOOL=OFF</string>                  </array>                </map>                <key>name</key> @@ -3428,7 +3425,6 @@                  <array>                    <string>-G</string>                    <string>Xcode</string> -                  <string>-DHAVOK:BOOL=OFF</string>                  </array>                </map>                <key>name</key> @@ -97,14 +97,14 @@ pre_build()      # nat 2016-12-20: disable HAVOK on Mac until we get a 64-bit Mac build.      RELEASE_CRASH_REPORTING=ON +    HAVOK=ON      SIGNING=()      if [ "$arch" == "Darwin" ] -    then HAVOK=OFF +    then           if [ "$variant" == "Release" ]           then SIGNING=("-DENABLE_SIGNING:BOOL=YES" \                         "-DSIGNING_IDENTITY:STRING=Developer ID Application: Linden Research, Inc.")           fi -    else HAVOK=ON      fi      "$autobuild" configure --quiet -c $variant -- \ diff --git a/indra/cmake/Havok.cmake b/indra/cmake/Havok.cmake index 99e7334118..811a126b8f 100644 --- a/indra/cmake/Havok.cmake +++ b/indra/cmake/Havok.cmake @@ -8,6 +8,11 @@ use_prebuilt_binary(havok-source)  set(Havok_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/havok/Source)  list(APPEND Havok_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/havok/Demo) +# HK_DISABLE_IMPLICIT_VVECTOR3_CONVERSION suppresses an intended conversion +# function which Xcode scolds us will unconditionally enter infinite +# recursion if called. This hides that function. +add_definitions("-DHK_DISABLE_IMPLICIT_VVECTOR3_CONVERSION") +  set(HAVOK_DEBUG_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-fulldebug)  set(HAVOK_RELEASE_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release/havok) @@ -49,89 +54,74 @@ unset(HK_DEBUG_LIBRARIES)  unset(HK_RELEASE_LIBRARIES)  unset(HK_RELWITHDEBINFO_LIBRARIES) +if (DEBUG_PREBUILT) +  # DEBUG_MESSAGE() displays debugging message +  function(DEBUG_MESSAGE) +    # prints message args separated by semicolons rather than spaces, +    # but making it pretty is a lot more work +    message(STATUS "${ARGN}") +  endfunction(DEBUG_MESSAGE) +else (DEBUG_PREBUILT) +  # without DEBUG_PREBUILT, DEBUG_MESSAGE() is a no-op +  function(DEBUG_MESSAGE) +  endfunction(DEBUG_MESSAGE) +endif (DEBUG_PREBUILT) + +# DEBUG_EXEC() reports each execute_process() before invoking +function(DEBUG_EXEC) +  DEBUG_MESSAGE(${ARGN}) +  execute_process(COMMAND ${ARGN}) +endfunction(DEBUG_EXEC) +  # *TODO: Figure out why we need to extract like this...  foreach(HAVOK_LIB ${HAVOK_LIBS}) -        find_library(HAVOK_DEBUG_LIB_${HAVOK_LIB}   ${HAVOK_LIB} PATHS ${HAVOK_DEBUG_LIBRARY_PATH}) -        find_library(HAVOK_RELEASE_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELEASE_LIBRARY_PATH}) -        find_library(HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}) -         -        if(LINUX) -            set(debug_dir "${HAVOK_DEBUG_LIBRARY_PATH}/${HAVOK_LIB}") -            set(release_dir "${HAVOK_RELEASE_LIBRARY_PATH}/${HAVOK_LIB}") -            set(relwithdebinfo_dir "${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}/${HAVOK_LIB}") +  find_library(HAVOK_DEBUG_LIB_${HAVOK_LIB}   ${HAVOK_LIB} PATHS ${HAVOK_DEBUG_LIBRARY_PATH}) +  find_library(HAVOK_RELEASE_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELEASE_LIBRARY_PATH}) +  find_library(HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}) +   +  if(LINUX) +    set(debug_dir "${HAVOK_DEBUG_LIBRARY_PATH}/${HAVOK_LIB}") +    set(release_dir "${HAVOK_RELEASE_LIBRARY_PATH}/${HAVOK_LIB}") +    set(relwithdebinfo_dir "${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}/${HAVOK_LIB}")      # Try to avoid extracting havok library each time we run cmake.      if("${havok_${HAVOK_LIB}_extracted}" STREQUAL "" AND EXISTS "${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted")        file(READ ${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted "havok_${HAVOK_LIB}_extracted") -      if(DEBUG_PREBUILT) -        message(STATUS "havok_${HAVOK_LIB}_extracted: \"${havok_${HAVOK_LIB}_extracted}\"") -      endif(DEBUG_PREBUILT) +      DEBUG_MESSAGE("havok_${HAVOK_LIB}_extracted: \"${havok_${HAVOK_LIB}_extracted}\"")      endif("${havok_${HAVOK_LIB}_extracted}" STREQUAL "" AND EXISTS "${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted")      if(${PREBUILD_TRACKING_DIR}/havok_source_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted OR NOT ${havok_${HAVOK_LIB}_extracted} EQUAL 0) -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "Extracting ${HAVOK_LIB}...") -      endif(DEBUG_PREBUILT) -      set(cmd "mkdir") - -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "${cmd} ${debug_dir}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_DEBUG_LIBRARY_PATH} ARGS ${debug_dir} OUTPUT_VARIABLE rv) - -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "${cmd} ${release_dir}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_RELEASE_LIBRARY_PATH} ARGS ${release_dir} OUTPUT_VARIABLE rv) - -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "${cmd} ${relwithdebinfo_dir}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH} ARGS ${relwithdebinfo_dir} OUTPUT_VARIABLE rv) - -            set(cmd "ar") -            set(arg " -xv") -            set(arg "${arg} ../lib${HAVOK_LIB}.a") -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "cd ${debug_dir} && ${cmd} ${arg}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${debug_dir} ARGS ${arg} OUTPUT_VARIABLE rv) - -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "cd ${release_dir} && ${cmd} ${arg}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${release_dir} ARGS ${arg} OUTPUT_VARIABLE rv) - -      if(DEBUG_PREBUILT) -        MESSAGE(STATUS "cd ${relwithdebinfo_dir} && ${cmd} ${arg}") -      endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${relwithdebinfo_dir} ARGS ${arg} OUTPUT_VARIABLE rv) +      DEBUG_MESSAGE("Extracting ${HAVOK_LIB}...") + +      foreach(lib ${debug_dir} ${release_dir} ${relwithdebinfo_dir}) +        DEBUG_EXEC("mkdir" ${lib}) +        DEBUG_EXEC("ar" "-xv" "../lib${HAVOK_LIB}.a" +          WORKING_DIRECTORY ${lib}) +      endforeach(lib)        # Just assume success for now.        set(havok_${HAVOK_LIB}_extracted 0)        file(WRITE ${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted "${havok_${HAVOK_LIB}_extracted}") -    endif(${PREBUILD_TRACKING_DIR}/havok_source_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/havok_${HAVOK_LIB}_extracted OR NOT ${havok_${HAVOK_LIB}_extracted} EQUAL 0) - -            file(GLOB extracted_debug "${debug_dir}/*.o") -            file(GLOB extracted_release "${release_dir}/*.o") -            file(GLOB extracted_relwithdebinfo "${relwithdebinfo_dir}/*.o") - -    if(DEBUG_PREBUILT) -      MESSAGE(STATUS "extracted_debug ${debug_dir}/*.o") -      MESSAGE(STATUS "extracted_release ${release_dir}/*.o") -      MESSAGE(STATUS "extracted_relwithdebinfo ${relwithdebinfo_dir}/*.o") -    endif(DEBUG_PREBUILT) - -            list(APPEND HK_DEBUG_LIBRARIES ${extracted_debug}) -            list(APPEND HK_RELEASE_LIBRARIES ${extracted_release}) -            list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${extracted_relwithdebinfo}) -        else(LINUX) -        # Win32 -            list(APPEND HK_DEBUG_LIBRARIES   ${HAVOK_DEBUG_LIB_${HAVOK_LIB}}) -            list(APPEND HK_RELEASE_LIBRARIES ${HAVOK_RELEASE_LIB_${HAVOK_LIB}}) -            list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB}}) -        endif (LINUX) +    endif() + +    file(GLOB extracted_debug "${debug_dir}/*.o") +    file(GLOB extracted_release "${release_dir}/*.o") +    file(GLOB extracted_relwithdebinfo "${relwithdebinfo_dir}/*.o") + +    DEBUG_MESSAGE("extracted_debug ${debug_dir}/*.o") +    DEBUG_MESSAGE("extracted_release ${release_dir}/*.o") +    DEBUG_MESSAGE("extracted_relwithdebinfo ${relwithdebinfo_dir}/*.o") + +    list(APPEND HK_DEBUG_LIBRARIES ${extracted_debug}) +    list(APPEND HK_RELEASE_LIBRARIES ${extracted_release}) +    list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${extracted_relwithdebinfo}) +  else(LINUX) +    # Win32 +    list(APPEND HK_DEBUG_LIBRARIES   ${HAVOK_DEBUG_LIB_${HAVOK_LIB}}) +    list(APPEND HK_RELEASE_LIBRARIES ${HAVOK_RELEASE_LIB_${HAVOK_LIB}}) +    list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB}}) +  endif (LINUX)  endforeach(HAVOK_LIB)  endif(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index fba8a8b159..11769c59a8 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -986,7 +986,7 @@ class DarwinManifest(ViewerManifest):          # make sure we don't have stale files laying about          self.remove(sparsename, finalname) -        self.run_command('hdiutil create %(sparse)r -volname %(vol)r -fs HFS+ -type SPARSE -megabytes 1000 -layout SPUD' % { +        self.run_command('hdiutil create %(sparse)r -volname %(vol)r -fs HFS+ -type SPARSE -megabytes 1300 -layout SPUD' % {                  'sparse':sparsename,                  'vol':volname}) | 
