From 00ad77b9f683e561b1ac45fbb89eb2bafe45c8c6 Mon Sep 17 00:00:00 2001 From: Jon Turney Date: Fri, 10 Nov 2017 13:42:55 +0000 Subject: [PATCH] appveyor: Add a Cygwin build script --- appveyor.yml | 19 +++++++++++++----- scripts/appveyor_cygwin.bat | 40 +++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 scripts/appveyor_cygwin.bat diff --git a/appveyor.yml b/appveyor.yml index 0ec3a1e7bfe..9c6e5acd370 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -38,6 +38,9 @@ cache: - '%LOCALAPPDATA%\pip\Cache -> appveyor.yml' - win_flex_bison-2.5.15.zip - llvm-5.0.1-msvc2017-mtd.7z +- C:\pkgcache +- 'C:\cygwin64\home\%USERNAME%\.ccache' +- 'C:\cygwin\home\%USERNAME%\.ccache' os: Visual Studio 2017 @@ -47,17 +50,23 @@ init: - git config --global core.autocrlf true environment: - WINFLEXBISON_VERSION: 2.5.15 - LLVM_ARCHIVE: llvm-5.0.1-msvc2017-mtd.7z + matrix: + - compiler: msvc + WINFLEXBISON_VERSION: 2.5.15 + LLVM_ARCHIVE: llvm-5.0.1-msvc2017-mtd.7z + - compiler: cygwin + arch: x64 install: -- call scripts\appveyor_msvc.bat install +- call scripts\appveyor_%compiler%.bat install build_script: -- call scripts\appveyor_msvc.bat build_script +- call scripts\appveyor_%compiler%.bat build_script after_build: -- call scripts\appveyor_msvc.bat after_build +- call scripts\appveyor_%compiler%.bat after_build + +test: off # It's possible to setup notification here, as described in # http://www.appveyor.com/docs/notifications#appveyor-yml-configuration , but diff --git a/scripts/appveyor_cygwin.bat b/scripts/appveyor_cygwin.bat new file mode 100644 index 00000000000..831270b8cd3 --- /dev/null +++ b/scripts/appveyor_cygwin.bat @@ -0,0 +1,40 @@ +set PKGCACHE=C:\pkgcache +set CYGWIN_MIRROR=http://cygwin.mirror.constant.com + +if _%arch%_ == _x64_ set SETUP=setup-x86_64.exe && set CYGWIN_ROOT=C:\cygwin64 +if _%arch%_ == _x86_ set SETUP=setup-x86.exe && set CYGWIN_ROOT=C:\cygwin + +set PATH=%CYGWIN_ROOT%\bin;%SYSTEMROOT%\system32 + +goto %1 + +:install +echo Updating Cygwin and installing build prerequsites +%CYGWIN_ROOT%\%SETUP% -qnNdO -R "%CYGWIN_ROOT%" -s "%CYGWIN_MIRROR%" -l "%PKGCACHE%" -g -P ^ +bison,^ +ccache,^ +flex,^ +glproto,^ +libX11-devel,^ +libX11-xcb-devel,^ +libXdamage-devel,^ +libXext-devel,^ +libXfixes-devel,^ +libexpat-devel,^ +libllvm-devel,^ +libxcb-dri2-devel,^ +libxcb-glx-devel,^ +libxcb-xfixes-devel,^ +meson,^ +ninja,^ +python3-mako,^ +zlib-devel +goto :eof + +:build_script +bash -lc "cd $APPVEYOR_BUILD_FOLDER; meson _build -Degl=false --wrap-mode=nofallback && ninja -C _build" +goto :eof + +:after_build +bash -lc "cd $APPVEYOR_BUILD_FOLDER; ninja -C _build test" +goto :eof -- 2.30.2