From 9c4a2547b928beb167df133994dfe453f95cddb3 Mon Sep 17 00:00:00 2001 From: Boroondas Gupte Date: Sun, 29 Aug 2010 18:32:20 +0200 Subject: SNOW-737 FIXED Version agnostic libPNG linking Patch from http://jira.secondlife.com/secure/attachment/41125/version_agnostic_libpng__1.diff applied with fuzz 3: patching file indra/cmake/PNG.cmake Hunk #1 succeeded at 6 with fuzz 3 (offset -2 lines). patching file indra/llimage/llpngwrapper.cpp Hunk #1 succeeded at 215 (offset -2 lines). Hunk #2 succeeded at 363 (offset -2 lines). patching file indra/llimage/llpngwrapper.h Hunk #1 succeeded at 31 (offset -2 lines). Added entry in doc/contributions.txt. No further changes other than that. --- indra/cmake/PNG.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/cmake') diff --git a/indra/cmake/PNG.cmake b/indra/cmake/PNG.cmake index b4f7e5e66b..f1ab7fcdd5 100644 --- a/indra/cmake/PNG.cmake +++ b/indra/cmake/PNG.cmake @@ -6,6 +6,6 @@ set(PNG_FIND_REQUIRED ON) if (STANDALONE) include(FindPNG) else (STANDALONE) - set(PNG_LIBRARIES png12) + set(PNG_LIBRARIES png) set(PNG_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) endif (STANDALONE) -- cgit v1.2.3 From c4a99e9a6ea3ee737acc6a65a65038975bda70d3 Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Mon, 13 Sep 2010 11:59:57 -0700 Subject: VWR-22769 : libPNG linking: fixed the non standalone case so that we can keep things unchanged for those folks (libpng wise) while taking in changes making things easier for standalone builders --- indra/cmake/PNG.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/cmake') diff --git a/indra/cmake/PNG.cmake b/indra/cmake/PNG.cmake index f1ab7fcdd5..5a011de0c3 100644 --- a/indra/cmake/PNG.cmake +++ b/indra/cmake/PNG.cmake @@ -6,6 +6,6 @@ set(PNG_FIND_REQUIRED ON) if (STANDALONE) include(FindPNG) else (STANDALONE) - set(PNG_LIBRARIES png) - set(PNG_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) + set(PNG_LIBRARIES png12) + set(PNG_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/libpng12) endif (STANDALONE) -- cgit v1.2.3 From e7dc84df0d71cd544bc8b8cb8d49133bef19ade8 Mon Sep 17 00:00:00 2001 From: "Christian Goetze (CG)" Date: Mon, 13 Sep 2010 13:18:49 -0700 Subject: Add debug output to "indra/cmake/run_build_test.py". --- indra/cmake/run_build_test.py | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/cmake') diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py index 104585c195..dca206f51f 100644 --- a/indra/cmake/run_build_test.py +++ b/indra/cmake/run_build_test.py @@ -86,6 +86,7 @@ def main(command, libpath=[], vars={}): # Now rebuild the path string. This way we use a minimum of separators # -- and we avoid adding a pointless separator when libpath is empty. os.environ[var] = os.pathsep.join(dirs) + print "%s = %r" % (var, os.environ[var]) # Now handle arbitrary environment variables. The tricky part is ensuring # that all the keys and values we try to pass are actually strings. if vars: -- cgit v1.2.3 From e0da08da6942139424aab07f8ed05845b2238be6 Mon Sep 17 00:00:00 2001 From: "Christian Goetze (CG)" Date: Mon, 13 Sep 2010 13:44:17 -0700 Subject: Clean up the LD_LIBRARY_PATH list prior to re-assembling it into a string. --- indra/cmake/run_build_test.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'indra/cmake') diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py index dca206f51f..1236604b21 100644 --- a/indra/cmake/run_build_test.py +++ b/indra/cmake/run_build_test.py @@ -83,6 +83,11 @@ def main(command, libpath=[], vars={}): # Append the sequence in libpath print "%s += %r" % (var, libpath) dirs.extend(libpath) + # Filter out some useless pieces + clean_dirs = [] + for dir in dirs: + if dir and dir not in ('', '.'): + clean_dirs.append(dir) # Now rebuild the path string. This way we use a minimum of separators # -- and we avoid adding a pointless separator when libpath is empty. os.environ[var] = os.pathsep.join(dirs) -- cgit v1.2.3 From 3a8a3301f94032af315f11e55148c6f82f6d7d73 Mon Sep 17 00:00:00 2001 From: "Christian Goetze (CG)" Date: Mon, 13 Sep 2010 14:05:53 -0700 Subject: Prepend passed in path arguments, except when they are system paths. --- indra/cmake/run_build_test.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'indra/cmake') diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py index 1236604b21..e377aeef48 100644 --- a/indra/cmake/run_build_test.py +++ b/indra/cmake/run_build_test.py @@ -82,15 +82,23 @@ def main(command, libpath=[], vars={}): dirs = os.environ.get(var, "").split(os.pathsep) # Append the sequence in libpath print "%s += %r" % (var, libpath) - dirs.extend(libpath) + for dir in libpath: + # append system paths at the end + if dir in ('/lib', '/usr/lib'): + dirs.append(dir) + # prepend non-system paths + else: + dirs.insert(0, dir) + # Filter out some useless pieces clean_dirs = [] for dir in dirs: if dir and dir not in ('', '.'): clean_dirs.append(dir) + # Now rebuild the path string. This way we use a minimum of separators # -- and we avoid adding a pointless separator when libpath is empty. - os.environ[var] = os.pathsep.join(dirs) + os.environ[var] = os.pathsep.join(clean_dirs) print "%s = %r" % (var, os.environ[var]) # Now handle arbitrary environment variables. The tricky part is ensuring # that all the keys and values we try to pass are actually strings. -- cgit v1.2.3 From c4d86b9e4eadca778349ea50f1f0be8a4335eca0 Mon Sep 17 00:00:00 2001 From: "Christian Goetze (CG)" Date: Mon, 13 Sep 2010 14:51:31 -0700 Subject: Include libexpat.so.1 in the list of libs to copy. --- indra/cmake/Copy3rdPartyLibs.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/cmake') diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 2dd296bf12..95ed5d6bc8 100644 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -221,6 +221,7 @@ elseif(LINUX) libcrypto.so.0.9.7 libdb-4.2.so libexpat.so + libexpat.so.1 libgmock_main.so libgmock.so.0 libgmodule-2.0.so -- cgit v1.2.3 From 136858bd20acab9684c2bd1673663fc925f0cc77 Mon Sep 17 00:00:00 2001 From: "Boroondas Gupte (patch by Robin Cornelius)" Date: Tue, 31 Aug 2010 12:16:03 +0200 Subject: VWR-20911 FIXED CMake build arch detection is inaccurate and incomplete Robin Cornelius' patch from http://jira.secondlife.com/secure/attachment/42801/SNOW-776+Don%27t+use+uname+for+build+arch+detection%2C+use+compiler.patch applied without fuzz: patching file indra/cmake/Variables.cmake Hunk #1 succeeded at 52 (offset -2 lines). Added entry in doc/contributions.txt. No further changes other than that. (transplanted from a9132a63e4739965d65ddd58a7be9eabe4321c2a) --- indra/cmake/Variables.cmake | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'indra/cmake') diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake index bfaf3f4f26..8a08154295 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) - set(WORD_SIZE 32) - endif (ARCH STREQUAL x86_64) + if(CMAKE_SIZEOF_VOID_P MATCHES 4) + set(ARCH i686) + set(WORD_SIZE 32) + 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) -- cgit v1.2.3 From bd3d9e1ba99586d31b6deba2f9dc54d481f9740b Mon Sep 17 00:00:00 2001 From: Boroondas Gupte Date: Tue, 31 Aug 2010 14:41:46 +0200 Subject: VWR-20911 FOLLOWUP fixed indentation (cmake files use spaces only) (transplanted from d02b22278d5b0a0386b3a7c25221b2069bc02963) --- indra/cmake/Variables.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'indra/cmake') diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake index 8a08154295..230e228c62 100644 --- a/indra/cmake/Variables.cmake +++ b/indra/cmake/Variables.cmake @@ -62,12 +62,12 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") set(ARCH x86_64) else (WORD_SIZE EQUAL 32) if(CMAKE_SIZEOF_VOID_P MATCHES 4) - set(ARCH i686) - set(WORD_SIZE 32) - else(CMAKE_SIZEOF_VOID_P MATCHES 4) - set(ARCH x86_64) - set(WORD_SIZE 64) - endif(CMAKE_SIZEOF_VOID_P MATCHES 4) + set(ARCH i686) + set(WORD_SIZE 32) + 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) -- cgit v1.2.3