Tag, settings

This commit is contained in:
siana
2010-12-26 01:53:36 +01:00
parent bc0e5d29a5
commit 784ef47048
8 changed files with 15293 additions and 16474 deletions

View File

@@ -1,283 +1,283 @@
# -*- cmake -*- # -*- cmake -*-
# #
# Compilation options shared by all Second Life components. # Compilation options shared by all Second Life components.
include(Variables) include(Variables)
# Portable compilation flags. # Portable compilation flags.
set(CMAKE_CXX_FLAGS_DEBUG "-D_DEBUG -DLL_DEBUG=1") set(CMAKE_CXX_FLAGS_DEBUG "-D_DEBUG -DLL_DEBUG=1")
set(CMAKE_CXX_FLAGS_RELEASE set(CMAKE_CXX_FLAGS_RELEASE
"-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG") "-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASESSE2 set(CMAKE_CXX_FLAGS_RELEASESSE2
"-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG") "-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG")
#llimage now requires this (?) #llimage now requires this (?)
set(CMAKE_C_FLAGS_RELEASESSE2 set(CMAKE_C_FLAGS_RELEASESSE2
"${CMAKE_CXX_FLAGS_RELEASESSE2}") "${CMAKE_CXX_FLAGS_RELEASESSE2}")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO set(CMAKE_CXX_FLAGS_RELWITHDEBINFO
"-DLL_RELEASE=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=0 -DNDEBUG -DLL_RELEASE_WITH_DEBUG_INFO=1") "-DLL_RELEASE=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=0 -DNDEBUG -DLL_RELEASE_WITH_DEBUG_INFO=1")
# Don't bother with a MinSizeRel build. # Don't bother with a MinSizeRel build.
set(CMAKE_CONFIGURATION_TYPES "RelWithDebInfo;Release;ReleaseSSE2;Debug" CACHE STRING set(CMAKE_CONFIGURATION_TYPES "RelWithDebInfo;Release;ReleaseSSE2;Debug" CACHE STRING
"Supported build types." FORCE) "Supported build types." FORCE)
# Platform-specific compilation flags. # Platform-specific compilation flags.
if (WINDOWS) if (WINDOWS)
# Don't build DLLs. # Don't build DLLs.
set(BUILD_SHARED_LIBS OFF) set(BUILD_SHARED_LIBS OFF)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /Od /Zi /MDd" set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /Od /Zi /MDd"
CACHE STRING "C++ compiler debug options" FORCE) CACHE STRING "C++ compiler debug options" FORCE)
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO set(CMAKE_CXX_FLAGS_RELWITHDEBINFO
"${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /MD /MP" "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /MD /MP"
CACHE STRING "C++ compiler release-with-debug options" FORCE) CACHE STRING "C++ compiler release-with-debug options" FORCE)
set(CMAKE_CXX_FLAGS_RELEASE set(CMAKE_CXX_FLAGS_RELEASE
"${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP" "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /fp:fast"
CACHE STRING "C++ compiler release options" FORCE) CACHE STRING "C++ compiler release options" FORCE)
set(CMAKE_CXX_FLAGS_RELEASESSE2 set(CMAKE_CXX_FLAGS_RELEASESSE2
"${CMAKE_CXX_FLAGS_RELEASESSE2} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /arch:SSE2" "${CMAKE_CXX_FLAGS_RELEASESSE2} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /arch:SSE2 /fp:fast"
CACHE STRING "C++ compiler release-SSE2 options" FORCE) CACHE STRING "C++ compiler release-SSE2 options" FORCE)
set(CMAKE_C_FLAGS_RELEASESSE2 set(CMAKE_C_FLAGS_RELEASESSE2
"${CMAKE_C_FLAGS_RELEASESSE2} ${LL_C_FLAGS} /O2 /Zi /MD /MP /arch:SSE2" "${CMAKE_C_FLAGS_RELEASESSE2} ${LL_C_FLAGS} /O2 /Zi /MD /MP /arch:SSE2 /fp:fast"
CACHE STRING "C compiler release-SSE2 options" FORCE) CACHE STRING "C compiler release-SSE2 options" FORCE)
set(CMAKE_CXX_STANDARD_LIBRARIES "") set(CMAKE_CXX_STANDARD_LIBRARIES "")
set(CMAKE_C_STANDARD_LIBRARIES "") set(CMAKE_C_STANDARD_LIBRARIES "")
add_definitions( add_definitions(
/DLL_WINDOWS=1 /DLL_WINDOWS=1
/DUNICODE /DUNICODE
/D_UNICODE /D_UNICODE
/GS /GS
/TP /TP
/W3 /W3
/c /c
/Zc:forScope /Zc:forScope
/nologo /nologo
/Oy- /Oy-
) )
if(MSVC80 OR MSVC90 OR MSVC100) if(MSVC80 OR MSVC90 OR MSVC100)
set(CMAKE_CXX_FLAGS_RELEASE set(CMAKE_CXX_FLAGS_RELEASE
"${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" "${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
CACHE STRING "C++ compiler release options" FORCE) CACHE STRING "C++ compiler release options" FORCE)
set(CMAKE_CXX_FLAGS_RELEASESSE2 set(CMAKE_CXX_FLAGS_RELEASESSE2
"${CMAKE_CXX_FLAGS_RELEASESSE2} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" "${CMAKE_CXX_FLAGS_RELEASESSE2} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
CACHE STRING "C++ compiler release-SSE2 options" FORCE) CACHE STRING "C++ compiler release-SSE2 options" FORCE)
set(CMAKE_C_FLAGS_RELEASESSE2 set(CMAKE_C_FLAGS_RELEASESSE2
"${CMAKE_CXX_FLAGS_RELEASESSE2} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" "${CMAKE_CXX_FLAGS_RELEASESSE2} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
CACHE STRING "C compiler release-SSE2 options" FORCE) CACHE STRING "C compiler release-SSE2 options" FORCE)
add_definitions( add_definitions(
/Zc:wchar_t- /Zc:wchar_t-
) )
endif (MSVC80 OR MSVC90 OR MSVC100) endif (MSVC80 OR MSVC90 OR MSVC100)
# Are we using the crummy Visual Studio KDU build workaround? # Are we using the crummy Visual Studio KDU build workaround?
if (NOT VS_DISABLE_FATAL_WARNINGS) if (NOT VS_DISABLE_FATAL_WARNINGS)
add_definitions(/WX) add_definitions(/WX)
endif (NOT VS_DISABLE_FATAL_WARNINGS) endif (NOT VS_DISABLE_FATAL_WARNINGS)
# Various libs are compiler specific, generate some variables here we can just use # Various libs are compiler specific, generate some variables here we can just use
# when we require them instead of reimplementing the test each time. # when we require them instead of reimplementing the test each time.
if (MSVC71) if (MSVC71)
set(MSVC_DIR 7.1) set(MSVC_DIR 7.1)
set(MSVC_SUFFIX 71) set(MSVC_SUFFIX 71)
elseif (MSVC80) elseif (MSVC80)
set(MSVC_DIR 8.0) set(MSVC_DIR 8.0)
set(MSVC_SUFFIX 80) set(MSVC_SUFFIX 80)
elseif (MSVC90) elseif (MSVC90)
set(MSVC_DIR 9.0) set(MSVC_DIR 9.0)
set(MSVC_SUFFIX 90) set(MSVC_SUFFIX 90)
elseif (MSVC100) elseif (MSVC100)
set(MSVC_DIR 10.0) set(MSVC_DIR 10.0)
set(MSVC_SUFFIX 100) set(MSVC_SUFFIX 100)
endif (MSVC71) endif (MSVC71)
endif (WINDOWS) endif (WINDOWS)
if (LINUX) if (LINUX)
set(CMAKE_SKIP_RPATH TRUE) set(CMAKE_SKIP_RPATH TRUE)
# Here's a giant hack for Fedora 8, where we can't use # Here's a giant hack for Fedora 8, where we can't use
# _FORTIFY_SOURCE if we're using a compiler older than gcc 4.1. # _FORTIFY_SOURCE if we're using a compiler older than gcc 4.1.
find_program(GXX g++) find_program(GXX g++)
mark_as_advanced(GXX) mark_as_advanced(GXX)
if (GXX) if (GXX)
execute_process( execute_process(
COMMAND ${GXX} --version COMMAND ${GXX} --version
COMMAND sed "s/^[gc+ ]*//" COMMAND sed "s/^[gc+ ]*//"
COMMAND head -1 COMMAND head -1
OUTPUT_VARIABLE GXX_VERSION OUTPUT_VARIABLE GXX_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_STRIP_TRAILING_WHITESPACE
) )
else (GXX) else (GXX)
set(GXX_VERSION x) set(GXX_VERSION x)
endif (GXX) endif (GXX)
# The quoting hack here is necessary in case we're using distcc or # The quoting hack here is necessary in case we're using distcc or
# ccache as our compiler. CMake doesn't pass the command line # ccache as our compiler. CMake doesn't pass the command line
# through the shell by default, so we end up trying to run "distcc" # through the shell by default, so we end up trying to run "distcc"
# " g++" - notice the leading space. Ugh. # " g++" - notice the leading space. Ugh.
execute_process( execute_process(
COMMAND sh -c "${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} --version" COMMAND sh -c "${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} --version"
COMMAND sed "s/^[gc+ ]*//" COMMAND sed "s/^[gc+ ]*//"
COMMAND head -1 COMMAND head -1
OUTPUT_VARIABLE CXX_VERSION OUTPUT_VARIABLE CXX_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
if (${GXX_VERSION} STREQUAL ${CXX_VERSION}) if (${GXX_VERSION} STREQUAL ${CXX_VERSION})
add_definitions(-D_FORTIFY_SOURCE=2) add_definitions(-D_FORTIFY_SOURCE=2)
else (${GXX_VERSION} STREQUAL ${CXX_VERSION}) else (${GXX_VERSION} STREQUAL ${CXX_VERSION})
if (NOT ${GXX_VERSION} MATCHES " 4.1.*Red Hat") if (NOT ${GXX_VERSION} MATCHES " 4.1.*Red Hat")
add_definitions(-D_FORTIFY_SOURCE=2) add_definitions(-D_FORTIFY_SOURCE=2)
endif (NOT ${GXX_VERSION} MATCHES " 4.1.*Red Hat") endif (NOT ${GXX_VERSION} MATCHES " 4.1.*Red Hat")
endif (${GXX_VERSION} STREQUAL ${CXX_VERSION}) endif (${GXX_VERSION} STREQUAL ${CXX_VERSION})
#Lets actualy get a numerical version of gxx's version #Lets actualy get a numerical version of gxx's version
STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.([0-9]).*" "\\1\\2\\3" CXX_VERSION ${CXX_VERSION}) STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.([0-9]).*" "\\1\\2\\3" CXX_VERSION ${CXX_VERSION})
#gcc 4.3 and above don't like the LL boost #gcc 4.3 and above don't like the LL boost
if(${CXX_VERSION} GREATER 429) if(${CXX_VERSION} GREATER 429)
add_definitions(-Wno-parentheses) add_definitions(-Wno-parentheses)
endif (${CXX_VERSION} GREATER 429) endif (${CXX_VERSION} GREATER 429)
# End of hacks. # End of hacks.
add_definitions( add_definitions(
-DLL_LINUX=1 -DLL_LINUX=1
-D_REENTRANT -D_REENTRANT
-fexceptions -fexceptions
-fno-math-errno -fno-math-errno
-fno-strict-aliasing -fno-strict-aliasing
-fsigned-char -fsigned-char
-g -g
-pthread -pthread
) )
if (SERVER) if (SERVER)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth-60") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftemplate-depth-60")
if (EXISTS /etc/debian_version) if (EXISTS /etc/debian_version)
FILE(READ /etc/debian_version DEBIAN_VERSION) FILE(READ /etc/debian_version DEBIAN_VERSION)
else (EXISTS /etc/debian_version) else (EXISTS /etc/debian_version)
set(DEBIAN_VERSION "") set(DEBIAN_VERSION "")
endif (EXISTS /etc/debian_version) endif (EXISTS /etc/debian_version)
if (NOT DEBIAN_VERSION STREQUAL "3.1") if (NOT DEBIAN_VERSION STREQUAL "3.1")
add_definitions(-DCTYPE_WORKAROUND) add_definitions(-DCTYPE_WORKAROUND)
endif (NOT DEBIAN_VERSION STREQUAL "3.1") endif (NOT DEBIAN_VERSION STREQUAL "3.1")
if (EXISTS /usr/lib/mysql4/mysql) if (EXISTS /usr/lib/mysql4/mysql)
link_directories(/usr/lib/mysql4/mysql) link_directories(/usr/lib/mysql4/mysql)
endif (EXISTS /usr/lib/mysql4/mysql) endif (EXISTS /usr/lib/mysql4/mysql)
add_definitions( add_definitions(
-msse2 -msse2
-mfpmath=sse -mfpmath=sse
) )
endif (SERVER) endif (SERVER)
if (VIEWER) if (VIEWER)
add_definitions(-DAPPID=secondlife) add_definitions(-DAPPID=secondlife)
add_definitions(-fvisibility=hidden) 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. # 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(-DLL_IGNORE_SIGCHLD)
if (NOT STANDALONE) if (NOT STANDALONE)
# this stops us requiring a really recent glibc at runtime # this stops us requiring a really recent glibc at runtime
add_definitions(-fno-stack-protector) add_definitions(-fno-stack-protector)
endif (NOT STANDALONE) endif (NOT STANDALONE)
set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -march=pentium4 -mfpmath=sse -msse2") set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -march=pentium4 -mfpmath=sse -msse2")
set(CMAKE_C_FLAGS_RELEASESSE2 "${CMAKE_C_FLAGS_RELEASESSE2} -march=pentium4 -mfpmath=sse -msse2") set(CMAKE_C_FLAGS_RELEASESSE2 "${CMAKE_C_FLAGS_RELEASESSE2} -march=pentium4 -mfpmath=sse -msse2")
endif (VIEWER) endif (VIEWER)
set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}") set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 ${CMAKE_CXX_FLAGS_RELEASE}") set(CMAKE_CXX_FLAGS_RELEASE "-O3 ${CMAKE_CXX_FLAGS_RELEASE}")
set(CMAKE_CXX_FLAGS_RELEASESSE2 "-O3 ${CMAKE_CXX_FLAGS_RELEASESSE2}") set(CMAKE_CXX_FLAGS_RELEASESSE2 "-O3 ${CMAKE_CXX_FLAGS_RELEASESSE2}")
set(CMAKE_C_FLAGS_RELEASESSE2 "-O3 ${CMAKE_C_FLAGS_RELEASESSE2}") set(CMAKE_C_FLAGS_RELEASESSE2 "-O3 ${CMAKE_C_FLAGS_RELEASESSE2}")
endif (LINUX) endif (LINUX)
if (DARWIN) if (DARWIN)
add_definitions(-DLL_DARWIN=1) add_definitions(-DLL_DARWIN=1)
set(CMAKE_CXX_LINK_FLAGS "-Wl,-headerpad_max_install_names,-search_paths_first") set(CMAKE_CXX_LINK_FLAGS "-Wl,-headerpad_max_install_names,-search_paths_first")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_CXX_LINK_FLAGS}") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_CXX_LINK_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mlong-branch") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mlong-branch")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mlong-branch") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mlong-branch")
# NOTE: it's critical that the optimization flag is put in front. # NOTE: it's critical that the optimization flag is put in front.
# NOTE: it's critical to have both CXX_FLAGS and C_FLAGS covered. # NOTE: it's critical to have both CXX_FLAGS and C_FLAGS covered.
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_C_FLAGS_RELWITHDEBINFO}") set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_C_FLAGS_RELWITHDEBINFO}")
set(CMAKE_CXX_FLAGS_RELEASESSE2 "-O3 -msse2 -mfpmath=sse ${CMAKE_CXX_FLAGS_RELEASESSE2}") set(CMAKE_CXX_FLAGS_RELEASESSE2 "-O3 -msse2 -mfpmath=sse ${CMAKE_CXX_FLAGS_RELEASESSE2}")
set(CMAKE_C_FLAGS_RELEASESSE2 "-03 -msse2 -mfpmath=sse ${CMAKE_C_FLAGS_RELEASESSE2}") set(CMAKE_C_FLAGS_RELEASESSE2 "-03 -msse2 -mfpmath=sse ${CMAKE_C_FLAGS_RELEASESSE2}")
endif (DARWIN) endif (DARWIN)
if (LINUX OR DARWIN) if (LINUX OR DARWIN)
set(GCC_WARNINGS "-Wall -Wno-sign-compare -Wno-trigraphs -Wno-non-virtual-dtor -Woverloaded-virtual") set(GCC_WARNINGS "-Wall -Wno-sign-compare -Wno-trigraphs -Wno-non-virtual-dtor -Woverloaded-virtual")
if (NOT GCC_DISABLE_FATAL_WARNINGS) if (NOT GCC_DISABLE_FATAL_WARNINGS)
set(GCC_WARNINGS "${GCC_WARNINGS} -Werror") set(GCC_WARNINGS "${GCC_WARNINGS} -Werror")
endif (NOT GCC_DISABLE_FATAL_WARNINGS) endif (NOT GCC_DISABLE_FATAL_WARNINGS)
set(GCC_CXX_WARNINGS "${GCC_WARNINGS} -Wno-reorder") set(GCC_CXX_WARNINGS "${GCC_WARNINGS} -Wno-reorder")
set(CMAKE_C_FLAGS "${GCC_WARNINGS} ${CMAKE_C_FLAGS}") set(CMAKE_C_FLAGS "${GCC_WARNINGS} ${CMAKE_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${GCC_CXX_WARNINGS} ${CMAKE_CXX_FLAGS}") set(CMAKE_CXX_FLAGS "${GCC_CXX_WARNINGS} ${CMAKE_CXX_FLAGS}")
if (WORD_SIZE EQUAL 32) if (WORD_SIZE EQUAL 32)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
elseif (WORD_SIZE EQUAL 64) elseif (WORD_SIZE EQUAL 64)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64")
endif (WORD_SIZE EQUAL 32) endif (WORD_SIZE EQUAL 32)
endif (LINUX OR DARWIN) endif (LINUX OR DARWIN)
if (STANDALONE) if (STANDALONE)
add_definitions(-DLL_STANDALONE=1) add_definitions(-DLL_STANDALONE=1)
if (LINUX AND ${ARCH} STREQUAL "i686") if (LINUX AND ${ARCH} STREQUAL "i686")
add_definitions(-march=pentiumpro) add_definitions(-march=pentiumpro)
endif (LINUX AND ${ARCH} STREQUAL "i686") endif (LINUX AND ${ARCH} STREQUAL "i686")
else (STANDALONE) else (STANDALONE)
set(${ARCH}_linux_INCLUDES set(${ARCH}_linux_INCLUDES
ELFIO ELFIO
atk-1.0 atk-1.0
glib-2.0 glib-2.0
gstreamer-0.10 gstreamer-0.10
gtk-2.0 gtk-2.0
llfreetype2 llfreetype2
pango-1.0 pango-1.0
) )
endif (STANDALONE) endif (STANDALONE)
if(1 EQUAL 1) if(1 EQUAL 1)
add_definitions(-DOPENSIM_RULES=1) add_definitions(-DOPENSIM_RULES=1)
endif(1 EQUAL 1) endif(1 EQUAL 1)
if(SERVER) if(SERVER)
include_directories(${LIBS_PREBUILT_DIR}/include/havok) include_directories(${LIBS_PREBUILT_DIR}/include/havok)
endif(SERVER) endif(SERVER)
SET( CMAKE_EXE_LINKER_FLAGS_RELEASESSE2 SET( CMAKE_EXE_LINKER_FLAGS_RELEASESSE2
"${CMAKE_EXE_LINKER_FLAGS_RELEASE}" CACHE STRING "${CMAKE_EXE_LINKER_FLAGS_RELEASE}" CACHE STRING
"Flags used for linking binaries under SSE2 build." "Flags used for linking binaries under SSE2 build."
FORCE ) FORCE )
SET( CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2 SET( CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2
"${CMAKE_SHARED_LINKER_FLAGS_RELEASE}" CACHE STRING "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}" CACHE STRING
"Flags used by the shared libraries linker under SSE2 build." "Flags used by the shared libraries linker under SSE2 build."
FORCE ) FORCE )
MARK_AS_ADVANCED( MARK_AS_ADVANCED(
CMAKE_CXX_FLAGS_RELEASESSE2 CMAKE_CXX_FLAGS_RELEASESSE2
CMAKE_C_FLAGS_RELEASESSE2 CMAKE_C_FLAGS_RELEASESSE2
CMAKE_EXE_LINKER_FLAGS_RELEASESSE2 CMAKE_EXE_LINKER_FLAGS_RELEASESSE2
CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2 ) CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2 )

