summaryrefslogtreecommitdiffstats
path: root/.ci (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-08-09ci: Graft source when archivinglat9nq2-8/+5
Instead of including yuzu and all the sources it uses directly, include only what specifically belongs to yuzu. Submodules can be downloaded separately later using git since a shallow clone includes minimally all the repository information needed for it.
2022-07-28cmake,ci: vcpkg for MSVC default, fix lz4 include, catch2, cleanuplat9nq1-1/+1
vcpkg: Add Catch2 2.13.9 Catch2 >= 3.0 is not compatible with earlier versions, and for now we must override the desired version in our vcpkg manifest. We can do this programmatically by using VCPKG_MANIFEST_FEATURES. CMakeLists: Search for lz4 CONFIG mode first vcpkg's lz4 CONFIG cmake script works in Release mode but not in Debug mode, failing to copy the correct DLLs at compile time. We still need to search for the regular mode for system-installed versions. CMakeLists: Clean up boost exports Remove some Conan-specific workarounds. CMakeLists: Use vcpkg for MSVC by default Not enabling it generally since it's much easier to have system dependencies installed for Linux and MinGW.
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda44-3/+135
[REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-07-27build: Ship vcpkg dlls with MSVC pr-verify buildsKyle Kienapfel1-3/+4
With our recent switchover from conan to vcpkg, we're shipping a few more dll files, these need to be in the full zip. cp .\build\bin\*.dll .\artifacts\ also tacking on the fix where we're shipping scm_rev.cpp accidentally
2022-07-26ci/linux: Delete libwayland-client from AppDirlat9nq1-0/+3
This library causes issues in Vulkan driver detection. libQt5MultimediaGstTools's dependencies seem to be the issue.
2022-07-23ci,transifex: enable vcpkg on transifex stepKyle Kienapfel1-1/+4
The slim docker container that runs transifex needs a few packages added in, curl zip unzip I've tested everything except actually pushing to transifex, but it's not November 2022 yet so we're fine for now. Or we're actually using the newer client and all is well.
2022-07-23package MSVC CI Builds differently, and include yuzu.exeKyle Kienapfel1-0/+47
This is related to 8486 Ninja places the exe files into .\build\bin while MSBuild may place them into .\build\bin\Release upload.ps1 was originally written for use with Azure Dev Ops to cough up about 5 files and the script appears to be used for both CI and mainline builds GHA (GitHub Actions) makes available a single zip of the items uploaded by each Upload action (artifacts directory), so we want to work with that. I'm doing changes to upload.ps1 to accomplish this. The changes to the verify.yml are as follows -DGIT_BRANCH=pr-verify changes the header in yuzu, instead of saying HEAD-<hash>-dirty it'll say pr-verify-<hash> -DCLANG_FORMAT_SUFFIX=discordplzdontclang tricks the CMake stuff for discord-rpc to NOT run clang-format, as this was marking CI builds as dirty I'm also making it upload just the exe by itself, as the msvc builds are quite chunky. but maybe this is unnecessary. Currently the MSVC artifact option is a 274MB zip that contains 3 copies of the DLLs, and 4 copies of the source tarball, and zero copies of yuzu.exe This PR should have msvc artifacts of about 190MB that downloads as 81 MB zip
2022-07-23ci/windows: Cleanup unused data before packaginglat9nq1-0/+3
vcpkg data takes up a lot of space, and currently the scripts will package all that data with the source archive which is unnecessary.
2022-07-23ci: pass environment variables to linux docker (AppImage)Kyle K1-1/+6
Variables in question: AZURECIREPO TITLEBARFORMATIDLE TITLEBARFORMATRUNNING DISPLAYVERSION CMakeModules/GenerateSCMRev.cmake has some logic that looks at BUILD_REPOSITORY variable inside CMake src/common/CMakeLists.txt has some logic that takes some items from environment variables and sets variables inside CMake This is the whole section at the moment. if (DEFINED ENV{AZURECIREPO}) set(BUILD_REPOSITORY $ENV{AZURECIREPO}) endif() if (DEFINED ENV{TITLEBARFORMATIDLE}) set(TITLE_BAR_FORMAT_IDLE $ENV{TITLEBARFORMATIDLE}) endif () if (DEFINED ENV{TITLEBARFORMATRUNNING}) set(TITLE_BAR_FORMAT_RUNNING $ENV{TITLEBARFORMATRUNNING}) endif () if (DEFINED ENV{DISPLAYVERSION}) set(DISPLAY_VERSION $ENV{DISPLAYVERSION}) endif ()
2022-07-23Revert "ci: Enable building with Visual Studio 2022"bunnei3-3/+3
2022-07-23ci,CMake: Integrate vcpkg into CMakeListslat9nq3-5/+1
Uses manifest mode if the bundled vcpkg is used.
2022-07-23ci,CMake: Drop Conan support for vcpkglat9nq3-5/+14
Between packages breaking, Conan always being a moving target for minimum required CMake support, and now their moves to Conan 2.0 causing existing packages to break, I suppose this was a long time coming. vcpkg isn't without its drawbacks, but at the moment it seems easier on the project to use for external packages. Mostly removes the logic for Conan from the root CMakeLists file, leaving basic find_package()'s in its place. Sets only the find_package()'s that require CONFIG mode as necessary. clang and linux CI now use the vcpkg toolchain file configured in the Docker container when possible. mingw CI turns off YUZU_TESTS because there's no way on the container to run Windows executables on a Linux host anyway, and it's not easy to get Catch2 there.
2022-07-06ci/windows: Copy what of FFmpeg not already presentlat9nq1-1/+1
Prevents overwriting libwinpthreads.dll when one should already be present from the first DLL search.
2022-07-05CI: unbreak ADO after GHA changesliushuyu5-6/+6
2022-07-05CI: lint scriptsliushuyu2-3/+2
2022-07-05CI: workaround appimage generation if FUSE is not availableliushuyu1-0/+5
2022-07-05CI: upload artifacts for pull request verificationliushuyu4-2/+4
2022-07-05CI: fix cachingliushuyu1-2/+2
2022-07-05CI: use Ninja to build stuff fasterliushuyu3-8/+9
2022-07-05CI: Use GitHub Actions to check pull requestsliushuyu3-10/+11
2022-06-17ci/windows: Build using Clanglat9nq1-3/+11
Uses the MinGWClangCross toolchain script to build yuzu. Disables our bundled SDL2 to use the system ones that have been modified to not use `-mwindows`. Also set's `-e` to stop the script on an error (as opposed to packaging nothing). Uses LLVM's linker for linking yuzu. Adds -femulated-tls due to a libstdc++ incompatibility between GCC and Clang in vulkan_common.
2022-06-17ci/windows: Split up cmake commandlat9nq1-1/+8
Improves readability.
2022-04-25ci: Update build generator to VS 2022Morph1-1/+1
2022-04-25ci: Update vmImage to windows-2022Morph2-2/+2
The windows-2022 image contains Visual Studio 2022.
2022-03-19build-msvc: Disable testsameerj1-1/+1
2021-12-16video_core/codecs: (re-spin) refactor ffmpeg searching and handlingliushuyu1-3/+2
2021-12-15Revert "video_core/codecs: refactor ffmpeg searching and handling in cmake"bunnei1-2/+3
2021-12-14CI: fix CI on Linuxliushuyu1-3/+2
2021-12-14CI: fix MinGW installation stepliushuyu1-1/+1
2021-11-17ci: Don't fetch submodules when fetching PRsMorph2-2/+2
2021-11-08ci: Print traceback on patch merge failureMorph1-1/+2
2021-10-16.ci/transifex: Mark docker.sh as executableFearlessTobi1-0/+0
2021-10-15.ci: Use Github Actions to update translation source filesFearlessTobi1-0/+25
2021-10-11ci: Use ubuntu-latest vmImage where applicableameerj4-0/+12
Not specifying the vmImage defaults to ubuntu-16.04, which will be deprecated soon and is experiencing brownouts.
2021-10-02ci: Use latest ubuntu image for mainline/patreon step 1ameerj2-0/+6
2021-09-24ci: Update clang format versionameerj1-1/+1
2021-07-21ci: Increase mainline build timeout.bunnei1-1/+3
- We're currently timing out with builds exceeding 60M. This doubles the timeout to 120M.
2021-07-06cmake, ci: Build bundled FFmpeg with yuzulat9nq1-1/+2
Drops usage of CMAKE_DEPENDENT_OPTION to allow using YUZU_USE_BUNDLED_FFMPEG as an option on any platform. CI then now builds FFmpeg always, netting about 10 MB less used on the AppImage. Also somewhat fixes YUZU_USE_BUNDLED_QT so that it can be used even if CMake doesn't clean up its state after running the first find_package.
2021-06-19ci: windows: Copy the styles directory when packaginglat9nq1-5/+6
Qt can make use of qwindowsvistastyle.dll if present, and our MinGW container has the library, but it was not being copied during the packaging process. Thus, yuzu looked like a Windows 98 application when using the PR-verify artifacts. This copies over the DLL during packaging, for that sweet-sweet Windows Vista style. In addition, set the Qt plugins path instead of the plugins/platforms path. This way we can use the directory directly, rather than appending a `..` everytime we need something just outside of it.
2021-06-10ci: windows: Compress using xzlat9nq1-2/+2
Use XZ instead of gzip for packing. Should save about 10 MB.
2021-06-09ci: common: Remove 7z packaginglat9nq1-6/+0
Removes the 7z from being package during CI, as only .tar.xz preserves information needed on Linux, and otherwise is just extremely redundant to package in addition to the .tar.xz. This affects Linux releases and PR-verify artifacts only. MSVC releases do not use this script to my knowledge.
2021-05-31externals: libusb: Use autotools for MinGWlat9nq1-0/+3
After updating to 1.0.24, MinGW fails to build libusb as a result of numerous errors. So we build libusb their way and let them update the nontrivial stuff. This only applies to MinGW: the old path is still in use for Linux toolchains as well as MSVC. This will dynamically link libusb, since I hit build errors with the old way we used to resolve the conflict with SDL2.
2021-05-30ci: build-msvc: Remove CMake install step.bunnei1-1/+1
- This is breaking our build pipelines with Zydis (dynarmic dependency).
2021-05-16ci: linux: Freeze AppImage binarieslat9nq2-5/+5
A regression was introduced on May 13 by linuxdeploy that causes file open dialogs to crash yuzu in the AppImage (likely this commit 1e28ee38fa174279defe70cdaadf2a552c80258c from linuxdeploy/linuxdeploy-desktopfile). Instead of downloading the latest version from each of the repos we use to build the AppImage, just download the ones hosted at yuzu-emu/ext-linux-bin, which are the same binaries we have been using, but verified to be working and won't update on us beyond our control. This can eventually be moved into the container itself to remove the need to download them at build time.
2021-04-18ci: linux: Link Boost staticallylat9nq1-1/+11
Only affects the AppImage and the raw binaries. Enables running the executable alone on Linux systems when all other libraries are compatible.
2021-04-16cmake: Remove use of bintray for externals.bunnei1-1/+1
- Bintray will be deprecated on May 1st 2021 (https://bintray.com/) - We were previously using this for Qt (non-Windows) and SDL. - I've moved to bundled SDL on Windows.
2021-04-04ci: Fix MSVC build with CMake 3.20.0Morph1-1/+1
2021-02-22ci: Add clang build scriptslat9nq4-1/+50
Adds scripts that instruct CI to build yuzu with the installed Clang compiler on yuzuemu/build-environments:linux-fresh. These scripts are based on the .ci/scripts/linux scripts, minus AppImage building since that isn't necessary. Re-uses linux-fresh since that container has Clang 12 installed.
2021-02-05ci/windows: Copy downloaded FFmpeg librarieslat9nq1-0/+5
Copies FFmpeg libraries that were downloaded during the CMake configuration. Fixes dynamic linking issues with the MinGW builds.
2021-01-06ci/linux: Make Mainline AppImages updateablelat9nq2-9/+20
Moves the final step for building the AppImage to the upload script. Instructs appimagetool to embed update information into the AppImage if the release target is Mainline. Also tells it to create a zsync file to enable partial-downloads when updating the AppImage. Also renames the AppImage from `yuzu-{version info}-x86_64.AppImage` to `yuzu-{version info}.AppImage` to avoid a bug in the downloads page at yuzu-emu.org/downloads.
2020-12-30ci: Build an AppImagelat9nq4-5/+51
This builds yuzu in an AppImage alongside the other archives during release. Required to allow distributing yuzu in the future with upgraded dependencies, such as Qt.
2020-12-28.ci/templates: Enable QT translation for MSVC CIFearlessTobi1-1/+1
Previously this flag was missing, causing translation files not to be shipped with CI builds of yuzu.
2020-12-08ci: Remove `-DYUZU_USE_BUNDLED_UNICORN=ON`lat9nq3-3/+3
Unicorn has been removed, yet CI still enables building with Unicorn. This just cleans up a few leftovers by removing the variable from the CMake parameters in CI.
2020-11-30Disable web applet and warning when compiling for Linux on CIlat9nq1-1/+1
yuzu's web applet does not or barely reacts to user input while open in Linux. It can be closed via 'Exit Web Applet' on the menubar, however if yuzu is in fullscreen, this is effectively a softlock as the menubar cannot be accessed. This disables building yuzu with the web applet on the Linux CI target. In addition, this disables the QMessageBox warning about not having compiled yuzu with the web applet.
2020-11-23CI: move refreshenv to the configure step...liushuyu1-2/+2
... so that cmake can find the Vulkan SDK binaries
2020-11-21ci: install Vulkan SDK in MSVC buildliushuyu1-0/+2
2020-09-30Update yuzu-patreon-step2.yml to set build timeout to 120 minbunnei1-0/+1
This is currently necessary to build ffmpeg
2020-08-13General: Tidy up clang-format warnings part 2Lioncash1-2/+0
2020-08-09General: Tidy up clang-format warningsLioncash1-1/+3
2020-08-03ci: Make use of clang-format 10.0Lioncash1-1/+1
10.0 seems to play nicer with C++ attributes compared to clang-format 6.0.
2020-07-18yuzu: Port translation support from CitraFearlessTobi2-2/+2
Co-Authored-By: Weiyi Wang <wwylele@gmail.com>
2020-05-09CI: Don't check clang format on early access buildsJames Rowe1-11/+0
2020-05-08Replace externals with Conan (#3735)James Rowe5-13/+12
* Remove git submodules that will be loaded through conan * Move custom Find modules to their own folder * Use conan for downloading missing external dependencies * CI: Change the yuzu source folder user to the user that the containers run on * Attempt to remove dirty mingw build hack * Install conan on the msvc build * Only set release build type when using not using multi config generator * Re-add qt bundled to workaround an issue with conan qt not downloading prebuilt binaries * Add workaround for submodules that use legacy CMAKE variables * Re-add USE_BUNDLED_QT on the msvc build bot
2020-05-03Re-enables building yuzu with Vulkan enabled via the CI scriptslat9nq2-2/+2
This is possible now with the updated Docker images and their updated packages. Before, there were build errors due to old QT5 packages on Ubuntu, but now since they have updated packages it is feasible to build with Vulkan enabled once more.
2020-04-23Fixed packaging on some systems with different QT5 pathgxcreator1-1/+7
2020-04-04ci: Update to Windows Server 2019 and Visual Studio 2019Zach Hilman3-3/+3
This updates to the latest available toolchain for MSVC builds.
2020-01-29ci: Disable Vulkan for Windows MinGW buildsReinUsesLisp1-1/+1
2020-01-29ci: Disable Vulkan for Linux buildsReinUsesLisp1-1/+1
2019-12-03Add missing CMakeLists.txt from root folder to source uploadJames Rowe1-1/+2
Fixes #3190
2019-11-25ci: Continue pipeline on clang format failureZach Hilman1-0/+1
2019-11-12Move source in windows uploads into its own internal zipJames Rowe1-7/+22
This should prevent path length issues when extracting the build from the installer
2019-11-12ci: Package source with buildsZach Hilman2-0/+7
2019-11-07ci: Rename build folder only on non-mainline buildsbunnei5-10/+30
2019-11-07Revert "ci: Rename build folder only on non-mainline builds"bunnei5-30/+10
2019-11-06ci: Rename build folder only on non-mainline buildsZach Hilman5-10/+30
2019-10-29externals: Amend zlib submoduleLioncash1-2/+1
Supplies CMakeLists.txt file that avoids pulling in zlib's tests into the tree. This avoids needing to explicitly opt these tests out from ctest.
2019-10-24Revert "ci: Add build name to archive root folder"James Rowe5-15/+10
This reverts commit 5e553a6c267f4ab96a89833f1006ea27fd78b30a.
2019-10-23ci: Add build name to archive root folderZach Hilman5-10/+15
2019-10-09ci: Isolate upload merge step into stage 2Zach Hilman6-26/+25
2019-10-09ci: Update build suffix for mock buildsZach Hilman1-1/+1
2019-10-07ci: Add TAR-XZ compression to MSVC buildsZach Hilman1-1/+7
2019-10-05ci: Add version counter variableZach Hilman10-7/+26
2019-10-04externals: Use upstream zlibLioncash1-1/+2
We don't need to depend on a custom fork for this. We can add the library as is, and then make it excluded from the ALL target, so we only link in the libraries that we actually make use of.
2019-10-03ci: Correct mainline release dependencyZach Hilman2-2/+4
2019-10-03ci: Add Mainline taglineZach Hilman1-1/+1
2019-10-03ci: Use MSVC windows for patreonZach Hilman2-11/+13
2019-10-02ci: Use MSVC windows for mainlineZach Hilman1-3/+36
2019-10-02ci: Add MSVC build templateZach Hilman1-0/+21
2019-10-02ci: Add Windows MSVC package scriptZach Hilman1-0/+32
2019-10-02ci: Fix unset environment variable bugZach Hilman1-3/+1
2019-10-02ci: Check additional pages on GitHubZach Hilman1-1/+3
2019-10-02ci: Iterate through GitHub pages for pull requestsZach Hilman2-25/+33
2019-09-30ci: Correct arguments for mergebot scriptZach Hilman1-2/+2
2019-09-30ci: Populate patreon PRs on public repositoryZach Hilman3-6/+13
2019-09-26ci: Add two step patreon build pipelineZach Hilman3-19/+36
2019-09-26ci: Add private mergebot CI templatesZach Hilman2-0/+70
2019-09-26ci: Optionally prepend commit messages with environment variableZach Hilman1-2/+4
2019-09-26ci: Add private mergebot scriptZach Hilman1-0/+41
Uses Azure instead of GitHub
2019-09-23ci: Correct GitHub Release nameZach Hilman1-1/+1
2019-09-23ci: Determine build date via bashZach Hilman1-1/+2
2019-09-22ci: Update to use date as build numberZach Hilman2-1/+2
2019-09-22ci: Split mainline pipeline and add support for GitHub releases (#2900)Zach Hilman7-13/+62
* ci: Add mock build alternative for fast testing * ci: Always cache build * ci: Extract steps to download build stage artifacts * ci: Add template to release to GitHub * ci: Add template to release to Azure Universal Artifacts * ci: Split mainline to two pipelines
2019-09-04Changed apt-get upgrade for specific package.Flame Sage1-1/+1
2019-09-04apt update before upgrade. Use apt-get.Flame Sage1-1/+1
Identified a bug in the script which uses the azure image when attempting to upgrade python3-pip. Package index was out of date because apt-get update was not ran before attempting the upgrade.
2019-08-02Correct apt permissionsZach Hilman1-1/+1
2019-08-02Upgrade PIP version with APTZach Hilman1-1/+1
2019-08-02Upgrade pip versionZach Hilman1-1/+1
2019-08-02Add missing dotZach Hilman1-1/+1
2019-07-28ci: Fix Azure PR BuildsZach Hilman5-8/+16
2019-07-24Fix README change mistake (#2754)Zach Hilman2-4/+6
Fix README change mistake
2019-07-20azure: Fix clang-format and releasesZach Hilman3-31/+2
2019-07-14Finalize Azure Pipelines DefinitionsZach Hilman29-35/+572
d
2019-07-11Add Repository Sync PipelineZach Hilman1-0/+19
2019-07-10Add Pipeline DefinitionsZach Hilman4-0/+57