Mercurial > vim
changeset 8242:1313d2e282dc v7.4.1414
commit https://github.com/vim/vim/commit/81275ca9ce3059148fdb65dff29f7ecdbca446fb
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Feb 24 21:02:20 2016 +0100
patch 7.4.1414
Problem: Appveyor only builds one feature set.
Solution: Build a combination of features and GUI/console. (Christian
Brabandt)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 24 Feb 2016 21:15:04 +0100 |
parents | b13453cdb797 |
children | 58edd85dcc94 |
files | appveyor.yml src/appveyor.bat src/version.c |
diffstat | 3 files changed, 67 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/appveyor.yml +++ b/appveyor.yml @@ -1,6 +1,16 @@ version: "{build}" -skip_tags: true +environment: + matrix: + - FEATURE: HUGE + - FEATURE: NORMAL +# disabled +# - FEATURE: TINY +# - FEATURE: SMALL +# - FEATURE: BIG + +matrix: + fast_finish: true before_build: - '"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 /release' @@ -9,12 +19,14 @@ before_build: - reg copy HKLM\SOFTWARE\Python\PythonCore\2.7 HKLM\SOFTWARE\Python\PythonCore\2.7-32 /s /reg:64 build_script: - - cd src - - sed -e "s/\$(LINKARGS2)/\$(LINKARGS2) | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak - - nmake -f Make_mvc2.mak CPU=AMD64 GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 PYTHON3_VER=34 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python34-x64 - - .\gvim -u NONE -c "redir @a | ver | 0put a | wq!" ver.txt - - type ver.txt + - src/appveyor.bat test_script: - - cd testdir + - cd src/testdir + # Testing with MSVC gvim - nmake -f Make_dos.mak VIMPROG=..\gvim + - nmake -f Make_dos.mak clean + # Testing with MingW console version + - nmake -f Make_dos.mak VIMPROG=..\vim + +# vim: sw=2 sts=2 et ts=2 sr
new file mode 100644 --- /dev/null +++ b/src/appveyor.bat @@ -0,0 +1,46 @@ +@echo off +:: Batch file for building/testing Vim on AppVeyor + +setlocal ENABLEDELAYEDEXPANSION +cd %APPVEYOR_BUILD_FOLDER% + +cd src +echo "Building MinGW 32bit console version" +set PATH=c:\msys64\mingw32\bin;%PATH% +mingw32-make.exe -f Make_ming.mak GUI=no OPTIMIZE=speed IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 +:: Save vim.exe before Make clean, moved back below. +copy vim.exe testdir +mingw32-make.exe -f Make_ming.mak clean + +:: Build Mingw huge version with python and channel support, or +:: with specified features without python. +echo "Building MinGW 32bit GUI version" +if "%FEATURE%" == "HUGE" ( + mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed CHANNEL=yes GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27 PYTHON3_VER=34 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python34 FEATURES=%FEATURE% || exit 1 +) ELSE ( + mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 +) +.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_ming.txt + +echo "Building MSVC 64bit console Version" +sed -e "s/\$(LINKARGS2)/\$(LINKARGS2) | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak +nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 +nmake -f Make_mvc2.mak clean + +:: build MSVC huge version with python and channel support +:: GUI needs to be last, so that testing works +echo "Building MSVC 64bit GUI Version" +if "%FEATURE%" == "HUGE" ( + nmake -f Make_mvc2.mak DIRECTX=yes CPU=AMD64 CHANNEL=yes OLE=no GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 PYTHON3_VER=34 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python34-x64 FEATURES=%FEATURE% || exit 1 +) ELSE ( + nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=yes IME=yes MBYTE=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 +) +.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt + +:: Restore vim.exe, tests will run with this. +move /Y testdir\vim.exe . +echo "version output MinGW" +type ver_ming.txt +echo "version output MVC" +type ver_msvc.txt +cd ..