View File

@@ -1,47 +1,47 @@
/** /**
* @file llversionviewer.h * @file llversionviewer.h
* @brief * @brief
* *
* $LicenseInfo:firstyear=2002&license=viewergpl$ * $LicenseInfo:firstyear=2002&license=viewergpl$
* *
* Copyright (c) 2002-2009, Linden Research, Inc. * Copyright (c) 2002-2009, Linden Research, Inc.
* *
* Second Life Viewer Source Code * Second Life Viewer Source Code
* The source code in this file ("Source Code") is provided by Linden Lab * The source code in this file ("Source Code") is provided by Linden Lab
* to you under the terms of the GNU General Public License, version 2.0 * to you under the terms of the GNU General Public License, version 2.0
* ("GPL"), unless you have obtained a separate licensing agreement * ("GPL"), unless you have obtained a separate licensing agreement
* ("Other License"), formally executed by you and Linden Lab. Terms of * ("Other License"), formally executed by you and Linden Lab. Terms of
* the GPL can be found in doc/GPL-license.txt in this distribution, or * the GPL can be found in doc/GPL-license.txt in this distribution, or
* online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2
* *
* There are special exceptions to the terms and conditions of the GPL as * There are special exceptions to the terms and conditions of the GPL as
* it is applied to this Source Code. View the full text of the exception * it is applied to this Source Code. View the full text of the exception
* in the file doc/FLOSS-exception.txt in this software distribution, or * in the file doc/FLOSS-exception.txt in this software distribution, or
* online at * online at
* http://secondlifegrid.net/programs/open_source/licensing/flossexception * http://secondlifegrid.net/programs/open_source/licensing/flossexception
* *
* By copying, modifying or distributing this software, you acknowledge * By copying, modifying or distributing this software, you acknowledge
* that you have read and understood your obligations described above, * that you have read and understood your obligations described above,
* and agree to abide by those obligations. * and agree to abide by those obligations.
* *
* ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO
* WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY,
* COMPLETENESS OR PERFORMANCE. * COMPLETENESS OR PERFORMANCE.
* $/LicenseInfo$ * $/LicenseInfo$
*/ */
#ifndef LL_LLVERSIONVIEWER_H #ifndef LL_LLVERSIONVIEWER_H
#define LL_LLVERSIONVIEWER_H #define LL_LLVERSIONVIEWER_H
const S32 LL_VERSION_MAJOR = 1; const S32 LL_VERSION_MAJOR = 1;
const S32 LL_VERSION_MINOR = 5; const S32 LL_VERSION_MINOR = 5;
const S32 LL_VERSION_PATCH = 0; const S32 LL_VERSION_PATCH = 1;
const S32 LL_VERSION_BUILD = 0; const S32 LL_VERSION_BUILD = 0;
const char * const LL_CHANNEL = "Singularity Viewer"; const char * const LL_CHANNEL = "Singularity Viewer";
#if LL_DARWIN #if LL_DARWIN
const char * const LL_VERSION_BUNDLE_ID = "com.secondlife.snowglobe.viewer"; const char * const LL_VERSION_BUNDLE_ID = "com.secondlife.snowglobe.viewer";
#endif #endif
#endif #endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,179 +1,180 @@
<?xml version="1.0" ?> <?xml version="1.0" ?>
<llsd> <llsd>
<map> <map>
<!-- Ascent's Optionally Account-Specific Settings --> <!-- Ascent's Optionally Account-Specific Settings -->
<key>MoyMiniMapCustomColor</key> <key>MoyMiniMapCustomColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Custom minimap color you wish to have.</string> <string>Custom minimap color you wish to have.</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>0.375</real> <real>0.375</real>
<real>1.0</real> <real>1.0</real>
<real>1.0</real> <real>1.0</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentInstantMessageAnnounceIncoming</key> <key>AscentInstantMessageAnnounceIncoming</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Start IM window as soon as the person starts typing</string> <string>Start IM window as soon as the person starts typing</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Boolean</string> <string>Boolean</string>
<key>Value</key> <key>Value</key>
<integer>1</integer> <integer>1</integer>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentCustomTagLabel</key> <key>AscentCustomTagLabel</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Label for the custom local tag</string> <string>Label for the custom local tag</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>String</string> <string>String</string>
<key>Value</key> <key>Value</key>
<string>Custom</string> <string>Custom</string>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentCustomTagColor</key> <key>AscentCustomTagColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Color of custom tag.</string> <string>Color of custom tag.</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>0.5</real> <real>0.5</real>
<real>1.0</real> <real>1.0</real>
<real>0.25</real> <real>0.25</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentUseCustomTag</key> <key>AscentUseCustomTag</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Show a custom tag.</string> <string>Show a custom tag.</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Boolean</string> <string>Boolean</string>
<key>Value</key> <key>Value</key>
<integer>0</integer> <integer>0</integer>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentReportClientIndex</key> <key>AscentReportClientIndex</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Show your own tag</string> <string>Show your own tag</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>U32</string> <string>U32</string>
<key>Value</key> <key>Value</key>
<integer>1</integer> <integer>1</integer>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentFriendColor</key> <key>AscentFriendColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Color of chat messages from other residents</string> <string>Color of chat messages from other residents</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>1.0</real> <real>1.0</real>
<real>1.0</real> <real>1.0</real>
<real>0.0</real> <real>0.0</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentLindenColor</key> <key>AscentLindenColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Color of chat messages from other residents</string> <string>Color of chat messages from other residents</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>0.0</real> <real>0.0</real>
<real>0.0</real> <real>0.0</real>
<real>1.0</real> <real>1.0</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentMutedColor</key> <key>AscentMutedColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Color of chat messages from other residents</string> <string>Color of chat messages from other residents</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>0.7</real> <real>0.7</real>
<real>0.7</real> <real>0.7</real>
<real>0.7</real> <real>0.7</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentEstateOwnerColor</key> <key>AscentEstateOwnerColor</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Color of chat messages from other residents</string> <string>Color of chat messages from other residents</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>Color4</string> <string>Color4</string>
<key>Value</key> <key>Value</key>
<array> <array>
<real>1.0</real> <real>1.0</real>
<real>0.6</real> <real>0.6</real>
<real>1.0</real> <real>1.0</real>
<real>1.0</real> <real>1.0</real>
</array> </array>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
<key>AscentReportClientUUID</key> <key>AscentReportClientUUID</key>
<map> <map>
<key>Comment</key> <key>Comment</key>
<string>Broadcasted Client Key</string> <string>Broadcasted Client Key</string>
<key>Persist</key> <key>Persist</key>
<integer>1</integer> <integer>1</integer>
<key>Type</key> <key>Type</key>
<string>String</string> <string>String</string>
<key>Value</key> <key>Value</key>
<string>8873757c-092a-98fb-1afd-ecd347566fcd</string> <string>8873757c-092a-98fb-1afd-ecd347566fcd</string>
<key>IsCOA</key> <key>IsCOA</key>
<integer>1</integer> <integer>1</integer>
</map> </map>
</map>
</llsd> </map>
</llsd>

