summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Turney <jon.turney@dronecode.org.uk>2017-11-10 13:42:55 +0000
committerJon Turney <jon.turney@dronecode.org.uk>2018-12-14 15:18:05 +0000
commite4c81c8a68cabcc46b08b2bca72c8cc5289a9290 (patch)
treec81eead71c99e4d73ce80bcea36bb0d48ee485af
parent0b5b179c58c172a53453960ff7b97aea5fbb4472 (diff)
appveyor: Add a Cygwin build script
v2: Use ccache build using meson, rather than autotools
-rw-r--r--appveyor.yml19
-rw-r--r--scripts/appveyor_cygwin.bat39
2 files changed, 53 insertions, 5 deletions
diff --git a/appveyor.yml b/appveyor.yml
index 0ec3a1e7bf..9c6e5acd37 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 0000000000..0fb307898c
--- /dev/null
+++ b/scripts/appveyor_cygwin.bat
@@ -0,0 +1,39 @@
+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
+goto :eof