diff --git a/.github/workflows/CompileUbuntu.yml b/.github/workflows/CompileUbuntu.yml deleted file mode 100644 index 34a91f8800c..00000000000 --- a/.github/workflows/CompileUbuntu.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: CompileUbuntu - -on: [pull_request] - -jobs: - ubuntu_autobuild: - runs-on: ubuntu-16.04 - env: - AUTOBUILD_VSVER: 120 - XZ_DEFAULTS: -T0 - steps: - - uses: actions/checkout@v2 - with: - submodules: true - # - name: Setup tmate session - # uses: mxschmitt/action-tmate@v2 - - name: Set env apt - run: | - sudo apt-get install -y -qq libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxinerama-dev libxrender-dev gdb - echo ::set-env name=AUTOBUILD_VARIABLES_FILE::$PWD/fs-build-variables/variables - echo ::set-env name=LIBRARY_PATH::$PWD/openvr/lib/linux64 - - name: Setup Ninja - uses: seanmiddleditch/gha-setup-ninja@master - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: 2.7 - architecture: x64 - - name: Install autobuild through PIP - run: pip install git+https://vcs.firestormviewer.org/autobuild-1.1#egg=autobuild - - name: Get software versions please - run: | - cmake --version - git --version - python --version - autobuild --version - cat /proc/cpuinfo - - run: df -h - - name: Configure - run: | - autobuild configure -A 64 -c ReleaseFS_open -- --package --openal --chan FirestormVR-GHA -DLL_TESTS:BOOL=FALSE --ninja - - run: df -h - - name: Build & Package - run: | - autobuild build -A 64 -c ReleaseFS_open -- --package --openal --chan FirestormVR-GHA -DLL_TESTS:BOOL=FALSE --ninja - - run: df -h - - name: Upload Artifact - uses: actions/upload-artifact@v2 - with: - name: fs-ubuntu-gha-artifact - path: build-linux-x86_64/newview/Phoenix*.tar.* diff --git a/.github/workflows/CompileWindows.yml b/.github/workflows/CompileWindows.yml index f5479c8e07d..1221258b3b0 100644 --- a/.github/workflows/CompileWindows.yml +++ b/.github/workflows/CompileWindows.yml @@ -10,55 +10,94 @@ jobs: windows_build: runs-on: windows-latest env: - AUTOBUILD_VSVER: 120 + FSVS_TARGET: 'Visual Studio 16 2019' + AUTOBUILD_VSVER: 164 PreferredToolArchitecture: x64 VIEWER_CHANNEL: FirestormVR-GHA - VIEWER_VERSION_REVISION: 60799 - + VIEWER_VERSION_REVISION: 64531 steps: - uses: actions/checkout@v2 with: submodules: true + - name: Set env + shell: cmd + run: | + echo %cd% + df -h + mkdir c:\cache + mkdir c:\cache\autobuild + + mkdir build-vc${{ env.AUTOBUILD_VSVER }}-64 + cd build-vc${{ env.AUTOBUILD_VSVER }}-64 + mkdir c:\cache\packages + mklink /j packages c:\cache\packages + + mkdir c:\build + mkdir c:\build\newview + mklink /j newview c:\build\newview + cd .. + + dir build-vc${{ env.AUTOBUILD_VSVER }}-64 + dir + echo AUTOBUILD_ID=->> %GITHUB_ENV% + echo AUTOBUILD_INSTALLABLE_CACHE=c:\cache\autobuild>> %GITHUB_ENV% + echo AUTOBUILD_VARIABLES_FILE=%cd%\fs-build-variables\variables>> %GITHUB_ENV% - name: Set VIEWER_VERSION_GITHASH shell: bash run: | majorVer=`cat indra/newview/VIEWER_VERSION.txt | cut -d "." -f 1` minorVer=`cat indra/newview/VIEWER_VERSION.txt | cut -d "." -f 2` patchVer=`cat indra/newview/VIEWER_VERSION.txt | cut -d "." -f 3` - echo ::set-env name=VIEWER_VERSION_STR::${majorVer}.${minorVer}.${patchVer}.${VIEWER_VERSION_REVISION} - echo ::set-env name=VIEWER_VERSION_GITHASH::$(git log -n 1 | grep "Merge " | awk '{ print $2 }' | xargs git rev-parse --short || git rev-parse --short HEAD) - - name: Set env - shell: cmd - run: | - echo ::set-env name=AUTOBUILD_ID::- - echo ::set-env name=AUTOBUILD_VARIABLES_FILE::%cd%\fs-build-variables\variables - - name: Download VS2013 Community - run: choco install visualstudiocommunity2013 + echo VIEWER_VERSION_STR=${majorVer}.${minorVer}.${patchVer}.${VIEWER_VERSION_REVISION} >> $GITHUB_ENV + echo VIEWER_VERSION_GITHASH=$(git log -n 1 | grep "Merge " | awk '{ print $2 }' | xargs git rev-parse --short || git rev-parse --short HEAD) >> $GITHUB_ENV + df -h + - name: Setup vsdevenv + uses: seanmiddleditch/gha-setup-vsdevenv@master + - name: Setup MSBuild + uses: microsoft/setup-msbuild@v1.0.2 - name: Setup python uses: actions/setup-python@v2 with: python-version: 2.7 architecture: x64 - name: Get software versions please + shell: cmd run: | + echo AUTOBUILD_INSTALLABLE_CACHE='%AUTOBUILD_INSTALLABLE_CACHE%' cmake --version git --version python --version + cl.exe + MSBuild.exe -version + echo " " + df -h - name: Install autobuild through PIP - run: pip install git+https://vcs.firestormviewer.org/autobuild-1.1#egg=autobuild + run: pip install git+https://github.com/humbletim/autobuild-1.1#egg=autobuild + + - name: cache -- autobuild downloaded installables + id: cacheddownloads + uses: actions/cache@v2 + with: + path: ${{ env.AUTOBUILD_INSTALLABLE_CACHE }} + key: ${{ runner.os }}-cacheddownloads-${{ hashFiles('autobuild.xml') }}-${{ env.VIEWER_CHANNEL }} + - name: cache -- packages cache + id: cachedpackages + uses: actions/cache@v2 + with: + path: c:\cache\packages + key: ${{ runner.os }}-cachedpackages-${{ hashFiles('autobuild.xml') }}-${{ env.VIEWER_CHANNEL }} + - name: Configure autobuild shell: cmd run: | - call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 autobuild --version - autobuild configure -A 64 -c ReleaseFS_open -- --package --openal --chan ${{env.VIEWER_CHANNEL}} -DLL_TESTS:BOOL=FALSE + autobuild configure -A 64 -c ReleaseFS_open -- --package --openal --chan ${{ env.VIEWER_CHANNEL }} -DLL_TESTS:BOOL=FALSE -DVS_DISABLE_FATAL_WARNINGS=ON - name: Build & Package shell: cmd run: | - call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 - msbuild build-vc120-64/Firestorm.sln /target:llpackage /property:Configuration=Release;Platform=x64 /maxcpucount + msbuild build-vc${{ env.AUTOBUILD_VSVER }}-64/Firestorm.sln /target:llpackage /property:Configuration=Release;Platform=x64 /maxcpucount - name: Upload Artifact uses: actions/upload-artifact@v2 with: - name: windows-${{env.VIEWER_CHANNEL}}-${{env.VIEWER_VERSION_STR}}-${{env.VIEWER_VERSION_GITHASH}} - path: build-vc120-64/newview/Release/*_Setup.exe + name: windows-${{ env.VIEWER_CHANNEL }}-${{ env.VIEWER_VERSION_STR }}-${{ env.VIEWER_VERSION_GITHASH }} + path: build-vc${{ env.AUTOBUILD_VSVER }}-64/newview/Release/*_Setup.exe diff --git a/.gitmodules b/.gitmodules index 721f2982d2d..1acdc604bf9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -3,4 +3,4 @@ url = https://github.com/ValveSoftware/openvr [submodule "fs-build-variables"] path = fs-build-variables - url = https://vcs.firestormviewer.org/fs-build-variables + url = https://github.com/humbletim/fs-build-variables diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 8e62e95bacc..9c02cdd58d8 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -304,4 +304,24 @@ else (USESYSTEMLIBS) ) endif (USESYSTEMLIBS) +if (NOT GENERATE_DEBUG_SYMBOLS) + message(WARNING "DISENGAGING DEBUG SYMBOL GENERATION (removing /Z[oiI7]..)") + #string(REGEX REPLACE "/Z[oiI7]" "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}") + string(REGEX REPLACE "/Z[oiI7]|/DEBUG" "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") + string(REGEX REPLACE "/Z[oiI7]|/DEBUG" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + string(REGEX REPLACE "/DEBUG(:[A-Z]+)?|/OPT:REF|/FORCE:MULTIPLE " "" CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") + string(REGEX REPLACE "/DEBUG(:[A-Z]+)?|/OPT:REF|/FORCE:MULTIPLE " "" CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS}") + string(REGEX REPLACE "/DEBUG(:[A-Z]+)?|/OPT:REF|/FORCE:MULTIPLE " "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG:NONE /INCREMENTAL:NO") + set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} /DEBUG:NONE /INCREMENTAL:NO") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /DEBUG:NONE /INCREMENTAL:NO") + + message(STATUS + "== CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}\n" + "== CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS}\n" + "== CMAKE_CXX_LINKER_FLAGS ${CMAKE_CXX_LINKER_FLAGS}\n" + "== CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS}]\n" + ) +endif() + endif(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index d98d9a7f43a..9019eed92cd 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2823,7 +2823,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE else (NOT BUGSPLAT_DB) # BugSplat symbol-file generation - if (WINDOWS) + if (NO) #WINDOWS) # Just pack up a tarball containing only the .pdb file for the # executable. Because we intend to use cygwin tar, we must render # VIEWER_SYMBOL_FILE in cygwin path syntax. @@ -2849,7 +2849,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE ) add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME}) add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) - endif (WINDOWS) + endif() if (DARWIN) # Have to run dsymutil first, then pack up the resulting .dSYM directory add_custom_command(OUTPUT "${VIEWER_APP_DSYM}" diff --git a/indra/newview/fs_viewer_manifest.py b/indra/newview/fs_viewer_manifest.py index 5bea417026f..4d73b57e398 100644 --- a/indra/newview/fs_viewer_manifest.py +++ b/indra/newview/fs_viewer_manifest.py @@ -86,6 +86,7 @@ def fs_linux_tar_excludes(self): return "--exclude=%s/bin/.debug" % installer_name def fs_save_windows_symbols(self): + return self.fs_save_symbols("windows") pdbName = "firestorm-bin.pdb" @@ -139,6 +140,7 @@ def fs_save_osx_symbols( self ): self.fs_save_symbols("darwin") def fs_save_symbols(self, osname): + return if (os.path.exists("%s/firestorm-symbols-%s-%d.tar.bz2" % (self.args['configuration'].lower(), osname, self.address_size))): diff --git a/scripts/configure_firestorm.sh b/scripts/configure_firestorm.sh index c9ddc973501..2dd0643e20f 100755 --- a/scripts/configure_firestorm.sh +++ b/scripts/configure_firestorm.sh @@ -542,7 +542,7 @@ if [ $WANTS_CONFIG -eq $TRUE ] ; then UNATTENDED="-DUNATTENDED=ON" fi - cmake -G "$TARGET" ../indra $CHANNEL ${GITHASH} $FMODSTUDIO $OPENAL $KDU $OPENSIM $SINGLEGRID $AVX_OPTIMIZATION $AVX2_OPTIMIZATION $TRACY_PROFILER $TESTBUILD $PACKAGE \ + cmake -G "${FSVS_TARGET:-$TARGET}" ../indra $CHANNEL ${GITHASH} $FMODSTUDIO $OPENAL $KDU $OPENSIM $SINGLEGRID $AVX_OPTIMIZATION $AVX2_OPTIMIZATION $TRACY_PROFILER $TESTBUILD $PACKAGE \ $UNATTENDED -DLL_TESTS:BOOL=OFF -DADDRESS_SIZE:STRING=$AUTOBUILD_ADDRSIZE -DCMAKE_BUILD_TYPE:STRING=$BTYPE \ $CRASH_REPORTING -DVIEWER_SYMBOL_FILE:STRING="${VIEWER_SYMBOL_FILE:-}" -DROOT_PROJECT_NAME:STRING=Firestorm $LL_ARGS_PASSTHRU ${VSCODE_FLAGS:-} | tee $LOG