View File

@@ -1,181 +1,183 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<llsd> <llsd>
<map> <map>
<key>RestrainedLove</key>
<map> <key>RestrainedLove</key>
<key>Comment</key> <map>
<string>Toggles the RestrainedLove features (BDSM lockable toys support). Needs a restart of the viewer.</string> <key>Comment</key>
<key>Persist</key> <string>Toggles the RestrainedLove features (BDSM lockable toys support). Needs a restart of the viewer.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>1</integer>
<key>RestrainedLoveDebug</key> </map>
<map> <key>RestrainedLoveDebug</key>
<key>Comment</key> <map>
<string>Toggles the RestrainedLove debug mode (displays the commands when in debug mode).</string> <key>Comment</key>
<key>Persist</key> <string>Toggles the RestrainedLove debug mode (displays the commands when in debug mode).</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>0</integer>
<key>RestrainedLoveNoSetEnv</key> </map>
<map> <key>RestrainedLoveNoSetEnv</key>
<key>Comment</key> <map>
<string>When TRUE, forbids to set the environment (time of day and Windlight settings) via RestrainedLove. Needs a restart of the viewer.</string> <key>Comment</key>
<key>Persist</key> <string>When TRUE, forbids to set the environment (time of day and Windlight settings) via RestrainedLove. Needs a restart of the viewer.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>0</integer>
<key>RestrainedLoveForbidGiveToRLV</key> </map>
<map> <key>RestrainedLoveOffsetAvatarZ</key>
<key>Comment</key> <map>
<string>When FALSE, allows to give sub-folders to the #RLV RestrainedLove folder.</string> <key>Comment</key>
<key>Persist</key> <string>Offset the avatar.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>F32</string>
<integer>1</integer> <key>Value</key>
</map> <real>0.0</real>
<key>RLVaEnableCompositeFolders</key> </map>
<map> <key>RestrainedLoveReplaceWhenFolderBeginsWith</key>
<key>Comment</key> <map>
<string>Enables composite folders for shared inventory</string> <key>Comment</key>
<key>Persist</key> <string>If a folder name begins with this string, its attach behavior will always be "replace", never "stack". Default is blank (disabled).</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>String</string>
<integer>0</integer> <key>Value</key>
</map> <string></string>
<key>RLVaEnableLegacyNaming</key> </map>
<map> <key>RestrainedLoveStackWhenFolderBeginsWith</key>
<key>Comment</key> <map>
<string>Enables legacy naming convention for folders</string> <key>Comment</key>
<key>Persist</key> <string>If a folder name begins with this string, its attach behavior will always be "stack", never "replace". Default is "+".</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>String</string>
<integer>1</integer> <key>Value</key>
</map> <string>+</string>
<key>RLVaEnableWear</key> </map>
<map> <key>RLVaDebugHideUnsetDuplicate</key>
<key>Comment</key> <map>
<string>Enables the "Wear" option on the inventory item context menu for attachments</string> <key>Comment</key>
<key>Persist</key> <string>Suppresses reporting "unset" or "duplicate" command restrictions when RestrainedLoveDebug is TRUE</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>0</integer>
<key>RLVaEnableSharedWear</key> </map>
<map> <key>RestrainedLoveForbidGiveToRLV</key>
<key>Comment</key> <map>
<string>Attachments in the shared #RLV folder can be force-attached without needing to specify an attachment point (as long as no attachment is non-detachable)</string> <key>Comment</key>
<key>Persist</key> <string>When FALSE, allows to give sub-folders to the #RLV RestrainedLove folder.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>1</integer>
<key>RLVaHideLockedLayers</key> </map>
<map> <key>RLVaEnableCompositeFolders</key>
<key>Comment</key> <map>
<string>Hides "remove outfit" restricted worn clothing layers from @getoufit</string> <key>Comment</key>
<key>Persist</key> <string>Enables composite folders for shared inventory</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>0</integer>
<key>RLVaHideLockedAttachments</key> </map>
<map> <key>RLVaEnableLegacyNaming</key>
<key>Comment</key> <map>
<string>Hides non-detachable worn attachments from @getattach</string> <key>Comment</key>
<key>Persist</key> <string>Enables legacy naming convention for folders</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>1</integer>
<key>RLVaSharedInvAutoRename</key> </map>
<map> <key>RLVaEnableSharedWear</key>
<key>Comment</key> <map>
<string>Automatically renames shared inventory items when worn</string> <key>Comment</key>
<key>Persist</key> <string>Attachments in the shared #RLV folder can be force-attached without needing to specify an attachment point</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>0</integer>
<key>RLVaShowNameTags</key> </map>
<map> <key>RLVaHideLockedLayers</key>
<key>Comment</key> <map>
<string>Display of names above avatars is subject to the general "Show Names" setting when @shownames=n restricted</string> <key>Comment</key>
<key>Persist</key> <string>Hides "remove outfit" restricted worn clothing layers from @getoufit</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>0</integer>
<key>WarnFirstRLVDetach</key> </map>
<map> <key>RLVaHideLockedAttachments</key>
<key>Comment</key> <map>
<string>Enables FirstRLVDetach warning dialog</string> <key>Comment</key>
<key>Persist</key> <string>Hides non-detachable worn attachments from @getattach</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>0</integer>
<key>WarnFirstRLVEnableWear</key> </map>
<map> <key>RLVaSharedInvAutoRename</key>
<key>Comment</key> <map>
<string>Enables RLVEnableWear warning dialog</string> <key>Comment</key>
<key>Persist</key> <string>Automatically renames shared inventory items when worn</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>1</integer>
<key>WarnFirstRLVFartouch</key> </map>
<map> <key>RLVaShowNameTags</key>
<key>Comment</key> <map>
<string>Enables FirstRLVFartouch warning dialog</string> <key>Comment</key>
<key>Persist</key> <string>Display of names above avatars is subject to the general "Show Names" setting when @shownames=n restricted</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>0</integer>
<key>WarnFirstRLVGiveToRLV</key> </map>
<map> <key>WarnFirstRLVGiveToRLV</key>
<key>Comment</key> <map>
<string>Enables FirstRLVGiveToRLV warning dialog</string> <key>Comment</key>
<key>Persist</key> <string>Enables FirstRLVGiveToRLV warning dialog</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>1</integer>
</map> </map>
</llsd>
</map>
</llsd>

