diff options
| author | brad kittenbrink <brad@lindenlab.com> | 2009-06-30 19:12:39 -0400 | 
|---|---|---|
| committer | brad kittenbrink <brad@lindenlab.com> | 2009-06-30 19:12:39 -0400 | 
| commit | 7c1742ec7d626ff34084624729b338f9abc58686 (patch) | |
| tree | f47e2e3079a906b08e34179abbca1c4bdf18a2ae | |
| parent | df9a52cd2e7e43214343afe55c6af7e696afc92c (diff) | |
Added hack for fetching eventlet in place of svn:externals.
| -rw-r--r-- | .hgignore | 1 | ||||
| -rw-r--r-- | indra/cmake/Externals.cmake | 34 | ||||
| -rw-r--r-- | indra/cmake/FindSVN.cmake | 34 | ||||
| -rw-r--r-- | indra/viewer_components/CMakeLists.txt | 7 | 
4 files changed, 76 insertions, 0 deletions
| @@ -11,6 +11,7 @@ indra/lib/mono/1.0/*.dll  indra/lib/mono/indra/*.dll  indra/lib/mono/indra/*.exe  indra/lib/mono/indra/*.pdb +indra/lib/python/eventlet/  indra/llwindow/glh/glh_linear.h  indra/newview/app_settings/mozilla  indra/newview/app_settings/mozilla-runtime-* diff --git a/indra/cmake/Externals.cmake b/indra/cmake/Externals.cmake new file mode 100644 index 0000000000..26f3b56049 --- /dev/null +++ b/indra/cmake/Externals.cmake @@ -0,0 +1,34 @@ +# -*- cmake -*- + +include(Python) +include(FindSVN) + +macro (use_svn_external _binary _path _url _rev) +  if (NOT STANDALONE) +    if(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) +      if(SVN_FOUND) +        if(DEBUG_EXTERNALS) +          message("cd ${_path} && ${SVN_EXECUTABLE} checkout -r ${_rev} ${_url} ${_binary}") +        endif(DEBUG_EXTERNALS) +        execute_process(COMMAND ${SVN_EXECUTABLE} +          checkout +          -r ${_rev} +          ${_url} +          ${_binary} +          WORKING_DIRECTORY ${_path} +          RESULT_VARIABLE ${_binary}_installed +          ) +      else(SVN_FOUND) +        message(FATAL_ERROR "Failed to find SVN_EXECUTABLE") +      endif(SVN_FOUND) +      file(WRITE ${CMAKE_BINARY_DIR}/temp/${_binary}_installed "${${_binary}_installed}") +    else(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) +      set(${_binary}_installed 0) +    endif(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) +    if(NOT ${_binary}_installed EQUAL 0) +      message(FATAL_ERROR +              "Failed to download or unpack prebuilt '${_binary}'." +              " Process returned ${${_binary}_installed}.") +    endif (NOT ${_binary}_installed EQUAL 0) +  endif (NOT STANDALONE) +endmacro (use_svn_external _binary _path _url _rev) diff --git a/indra/cmake/FindSVN.cmake b/indra/cmake/FindSVN.cmake new file mode 100644 index 0000000000..3322be4ca9 --- /dev/null +++ b/indra/cmake/FindSVN.cmake @@ -0,0 +1,34 @@ +# -*- cmake -*- +# +# Find the svn executable for exporting old svn:externals. +# +# Input variables: +#   SVN_FIND_REQUIRED - set this if configuration should fail without scp +# +# Output variables: +# +#   SVN_FOUND - set if svn was found +#   SVN_EXECUTABLE - path to svn executable +#   SVN_BATCH_FLAG - how to put svn into batch mode + + +SET(SVN_EXECUTABLE) +FIND_PROGRAM(SVN_EXECUTABLE NAMES svn svn.exe) + +IF (SVN_EXECUTABLE) +  SET(SVN_FOUND ON) +ELSE (SVN_EXECUTABLE) +  SET(SVN_FOUND OFF) +ENDIF (SVN_EXECUTABLE) + +IF (SVN_FOUND) +  GET_FILENAME_COMPONENT(_svn_name ${SVN_EXECUTABLE} NAME_WE) +  SET(SVN_BATCH_FLAG --non-interactive) +ELSE (SVN_FOUND) +  IF (SVN_FIND_REQUIRED) +    MESSAGE(FATAL_ERROR "Could not find svn executable") +  ENDIF (SVN_FIND_REQUIRED) +ENDIF (SVN_FOUND) + +MARK_AS_ADVANCED(SVN_EXECUTABLE SVN_FOUND SVN_BATCH_FLAG) + diff --git a/indra/viewer_components/CMakeLists.txt b/indra/viewer_components/CMakeLists.txt index 60b459b78a..b3e07c527c 100644 --- a/indra/viewer_components/CMakeLists.txt +++ b/indra/viewer_components/CMakeLists.txt @@ -1,2 +1,9 @@ +# -*- cmake -*- + +include(Externals) +  add_subdirectory(login)  add_subdirectory(eventhost) + +use_svn_external(eventlet ${CMAKE_CURRENT_SOURCE_DIR}/../lib/python/ http://svn.secondlife.com/svn/eventlet/trunk/eventlet 164) + | 
