[Mesa-dev] [PATCH] appveyor: Initial integration.

Jose Fonseca jfonseca at vmware.com
Tue Dec 1 13:54:02 PST 2015


AppVeyor doesn't require an appveyor.yml in the repos (in fact it has
some limitations as noted in comments below), but doing so has two great
advantages over the web UI:

- appveyor.yml can be revisioned together with the code, so instructions
  should always be in synch with the code

- appveyor.yml can be reused for people's private repositories (be on
  fdo or GitHub, etc.)
---
 appveyor.yml | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)
 create mode 100644 appveyor.yml

diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000..8cbc856
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,63 @@
+# http://www.appveyor.com/docs/appveyor-yml
+#
+# To setup AppVeyor for your own personal repositories do the following:
+# - Sign up
+# - Add a new project
+# - Select Git and fill in the Git clone URL
+# - Setup a Git hook as explained in
+#   https://github.com/appveyor/webhooks#installing-git-hook
+#   - Apply the patch https://github.com/appveyor/webhooks/issues/1
+# - Check 'Settings > General > Skip branches without appveyor'
+# - Check 'Settings > General > Rolling builds'
+# - Setup the global or project notifications to your liking
+#
+# Note that kicking (or restarting) a build via the web UI will not work, as it
+# will fail to find appveyor.yml .  The Git hook is the most practical way to
+# kick a build.
+#
+# See also:
+# - http://help.appveyor.com/discussions/problems/2209-node-grunt-build-specify-a-project-or-solution-file-the-directory-does-not-contain-a-project-or-solution-file
+# - http://help.appveyor.com/discussions/questions/1184-build-config-vs-appveyoryaml
+
+version: '{build}'
+
+branches:
+  except:
+  - /^travis.*$/
+
+clone_depth: 5
+
+cache:
+- llvm-3.3.1-msvc2013-mtd.7z
+
+environment:
+  LLVM_ARCHIVE: llvm-3.3.1-msvc2013-mtd.7z
+
+install:
+# Install pip
+- python --version
+- python -m ensurepip
+# Install Mako
+- python -m pip install --egg Mako
+# Install SCons
+- python -m pip install --egg scons==2.4.1
+- scons --version
+# Install flex/bison
+- cinst winflexbison -y
+- win_flex --version
+- win_bison --version
+# Download and extract LLVM
+- if not exist "%LLVM_ARCHIVE%" appveyor DownloadFile "https://people.freedesktop.org/~jrfonseca/llvm/%LLVM_ARCHIVE%"
+- 7z x -y "%LLVM_ARCHIVE%" > nul
+- mkdir llvm\bin
+- set LLVM=%CD%\llvm
+
+build_script:
+- scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=12.0 llvm=1
+
+
+# It's possible to setup notification here, as described in
+# http://www.appveyor.com/docs/notifications#appveyor-yml-configuration , but
+# doing so would cause the notification settings to be replicated across all
+# repos, which is most likely undesired.  So it's better to rely on the
+# Appveyor global/project notification settings.
-- 
2.5.0



More information about the mesa-dev mailing list