committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 0 additions and 178 deletions
-
178appveyor.yml
@ -1,178 +0,0 @@ |
|||||
# shallow clone |
|
||||
clone_depth: 10 |
|
||||
|
|
||||
cache: |
|
||||
- C:\ProgramData\chocolatey\bin -> appveyor.yml |
|
||||
- C:\ProgramData\chocolatey\lib -> appveyor.yml |
|
||||
|
|
||||
os: Visual Studio 2017 |
|
||||
|
|
||||
environment: |
|
||||
# Tell msys2 to add mingw64 to the path |
|
||||
MSYSTEM: MINGW64 |
|
||||
# Tell msys2 to inherit the current directory when starting the shell |
|
||||
CHERE_INVOKING: 1 |
|
||||
matrix: |
|
||||
- BUILD_TYPE: msvc |
|
||||
- BUILD_TYPE: mingw |
|
||||
|
|
||||
platform: |
|
||||
- x64 |
|
||||
|
|
||||
configuration: |
|
||||
- Release |
|
||||
|
|
||||
install: |
|
||||
- git submodule update --init --recursive |
|
||||
- ps: | |
|
||||
if ($env:BUILD_TYPE -eq 'mingw') { |
|
||||
$dependencies = "mingw64/mingw-w64-x86_64-cmake", |
|
||||
"mingw64/mingw-w64-x86_64-qt5", |
|
||||
"mingw64/mingw-w64-x86_64-SDL2" |
|
||||
# redirect err to null to prevent warnings from becoming errors |
|
||||
# workaround to prevent pacman from failing due to cyclical dependencies |
|
||||
C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw64/mingw-w64-x86_64-freetype mingw64/mingw-w64-x86_64-fontconfig" 2> $null |
|
||||
C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S $dependencies" 2> $null |
|
||||
} |
|
||||
|
|
||||
before_build: |
|
||||
- mkdir %BUILD_TYPE%_build |
|
||||
- cd %BUILD_TYPE%_build |
|
||||
- ps: | |
|
||||
$COMPAT = if ($env:ENABLE_COMPATIBILITY_REPORTING -eq $null) {0} else {$env:ENABLE_COMPATIBILITY_REPORTING} |
|
||||
if ($env:BUILD_TYPE -eq 'msvc') { |
|
||||
# redirect stderr and change the exit code to prevent powershell from cancelling the build if cmake prints a warning |
|
||||
cmd /C 'cmake -G "Visual Studio 15 2017 Win64" -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_BUNDLED_UNICORN=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DUSE_DISCORD_PRESENCE=ON .. 2>&1 && exit 0' |
|
||||
} else { |
|
||||
C:\msys64\usr\bin\bash.exe -lc "cmake -G 'MSYS Makefiles' -DYUZU_BUILD_UNICORN=1 -DCMAKE_BUILD_TYPE=Release -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=${COMPAT} -DUSE_DISCORD_PRESENCE=ON .. 2>&1" |
|
||||
} |
|
||||
- cd .. |
|
||||
|
|
||||
build_script: |
|
||||
- ps: | |
|
||||
if ($env:BUILD_TYPE -eq 'msvc') { |
|
||||
# https://www.appveyor.com/docs/build-phase |
|
||||
msbuild msvc_build/yuzu.sln /maxcpucount /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" |
|
||||
} else { |
|
||||
C:\msys64\usr\bin\bash.exe -lc 'mingw32-make -C mingw_build/ 2>&1' |
|
||||
} |
|
||||
|
|
||||
after_build: |
|
||||
- ps: | |
|
||||
$GITDATE = $(git show -s --date=short --format='%ad') -replace "-","" |
|
||||
$GITREV = $(git show -s --format='%h') |
|
||||
|
|
||||
# Find out which kind of release we are producing by tag name |
|
||||
if ($env:APPVEYOR_REPO_TAG_NAME) { |
|
||||
$RELEASE_DIST, $RELEASE_VERSION = $env:APPVEYOR_REPO_TAG_NAME.split('-') |
|
||||
} else { |
|
||||
# There is no repo tag - make assumptions |
|
||||
$RELEASE_DIST = "head" |
|
||||
} |
|
||||
|
|
||||
if ($env:BUILD_TYPE -eq 'msvc') { |
|
||||
# Where are these spaces coming from? Regardless, let's remove them |
|
||||
$MSVC_BUILD_ZIP = "yuzu-windows-msvc-$GITDATE-$GITREV.zip" -replace " ", "" |
|
||||
$MSVC_BUILD_PDB = "yuzu-windows-msvc-$GITDATE-$GITREV-debugsymbols.zip" -replace " ", "" |
|
||||
$MSVC_SEVENZIP = "yuzu-windows-msvc-$GITDATE-$GITREV.7z" -replace " ", "" |
|
||||
|
|
||||
# set the build names as env vars so the artifacts can upload them |
|
||||
$env:BUILD_ZIP = $MSVC_BUILD_ZIP |
|
||||
$env:BUILD_SYMBOLS = $MSVC_BUILD_PDB |
|
||||
$env:BUILD_UPDATE = $MSVC_SEVENZIP |
|
||||
|
|
||||
$BUILD_DIR = ".\msvc_build\bin\Release" |
|
||||
|
|
||||
# Make a debug symbol upload |
|
||||
mkdir pdb |
|
||||
Get-ChildItem "$BUILD_DIR\" -Recurse -Filter "*.pdb" | Copy-Item -destination .\pdb |
|
||||
7z a -tzip $MSVC_BUILD_PDB .\pdb\*.pdb |
|
||||
rm "$BUILD_DIR\*.pdb" |
|
||||
|
|
||||
mkdir $RELEASE_DIST |
|
||||
# get rid of extra exes by copying everything over, then deleting all the exes, then copying just the exes we want |
|
||||
Copy-Item "$BUILD_DIR\*" -Destination $RELEASE_DIST -Recurse |
|
||||
rm "$RELEASE_DIST\*.exe" |
|
||||
Get-ChildItem "$BUILD_DIR" -Recurse -Filter "yuzu*.exe" | Copy-Item -destination $RELEASE_DIST |
|
||||
Get-ChildItem "$BUILD_DIR" -Recurse -Filter "QtWebEngineProcess*.exe" | Copy-Item -destination $RELEASE_DIST |
|
||||
Copy-Item .\license.txt -Destination $RELEASE_DIST |
|
||||
Copy-Item .\README.md -Destination $RELEASE_DIST |
|
||||
7z a -tzip $MSVC_BUILD_ZIP $RELEASE_DIST\* |
|
||||
7z a $MSVC_SEVENZIP $RELEASE_DIST |
|
||||
} else { |
|
||||
$MINGW_BUILD_ZIP = "yuzu-windows-mingw-$GITDATE-$GITREV.zip" -replace " ", "" |
|
||||
$MINGW_SEVENZIP = "yuzu-windows-mingw-$GITDATE-$GITREV.7z" -replace " ", "" |
|
||||
# not going to bother adding separate debug symbols for mingw, so just upload a README for it |
|
||||
# if someone wants to add them, change mingw to compile with -g and use objdump and strip to separate the symbols from the binary |
|
||||
$MINGW_NO_DEBUG_SYMBOLS = "README_No_Debug_Symbols.txt" |
|
||||
Set-Content -Path $MINGW_NO_DEBUG_SYMBOLS -Value "This is a workaround for Appveyor since msvc has debug symbols but mingw doesnt" -Force |
|
||||
|
|
||||
# store the build information in env vars so we can use them as artifacts |
|
||||
$env:BUILD_ZIP = $MINGW_BUILD_ZIP |
|
||||
$env:BUILD_SYMBOLS = $MINGW_NO_DEBUG_SYMBOLS |
|
||||
$env:BUILD_UPDATE = $MINGW_SEVENZIP |
|
||||
|
|
||||
$CMAKE_SOURCE_DIR = "$env:APPVEYOR_BUILD_FOLDER" |
|
||||
$CMAKE_BINARY_DIR = "$CMAKE_SOURCE_DIR/mingw_build/bin" |
|
||||
$RELEASE_DIST = $RELEASE_DIST + "-mingw" |
|
||||
|
|
||||
mkdir $RELEASE_DIST |
|
||||
mkdir $RELEASE_DIST/platforms |
|
||||
mkdir $RELEASE_DIST/styles |
|
||||
mkdir $RELEASE_DIST/imageformats |
|
||||
|
|
||||
# copy the compiled binaries and other release files to the release folder |
|
||||
Get-ChildItem "$CMAKE_BINARY_DIR" -Filter "yuzu*.exe" | Copy-Item -destination $RELEASE_DIST |
|
||||
Copy-Item -path "$CMAKE_SOURCE_DIR/license.txt" -destination $RELEASE_DIST |
|
||||
Copy-Item -path "$CMAKE_SOURCE_DIR/README.md" -destination $RELEASE_DIST |
|
||||
|
|
||||
# copy the qt windows plugin dll to platforms |
|
||||
Copy-Item -path "C:/msys64/mingw64/share/qt5/plugins/platforms/qwindows.dll" -force -destination "$RELEASE_DIST/platforms" |
|
||||
|
|
||||
# copy the qt windows vista style dll to platforms |
|
||||
Copy-Item -path "C:/msys64/mingw64/share/qt5/plugins/styles/qwindowsvistastyle.dll" -force -destination "$RELEASE_DIST/styles" |
|
||||
|
|
||||
# copy the qt jpeg imageformat dll to platforms |
|
||||
Copy-Item -path "C:/msys64/mingw64/share/qt5/plugins/imageformats/qjpeg.dll" -force -destination "$RELEASE_DIST/imageformats" |
|
||||
|
|
||||
# copy all the dll dependencies to the release folder |
|
||||
. "./.appveyor/UtilityFunctions.ps1" |
|
||||
$DLLSearchPath = "C:\msys64\mingw64\bin;$env:PATH" |
|
||||
$MingwDLLs = RecursivelyGetDeps $DLLSearchPath "$RELEASE_DIST\yuzu.exe" |
|
||||
$MingwDLLs += RecursivelyGetDeps $DLLSearchPath "$RELEASE_DIST\yuzu_cmd.exe" |
|
||||
$MingwDLLs += RecursivelyGetDeps $DLLSearchPath "$RELEASE_DIST\imageformats\qjpeg.dll" |
|
||||
Write-Host "Detected the following dependencies:" |
|
||||
Write-Host $MingwDLLs |
|
||||
foreach ($file in $MingwDLLs) { |
|
||||
Copy-Item -path "$file" -force -destination "$RELEASE_DIST" |
|
||||
} |
|
||||
|
|
||||
7z a -tzip $MINGW_BUILD_ZIP $RELEASE_DIST\* |
|
||||
7z a $MINGW_SEVENZIP $RELEASE_DIST |
|
||||
} |
|
||||
|
|
||||
test_script: |
|
||||
- cd %BUILD_TYPE%_build |
|
||||
- ps: | |
|
||||
if ($env:BUILD_TYPE -eq 'msvc') { |
|
||||
ctest -VV -C Release |
|
||||
} else { |
|
||||
C:\msys64\usr\bin\bash.exe -lc "ctest -VV -C Release" |
|
||||
} |
|
||||
- cd .. |
|
||||
|
|
||||
artifacts: |
|
||||
- path: $(BUILD_ZIP) |
|
||||
name: build |
|
||||
type: zip |
|
||||
|
|
||||
deploy: |
|
||||
provider: GitHub |
|
||||
release: $(appveyor_repo_tag_name) |
|
||||
auth_token: |
|
||||
secure: QqePPnXbkzmXct5c8hZ2X5AbsthbI6cS1Sr+VBzcD8oUOIjfWJJKXVAQGUbQAbb0 |
|
||||
artifact: update,build |
|
||||
draft: false |
|
||||
prerelease: false |
|
||||
on: |
|
||||
appveyor_repo_tag: true |
|
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue