From bc30a591ba7252e0c16d9c1b3c75a7073735bcae Mon Sep 17 00:00:00 2001 From: James Rowe Date: Fri, 8 May 2020 15:09:29 -0600 Subject: Replace externals with Conan (#3735) * 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 --- .ci/scripts/format/exec.sh | 3 +++ .ci/scripts/linux/exec.sh | 3 +++ .ci/scripts/windows/docker.sh | 12 ------------ .ci/scripts/windows/exec.sh | 3 +++ .ci/templates/build-msvc.yml | 4 +++- 5 files changed, 12 insertions(+), 13 deletions(-) (limited to '.ci') diff --git a/.ci/scripts/format/exec.sh b/.ci/scripts/format/exec.sh index 5d6393b38..e9e9d2e17 100644 --- a/.ci/scripts/format/exec.sh +++ b/.ci/scripts/format/exec.sh @@ -1,4 +1,7 @@ #!/bin/bash -ex chmod a+x ./.ci/scripts/format/docker.sh +# the UID for the container yuzu user is 1027 +sudo chown -R 1027 ./ docker run -v $(pwd):/yuzu yuzuemu/build-environments:linux-clang-format /bin/bash -ex /yuzu/.ci/scripts/format/docker.sh +sudo chown -R $UID ./ diff --git a/.ci/scripts/linux/exec.sh b/.ci/scripts/linux/exec.sh index 9fafa9208..a7deddeb3 100644 --- a/.ci/scripts/linux/exec.sh +++ b/.ci/scripts/linux/exec.sh @@ -2,4 +2,7 @@ mkdir -p "ccache" || true chmod a+x ./.ci/scripts/linux/docker.sh +# the UID for the container yuzu user is 1027 +sudo chown -R 1027 ./ docker run -e ENABLE_COMPATIBILITY_REPORTING -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-fresh /bin/bash /yuzu/.ci/scripts/linux/docker.sh $1 +sudo chown -R $UID ./ diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh index 5d5650d3b..d53281741 100755 --- a/.ci/scripts/windows/docker.sh +++ b/.ci/scripts/windows/docker.sh @@ -4,22 +4,10 @@ cd /yuzu ccache -s -# Dirty hack to trick unicorn makefile into believing we are in a MINGW system -mv /bin/uname /bin/uname1 && echo -e '#!/bin/sh\necho MINGW64' >> /bin/uname -chmod +x /bin/uname - -# Dirty hack to trick unicorn makefile into believing we have cmd -echo '' >> /bin/cmd -chmod +x /bin/cmd - mkdir build || true && cd build cmake .. -G Ninja -DDISPLAY_VERSION=$1 -DCMAKE_TOOLCHAIN_FILE="$(pwd)/../CMakeModules/MinGWCross.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_UNICORN=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DCMAKE_BUILD_TYPE=Release ninja -# Clean up the dirty hacks -rm /bin/uname && mv /bin/uname1 /bin/uname -rm /bin/cmd - ccache -s echo "Tests skipped" diff --git a/.ci/scripts/windows/exec.sh b/.ci/scripts/windows/exec.sh index 4155ed5fc..f904544bd 100644 --- a/.ci/scripts/windows/exec.sh +++ b/.ci/scripts/windows/exec.sh @@ -2,4 +2,7 @@ mkdir -p "ccache" || true chmod a+x ./.ci/scripts/windows/docker.sh +# the UID for the container yuzu user is 1027 +sudo chown -R 1027 ./ docker run -e CCACHE_DIR=/yuzu/ccache -v $(pwd):/yuzu yuzuemu/build-environments:linux-mingw /bin/bash -ex /yuzu/.ci/scripts/windows/docker.sh $1 +sudo chown -R $UID ./ diff --git a/.ci/templates/build-msvc.yml b/.ci/templates/build-msvc.yml index adcecf0ec..d85a949aa 100644 --- a/.ci/templates/build-msvc.yml +++ b/.ci/templates/build-msvc.yml @@ -4,7 +4,9 @@ parameters: version: '' steps: -- script: mkdir build && cd build && cmake -G "Visual Studio 16 2019" -A x64 --config Release -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 -DDISPLAY_VERSION=${{ parameters['version'] }} .. && cd .. +- script: python -m pip install --upgrade pip conan + displayName: 'Install conan' +- script: mkdir build && cd build && cmake -G "Visual Studio 16 2019" -A x64 --config Release -DYUZU_USE_BUNDLED_QT=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 -DDISPLAY_VERSION=${{ parameters['version'] }} .. && cd .. displayName: 'Configure CMake' - task: MSBuild@1 displayName: 'Build' -- cgit v1.2.3