summaryrefslogtreecommitdiffstats
path: root/.ci/scripts/windows
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-x.ci/scripts/windows/docker.sh10
-rw-r--r--.ci/scripts/windows/exec.sh3
-rw-r--r--.ci/scripts/windows/scan_dll.py3
-rw-r--r--.ci/scripts/windows/upload.ps155
-rwxr-xr-x.ci/scripts/windows/upload.sh3
5 files changed, 68 insertions, 6 deletions
diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh
index d670fe47d..790ba8218 100755
--- a/.ci/scripts/windows/docker.sh
+++ b/.ci/scripts/windows/docker.sh
@@ -1,15 +1,14 @@
#!/bin/bash -ex
+# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
set -e
#cd /yuzu
ccache -sv
-mkdir -p "$HOME/.conan/profiles"
-wget -c "https://github.com/yuzu-emu/build-environments/raw/master/linux-mingw/default" -O "$HOME/.conan/profiles/default"
-wget -c "https://github.com/yuzu-emu/build-environments/raw/master/linux-mingw/settings.yml" -O "$HOME/.conan/settings.yml"
-
mkdir -p build && cd build
export LDFLAGS="-fuse-ld=lld"
# -femulated-tls required due to an incompatibility between GCC and Clang
@@ -24,6 +23,7 @@ cmake .. \
-DUSE_CCACHE=ON \
-DYUZU_USE_BUNDLED_SDL2=OFF \
-DYUZU_USE_EXTERNAL_SDL2=OFF \
+ -DYUZU_TESTS=OFF \
-GNinja
ninja yuzu yuzu-cmd
@@ -65,7 +65,7 @@ python3 .ci/scripts/windows/scan_dll.py package/*.exe package/imageformats/*.dll
# copy FFmpeg libraries
EXTERNALS_PATH="$(pwd)/build/externals"
FFMPEG_DLL_PATH="$(find "${EXTERNALS_PATH}" -maxdepth 1 -type d | grep 'ffmpeg-')/bin"
-find ${FFMPEG_DLL_PATH} -type f -regex ".*\.dll" -exec cp -v {} package/ ';'
+find ${FFMPEG_DLL_PATH} -type f -regex ".*\.dll" -exec cp -nv {} package/ ';'
# copy libraries from yuzu.exe path
find "$(pwd)/build/bin/" -type f -regex ".*\.dll" -exec cp -v {} package/ ';'
diff --git a/.ci/scripts/windows/exec.sh b/.ci/scripts/windows/exec.sh
index bf5c5fb63..ca74eeba5 100644
--- a/.ci/scripts/windows/exec.sh
+++ b/.ci/scripts/windows/exec.sh
@@ -1,5 +1,8 @@
#!/bin/bash -ex
+# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
mkdir -p "ccache" || true
chmod a+x ./.ci/scripts/windows/docker.sh
# the UID for the container yuzu user is 1027
diff --git a/.ci/scripts/windows/scan_dll.py b/.ci/scripts/windows/scan_dll.py
index 163183f2e..f374e0d78 100644
--- a/.ci/scripts/windows/scan_dll.py
+++ b/.ci/scripts/windows/scan_dll.py
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
import pefile
import sys
import re
diff --git a/.ci/scripts/windows/upload.ps1 b/.ci/scripts/windows/upload.ps1
index 62483607b..3da242bc7 100644
--- a/.ci/scripts/windows/upload.ps1
+++ b/.ci/scripts/windows/upload.ps1
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
param($BUILD_NAME)
$GITDATE = $(git show -s --date=short --format='%ad') -replace "-", ""
@@ -25,6 +28,9 @@ $env:BUILD_UPDATE = $MSVC_SEVENZIP
$BUILD_DIR = ".\build\bin\Release"
+# Cleanup unneeded data in submodules
+git submodule foreach git clean -fxd
+
# Upload debugging symbols
mkdir pdb
Get-ChildItem "$BUILD_DIR\" -Recurse -Filter "*.pdb" | Copy-Item -destination .\pdb
@@ -37,7 +43,7 @@ mkdir $MSVC_SOURCE
mkdir "artifacts"
# Build a tar.xz for the source of the release
-Copy-Item .\license.txt -Destination $MSVC_SOURCE
+Copy-Item .\LICENSE.txt -Destination $MSVC_SOURCE
Copy-Item .\README.md -Destination $MSVC_SOURCE
Copy-Item .\CMakeLists.txt -Destination $MSVC_SOURCE
Copy-Item .\src -Recurse -Destination $MSVC_SOURCE
@@ -47,6 +53,49 @@ Copy-Item .\CMakeModules -Recurse -Destination $MSVC_SOURCE
7z a -r -ttar $MSVC_SOURCE_TAR $MSVC_SOURCE
7z a -r -txz $MSVC_SOURCE_TARXZ $MSVC_SOURCE_TAR
+# Following section is quick hack to package artifacts differently for GitHub Actions
+if ("$env:GITHUB_ACTIONS" -eq "true") {
+ echo "Hello GitHub Actions"
+
+ # Hopefully there is an exe in either .\build\bin or .\build\bin\Release
+ cp .\build\bin\yuzu*.exe .\artifacts\
+ Copy-Item "$BUILD_DIR\*" -Destination "artifacts" -Recurse
+ Remove-Item .\artifacts\tests.exe -ErrorAction ignore
+
+ # None of the other GHA builds are including source, so commenting out today
+ #Copy-Item $MSVC_SOURCE_TARXZ -Destination "artifacts"
+
+ # Are debug symbols important?
+ # cp .\build\bin\yuzu*.pdb .\pdb\
+
+ # Write out a tag BUILD_TAG to environment for the Upload step
+ # We're getting ${{ github.event.number }} as $env:PR_NUMBER"
+ echo "env:PR_NUMBER: $env:PR_NUMBER"
+ if (Test-Path env:PR_NUMBER) {
+ $PR_NUMBER = $env:PR_NUMBER.Substring(2) -as [int]
+ $PR_NUMBER_TAG = "pr"+([string]$PR_NUMBER).PadLeft(5,'0')
+ if ($PR_NUMBER -gt 1){
+ $BUILD_TAG="verify-$PR_NUMBER_TAG-$GITDATE-$GITREV"
+ } else {
+ $BUILD_TAG = "verify-$GITDATE-$GITREV"
+ }
+ } else {
+ # If env:PR_NUMBER isn't set, we should still write out a variable
+ $BUILD_TAG = "verify-$GITDATE-$GITREV"
+ }
+ echo "BUILD_TAG=$BUILD_TAG"
+ echo "BUILD_TAG=$BUILD_TAG" >> $env:GITHUB_ENV
+
+ # For extra job, just the exe
+ $INDIVIDUAL_EXE = "yuzu-msvc-$BUILD_TAG.exe"
+ echo "INDIVIDUAL_EXE=$INDIVIDUAL_EXE"
+ echo "INDIVIDUAL_EXE=$INDIVIDUAL_EXE" >> $env:GITHUB_ENV
+ echo "Just the exe: $INDIVIDUAL_EXE"
+ cp .\artifacts\yuzu.exe .\$INDIVIDUAL_EXE
+
+
+} else {
+
# Build the final release artifacts
Copy-Item $MSVC_SOURCE_TARXZ -Destination $RELEASE_DIST
Copy-Item "$BUILD_DIR\*" -Destination $RELEASE_DIST -Recurse
@@ -62,3 +111,7 @@ Get-ChildItem "$BUILD_DIR" -Recurse -Filter "QtWebEngineProcess*.exe" | Copy-Ite
Get-ChildItem . -Filter "*.zip" | Copy-Item -destination "artifacts"
Get-ChildItem . -Filter "*.7z" | Copy-Item -destination "artifacts"
Get-ChildItem . -Filter "*.tar.xz" | Copy-Item -destination "artifacts"
+}
+# Extra items
+git status
+cp .\build\src\common\scm_rev.cpp .\artifacts
diff --git a/.ci/scripts/windows/upload.sh b/.ci/scripts/windows/upload.sh
index 3c6a74218..4aa5be544 100755
--- a/.ci/scripts/windows/upload.sh
+++ b/.ci/scripts/windows/upload.sh
@@ -1,5 +1,8 @@
#!/bin/bash -ex
+# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
. .ci/scripts/common/pre-upload.sh
REV_NAME="yuzu-windows-mingw-${GITDATE}-${GITREV}"