summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build.yaml78
-rwxr-xr-x.gitignore4
-rw-r--r--indra/cmake/00-Common.cmake9
-rw-r--r--indra/llcommon/tests/llleap_test.cpp2
-rw-r--r--indra/llcommon/tests/llsdserialize_test.cpp2
-rwxr-xr-xindra/llcorehttp/tests/test_llcorehttp_peer.py2
-rwxr-xr-xindra/llmessage/tests/test_llsdmessage_peer.py3
-rw-r--r--indra/newview/installers/windows/installer_template.nsi1
-rwxr-xr-xindra/newview/viewer_manifest.py36
-rw-r--r--scripts/metrics/slp_conv.py2
-rw-r--r--scripts/metrics/viewer_asset_logs.py2
-rwxr-xr-xscripts/metrics/viewerstats.py2
12 files changed, 98 insertions, 45 deletions
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
new file mode 100644
index 0000000000..b64f9b709f
--- /dev/null
+++ b/.github/workflows/build.yaml
@@ -0,0 +1,78 @@
+name: Build
+
+on:
+ workflow_dispatch:
+ pull_request:
+ push:
+ branches: ["actions"]
+
+jobs:
+ build:
+ strategy:
+ matrix:
+ runner: [windows-2022, macos-11]
+ configuration: [Release]
+ addrsize: [64]
+ include:
+ - runner: windows-2022
+ configuration: Release
+ addrsize: 32
+ runs-on: ${{ matrix.runner }}
+ env:
+ AUTOBUILD_CONFIGURATION: ${{ matrix.configuration }}
+ AUTOBUILD_ADDRSIZE: ${{ matrix.addrsize }}
+ # authorizes fetching private constituent packages
+ AUTOBUILD_GITHUB_TOKEN: ${{ secrets.SHARED_AUTOBUILD_GITHUB_TOKEN }}
+ AUTOBUILD_INSTALLABLE_CACHE: ${{ github.workspace }}/.autobuild-installables
+ AUTOBUILD_VARIABLES_FILE: ${{ github.workspace }}/.build-variables/variables
+ AUTOBUILD_VSVER: "170"
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+
+ - name: Checkout build variables
+ uses: actions/checkout@v3
+ with:
+ repository: secondlife/build-variables
+ ref: viewer
+ path: .build-variables
+
+ - name: Install autobuild
+ run: pip3 install autobuild
+
+ - name: Cache autobuild packages
+ uses: actions/cache@v3
+ id: cache-installables
+ with:
+ path: .autobuild-installables
+ key: ${{ runner.os }}-${{ matrix.addrsize }}-${{ matrix.configuration }}-${{ hashFiles('autobuild.xml') }}
+
+ - name: Install windows dependencies
+ if: runner.os == 'Windows'
+ run: choco install nsis-unicode
+
+ - name: Build
+ id: build
+ shell: bash
+ env:
+ RUNNER_OS: ${{ runner.os }}
+ run: |
+ pip install llsd # Required by viewer tests
+ autobuild configure
+ autobuild build --no-configure
+
+ if [[ "$RUNNER_OS" == "Windows" ]]; then
+ installer_path=$(find ./build-*/newview/ | grep '_Setup\.exe')
+ installer_name="$(basename $installer_path)"
+ elif [[ "$RUNNER_OS" == "macOS" ]]; then
+ installer_path=$(find ./build-*/newview/ | grep '\.dmg')
+ installer_name="$(basename $installer_path)"
+ fi
+ echo "::set-output name=installer_path::$installer_path"
+ echo "::set-output name=installer_name::$installer_name"
+
+ - name: Upload installer
+ uses: actions/upload-artifact@v3
+ with:
+ name: ${{ steps.build.outputs.installer_name }}
+ path: ${{ steps.build.outputs.installer_path }}
diff --git a/.gitignore b/.gitignore
index 80eca667df..f0b5f86211 100755
--- a/.gitignore
+++ b/.gitignore
@@ -73,4 +73,6 @@ tarfile_tmp
trivial_change_force_build
web/config.*
web/locale.*
-web/secondlife.com.* \ No newline at end of file
+web/secondlife.com.*
+
+.env
diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake
index c848d00710..bf5a107c73 100644
--- a/indra/cmake/00-Common.cmake
+++ b/indra/cmake/00-Common.cmake
@@ -55,15 +55,6 @@ if (WINDOWS)
# http://www.cmake.org/pipermail/cmake/2009-September/032143.html
string(REPLACE "/Zm1000" " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
- # Without PreferredToolArchitecture=x64, as of 2020-06-26 the 32-bit
- # compiler on our TeamCity build hosts has started running out of virtual
- # memory for the precompiled header file.
- # CP changed to only append the flag for 32bit builds - on 64bit builds,
- # locally at least, the build output is spammed with 1000s of 'D9002'
- # warnings about this switch being ignored.
- if( ADDRESS_SIZE EQUAL 32 )
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /p:PreferredToolArchitecture=x64")
- endif()
# zlib has assembly-language object files incompatible with SAFESEH
add_link_options(/LARGEADDRESSAWARE
/SAFESEH:NO
diff --git a/indra/llcommon/tests/llleap_test.cpp b/indra/llcommon/tests/llleap_test.cpp
index 7ee36a9ea6..60005fc6a9 100644
--- a/indra/llcommon/tests/llleap_test.cpp
+++ b/indra/llcommon/tests/llleap_test.cpp
@@ -109,7 +109,7 @@ namespace tut
"import os\n"
"import sys\n"
"\n"
- "from llbase import llsd\n"
+ "import llsd\n"
"\n"
"class ProtocolError(Exception):\n"
" def __init__(self, msg, data):\n"
diff --git a/indra/llcommon/tests/llsdserialize_test.cpp b/indra/llcommon/tests/llsdserialize_test.cpp
index 5dbcf4c9b8..d7c11c5021 100644
--- a/indra/llcommon/tests/llsdserialize_test.cpp
+++ b/indra/llcommon/tests/llsdserialize_test.cpp
@@ -1706,7 +1706,7 @@ namespace tut
// scanner.
import_llsd("import os.path\n"
"import sys\n"
- "from llbase import llsd\n")
+ "import llsd\n")
{}
~TestPythonCompatible() {}
diff --git a/indra/llcorehttp/tests/test_llcorehttp_peer.py b/indra/llcorehttp/tests/test_llcorehttp_peer.py
index 185e8e25c6..b9992538ba 100755
--- a/indra/llcorehttp/tests/test_llcorehttp_peer.py
+++ b/indra/llcorehttp/tests/test_llcorehttp_peer.py
@@ -38,7 +38,7 @@ from io import StringIO
from http.server import HTTPServer, BaseHTTPRequestHandler
-from llbase import llsd
+import llsd
# we're in llcorehttp/tests ; testrunner.py is found in llmessage/tests
sys.path.append(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir,
diff --git a/indra/llmessage/tests/test_llsdmessage_peer.py b/indra/llmessage/tests/test_llsdmessage_peer.py
index 5ba0749e31..ff8f40a144 100755
--- a/indra/llmessage/tests/test_llsdmessage_peer.py
+++ b/indra/llmessage/tests/test_llsdmessage_peer.py
@@ -33,8 +33,7 @@ import os
import sys
from http.server import HTTPServer, BaseHTTPRequestHandler
-from llbase.fastest_elementtree import parse as xml_parse
-from llbase import llsd
+import llsd
from testrunner import freeport, run, debug, VERBOSE
import time
diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi
index 60e26274cb..5fb42ce2fd 100644
--- a/indra/newview/installers/windows/installer_template.nsi
+++ b/indra/newview/installers/windows/installer_template.nsi
@@ -26,7 +26,6 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Compiler flags
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-Unicode true
SetOverwrite on # Overwrite files
SetCompress auto # Compress if saves space
SetCompressor /solid lzma # Compress whole installer as one block
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index 89481add29..4660991de6 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -28,7 +28,6 @@ $/LicenseInfo$
"""
import errno
import glob
-import itertools
import json
import os
import os.path
@@ -36,12 +35,9 @@ import plistlib
import random
import re
import shutil
-import stat
import subprocess
import sys
-import tarfile
import time
-import zipfile
viewer_dir = os.path.dirname(__file__)
# Add indra/lib/python to our path so we don't have to muck with PYTHONPATH.
@@ -49,7 +45,7 @@ viewer_dir = os.path.dirname(__file__)
# indra.util.llmanifest under their system Python!
sys.path.insert(0, os.path.join(viewer_dir, os.pardir, "lib", "python"))
from indra.util.llmanifest import LLManifest, main, path_ancestors, CHANNEL_VENDOR_BASE, RELEASE_CHANNEL, ManifestError, MissingError
-from llbase import llsd
+import llsd
class ViewerManifest(LLManifest):
def is_packaging_viewer(self):
@@ -790,27 +786,15 @@ class WindowsManifest(ViewerManifest):
# Check two paths, one for Program Files, and one for Program Files (x86).
# Yay 64bit windows.
- for ProgramFiles in 'ProgramFiles', 'ProgramFiles(x86)':
- NSIS_path = os.path.expandvars(r'${%s}\NSIS\makensis.exe' % ProgramFiles)
- if os.path.exists(NSIS_path):
- break
- installer_created=False
- nsis_attempts=3
- nsis_retry_wait=15
- for attempt in range(nsis_attempts):
- try:
- self.run_command([NSIS_path, '/V2', self.dst_path_of(tempfile)])
- except ManifestError as err:
- if attempt+1 < nsis_attempts:
- print("nsis failed, waiting %d seconds before retrying" % nsis_retry_wait, file=sys.stderr)
- time.sleep(nsis_retry_wait)
- nsis_retry_wait*=2
- else:
- # NSIS worked! Done!
- break
- else:
- print("Maximum nsis attempts exceeded; giving up", file=sys.stderr)
- raise
+ nsis_path = "makensis.exe"
+ for program_files in '${programfiles}', '${programfiles(x86)}':
+ for nesis_path in 'NSIS', 'NSIS\\Unicode':
+ possible_path = os.path.expandvars(f"{program_files}\\{nesis_path}\\makensis.exe")
+ if os.path.exists(possible_path):
+ nsis_path = possible_path
+ break
+
+ self.run_command([possible_path, '/V2', self.dst_path_of(tempfile)])
self.sign(installer_file)
self.created_path(self.dst_path_of(installer_file))
diff --git a/scripts/metrics/slp_conv.py b/scripts/metrics/slp_conv.py
index 27f922b74a..25f9a8c060 100644
--- a/scripts/metrics/slp_conv.py
+++ b/scripts/metrics/slp_conv.py
@@ -29,7 +29,7 @@ Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
$/LicenseInfo$
"""
-from llbase import llsd
+import llsd
import argparse
parser = argparse.ArgumentParser(
diff --git a/scripts/metrics/viewer_asset_logs.py b/scripts/metrics/viewer_asset_logs.py
index 0365936188..bd996dff79 100644
--- a/scripts/metrics/viewer_asset_logs.py
+++ b/scripts/metrics/viewer_asset_logs.py
@@ -28,7 +28,7 @@ $/LicenseInfo$
import argparse
from lxml import etree
-from llbase import llsd
+import llsd
def get_metrics_record(infiles):
for filename in args.infiles:
diff --git a/scripts/metrics/viewerstats.py b/scripts/metrics/viewerstats.py
index 7e19539e15..e64343329c 100755
--- a/scripts/metrics/viewerstats.py
+++ b/scripts/metrics/viewerstats.py
@@ -31,7 +31,7 @@ import numpy as np
import pandas as pd
import json
from collections import Counter, defaultdict
-from llbase import llsd
+import llsd
import io
import re
import os