diff options
Diffstat (limited to 'indra/cmake')
| -rw-r--r-- | indra/cmake/00-Common.cmake | 16 | ||||
| -rw-r--r-- | indra/cmake/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | indra/cmake/Copy3rdPartyLibs.cmake | 13 | ||||
| -rw-r--r-- | indra/cmake/FindTut.cmake | 31 | ||||
| -rw-r--r-- | indra/cmake/GLOD.cmake | 9 | ||||
| -rw-r--r-- | indra/cmake/GooglePerfTools.cmake | 11 | ||||
| -rw-r--r-- | indra/cmake/LLConvexDecomposition.cmake | 12 | ||||
| -rw-r--r-- | indra/cmake/LLPrimitive.cmake | 28 | ||||
| -rw-r--r-- | indra/cmake/TemplateCheck.cmake | 2 | ||||
| -rw-r--r-- | indra/cmake/Tut.cmake | 10 | ||||
| -rw-r--r-- | indra/cmake/Variables.cmake | 3 | ||||
| -rw-r--r-- | indra/cmake/WebKitLibPlugin.cmake | 63 | 
12 files changed, 114 insertions, 86 deletions
| diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index db2cdb5ff8..40a04e72f7 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -41,7 +41,7 @@ if (WINDOWS)        "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /MD /MP /Ob2"        CACHE STRING "C++ compiler release-with-debug options" FORCE)    set(CMAKE_CXX_FLAGS_RELEASE -      "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /Ob2" +      "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /Gm /Ob2"        CACHE STRING "C++ compiler release options" FORCE)    set(CMAKE_CXX_STANDARD_LIBRARIES "") @@ -49,11 +49,12 @@ if (WINDOWS)    add_definitions(        /DLL_WINDOWS=1 +      /DDOM_DYNAMIC        /DUNICODE        /D_UNICODE         /GS        /TP -      /W3 +      /W2        /c        /Zc:forScope        /nologo @@ -67,6 +68,7 @@ if (WINDOWS)      add_definitions(        /Zc:wchar_t- +      /arch:SSE2        )    endif (MSVC80 OR MSVC90) @@ -142,6 +144,8 @@ if (LINUX)        -fno-strict-aliasing        -fsigned-char        -g +      -msse2 +      -mfpmath=sse        -pthread        ) @@ -161,10 +165,6 @@ if (LINUX)        link_directories(/usr/lib/mysql4/mysql)      endif (EXISTS /usr/lib/mysql4/mysql) -    add_definitions( -        -msse2 -        -mfpmath=sse -        )    endif (SERVER)    if (VIEWER) @@ -172,6 +172,8 @@ if (LINUX)      add_definitions(-fvisibility=hidden)      # don't catch SIGCHLD in our base application class for the viewer - some of our 3rd party libs may need their *own* SIGCHLD handler to work.  Sigh!  The viewer doesn't need to catch SIGCHLD anyway.      add_definitions(-DLL_IGNORE_SIGCHLD) +    add_definitions(-march=pentium4 -mfpmath=sse) +    #add_definitions(-ftree-vectorize) # THIS CRASHES GCC 3.1-3.2      if (NOT STANDALONE)        # this stops us requiring a really recent glibc at runtime        add_definitions(-fno-stack-protector) @@ -211,7 +213,7 @@ if (LINUX OR DARWIN)      set(GCC_WARNINGS "${GCC_WARNINGS} -Werror")    endif (NOT GCC_DISABLE_FATAL_WARNINGS) -  set(GCC_CXX_WARNINGS "${GCC_WARNINGS} -Wno-reorder -Wno-non-virtual-dtor -Woverloaded-virtual") +  set(GCC_CXX_WARNINGS "${GCC_WARNINGS} -Wno-reorder -Wno-non-virtual-dtor")    set(CMAKE_C_FLAGS "${GCC_WARNINGS} ${CMAKE_C_FLAGS}")    set(CMAKE_CXX_FLAGS "${GCC_CXX_WARNINGS} ${CMAKE_CXX_FLAGS}") diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt index 6470836286..ff54b45e8b 100644 --- a/indra/cmake/CMakeLists.txt +++ b/indra/cmake/CMakeLists.txt @@ -35,6 +35,7 @@ set(cmake_SOURCE_FILES      FindXmlRpcEpi.cmake      FMOD.cmake      FreeType.cmake +    GLOD.cmake      GStreamer010Plugin.cmake      GooglePerfTools.cmake      JPEG.cmake @@ -42,6 +43,7 @@ set(cmake_SOURCE_FILES      LLAudio.cmake      LLCharacter.cmake      LLCommon.cmake +    LLConvexDecomposition.cmake      LLCrashLogger.cmake      LLDatabase.cmake      LLImage.cmake diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 176ae9787e..bb108d7dd9 100644 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -38,6 +38,8 @@ if(WINDOWS)          libapr-1.dll          libaprutil-1.dll          libapriconv-1.dll +        libcollada14dom21-d.dll +        glod.dll          )      # *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables @@ -48,6 +50,8 @@ if(WINDOWS)          libapr-1.dll          libaprutil-1.dll          libapriconv-1.dll +        libcollada14dom21.dll +        glod.dll          )      if(USE_GOOGLE_PERFTOOLS) @@ -150,9 +154,11 @@ elseif(DARWIN)          libaprutil-1.dylib          libexpat.0.5.0.dylib          libexpat.dylib -        libllqtwebkit.dylib +        libGLOD.dylib +	libllqtwebkit.dylib          libndofdev.dylib          libexception_handler.dylib +	libcollada14dom.dylib         )      # fmod is statically linked on darwin @@ -202,9 +208,10 @@ elseif(LINUX)          libopenjpeg.so          libssl.so          libstacktrace.so -        libtcmalloc.so +        libtcmalloc_minimal.so +	libtcmalloc_minimal.so.0          libuuid.so.1 -        libssl.so.0.9.7 +	libssl.so.0.9.7         )      if (FMOD) diff --git a/indra/cmake/FindTut.cmake b/indra/cmake/FindTut.cmake deleted file mode 100644 index b5d58f6396..0000000000 --- a/indra/cmake/FindTut.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# -*- cmake -*- - -# - Find Tut -# Find the Tut unit test framework includes and library -# This module defines -#  TUT_INCLUDE_DIR, where to find tut.h, etc. -#  TUT_FOUND, If false, do not try to use Tut. - -find_path(TUT_INCLUDE_DIR tut.h -    /usr/local/include/ -    /usr/include -    ) - -if (TUT_INCLUDE_DIR) -  set(TUT_FOUND "YES") -else (TUT_INCLUDE_DIR) -  set(TUT_FOUND "NO") -endif (TUT_INCLUDE_DIR) - -if (TUT_FOUND) -  if (NOT TUT_FIND_QUIETLY) -    message(STATUS "Found Tut: ${TUT_INCLUDE_DIR}") -    set(TUT_FIND_QUIETLY TRUE) # Only alert us the first time -  endif (NOT TUT_FIND_QUIETLY) -else (TUT_FOUND) -  if (TUT_FIND_REQUIRED) -    message(FATAL_ERROR "Could not find Tut") -  endif (TUT_FIND_REQUIRED) -endif (TUT_FOUND) - -mark_as_advanced(TUT_INCLUDE_DIR) diff --git a/indra/cmake/GLOD.cmake b/indra/cmake/GLOD.cmake new file mode 100644 index 0000000000..77221d55ed --- /dev/null +++ b/indra/cmake/GLOD.cmake @@ -0,0 +1,9 @@ +# -*- cmake -*- +include(Prebuilt) + +if (NOT STANDALONE) +  use_prebuilt_binary(GLOD) +endif (NOT STANDALONE) + +set(GLOD_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include) +set(GLOD_LIBRARIES glod) diff --git a/indra/cmake/GooglePerfTools.cmake b/indra/cmake/GooglePerfTools.cmake index 946fc6b375..0da2e6c26e 100644 --- a/indra/cmake/GooglePerfTools.cmake +++ b/indra/cmake/GooglePerfTools.cmake @@ -6,14 +6,16 @@ if (STANDALONE)  else (STANDALONE)    use_prebuilt_binary(google)    if (WINDOWS) -    use_prebuilt_binary(google-perftools) +    use_prebuilt_binary(tcmalloc)      set(TCMALLOC_LIBRARIES           debug libtcmalloc_minimal-debug          optimized libtcmalloc_minimal)      set(GOOGLE_PERFTOOLS_FOUND "YES")    endif (WINDOWS)    if (LINUX) -    set(TCMALLOC_LIBRARIES tcmalloc) +    use_prebuilt_binary(tcmalloc) +    set(TCMALLOC_LIBRARIES  +	tcmalloc_minimal)      set(STACKTRACE_LIBRARIES stacktrace)      set(PROFILER_LIBRARIES profiler)      set(GOOGLE_PERFTOOLS_INCLUDE_DIR @@ -29,12 +31,11 @@ if (GOOGLE_PERFTOOLS_FOUND)  endif (GOOGLE_PERFTOOLS_FOUND)  if (WINDOWS) -    # *TODO -reenable this once we get server usage sorted out -    #set(USE_GOOGLE_PERFTOOLS ON) +    set(USE_GOOGLE_PERFTOOLS ON)  endif (WINDOWS)  if (USE_GOOGLE_PERFTOOLS) -  set(TCMALLOC_FLAG -DLL_USE_TCMALLOC=1) +  set(TCMALLOC_FLAG -ULL_USE_TCMALLOC=1)    include_directories(${GOOGLE_PERFTOOLS_INCLUDE_DIR})    set(GOOGLE_PERFTOOLS_LIBRARIES ${TCMALLOC_LIBRARIES} ${STACKTRACE_LIBRARIES} ${PROFILER_LIBRARIES})  else (USE_GOOGLE_PERFTOOLS) diff --git a/indra/cmake/LLConvexDecomposition.cmake b/indra/cmake/LLConvexDecomposition.cmake new file mode 100644 index 0000000000..8e44504782 --- /dev/null +++ b/indra/cmake/LLConvexDecomposition.cmake @@ -0,0 +1,12 @@ +# -*- cmake -*- +include(Prebuilt) + +set(LLCONVEXDECOMP_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) +   +if (INSTALL_PROPRIETARY AND NOT STANDALONE) +  use_prebuilt_binary(llconvexdecomposition) +  set(LLCONVEXDECOMP_LIBRARY llconvexdecomposition) +else (INSTALL_PROPRIETARY AND NOT STANDALONE) +  use_prebuilt_binary(llconvexdecompositionstub) +  set(LLCONVEXDECOMP_LIBRARY llconvexdecompositionstub) +endif (INSTALL_PROPRIETARY AND NOT STANDALONE) diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake index d397b78f1c..4bdbfe46e2 100644 --- a/indra/cmake/LLPrimitive.cmake +++ b/indra/cmake/LLPrimitive.cmake @@ -1,7 +1,33 @@  # -*- cmake -*- +# these should be moved to their own cmake file +include(Prebuilt) +use_prebuilt_binary(colladadom) +use_prebuilt_binary(pcre) +use_prebuilt_binary(libxml) +  set(LLPRIMITIVE_INCLUDE_DIRS      ${LIBS_OPEN_DIR}/llprimitive      ) -set(LLPRIMITIVE_LIBRARIES llprimitive) +if (WINDOWS) +	set(LLPRIMITIVE_LIBRARIES  +        debug llprimitive +        optimized llprimitive +        debug libcollada14dom21-d +        optimized libcollada14dom21 +        debug libboost_filesystem-d +        optimized libboost_filesystem +        debug libboost_system-d +        optimized libboost_system +        ) +else (WINDOWS) +    set(LLPRIMITIVE_LIBRARIES  +        llprimitive +        collada14dom +        xml2 +        pcrecpp +        pcre +        ) +endif (WINDOWS) + diff --git a/indra/cmake/TemplateCheck.cmake b/indra/cmake/TemplateCheck.cmake index 90d58d93ad..c43e235f20 100644 --- a/indra/cmake/TemplateCheck.cmake +++ b/indra/cmake/TemplateCheck.cmake @@ -8,7 +8,7 @@ macro (check_message_template _target)        POST_BUILD        COMMAND ${PYTHON_EXECUTABLE}        ARGS ${SCRIPTS_DIR}/md5check.py -           3f19d130400c547de36278a6b6f9b028 +           0441fea513458ade4b81607acf481692             ${SCRIPTS_DIR}/messages/message_template.msg        COMMENT "Verifying message template - See http://wiki.secondlife.com/wiki/Template_verifier.py"        ) diff --git a/indra/cmake/Tut.cmake b/indra/cmake/Tut.cmake index 784560471d..7488e9dcb0 100644 --- a/indra/cmake/Tut.cmake +++ b/indra/cmake/Tut.cmake @@ -1,12 +1,6 @@  # -*- cmake -*-  include(Prebuilt) -set(TUT_FIND_REQUIRED TRUE) -set(TUT_FIND_QUIETLY TRUE) - -if (STANDALONE) -  include(FindTut) -  include_directories(${TUT_INCLUDE_DIR}) -else (STANDALONE) +if (NOT STANDALONE)    use_prebuilt_binary(tut) -endif (STANDALONE) +endif(NOT STANDALONE) diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake index 5dc0cabf03..bc517cde49 100644 --- a/indra/cmake/Variables.cmake +++ b/indra/cmake/Variables.cmake @@ -25,6 +25,7 @@ set(SERVER_PREFIX)  set(VIEWER_PREFIX)  set(INTEGRATION_TESTS_PREFIX)  set(LL_TESTS ON CACHE BOOL "Build and run unit and integration tests (disable for build timing runs to reduce variation") +set(INCREMENTAL_LINK OFF CACHE BOOL "Use incremental linking on win32 builds (enable for faster links on some machines)")  set(LIBS_CLOSED_DIR ${CMAKE_SOURCE_DIR}/${LIBS_CLOSED_PREFIX})  set(LIBS_OPEN_DIR ${CMAKE_SOURCE_DIR}/${LIBS_OPEN_PREFIX}) @@ -82,7 +83,7 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")    # otherwise CMAKE_OSX_SYSROOT will be overridden here. We can't just check    # for it being unset, as it gets set to the system default :( -  # Default to building against the 10.4 SDK if no deployment target is +  # Default to building against the 10.4u SDK if no deployment target is    # specified.    if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)      # NOTE: setting -isysroot is NOT adequate: http://lists.apple.com/archives/Xcode-users/2007/Oct/msg00696.html diff --git a/indra/cmake/WebKitLibPlugin.cmake b/indra/cmake/WebKitLibPlugin.cmake index 12ba1b1b35..1c572ab27f 100644 --- a/indra/cmake/WebKitLibPlugin.cmake +++ b/indra/cmake/WebKitLibPlugin.cmake @@ -3,46 +3,48 @@ include(Linking)  include(Prebuilt)  if (STANDALONE) -  set(WEBKITLIBPLUGIN OFF CACHE BOOL -      "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.") +    set(WEBKITLIBPLUGIN OFF CACHE BOOL +        "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.")  else (STANDALONE) -  use_prebuilt_binary(llqtwebkit) -  set(WEBKITLIBPLUGIN ON CACHE BOOL -      "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.") +    use_prebuilt_binary(llqtwebkit) +    set(WEBKITLIBPLUGIN ON CACHE BOOL +        "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.")  endif (STANDALONE)  if (WINDOWS) -  set(WEBKIT_PLUGIN_LIBRARIES -      debug llqtwebkitd -      debug QtWebKitd4 -      debug QtOpenGLd4 -      debug QtNetworkd4 -      debug QtGuid4 -      debug QtCored4 -      debug qtmaind -      optimized llqtwebkit -      optimized QtWebKit4 -      optimized QtOpenGL4 -      optimized QtNetwork4 -      optimized QtGui4 -      optimized QtCore4 -      optimized qtmain -      ) +    set(WEBKIT_PLUGIN_LIBRARIES  +    debug llqtwebkitd +    debug QtWebKitd4 +    debug QtOpenGLd4 +    debug QtNetworkd4 +    debug QtGuid4 +    debug QtCored4 +    debug qtmaind +    optimized llqtwebkit +    optimized QtWebKit4 +    optimized QtOpenGL4 +    optimized QtNetwork4 +    optimized QtGui4 +    optimized QtCore4 +    optimized qtmain +    )  elseif (DARWIN) -  set(WEBKIT_PLUGIN_LIBRARIES -      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib -      debug ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib -      ) +    set(WEBKIT_PLUGIN_LIBRARIES +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib +        debug ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib +        )  elseif (LINUX) -  if (STANDALONE)  -    set(WEBKIT_PLUGIN_LIBRARIES llqtwebkit) -  else (STANDALONE)      set(WEBKIT_PLUGIN_LIBRARIES          llqtwebkit          qgif +#        qico          qjpeg +#        qpng +#        qtiff +#        qsvg +#        QtSvg          QtWebKit          QtOpenGL          QtNetwork @@ -54,6 +56,9 @@ elseif (LINUX)          X11          Xrender          GL + +#        sqlite3 +#        Xi +#        SM          ) -  endif (STANDALONE)  endif (WINDOWS) | 
