diff options
| author | Boroondas Gupte <hg@boroon.dasgupta.ch> | 2010-09-16 13:51:15 +0200 | 
|---|---|---|
| committer | Boroondas Gupte <hg@boroon.dasgupta.ch> | 2010-09-16 13:51:15 +0200 | 
| commit | 970ce1e1626c205302c4085610819571c1ce79f4 (patch) | |
| tree | 76884f2cca1067f0ca90a397ae75fddb257f6d6e | |
| parent | 1dbcc3fff79b55038178e493df0cc0c3a4d66221 (diff) | |
| parent | 58c08f7c2cc33c4bf9ef688f0d4a87909ebb9250 (diff) | |
Merged VWR-23047 (SNOW-512, -fPIC for 64bit) and follow-ups (VWR-20911 & SNOW-748)
| -rw-r--r-- | doc/contributions.txt | 3 | ||||
| -rw-r--r-- | indra/cmake/Variables.cmake | 15 | ||||
| -rw-r--r-- | indra/llcommon/CMakeLists.txt | 11 | ||||
| -rw-r--r-- | indra/llplugin/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | indra/media_plugins/base/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | indra/media_plugins/example/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | indra/media_plugins/gstreamer010/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | indra/media_plugins/webkit/CMakeLists.txt | 8 | 
8 files changed, 60 insertions, 9 deletions
| diff --git a/doc/contributions.txt b/doc/contributions.txt index 5892a8081d..5f4c586d31 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -539,11 +539,13 @@ Ringo Tuxing  Robin Cornelius  	SNOW-108  	SNOW-204 +	SNOW-287  	SNOW-484  	SNOW-504  	SNOW-506  	SNOW-507  	SNOW-511 +	SNOW-512  	SNOW-514  	SNOW-520  	SNOW-585 @@ -555,6 +557,7 @@ Robin Cornelius  	VWR-12758  	VWR-12763  	VWR-12995 +	VWR-20911  Ryozu Kojima  	VWR-53  	VWR-287 diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake index bfaf3f4f26..230e228c62 100644 --- a/indra/cmake/Variables.cmake +++ b/indra/cmake/Variables.cmake @@ -54,19 +54,20 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")    set(LINUX ON BOOl FORCE)    # If someone has specified a word size, use that to determine the -  # architecture.  Otherwise, let the architecture specify the word size. +  # architecture.  Otherwise, let the compiler specify the word size. +  # Using uname will break under chroots and other cross arch compiles. RC    if (WORD_SIZE EQUAL 32)      set(ARCH i686)    elseif (WORD_SIZE EQUAL 64)      set(ARCH x86_64)    else (WORD_SIZE EQUAL 32) -    execute_process(COMMAND uname -m COMMAND sed s/i.86/i686/ -                    OUTPUT_VARIABLE ARCH OUTPUT_STRIP_TRAILING_WHITESPACE) -    if (ARCH STREQUAL x86_64) -      set(WORD_SIZE 64) -    else (ARCH STREQUAL x86_64) +    if(CMAKE_SIZEOF_VOID_P MATCHES 4) +      set(ARCH i686)        set(WORD_SIZE 32) -    endif (ARCH STREQUAL x86_64) +    else(CMAKE_SIZEOF_VOID_P MATCHES 4) +      set(ARCH x86_64) +      set(WORD_SIZE 64) +    endif(CMAKE_SIZEOF_VOID_P MATCHES 4)    endif (WORD_SIZE EQUAL 32)    set(LL_ARCH ${ARCH}_linux) diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt index 2a036df06e..78549bfcba 100644 --- a/indra/llcommon/CMakeLists.txt +++ b/indra/llcommon/CMakeLists.txt @@ -251,8 +251,15 @@ set_source_files_properties(${llcommon_HEADER_FILES}  list(APPEND llcommon_SOURCE_FILES ${llcommon_HEADER_FILES})  if(LLCOMMON_LINK_SHARED) -    add_library (llcommon SHARED ${llcommon_SOURCE_FILES}) -    ll_stage_sharedlib(llcommon) +  add_library (llcommon SHARED ${llcommon_SOURCE_FILES}) +  if(NOT WORD_SIZE EQUAL 32) +    if(WINDOWS) +      add_definitions(/FIXED:NO) +    else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +      add_definitions(-fPIC) +    endif(WINDOWS) +  endif(NOT WORD_SIZE EQUAL 32) +  ll_stage_sharedlib(llcommon)  else(LLCOMMON_LINK_SHARED)      add_library (llcommon ${llcommon_SOURCE_FILES})  endif(LLCOMMON_LINK_SHARED) diff --git a/indra/llplugin/CMakeLists.txt b/indra/llplugin/CMakeLists.txt index fdd510b389..d3a73058c4 100644 --- a/indra/llplugin/CMakeLists.txt +++ b/indra/llplugin/CMakeLists.txt @@ -51,6 +51,14 @@ set(llplugin_HEADER_FILES  set_source_files_properties(${llplugin_HEADER_FILES}                              PROPERTIES HEADER_FILE_ONLY TRUE) +if(NOT WORD_SIZE EQUAL 32) +  if(WINDOWS) +    add_definitions(/FIXED:NO) +  else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +    add_definitions(-fPIC) +  endif(WINDOWS) +endif(NOT WORD_SIZE EQUAL 32) +  list(APPEND llplugin_SOURCE_FILES ${llplugin_HEADER_FILES})  add_library (llplugin ${llplugin_SOURCE_FILES}) diff --git a/indra/media_plugins/base/CMakeLists.txt b/indra/media_plugins/base/CMakeLists.txt index f8d2dabc6c..3ad94b0c64 100644 --- a/indra/media_plugins/base/CMakeLists.txt +++ b/indra/media_plugins/base/CMakeLists.txt @@ -25,6 +25,14 @@ include_directories(  ### media_plugin_base +if(NOT WORD_SIZE EQUAL 32) +  if(WINDOWS) +    add_definitions(/FIXED:NO) +  else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +    add_definitions(-fPIC) +  endif(WINDOWS) +endif(NOT WORD_SIZE EQUAL 32) +  set(media_plugin_base_SOURCE_FILES      media_plugin_base.cpp  ) diff --git a/indra/media_plugins/example/CMakeLists.txt b/indra/media_plugins/example/CMakeLists.txt index 4d82f2747c..56cefde4bd 100644 --- a/indra/media_plugins/example/CMakeLists.txt +++ b/indra/media_plugins/example/CMakeLists.txt @@ -29,6 +29,14 @@ include_directories(  ### media_plugin_example +if(NOT WORD_SIZE EQUAL 32) +  if(WINDOWS) +    add_definitions(/FIXED:NO) +  else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +    add_definitions(-fPIC) +  endif(WINDOWS) +endif(NOT WORD_SIZE EQUAL 32) +  set(media_plugin_example_SOURCE_FILES      media_plugin_example.cpp      ) diff --git a/indra/media_plugins/gstreamer010/CMakeLists.txt b/indra/media_plugins/gstreamer010/CMakeLists.txt index 9f0ff654fc..9bb5da7974 100644 --- a/indra/media_plugins/gstreamer010/CMakeLists.txt +++ b/indra/media_plugins/gstreamer010/CMakeLists.txt @@ -30,6 +30,14 @@ include_directories(  ### media_plugin_gstreamer010 +if(NOT WORD_SIZE EQUAL 32) +  if(WINDOWS) +    add_definitions(/FIXED:NO) +  else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +    add_definitions(-fPIC) +  endif(WINDOWS) +endif(NOT WORD_SIZE EQUAL 32) +  set(media_plugin_gstreamer010_SOURCE_FILES      media_plugin_gstreamer010.cpp      llmediaimplgstreamer_syms.cpp diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt index d576638dd7..3a1df13645 100644 --- a/indra/media_plugins/webkit/CMakeLists.txt +++ b/indra/media_plugins/webkit/CMakeLists.txt @@ -32,6 +32,14 @@ include_directories(  ### media_plugin_webkit +if(NOT WORD_SIZE EQUAL 32) +  if(WINDOWS) +    add_definitions(/FIXED:NO) +  else(WINDOWS) # not windows therefore gcc LINUX and DARWIN +    add_definitions(-fPIC) +  endif(WINDOWS) +endif(NOT WORD_SIZE EQUAL 32) +  set(media_plugin_webkit_SOURCE_FILES      media_plugin_webkit.cpp      ) | 
