appveyor: put build steps in a script, rather than inline in appveyor.yml
authorJon Turney <jon.turney@dronecode.org.uk>
Fri, 10 Nov 2017 13:27:06 +0000 (13:27 +0000)
committerJon Turney <jon.turney@dronecode.org.uk>
Mon, 7 Jan 2019 13:40:57 +0000 (13:40 +0000)
appveyor.yml
scripts/appveyor_msvc.bat [new file with mode: 0644]

index ccb84fd3403fea683c9dc23a752701c7d8000a30..0ec3a1e7bfe48dfac1c2c762239c422b13d47621 100644 (file)
@@ -51,39 +51,13 @@ environment:
   LLVM_ARCHIVE: llvm-5.0.1-msvc2017-mtd.7z
 
 install:
-# Check git config
-- git config core.autocrlf
-# Check pip
-- python --version
-- python -m pip --version
-# Install Mako
-- python -m pip install Mako==1.0.7
-# Install pywin32 extensions, needed by SCons
-- python -m pip install pypiwin32
-# Install python wheels, necessary to install SCons via pip
-- python -m pip install wheel
-# Install SCons
-- python -m pip install scons==3.0.1
-- scons --version
-# Install flex/bison
-- set WINFLEXBISON_ARCHIVE=win_flex_bison-%WINFLEXBISON_VERSION%.zip
-- if not exist "%WINFLEXBISON_ARCHIVE%" appveyor DownloadFile "https://github.com/lexxmark/winflexbison/releases/download/v%WINFLEXBISON_VERSION%/%WINFLEXBISON_ARCHIVE%"
-- 7z x -y -owinflexbison\ "%WINFLEXBISON_ARCHIVE%" > nul
-- set Path=%CD%\winflexbison;%Path%
-- 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
+- call scripts\appveyor_msvc.bat install
 
 build_script:
-- scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.1 llvm=1
+- call scripts\appveyor_msvc.bat build_script
 
 after_build:
-- scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.1 llvm=1 check
-
+- call scripts\appveyor_msvc.bat after_build
 
 # 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_msvc.bat b/scripts/appveyor_msvc.bat
new file mode 100644 (file)
index 0000000..6a85e83
--- /dev/null
@@ -0,0 +1,38 @@
+goto %1
+
+:install
+rem Check git config
+git config core.autocrlf
+rem Check pip
+python --version
+python -m pip --version
+rem Install Mako
+python -m pip install Mako==1.0.7
+rem Install pywin32 extensions, needed by SCons
+python -m pip install pypiwin32
+rem Install python wheels, necessary to install SCons via pip
+python -m pip install wheel
+rem Install SCons
+python -m pip install scons==3.0.1
+call scons --version
+rem Install flex/bison
+set WINFLEXBISON_ARCHIVE=win_flex_bison-%WINFLEXBISON_VERSION%.zip
+if not exist "%WINFLEXBISON_ARCHIVE%" appveyor DownloadFile "https://github.com/lexxmark/winflexbison/releases/download/v%WINFLEXBISON_VERSION%/%WINFLEXBISON_ARCHIVE%"
+7z x -y -owinflexbison\ "%WINFLEXBISON_ARCHIVE%" > nul
+set Path=%CD%\winflexbison;%Path%
+win_flex --version
+win_bison --version
+rem 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
+goto :eof
+
+:build_script
+call scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.1 llvm=1
+goto :eof
+
+:after_build
+call scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.1 llvm=1 check
+goto :eof