Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • alchemy-archive/alchemy
  • Liru/alchemy
  • TesticularSlingshot/alchemy
3 results
Show changes
Commits on Source (10423)
Showing with 1943 additions and 2961 deletions
---
Language: Cpp
# BasedOnStyle: Microsoft
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Right
AlignOperands: true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: Always
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
BinPackArguments: true
BinPackParameters: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Allman
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
SortPriority: 0
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 3
SortPriority: 0
- Regex: '.*'
Priority: 1
SortPriority: 0
IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: ''
IndentCaseLabels: false
IndentGotoLabels: true
IndentPPDirectives: None
IndentWidth: 4
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 1000
PointerAlignment: Right
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: true
SpaceAfterCStyleCast: true
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
Standard: Latest
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 4
UseCRLF: false
UseTab: Never
...
* text eol=lf
# Viewer Files
*.db2 binary
*.llm binary
*.sln text eol=crlf
*.vcproj text eol=crlf
*.vcxproj text eol=crlf
*.gif binary
*.png binary
*.tga binary
*.jpg binary
*.j2k binary
*.j2c binary
*.ico binary
*.icns binary
*.bmp binary
*.BMP binary
/indra/tools/manifests/compatibility.manifest text eol=crlf
\ No newline at end of file
syntax: glob
# WinMerge temp files
*.bak
# Compiled python bytecode
......@@ -8,19 +6,27 @@ syntax: glob
.*.swp
#OSX image cache file
*.DS_Store
#*.orig
LICENSES
*.orig
*.cpp.bak
*.h.bak
*.diff
*.old
*.rej
**/.vs
Pipfile.lock
.env
/build-*
/clion-*
indra/.distcc
build-linux-*
build-darwin-*
build-vc80*
build-vc100*
build-vc110*
build-vc120*
build-vc140*
qtcreator-build/
clion-linux*
indra/.idea
indra-build/
indra/build-vc[0-9]*
indra/out/
indra/CMakeFiles
indra/CMakeLists.txt.user
indra/lib/mono/1.0/*.dll
......@@ -61,23 +67,13 @@ debian/files
build-stamp
configure-stamp
^indra/lib/python/mulib.*
^web/locale.*
^web/secondlife.com.*
^web/config.*
^indra/web/dataservice/locale.*
^indra/web/dataservice/lib/shared/vault.*
^indra/web/dataservice/vendor.*
glob:indra/newview/dbghelp.dll
glob:*.cpp.bak
glob:*.h.bak
glob:indra/newview/typed_locations.txt
glob:indra/newview/teleport_history.txt
glob:indra/newview/search_history.txt
glob:indra/newview/filters.xml
glob:indra/newview/avatar_icons_cache.txt
glob:indra/newview/avatar_lad.log
glob:*.diff
glob:*.old
indra/newview/typed_locations.txt
indra/newview/teleport_history.txt
indra/newview/search_history.txt
indra/newview/filters.xml
indra/newview/avatar_icons_cache.txt
indra/newview/avatar_lad.log
indra/newview/pilot.txt
indra/newview/pilot.xml
*.rej
stages:
- build
- deploy
variables:
VIEWER_USE_CRASHPAD: "TRUE"
VIEWER_CRASHPAD_URL: $SENTRY_DSN
.win_build: &win_build
stage: build
tags:
- autobuild
- windows
before_script:
- pipenv install
script:
- If ($env:VIEWER_CHANNEL_TYPE -eq 'Project')
{
$env:VIEWER_CHANNEL_CODENAME = $env:CI_COMMIT_REF_NAME[8..100] -join ''
}
- pipenv run autobuild configure -c ReleaseOS -- -DUSE_FMODSTUDIO=ON -DUSE_NVAPI=ON -DUSE_LTO=ON -DVS_DISABLE_FATAL_WARNINGS=ON
- pipenv run autobuild build -c ReleaseOS --no-configure
- If ($env:VIEWER_USE_CRASHPAD -eq 'TRUE') {
- Push-Location .\build-vc-*\newview\Release\
- sentry-cli upload-dif --include-sources alchemy-bin.exe alchemy-bin.pdb crashpad_handler.exe crashpad_handler.pdb openjpeg.pdb openjpeg.dll fmod.dll libcrypto-1_1.dll libcrypto-1_1.pdb libssl-1_1.dll libssl-1_1.pdb libcrypto-1_1-x64.dll libcrypto-1_1-x64.pdb libssl-1_1-x64.dll libssl-1_1-x64.pdb vcruntime140.dll msvcp140.dll nghttp2.dll glod.dll
- Pop-Location }
artifacts:
name: "$env:CI_COMMIT_REF_NAME-$env:CI_COMMIT_SHORT_SHA"
expire_in: 2 week
paths:
- build-vc-*/newview/Release/build_data.json
- build-vc-*/newview/Release/alchemy-bin.pdb
- build-vc-*/newview/Release/Alchemy_*_Setup.exe
.beta_rules: &beta_rules
only:
- /^.*-beta$/
except:
- branches
.release_rules: &release_rules
only:
- /^.*-release$/
except:
- branches
build:master:windows32:
<<: *win_build
interruptible: true
variables:
AUTOBUILD_ADDRSIZE: 32
VIEWER_CHANNEL_TYPE: Test
VIEWER_USE_CRASHPAD: "FALSE"
only:
- schedules
- web
build:master:windows64:
<<: *win_build
interruptible: true
variables:
AUTOBUILD_ADDRSIZE: 64
VIEWER_CHANNEL_TYPE: Test
VIEWER_USE_CRASHPAD: "FALSE"
only:
- schedules
- web
build:project:windows32:
<<: *win_build
interruptible: true
variables:
AUTOBUILD_ADDRSIZE: 32
VIEWER_CHANNEL_TYPE: Project
only:
- /^project-.*$/
build:project:windows64:
<<: *win_build
interruptible: true
variables:
AUTOBUILD_ADDRSIZE: 64
VIEWER_CHANNEL_TYPE: Project
only:
- /^project-.*$/
build:beta:windows32:
<<: *win_build
variables:
AUTOBUILD_ADDRSIZE: 32
VIEWER_CHANNEL_TYPE: Beta
<<: *beta_rules
build:beta:windows64:
<<: *win_build
variables:
AUTOBUILD_ADDRSIZE: 64
VIEWER_CHANNEL_TYPE: Beta
<<: *beta_rules
build:release:windows32:
<<: *win_build
variables:
AUTOBUILD_ADDRSIZE: 32
VIEWER_CHANNEL_TYPE: Release
<<: *release_rules
build:release:windows64:
<<: *win_build
variables:
AUTOBUILD_ADDRSIZE: 64
VIEWER_CHANNEL_TYPE: Release
<<: *release_rules
.deploy_template: &deploy_template
stage: deploy
tags:
- autobuild
- windows
script:
- $BuildData = Get-Content .\build-vc-64\newview\Release\build_data.json | ConvertFrom-Json
- $BuildChannelVersion = $BuildData."Channel" + ' ' + $BuildData."Version"
- $UploadDestViewerDir = $BuildChannelVersion.ToLower().Replace(" ", "/")
- $UploadDestURL = "https://pkg.alchemyviewer.org/repository/viewer/${UploadDestViewerDir}"
- $UploadParams = @{ UseBasicParsing = $true;
Method = "PUT";
Headers = @{
ContentType = "application/x-executable";
Authorization = "Basic $([System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes("$env:AUTOBUILD_HTTP_USER`:$env:AUTOBUILD_HTTP_PASS")))"; };
Verbose = $true; };
- Push-Location .\build-vc-32\newview\Release\
- $FileNameWin32 = Get-ChildItem -Path . -Name -Include Alchemy_*_Setup.exe
- Invoke-WebRequest @UploadParams -InFile .\$FileNameWin32 -Uri "${UploadDestURL}/${FileNameWin32}"
- Pop-Location
- Push-Location .\build-vc-64\newview\Release\
- $FileNameWin64 = Get-ChildItem -Path . -Name -Include Alchemy_*_Setup.exe
- Invoke-WebRequest @UploadParams -InFile .\$FileNameWin64 -Uri "${UploadDestURL}/${FileNameWin64}"
- Pop-Location
- sentry-cli releases new $BuildChannelVersion
- sentry-cli releases set-commits --auto $BuildChannelVersion
- sentry-cli releases finalize $BuildChannelVersion
when: manual
deploy_project:
<<: *deploy_template
environment:
name: qa
only:
- /^project-.*$/
deploy_beta:
<<: *deploy_template
environment:
name: staging
<<: *beta_rules
deploy_release:
<<: *deploy_template
environment:
name: production
<<: *release_rules
\ No newline at end of file
## Summary
(Summarize the bug encountered concisely)
## Steps to reproduce
(How one can reproduce the issue - this is very important)
## What is the current bug behavior?
(What actually happens)
## What is the expected correct behavior?
(What you should see instead)
## Environment
```
(Please open `Help->About Alchemy` and click Copy to Clipboard then paste its contents here)
```
## Relevant logs and/or screenshots
(Attach or paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)
/label ~Type::Bug ~Status::Awaiting-Investigation
## Summary
(Summarize the requested feature concisely.)
## How would you like the feature to work?
(Describe how the feature should function in as much detail as possible.)
## Why is this feature important to you? How would it benefit the community?Required
(Provide reasoning as to why the feature is important to you, and ways it could benefit the larger Alchemy Viewer community.)
## Screenshots, Mockups, etc
(Attach or paste any relevant screenshots or mockups.)
/label ~Type::New Feature ~Status::Awaiting-Investigation
\ No newline at end of file
This diff is collapsed.
# BuildParams
#
# Please refer to:
# https://wiki.secondlife.com/wiki/Automated_Build_System
# Global setting for now...
Darwin.symbolfiles = "newview/Release/secondlife-symbols-darwin.tar.bz2"
CYGWIN.symbolfiles = "newview/Release/secondlife-symbols-windows.tar.bz2"
Linux.symbolfiles = "newview/secondlife-symbols-linux.tar.bz2"
# Use Public Upload Locations
public_build = true
build_docs = true
# disable all Debug builds (RelWithDebInfo is sufficient)
build_CYGWIN_Debug = false
build_Linux_Debug = false
build_Darwin_Debug = false
build_Debug = false
# Update Public Inworld Build Status Indicators (setting should mirror "public_build")
email_status_this_is_os = true
# Limit extent of codeticket updates to revisions after...
codeticket_since = 3.3.0-release
# Override build system default toolchain
# Note that this will only affect automated builds.
Linux.distcc_version =
Linux.gcc_version = /usr/bin/gcc-4.6
Linux.cxx_version = /usr/bin/g++-4.6
################################################################
#### Examples of how to set the viewer_channel ####
#
# To build a Release or Release candidate in build bingo:
# bingo.viewer_channel = "Second Life Release"
#
# To build a Beta for the 'Bingo' project in build bingo:
# bingo.viewer_channel = "Second Life Beta Bingo"
#
# To build a Project viewer for the 'Bingo' project in build bingo:
# bingo.viewer_channel = "Second Life Project Bingo"
#
# If left unset, viewer_channel defaults to 'Second Life Test',
# which is appropriate for individual developer builds.
#
# All Linden Lab builds (and only Linden Lab builds)
# should use a viewer_channel that begins with "Second Life"
################################################################
viewer_channel = "Second Life Test"
################################################################
# Special packaging parameters.
# These parameters can be used to create additional packages
# which identify themselves in a distinct way with either
# a sourceid (sent to web services) or a channel name (sent to login)
# the default sourceid should always be a null string:
sourceid = ""
# the additional_packages variable is a blank separated list of package prefixes:
additional_packages = ""
# to set the special values for a package, create variables using each prefix:
# additional_packages = "Foo Bar"
# Foo_sourceid = "bingo"
# Foo_viewer_channel_suffix = "Foo"
# Bar_sourceid = "bongo"
# Bar_viewer_channel_suffix = "Bar"
# the viewer_channel_suffix is prefixed by a blank and then appended to the viewer_channel
# for the package in a setting that overrides the compiled-in value
################################################################
additional_packages = "EDU"
# The EDU package allows us to create a separate release channel whose expirations
# are synchronized as much as possible with the academic year
EDU_sourceid = ""
EDU_viewer_channel_suffix = "edu"
# Notifications - to configure email notices, add a setting like this:
# <username>_<reponame>.email = <email-address>
# ========================================
# mesh-development
# ========================================
mesh-development.viewer_channel = "Project Viewer - Mesh"
mesh-development.viewer_grid = aditi
mesh-development.build_debug_release_separately = true
mesh-development.build_CYGWIN_Debug = false
mesh-development.build_viewer_update_version_manager = false
# ========================================
# mesh-development-release-1-candidate
# ========================================
mesh-development-release-1-candidate.viewer_channel = "Project Viewer - Mesh"
mesh-development-release-1-candidate.viewer_grid = agni
mesh-development-release-1-candidate.build_debug_release_separately = true
mesh-development-release-1-candidate.build_CYGWIN_Debug = false
mesh-development-release-1-candidate.build_viewer_update_version_manager = false
# ========================================
# mesh-development-rc
# ========================================
mesh-development-rc.viewer_channel = "Project Viewer - Mesh"
mesh-development-rc.viewer_grid = agni
mesh-development-rc.build_debug_release_separately = true
mesh-development-rc.build_CYGWIN_Debug = false
mesh-development-rc.build_viewer_update_version_manager = false
# ========================================
# mesh-asset-deprecation
# ========================================
mesh-asset-deprecation.viewer_channel = "Project Viewer - Mesh Asset Deprecation"
mesh-asset-deprecation.viewer_grid = aditi
mesh-asset-deprecation.build_debug_release_separately = true
mesh-asset-deprecation.build_CYGWIN_Debug = false
mesh-asset-deprecation.build_viewer_update_version_manager = false
# ========================================
# viewer-mesh
# ========================================
viewer-mesh.build_viewer = true
viewer-mesh.build_server = false
viewer-mesh.build_Linux = true
viewer-mesh.build_hg_bundle = true
viewer-mesh.build_viewer_update_version_manager = false
viewer-mesh.build_Debug = false
viewer-mesh.build_RelWithDebInfo = false
viewer-mesh.viewer_channel = "Project Viewer - Mesh"
viewer-mesh.viewer_grid = aditi
viewer-mesh.email = shining@lists.lindenlab.com
# =================================================================
# asset delivery 2010 projects
# =================================================================
viewer-asset-delivery.viewer_channel = "Second Life Development"
viewer-asset-delivery.build_viewer_update_version_manager = false
viewer-asset-delivery.email = monty@lindenlab.com
viewer-asset-delivery.build_server = false
viewer-asset-delivery.build_server_tests = false
viewer-asset-delivery-metrics.viewer_channel = "Second Life Development"
viewer-asset-delivery-metrics.build_viewer_update_version_manager = false
viewer-asset-delivery-metrics.email = monty@lindenlab.com
viewer-asset-delivery-metrics.build_server = false
viewer-asset-delivery-metrics.build_server_tests = false
# ========================================
# Simon says
# ========================================
simon_viewer-dev-private.public_build = false
simon_viewer-dev-private.email_status_this_is_os = false
# ========================================
# Vir
# ========================================
vir-project-1.viewer_channel = "Second Life Release"
# ========================================
# Merov
# ========================================
merov-viewer-maint-2287.viewer_channel = "Second Life Project Merchant Outbox"
merov-viewer-maint-2287.login_channel = "Second Life Project Merchant Outbox"
merov-viewer-maint-2287.build_viewer_update_version_manager = false
merov-viewer-maint-2287.codeticket_add_context = false
# ========================================
# THX-1138 / Runway projects
# ========================================
viewer-thx1138-runway-shared.viewer_channel = "Project Viewer - THX-1138 Runway"
viewer-thx1138-runway-shared.viewer_grid = uma
viewer-thx1138-runway-shared.build_debug_release_separately = true
viewer-thx1138-runway-shared.build_CYGWIN_Debug = false
viewer-thx1138-runway-shared.build_viewer_update_version_manager = false
viewer-thx1138.viewer_channel = "Project Viewer - THX-1138"
viewer-thx1138.viewer_grid = uma
viewer-thx1138.build_debug_release_separately = true
viewer-thx1138.build_CYGWIN_Debug = false
viewer-thx1138.build_viewer_update_version_manager = false
runway-merge.viewer_channel = "Project Viewer - Runway Merge"
runway-merge.viewer_grid = agni
runway-merge.build_debug_release_separately = true
runway-merge.build_CYGWIN_Debug = false
runway-merge.build_viewer_update_version_manager = false
runway.viewer_channel = "Project Viewer - Runway"
runway.viewer_grid = agni
runway.build_debug_release_separately = true
runway.build_CYGWIN_Debug = false
runway.build_viewer_update_version_manager = false
# eof
This diff is collapsed.
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[dev-packages]
[packages]
llbase = "*"
certifi = "*"
autobuild = {git = "https://git.alchemyviewer.org/alchemy/autobuild.git"}
[requires]
python_version = "2.7"
![Alchemy Logo](http://2.bp.blogspot.com/-NWf0umfCazg/U_HEfrzkWGI/AAAAAAAAAeM/vtBxnNqFevw/s1600/Banner_New.png)
![Alchemy Logo](https://www.alchemyviewer.org/images/banner.png)
[![pipeline status](https://git.alchemyviewer.org/alchemy/alchemy/badges/master/pipeline.svg)](https://git.alchemyviewer.org/alchemy/alchemy/commits/master)
[![Coverity Scan Build Status](https://scan.coverity.com/projects/1904/badge.svg)](https://scan.coverity.com/projects/1904)
## About
Alchemy is a client for Second Life and OpenMetaverse protocol simulators. We focus on creating a smooth and easy to use experience with secure and sane defaults.
## Resources
* [Alchemy Website](http://www.alchemyviewer.org)
* [Issue Tracker](http://alchemy.atlassian.net/)
* [Wiki](https://alchemy.atlassian.net/wiki/)
## Code Status
![Coverity Scan Build Status](https://scan.coverity.com/projects/1904/badge.svg)
\ No newline at end of file
* [Issue Tracker](https://git.alchemyviewer.org/alchemy/alchemy/issues)
* [Wiki](https://git.alchemyviewer.org/alchemy/alchemy/wikis/home)
This diff is collapsed.
#!/bin/sh
# This is a the master build script - it is intended to be run by the Linden
# Lab build farm
# It is called by a wrapper script in the shared repository which sets up
# the environment from the various BuildParams files and does all the build
# result post-processing.
#
# PLEASE NOTE:
#
# * This script is interpreted on three platforms, including windows and cygwin
# Cygwin can be tricky....
# * The special style in which python is invoked is intentional to permit
# use of a native python install on windows - which requires paths in DOS form
# * This script relies heavily on parameters defined in BuildParams
check_for()
{
if [ -e "$2" ]; then found_dict='FOUND'; else found_dict='MISSING'; fi
echo "$1 ${found_dict} '$2' " 1>&2
}
build_dir_Darwin()
{
echo build-darwin-i386
}
build_dir_Linux()
{
echo build-linux-i686
}
build_dir_CYGWIN()
{
echo build-vc120
}
viewer_channel_suffix()
{
local package_name="$1"
local suffix_var="${package_name}_viewer_channel_suffix"
local suffix=$(eval "echo \$${suffix_var}")
if [ "$suffix"x = ""x ]
then
echo ""
else
echo "_$suffix"
fi
}
installer_Darwin()
{
local package_name="$1"
local package_dir="$(build_dir_Darwin ${last_built_variant:-Release})/newview/"
local pattern=".*$(viewer_channel_suffix ${package_name})_[0-9]+_[0-9]+_[0-9]+_[0-9]+_i386\\.dmg\$"
# since the additional packages are built after the base package,
# sorting oldest first ensures that the unqualified package is returned
# even if someone makes a qualified name that duplicates the last word of the base name
local package=$(ls -1tr "$package_dir" 2>/dev/null | grep -E "$pattern" | head -n 1)
test "$package"x != ""x && echo "$package_dir/$package"
}
installer_Linux()
{
local package_name="$1"
local package_dir="$(build_dir_Linux ${last_built_variant:-Release})/newview/"
local pattern=".*$(viewer_channel_suffix ${package_name})_[0-9]+_[0-9]+_[0-9]+_[0-9]+_i686\\.tar\\.bz2\$"
# since the additional packages are built after the base package,
# sorting oldest first ensures that the unqualified package is returned
# even if someone makes a qualified name that duplicates the last word of the base name
package=$(ls -1tr "$package_dir" 2>/dev/null | grep -E "$pattern" | head -n 1)
test "$package"x != ""x && echo "$package_dir/$package"
}
installer_CYGWIN()
{
local package_name="$1"
local variant=${last_built_variant:-Release}
local build_dir=$(build_dir_CYGWIN ${variant})
local package_dir
if [ "$package_name"x = ""x ]
then
package_dir="${build_dir}/newview/${variant}"
else
package_dir="${build_dir}/newview/${package_name}/${variant}"
fi
if [ -r "${package_dir}/touched.bat" ]
then
local package_file=$(sed 's:.*=::' "${package_dir}/touched.bat")
echo "${package_dir}/${package_file}"
fi
}
pre_build()
{
local variant="$1"
begin_section "Pre$variant"
[ -n "$master_message_template_checkout" ] \
&& [ -r "$master_message_template_checkout/message_template.msg" ] \
&& template_verifier_master_url="-DTEMPLATE_VERIFIER_MASTER_URL=file://$master_message_template_checkout/message_template.msg"
check_for "Confirm dictionaries are installed before 'autobuild configure'" ${build_dir}/packages/dictionaries
"$autobuild" configure -c $variant -- \
-DPACKAGE:BOOL=ON \
-DRELEASE_CRASH_REPORTING:BOOL=ON \
-DVIEWER_CHANNEL:STRING="\"$viewer_channel\"" \
-DGRID:STRING="\"$viewer_grid\"" \
-DLL_TESTS:BOOL="$run_tests" \
-DTEMPLATE_VERIFIER_OPTIONS:STRING="$template_verifier_options" $template_verifier_master_url
end_section "Pre$variant"
}
package_llphysicsextensions_tpv()
{
begin_section "PhysicsExtensions_TPV"
tpv_status=0
if [ "$variant" = "Release" ]
then
llpetpvcfg=$build_dir/packages/llphysicsextensions/autobuild-tpv.xml
"$autobuild" build --verbose --config-file $llpetpvcfg -c Tpv
# capture the package file name for use in upload later...
PKGTMP=`mktemp -t pgktpv.XXXXXX`
trap "rm $PKGTMP* 2>/dev/null" 0
"$autobuild" package --verbose --config-file $llpetpvcfg --results-file "$(native_path $PKGTMP)"
tpv_status=$?
if [ -r "${PKGTMP}" ]
then
cat "${PKGTMP}" >> "$build_log"
eval $(cat "${PKGTMP}") # sets autobuild_package_{name,filename,md5}
autobuild_package_filename="$(shell_path "${autobuild_package_filename}")"
echo "${autobuild_package_filename}" > $build_dir/llphysicsextensions_package
fi
else
echo "Do not provide llphysicsextensions_tpv for $variant"
llphysicsextensions_package=""
fi
end_section "PhysicsExtensions_TPV"
return $tpv_status
}
build()
{
local variant="$1"
if $build_viewer
then
begin_section "Viewer$variant"
"$autobuild" build --no-configure -c $variant
build_ok=$?
end_section "Viewer$variant"
# Run build extensions
if [ $build_ok -eq 0 -a -d ${build_dir}/packages/build-extensions ]; then
for extension in ${build_dir}/packages/build-extensions/*.sh; do
. $extension
if [ $build_ok -ne 0 ]; then
break
fi
done
fi
# *TODO: Make this a build extension.
package_llphysicsextensions_tpv
tpvlib_build_ok=$?
if [ $build_ok -eq 0 -a $tpvlib_build_ok -eq 0 ]
then
echo true >"$build_dir"/build_ok
else
echo false >"$build_dir"/build_ok
fi
fi
}
# This is called from the branch independent script upon completion of all platform builds.
build_docs()
{
begin_section "Building Documentation"
begin_section "Autobuild metadata"
if [ -r "$build_dir/autobuild-package.xml" ]
then
upload_item docs "$build_dir/autobuild-package.xml" text/xml
else
record_event "no metadata at '$build_dir/autobuild-package.xml'"
fi
end_section "Autobuild metadata"
if [ "$arch" != "Linux" ]
then
record_dependencies_graph # defined in build.sh
else
echo "TBD - skipping linux graph (probable python version dependency)" 1>&2
fi
end_section "Building Documentation"
}
# Check to see if we were invoked from the wrapper, if not, re-exec ourselves from there
if [ "x$arch" = x ]
then
top=`hg root`
if [ -x "$top/../buildscripts/hg/bin/build.sh" ]
then
exec "$top/../buildscripts/hg/bin/build.sh" "$top"
else
cat <<EOF
This script, if called in a development environment, requires that the branch
independent build script repository be checked out next to this repository.
This repository is located at http://hg.lindenlab.com/parabuild/buildscripts
EOF
exit 1
fi
fi
# Check to see if we're skipping the platform
eval '$build_'"$arch" || pass
# ensure AUTOBUILD is in native path form for child processes
AUTOBUILD="$(native_path "$AUTOBUILD")"
# set "$autobuild" to cygwin path form for use locally in this script
autobuild="$(shell_path "$AUTOBUILD")"
if [ ! -x "$autobuild" ]
then
record_failure "AUTOBUILD not executable: '$autobuild'"
exit 1
fi
# load autobuild provided shell functions and variables
eval "$("$autobuild" source_environment)"
# dump environment variables for debugging
begin_section "Environment"
env|sort
end_section "Environment"
# Now run the build
succeeded=true
build_processes=
last_built_variant=
for variant in $variants
do
eval '$build_'"$variant" || continue
eval '$build_'"$arch"_"$variant" || continue
# Only the last built arch is available for upload
last_built_variant="$variant"
begin_section "Do$variant"
build_dir=`build_dir_$arch $variant`
build_dir_stubs="$build_dir/win_setup/$variant"
begin_section "PreClean"
rm -rf "$build_dir"
end_section "PreClean"
mkdir -p "$build_dir"
mkdir -p "$build_dir/tmp"
if pre_build "$variant" "$build_dir" >> "$build_log" 2>&1
then
if $build_link_parallel
then
begin_section BuildParallel
( build "$variant" "$build_dir" > "$build_dir/build.log" 2>&1 ) &
build_processes="$build_processes $!"
end_section BuildParallel
else
begin_section "Build$variant"
build "$variant" "$build_dir" 2>&1 | tee -a "$build_log" | sed -n 's/^ *\(##teamcity.*\)/\1/p'
if `cat "$build_dir/build_ok"`
then
echo so far so good.
else
record_failure "Build of \"$variant\" failed."
fi
end_section "Build$variant"
fi
else
record_failure "Build Prep for \"$variant\" failed."
fi
end_section "Do$variant"
done
build_docs
# If we are building variants in parallel, wait, then collect results.
# This requires that the build dirs are variant specific
if $build_link_parallel && [ x"$build_processes" != x ]
then
begin_section WaitParallel
wait $build_processes
for variant in $variants
do
eval '$build_'"$variant" || continue
eval '$build_'"$arch"_"$variant" || continue
begin_section "Build$variant"
build_dir=`build_dir_$arch $variant`
build_dir_stubs="$build_dir/win_setup/$variant"
tee -a $build_log < "$build_dir/build.log" | sed -n 's/^ *\(##teamcity.*\)/\1/p'
if `cat "$build_dir/build_ok"`
then
echo so far so good.
else
record_failure "Parallel build of \"$variant\" failed."
fi
end_section "Build$variant"
done
end_section WaitParallel
fi
# build debian package
if [ "$arch" == "Linux" ]
then
if $succeeded
then
if $build_viewer_deb && [ "$last_built_variant" == "Release" ]
then
begin_section "Build Viewer Debian Package"
have_private_repo=false
# mangle the changelog
dch --force-bad-version \
--distribution unstable \
--newversion "${VIEWER_VERSION}" \
"Automated build #$build_id, repository $branch revision $revision." \
>> "$build_log" 2>&1
# build the debian package
$pkg_default_debuild_command >>"$build_log" 2>&1 || record_failure "\"$pkg_default_debuild_command\" failed."
# Unmangle the changelog file
hg revert debian/changelog
end_section "Build Viewer Debian Package"
# Run debian extensions
if [ -d ${build_dir}/packages/debian-extensions ]; then
for extension in ${build_dir}/packages/debian-extensions/*.sh; do
. $extension
done
fi
# Move any .deb results.
mkdir -p ../packages_public
mkdir -p ../packages_private
mv ${build_dir}/packages/*.deb ../packages_public 2>/dev/null || true
mv ${build_dir}/packages/packages_private/*.deb ../packages_private 2>/dev/null || true
# upload debian package and create repository
begin_section "Upload Debian Repository"
for deb_file in `/bin/ls ../packages_public/*.deb ../*.deb 2>/dev/null`; do
upload_item debian $deb_file binary/octet-stream
done
for deb_file in `/bin/ls ../packages_private/*.deb 2>/dev/null`; do
upload_item debian_private $deb_file binary/octet-stream
have_private_repo=true
done
create_deb_repo
# Rename the local debian_repo* directories so that the master buildscript
# doesn't make a remote repo again.
for debian_repo_type in debian_repo debian_repo_private; do
if [ -d "$build_log_dir/$debian_repo_type" ]; then
mv $build_log_dir/$debian_repo_type $build_log_dir/${debian_repo_type}_pushed
fi
done
if [ $have_private_repo = true ]; then
eval "$python_command \"$redirect\" '\${private_S3PROXY_URL}${S3PREFIX}repo/$repo/rev/$revision/index.html'"\
>"$build_log_dir/private.html" || fatal generating redirect
upload_item global_redirect "$build_log_dir/private.html" text/html
fi
end_section "Upload Debian Repository"
else
echo skipping debian build
fi
else
echo skipping debian build due to failed build.
fi
fi
# check status and upload results to S3
if $succeeded
then
if $build_viewer
then
begin_section Upload Installer
# Upload installer
package=$(installer_$arch)
if [ x"$package" = x ] || test -d "$package"
then
# Coverity doesn't package, so it's ok, anything else is fail
succeeded=$build_coverity
else
# Upload base package.
upload_item installer "$package" binary/octet-stream
upload_item quicklink "$package" binary/octet-stream
[ -f $build_dir/summary.json ] && upload_item installer $build_dir/summary.json text/plain
# Upload additional packages.
for package_id in $additional_packages
do
package=$(installer_$arch "$package_id")
if [ x"$package" != x ]
then
upload_item installer "$package" binary/octet-stream
upload_item quicklink "$package" binary/octet-stream
else
record_failure "Failed to find additional package for '$package_id'."
fi
done
case "$last_built_variant" in
Release)
# Upload crash reporter files
for symbolfile in $symbolfiles
do
upload_item symbolfile "$build_dir/$symbolfile" binary/octet-stream
done
# Upload the actual dependencies used
if [ -r "$build_dir/packages/installed-packages.xml" ]
then
upload_item installer "$build_dir/packages/installed-packages.xml" text/xml
fi
# Upload the llphysicsextensions_tpv package, if one was produced
# *TODO: Make this an upload-extension
if [ -r "$build_dir/llphysicsextensions_package" ]
then
llphysicsextensions_package=$(cat $build_dir/llphysicsextensions_package)
upload_item private_artifact "$llphysicsextensions_package" binary/octet-stream
else
echo "No llphysicsextensions_package"
fi
;;
*)
echo "Skipping mapfile for $last_built_variant"
;;
esac
# Run upload extensions
if [ -d ${build_dir}/packages/upload-extensions ]; then
for extension in ${build_dir}/packages/upload-extensions/*.sh; do
. $extension
done
fi
# Upload stub installers
upload_stub_installers "$build_dir_stubs"
fi
end_section Upload Installer
else
echo skipping upload of installer
fi
else
echo skipping upload of installer due to failed build.
fi
# The branch independent build.sh script invoking this script will finish processing
$succeeded || exit 1
# Linden packages install in opt/linden
secondlife-viewer: dir-or-file-in-opt
secondlife-viewer: section-is-dh_make-template
secondlife-viewer: binary-without-manpage
secondlife-viewer: maintainer-script-empty postrm
secondlife-viewer: maintainer-script-empty preinst
secondlife-viewer: maintainer-script-empty prerm
secondlife-viewer: unstripped-binary-or-object
......@@ -11,7 +11,7 @@ summary, see http://creativecommons.org/licenses/by-sa/3.0/.
Notwithstanding the foregoing, all of Linden Lab's trademarks, including
but not limited to the Second Life brand name and Second Life Eye-in-Hand
logo, are subject to our trademark policy at
http://secondlife.com/corporate/trademark/.
http://secondlife.com/corporate/brand/trademark/.
If you distribute any copies or adaptations of the Second Life viewer
artwork or any other works in these files, you must include this Notice
......
......@@ -7,7 +7,9 @@ you under the terms of the GNU Lesser General Public License, version 2.1
("LGPL"), unless you have obtained a separate licensing agreement
("Other License"), formally executed by you and Linden Lab. Terms of
the GPL can be found in doc/LGPL-license.txt in this distribution, or
online at http://secondlife.com/developers/opensource/lgplv2_1
online at
https://wiki.secondlife.com/wiki/Linden_Lab_Official:GNU_Lesser_General_Public_License,_version_2.1
By copying, modifying or distributing this software, you acknowledge
that you have read and understood your obligations described above,
......
......@@ -12,6 +12,7 @@ Able Whitman
Adam Marker
VWR-2755
Adeon Writer
MAINT-1211
Aeonix Aeon
Agathos Frascati
CT-246
......@@ -185,6 +186,43 @@ Ansariel Hiller
BUG-3764
STORM-1984
STORM-1979
STORM-2083
MAINT-5533
STORM-2094
MAINT-5756
MAINT-4677
MAINT-6300
MAINT-6397
MAINT-6432
MAINT-6513
MAINT-6514
MAINT-6552
STORM-2133
MAINT-6511
MAINT-6612
MAINT-6637
MAINT-6636
MAINT-6744
MAINT-6752
MAINT-6773
MAINT-6906
MAINT-6911
STORM-2140
MAINT-6912
MAINT-6929
STORM-2141
MAINT-6953
MAINT-7028
MAINT-7059
MAINT-6519
MAINT-7899
STORM-2105
STORM-2151
MAINT-6917
MAINT-8085
MAINT-8723
SL-10385
SL-10891
Aralara Rajal
Arare Chantilly
CHUIBUG-191
......@@ -299,6 +337,7 @@ Catherine Pfeffer
VWR-1282
VWR-8624
VWR-10854
Cathy Foil
Cayu Cluny
Celierra Darling
VWR-1274
......@@ -306,6 +345,8 @@ Celierra Darling
Chantal Harvey
Charles Courtois
Charlie Sazaland
Chaser Zaks
BUG-225599
Cherry Cheevers
ChickyBabes Zuzu
Christopher Organiser
......@@ -316,6 +357,8 @@ Cinder Roxley
BUG-8786
OPEN-185
OPEN-282
OPEN-292
OPEN-297
STORM-1703
STORM-1948
STORM-1831
......@@ -330,6 +373,10 @@ Cinder Roxley
STORM-2053
STORM-2096
STORM-2113
STORM-2116
STORM-2127
STORM-2144
SL-3404
Clara Young
Coaldust Numbers
VWR-1095
......@@ -724,10 +771,24 @@ Jonathan Yap
STORM-2030
STORM-2034
STORM-2018
STORM-2082
STORM-2086
STORM-2085
STORM-2088
STORM-2094
STORM-2099
STORM-2091
STORM-2092
STORM-2100
STORM-2104
STORM-2142
SL-10089
Kadah Coba
STORM-1060
STORM-1843
Jondan Lundquist
Joosten Briebers
MAINT-7074
Josef Munster
Josette Windlow
Juilan Tripsa
......@@ -768,6 +829,17 @@ Kitty Barnett
STORM-1905
VWR-24217
STORM-1804
MAINT-5416
MAINT-6041
MAINT-6142
MAINT-6144
MAINT-6152
MAINT-6153
MAINT-6154
MAINT-6568
STORM-2149
MAINT-7581
MAINT-7081
Kolor Fall
Komiko Okamoto
Korvel Noh
......@@ -837,6 +909,7 @@ MartinRJ Fayray
STORM-1845
STORM-1911
STORM-1934
Matrice Laville
Matthew Anthony
Matthew Dowd
VWR-1344
......@@ -982,10 +1055,11 @@ Nicholaz Beresford
VWR-2682
VWR-2684
Nick Rhodes
NickyD
MAINT-873
Nicky Dasmijn
MAINT-873
MAINT-7541
VWR-29228
MAINT-1392
MAINT-873
SUN-72
BUG-2432
......@@ -997,6 +1071,11 @@ Nicky Dasmijn
STORM-1937
OPEN-187
STORM-2010
STORM-2082
MAINT-6665
SL-10291
SL-10293
SL-11061
Nicky Perian
OPEN-1
STORM-1087
......@@ -1208,6 +1287,8 @@ Shnurui Troughton
Shyotl Kuhr
MAINT-1138
MAINT-2334
MAINT-6913
STORM-2143
Siana Gearz
STORM-960
STORM-1088
......@@ -1238,6 +1319,14 @@ Sovereign Engineer
OPEN-195
OPEN-217
OPEN-295
MAINT-6107
STORM-2107
MAINT-6218
MAINT-6913
STORM-2143
STORM-2148
MAINT-7343
SL-11079
SpacedOut Frye
VWR-34
VWR-45
......@@ -1361,6 +1450,7 @@ Tonya Souther
STORM-1905
BUG-3875
BUG-3968
OPEN-345
Torben Trautman
TouchaHoney Perhaps
TraductoresAnonimos Alter
......
......@@ -236,6 +236,14 @@
<boolean>false</boolean>
</map>
<key>ObjectAnimation</key>
<map>
<key>flavor</key>
<string>template</string>
<key>trusted-sender</key>
<boolean>false</boolean>
</map>
<key>AvatarAppearance</key>
<map>
<key>flavor</key>
......
......@@ -3,33 +3,27 @@
# cmake_minimum_required should appear before any
# other commands to guarantee full compatibility
# with the version specified
## prior to 2.8, the add_custom_target commands used in setting the version did not work correctly
if(WIN32)
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
else()
cmake_minimum_required(VERSION 2.8.11 FATAL_ERROR)
endif(WIN32)
cmake_minimum_required(VERSION 3.14 FATAL_ERROR)
set(ROOT_PROJECT_NAME "Alchemy" CACHE STRING
"The root project/makefile/solution name. Defaults to Alchemy.")
project(${ROOT_PROJECT_NAME})
project(${ROOT_PROJECT_NAME} LANGUAGES CXX)
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
include(Variables)
if (NOT MSVC AND NOT LINUX)
include(FindCXX14Features)
include(FindCXXThreadLocal)
endif (NOT MSVC AND NOT LINUX)
include(BuildVersion)
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
"Build type. One of: Debug Release RelWithDebInfo" FORCE)
endif (NOT CMAKE_BUILD_TYPE)
add_subdirectory(cmake)
include(Variables)
include(00-Common)
include(BuildVersion)
include(CTest)
add_subdirectory(deps)
add_subdirectory(cmake)
add_subdirectory(${LIBS_OPEN_PREFIX}llaudio)
add_subdirectory(${LIBS_OPEN_PREFIX}llappearance)
add_subdirectory(${LIBS_OPEN_PREFIX}llcharacter)
......@@ -51,8 +45,12 @@ if (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts)
add_subdirectory(${LIBS_CLOSED_PREFIX}copy_win_scripts)
endif (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts)
if (DARWIN)
add_subdirectory(${LIBS_OPEN_PREFIX}lldarwin)
endif(DARWIN)
add_custom_target(viewer)
add_subdirectory(${LIBS_OPEN_PREFIX}llcrashlogger)
add_subdirectory(${LIBS_OPEN_PREFIX}llplugin)
add_subdirectory(${LIBS_OPEN_PREFIX}llui)
add_subdirectory(${LIBS_OPEN_PREFIX}viewer_components)
......@@ -62,44 +60,35 @@ if (LL_TESTS)
add_subdirectory(${VIEWER_PREFIX}test)
endif (LL_TESTS)
if (ENABLE_MEDIA_PLUGINS)
# viewer media plugins
add_subdirectory(${LIBS_OPEN_PREFIX}media_plugins)
# llplugin testbed code (is this the right way to include it?)
if (LL_TESTS)
if(WINDOWS OR DARWIN)
#add_subdirectory(${VIEWER_PREFIX}test_apps/llplugintest)
#add_subdirectory(${VIEWER_PREFIX}test_apps/llfbconnecttest)
endif(WINDOWS OR DARWIN)
endif (LL_TESTS)
if (ENABLE_MEDIA_PLUGINS)
add_subdirectory(${LIBS_OPEN_PREFIX}media_plugins)
endif (ENABLE_MEDIA_PLUGINS)
if (LINUX)
add_subdirectory(${VIEWER_PREFIX}linux_crash_logger)
if (INSTALL_PROPRIETARY)
include(LLAppearanceUtility)
add_subdirectory(${LLAPPEARANCEUTILITY_SRC_DIR} ${LLAPPEARANCEUTILITY_BIN_DIR})
endif (INSTALL_PROPRIETARY)
add_dependencies(viewer linux-crash-logger)
elseif (DARWIN)
add_subdirectory(${VIEWER_PREFIX}mac_crash_logger)
add_dependencies(viewer mac-crash-logger)
# add crash logger here in the future
elseif (WINDOWS)
add_subdirectory(${VIEWER_PREFIX}win_crash_logger)
# cmake EXISTS requires an absolute path, see indra/cmake/Variables.cmake
if (EXISTS ${VIEWER_DIR}win_setup)
add_subdirectory(${VIEWER_DIR}win_setup)
endif (EXISTS ${VIEWER_DIR}win_setup)
# add_dependencies(viewer windows-setup windows-crash-logger)
add_dependencies(viewer windows-crash-logger)
# add crash logger here in the future
endif (LINUX)
add_subdirectory(${VIEWER_PREFIX}newview)
add_dependencies(viewer alchemy-bin)
add_dependencies(viewer ${VIEWER_BINARY_NAME})
add_subdirectory(${VIEWER_PREFIX}doxygen EXCLUDE_FROM_ALL)
if (WINDOWS)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
PROPERTY VS_STARTUP_PROJECT ${VIEWER_BINARY_NAME})
endif (WINDOWS)
if (LL_TESTS)
# Define after the custom targets are created so
# individual apps can add themselves as dependencies
add_subdirectory(${INTEGRATION_TESTS_PREFIX}integration_tests)
endif (LL_TESTS)
......@@ -48,10 +48,9 @@ Compilation
LL_WINDOWS=1 " "
UNICODE " "
_UNICODE " "
WINVER=0x0501 " "
_WIN32_WINNT=0x0501 " "
WINVER=0x0600 " "
_WIN32_WINNT=0x0600 " "
LL_OS_DRAGDROP_ENABLED=1 " "
CARES_STATICLIB " "
LIB_NDOF=1 " "
----------------------------------------------------------------------------
......@@ -109,7 +108,6 @@ Compilation
DEBUG_INFO=1
LL_DARWIN=1 " "
LL_OS_DRAGDROP_ENABLED=1 " "
CARES_STATICLIB " "
LIB_NDOF=1 " "
----------------------------------------------------------------------------
......