View File

@@ -1,93 +1,95 @@
<?xml version="1.0" ?> <?xml version="1.0" ?>
<llsd> <llsd>
<map> <map>
<key>SHAllowScriptCommands</key>
<map> <key>SHAllowScriptCommands</key>
<key>Comment</key> <map>
<string>Allow script to client intercommunication</string> <key>Comment</key>
<key>Persist</key> <string>Allow script to client intercommunication</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>1</integer> <key>Value</key>
</map> <integer>0</integer>
<key>SHScriptCommandPrefix</key> </map>
<map> <key>SHScriptCommandPrefix</key>
<key>Comment</key> <map>
<string>Prefix that script commands must be prepended with.</string> <key>Comment</key>
<key>Persist</key> <string>Prefix that script commands must be prepended with.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>String</string> <key>Type</key>
<key>Value</key> <string>String</string>
<string>#@#@!</string> <key>Value</key>
</map> <string>#@#@!</string>
<key>SHChatCommandPrefix</key> </map>
<map> <key>SHChatCommandPrefix</key>
<key>Comment</key> <map>
<string>Prefix that chat commands must be prepended with</string> <key>Comment</key>
<key>Persist</key> <string>Prefix that chat commands must be prepended with</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>String</string> <key>Type</key>
<key>Value</key> <string>String</string>
<string>>></string> <key>Value</key>
</map> <string>>></string>
<key>SHScriptCommandSeparator</key> </map>
<map> <key>SHScriptCommandSeparator</key>
<key>Comment</key> <map>
<string>Separator to use when tokenizing script command arguments</string> <key>Comment</key>
<key>Persist</key> <string>Separator to use when tokenizing script command arguments</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>String</string> <key>Type</key>
<key>Value</key> <string>String</string>
<string>|</string> <key>Value</key>
</map> <string>|</string>
<key>SHChatCommandSeparator</key> </map>
<map> <key>SHChatCommandSeparator</key>
<key>Comment</key> <map>
<string>Separator to use when tokenizing chat command arguments</string> <key>Comment</key>
<key>Persist</key> <string>Separator to use when tokenizing chat command arguments</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>String</string> <key>Type</key>
<key>Value</key> <string>String</string>
<string> </string> <key>Value</key>
</map> <string> </string>
<key>SHHighResSnapshotScale</key> </map>
<map> <key>SHHighResSnapshotScale</key>
<key>Comment</key> <map>
<string>High-resolution snapshot scale.</string> <key>Comment</key>
<key>Persist</key> <string>High-resolution snapshot scale.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>F32</string> <key>Type</key>
<key>Value</key> <string>F32</string>
<real>2.0</real> <key>Value</key>
</map> <real>2.0</real>
<key>SHHighResSnapshotForceTile</key> </map>
<map> <key>SHHighResSnapshotForceTile</key>
<key>Comment</key> <map>
<string>Force tiling of snapshots (enables AA and supersampling)</string> <key>Comment</key>
<key>Persist</key> <string>Force tiling of snapshots (enables AA and supersampling)</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>Boolean</string> <key>Type</key>
<key>Value</key> <string>Boolean</string>
<integer>0</integer> <key>Value</key>
</map> <integer>0</integer>
<key>SHHighResSnapshotSuperSample</key> </map>
<map> <key>SHHighResSnapshotSuperSample</key>
<key>Comment</key> <map>
<string>Set the supersampling scale in tiled screenshots.</string> <key>Comment</key>
<key>Persist</key> <string>Set the supersampling scale in tiled screenshots.</string>
<integer>1</integer> <key>Persist</key>
<key>Type</key> <integer>1</integer>
<string>F32</string> <key>Type</key>
<key>Value</key> <string>F32</string>
<real>1.0</real> <key>Value</key>
</map> <real>1.0</real>
</map> </map>
</llsd>
</map>
</llsd>