From 588046144a71281671063245a20cadff59b0034c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20K=C3=B6plinger?= Date: Tue, 3 Mar 2015 22:35:36 +0100 Subject: [PATCH] appveyor.yml: switch away from unstable image and simplify script The unstable image seemed to cause problems recently. We should just use the default image and fetch Cygwin ourselves. Also added caching of the Cygwin files and simplified the script a bit. --- appveyor.yml | 82 ++++++++++++++++++---------------------------------- 1 file changed, 28 insertions(+), 54 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 4a2d14354b5d..8fa713a07ef4 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,54 +4,41 @@ # For further details see http://www.appveyor.com # -# Use 'unstable' Appveyor build worker image as Appveyor have added Cygwin to this for us -os: Unstable - # # Custom environment variables # environment: global: - CYG_ROOT: C:/cygwin + CYG_ROOT: C:\cygwin CYG_MIRROR: http://cygwin.mirror.constant.com - CYG_CACHE: C:/cygwin/var/cache/setup - NSIS_ROOT: C:\nsis - + CYG_CACHE: C:\cygwin\var\cache\setup + CYG_BASH: C:\cygwin\bin\bash + +# +# Cache Cygwin files to speed up build +# +cache: + - '%CYG_CACHE%' + +# +# Do a shallow clone of the repo to speed up build +# +clone_depth: 1 + # # Initialisation prior to pulling the Mono repository +# Attempt to ensure we don't try to convert line endings to Win32 CRLF as this will cause build to fail # init: - - 'echo Building Mono for Windows' - - 'echo System architecture: %PLATFORM%' - - 'echo Repo build branch is: %APPVEYOR_REPO_BRANCH%' - - 'echo Build folder is: %APPVEYOR_BUILD_FOLDER%' -# Attempt to ensure we don't try to convert line endings to Win32 CRLF as this will cause build to fail - - 'git config --global core.autocrlf input' + - git config --global core.autocrlf input # # Install needed build dependencies # install: -# NOTE: Already installed on current Appveyor unstable image -# - 'echo Retrieving Cygwin' -# - 'appveyor DownloadFile http://cygwin.com/setup-x86.exe -FileName %CYGROOT%/setup-x86.exe' - - 'echo Setting up Cygwin dependencies' - - '%CYG_ROOT%\setup-x86.exe -qnNdO -R "%CYG_ROOT%" -s "%CYG_MIRROR%" -l "%CYG_CACHE%" -P autoconf -P automake -P bison -P gcc-core -P gcc-g++ -P mingw-runtime -P mingw-binutils -P mingw-gcc-core -P mingw-gcc-g++ -P mingw-pthreads -P mingw-w32api -P libtool -P make -P python -P gettext-devel -P gettext -P intltool -P libiconv -P pkg-config -P git -P wget -P curl > NUL' - - 'echo Check Cygwin setup' - - '%CYG_ROOT%/bin/bash -lc "cygcheck -dc cygwin"' - - 'echo Done setting up Cygwin' - - 'echo Retrieving NSIS' - - 'appveyor DownloadFile "http://sunet.dl.sourceforge.net/project/nsis/NSIS 2/2.46/nsis-2.46-setup.exe" -FileName nsissetup.exe' - - 'echo Setting up NSIS' - - 'nsissetup.exe /S /D=%NSIS_ROOT%' - - 'echo Done setting up NSIS' - -# -# NOTE: msbuild doesn't work at present so use Cygwin to build -# -#build: -# project: C:\projects\mono\msvc\mono.sln -# verbosity: detailed + - ps: 'Start-FileDownload "http://cygwin.com/setup-x86.exe" -FileName "setup-x86.exe"' + - 'setup-x86.exe --quiet-mode --no-shortcuts --only-site --root "%CYG_ROOT%" --site "%CYG_MIRROR%" --local-package-dir "%CYG_CACHE%" --packages autoconf,automake,bison,gcc-core,gcc-g++,mingw-runtime,mingw-binutils,mingw-gcc-core,mingw-gcc-g++,mingw-pthreads,mingw-w32api,libtool,make,python,gettext-devel,gettext,intltool,libiconv,pkg-config,git,curl,libxslt > NUL 2>&1' + - '%CYG_BASH% -lc "cygcheck -dc cygwin"' # Cygwin build script # @@ -59,29 +46,16 @@ install: # # The stdin/stdout file descriptor appears not to be valid for the Appveyor # build which causes failures as certain functions attempt to redirect -# default file handles. Ensure a dummy file descriptor is opened with exec. +# default file handles. Ensure a dummy file descriptor is opened with 'exec'. # build_script: - - cmd: 'echo Cygwin root is: %CYG_ROOT%' - - cmd: 'echo Build folder is: %APPVEYOR_BUILD_FOLDER%' - - cmd: 'echo Repo build branch is: %APPVEYOR_REPO_BRANCH%' - - cmd: 'echo Repo build commit is: %APPVEYOR_REPO_COMMIT%' - - cmd: 'echo Autogen running...' - - cmd: '%CYG_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER; exec 0