mirror of
https://github.com/vcmi/vcmi.git
synced 2025-03-29 21:56:54 +02:00
AppVeyor: change config to use Vcpkg-generated deps
There also extended build matrix for toolchain_test branch.
This commit is contained in:
parent
440226f7af
commit
caf0edf618
132
CI/appveyor.yml
132
CI/appveyor.yml
@ -1,72 +1,82 @@
|
||||
# Common configuration for all branches
|
||||
version: 1.0.{build}
|
||||
max_jobs: 2
|
||||
clone_depth: 10
|
||||
clone_folder: c:\projects\vcmi\source
|
||||
init:
|
||||
- cmd: set QTDIR=C:\Qt\5.7\msvc2015
|
||||
environment:
|
||||
BUILD_PLATFORM: x86
|
||||
BUILD_CONFIGURATION: Release
|
||||
install:
|
||||
- cmd: >-
|
||||
cd c:\projects\vcmi\
|
||||
|
||||
curl -fsS -o vcmi_depends_%BUILD_PLATFORM%.zip https://dependencies.vcmi.download/msvc/vcmi_depends_%BUILD_PLATFORM%.zip
|
||||
|
||||
7z x vcmi_depends_%BUILD_PLATFORM%.zip -odepends
|
||||
|
||||
cd source
|
||||
|
||||
git submodule update --init --recursive
|
||||
|
||||
cd ..
|
||||
|
||||
mkdir build_%BUILD_PLATFORM%
|
||||
|
||||
cd build_%BUILD_PLATFORM%
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=../source/CI/msvc/appveyor_toolchain.txt ../source
|
||||
- bash c:\projects\vcmi\source\CI\msvc\install.sh
|
||||
build_script:
|
||||
- cmd: >-
|
||||
cd c:\projects\vcmi\build_%BUILD_PLATFORM%
|
||||
|
||||
msbuild vcmi.sln /p:configuration=%BUILD_CONFIGURATION% /maxcpucount:2
|
||||
|
||||
IF "%APPVEYOR_REPO_TAG%"=="true" cpack
|
||||
|
||||
|
||||
mkdir dist_%BUILD_PLATFORM%
|
||||
|
||||
copy %BUILD_CONFIGURATION%\*.exe dist_%BUILD_PLATFORM%
|
||||
|
||||
copy %BUILD_CONFIGURATION%\*.dll dist_%BUILD_PLATFORM%
|
||||
|
||||
copy %BUILD_CONFIGURATION%\lib\*.dll dist_%BUILD_PLATFORM%
|
||||
|
||||
mkdir dist_%BUILD_PLATFORM%\AI
|
||||
|
||||
copy %BUILD_CONFIGURATION%\AI\*.dll dist_%BUILD_PLATFORM%\AI
|
||||
|
||||
cd dist_%BUILD_PLATFORM%
|
||||
|
||||
mkdir platforms
|
||||
|
||||
copy %QTDIR%\bin\Qt5Core.dll .
|
||||
|
||||
copy %QTDIR%\bin\Qt5Gui.dll .
|
||||
|
||||
copy %QTDIR%\bin\Qt5Widgets.dll .
|
||||
|
||||
copy %QTDIR%\bin\Qt5Network.dll .
|
||||
|
||||
copy %QTDIR%\plugins\platforms\qwindows.dll platforms
|
||||
|
||||
7z a c:\projects\vcmi\source\vcmi-%BUILD_PLATFORM%-%BUILD_CONFIGURATION%.zip * -mx=7 -r -x!*.exp -x!*.lib
|
||||
|
||||
7z a c:\projects\vcmi\source\vcmi-%BUILD_PLATFORM%-%BUILD_CONFIGURATION%.zip c:\projects\vcmi\depends\bin\*.dll -mx=7
|
||||
- cmd: c:\projects\vcmi\source\CI\msvc\build_script.bat
|
||||
artifacts:
|
||||
- path: vcmi-x86-Release.zip
|
||||
- path: build_$(VCMI_BUILD_PLATFORM)\*.exe
|
||||
notifications:
|
||||
- provider: Slack
|
||||
incoming_webhook:
|
||||
secure: zxT3HTnxL744HiSv7ig7sjGL4LmJ8n3MsY8PEA/kinbVMkmcxrSgVBVkHV79RfSWSyq4oLMSRvMMpG8SuDWnf6oK/qvgaiAWfwwlCIiA7uQ=
|
||||
|
||||
# Branch-specific configuration
|
||||
for:
|
||||
# Extended configuration for toolchain_test branch
|
||||
-
|
||||
branches:
|
||||
only:
|
||||
- toolchain_test
|
||||
environment:
|
||||
matrix:
|
||||
- NAME: MSVS 2015 x86 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
VCMI_GENERATOR: Visual Studio 14 2015
|
||||
VCMI_BUILD_PLATFORM: x86
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
- NAME: MSVS 2015 x86 - Debug
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
VCMI_GENERATOR: Visual Studio 14 2015
|
||||
VCMI_BUILD_PLATFORM: x86
|
||||
VCMI_BUILD_CONFIGURATION: Debug
|
||||
|
||||
- NAME: MSVS 2015 x64 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
VCMI_GENERATOR: Visual Studio 14 2015 Win64
|
||||
VCMI_BUILD_PLATFORM: x64
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
- NAME: MSVS 2015 x64 - Debug
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
VCMI_GENERATOR: Visual Studio 14 2015 Win64
|
||||
VCMI_BUILD_PLATFORM: x64
|
||||
VCMI_BUILD_CONFIGURATION: Debug
|
||||
|
||||
- NAME: MSVS 2017 x86 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
VCMI_GENERATOR: Visual Studio 15 2017
|
||||
VCMI_BUILD_PLATFORM: x86
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
- NAME: MSVS 2017 x86 - Debug
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
VCMI_GENERATOR: Visual Studio 15 2017
|
||||
VCMI_BUILD_PLATFORM: x86
|
||||
VCMI_BUILD_CONFIGURATION: Debug
|
||||
|
||||
- NAME: MSVS 2017 x64 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
VCMI_GENERATOR: Visual Studio 15 2017 Win64
|
||||
VCMI_BUILD_PLATFORM: x64
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
- NAME: MSVS 2017 x64 - Debug
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
VCMI_GENERATOR: Visual Studio 15 2017 Win64
|
||||
VCMI_BUILD_PLATFORM: x64
|
||||
VCMI_BUILD_CONFIGURATION: Debug
|
||||
# Default configuration for all other branches
|
||||
-
|
||||
environment:
|
||||
matrix:
|
||||
- NAME: MSVS 2015 x86 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
||||
VCMI_GENERATOR: Visual Studio 14 2015
|
||||
VCMI_BUILD_PLATFORM: x86
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
- NAME: MSVS 2017 x64 - Release
|
||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
VCMI_GENERATOR: Visual Studio 15 2017 Win64
|
||||
VCMI_BUILD_PLATFORM: x64
|
||||
VCMI_BUILD_CONFIGURATION: Release
|
||||
|
@ -1,14 +1,33 @@
|
||||
#!/bin/sh
|
||||
VCMI_PACKAGE_FILE_NAME="${TRAVIS_JOB_ID}-vcmi"
|
||||
VCMI_PACKAGE_NAME_SUFFIX=""
|
||||
if [ "$TRAVIS_PULL_REQUEST" = "false" ];
|
||||
if [ ! -z "$TRAVIS_JOB_ID" ];
|
||||
then
|
||||
branch_name=$(echo "$TRAVIS_BRANCH" | sed 's/[^[:alnum:]]\+/_/g')
|
||||
VCMI_PACKAGE_FILE_NAME="${VCMI_PACKAGE_FILE_NAME}-branch-${branch_name}-${TRAVIS_COMMIT}"
|
||||
echo "Using Travis environment variables!"
|
||||
TMP_JOBID="$TRAVIS_JOB_ID"
|
||||
TMP_BRANCH="$TRAVIS_BRANCH"
|
||||
TMP_PRID="$TRAVIS_PULL_REQUEST"
|
||||
TMP_COMMIT="$TRAVIS_COMMIT"
|
||||
elif [ ! -z "${APPVEYOR_JOB_ID}" ];
|
||||
then
|
||||
echo "Using AppVeyor environment variables!"
|
||||
TMP_JOBID=$(echo "$APPVEYOR_JOB_ID" | sed 's/[^[:digit:]]\+//g')
|
||||
TMP_BRANCH="$APPVEYOR_REPO_BRANCH"
|
||||
TMP_PRID="$APPVEYOR_PULL_REQUEST_NUMBER"
|
||||
TMP_COMMIT="$APPVEYOR_REPO_COMMIT"
|
||||
else
|
||||
echo "No Travir or AppVeyor environment variables found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
VCMI_PACKAGE_FILE_NAME="${TMP_JOBID}-vcmi"
|
||||
VCMI_PACKAGE_NAME_SUFFIX=""
|
||||
if [ -z "$TMP_PRID" ];
|
||||
then
|
||||
branch_name=$(echo "$TMP_BRANCH" | sed 's/[^[:alnum:]]\+/_/g')
|
||||
VCMI_PACKAGE_FILE_NAME="${VCMI_PACKAGE_FILE_NAME}-branch-${branch_name}-${TMP_COMMIT}"
|
||||
VCMI_PACKAGE_NAME_SUFFIX="branch ${branch_name}"
|
||||
else
|
||||
VCMI_PACKAGE_FILE_NAME="${VCMI_PACKAGE_FILE_NAME}-PR-${TRAVIS_PULL_REQUEST}-${TRAVIS_COMMIT}"
|
||||
VCMI_PACKAGE_NAME_SUFFIX="PR ${TRAVIS_PULL_REQUEST}"
|
||||
VCMI_PACKAGE_FILE_NAME="${VCMI_PACKAGE_FILE_NAME}-PR-${TMP_PRID}-${TMP_COMMIT}"
|
||||
VCMI_PACKAGE_NAME_SUFFIX="PR ${TMP_PRID}"
|
||||
fi
|
||||
VCMI_PACKAGE_NAME_SUFFIX="(${VCMI_PACKAGE_NAME_SUFFIX})"
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
SET(CMAKE_SYSTEM_NAME Windows)
|
||||
SET(VCMIBUILD_DIR c:/projects/vcmi)
|
||||
|
||||
SET(CMAKE_C_COMPILER cl)
|
||||
SET(CMAKE_CXX_COMPILER cl)
|
||||
set(CMAKE_RC_COMPILER rc)
|
||||
|
||||
|
||||
SET(ENV{BOOST_ROOT} C:/Libraries/boost_1_60_0)
|
||||
SET(ENV{BOOST_LIBRARYDIR} C:/Libraries/boost_1_60_0/lib32-msvc-14.0)
|
||||
|
||||
SET(CMAKE_FIND_ROOT_PATH ${VCMIBUILD_DIR}/depends)
|
||||
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_FIND_ROOT_PATH})
|
||||
list(APPEND CMAKE_PREFIX_PATH C:/Qt/5.7/msvc2015)
|
||||
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
6
CI/msvc/build_script.bat
Normal file
6
CI/msvc/build_script.bat
Normal file
@ -0,0 +1,6 @@
|
||||
cd %APPVEYOR_BUILD_FOLDER%
|
||||
cd build_%VCMI_BUILD_PLATFORM%
|
||||
|
||||
cmake --build . --config %VCMI_BUILD_CONFIGURATION% -- /maxcpucount:2
|
||||
|
||||
cpack
|
17
CI/msvc/install.sh
Normal file
17
CI/msvc/install.sh
Normal file
@ -0,0 +1,17 @@
|
||||
cd $APPVEYOR_BUILD_FOLDER
|
||||
git submodule update --init --recursive
|
||||
|
||||
cd ..
|
||||
|
||||
curl -LfsS -o "vcpkg-export-${VCMI_BUILD_PLATFORM}-windows-v140.7z" \
|
||||
"https://github.com/vcmi/vcmi-deps-windows/releases/download/v1/vcpkg-export-${VCMI_BUILD_PLATFORM}-windows-v140.7z"
|
||||
7z x "vcpkg-export-${VCMI_BUILD_PLATFORM}-windows-v140.7z"
|
||||
|
||||
cd $APPVEYOR_BUILD_FOLDER
|
||||
mkdir build_$VCMI_BUILD_PLATFORM
|
||||
cd build_$VCMI_BUILD_PLATFORM
|
||||
|
||||
source $APPVEYOR_BUILD_FOLDER/CI/get_package_name.sh
|
||||
cmake -G "$VCMI_GENERATOR" .. -DCMAKE_TOOLCHAIN_FILE=$APPVEYOR_BUILD_FOLDER/../vcpkg/scripts/buildsystems/vcpkg.cmake \
|
||||
-DPACKAGE_NAME_SUFFIX:STRING="$VCMI_PACKAGE_NAME_SUFFIX" \
|
||||
-DPACKAGE_FILE_NAME:STRING="$VCMI_PACKAGE_FILE_NAME"
|
Loading…
x
Reference in New Issue
Block a user