summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJose Fonseca <[email protected]>2015-11-26 10:39:41 +0000
committerJose Fonseca <[email protected]>2015-12-02 19:40:53 +0000
commit9e6af56666201d97ae0fcf068aa2f08c6737482f (patch)
tree3d50ea22a567fc98da0170fb894f796bfcadf0ab
parent4a3d388834dc25c5925301343757ee21ffa26253 (diff)
appveyor: Initial integration.
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.) Acked-by: Roland Scheidegger <[email protected]>
-rw-r--r--appveyor.yml62
1 files changed, 62 insertions, 0 deletions
diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 00000000000..84dc4de36b3
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,62 @@
+# 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
+# - 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.