Successfully reported this slideshow.

Let's use AppVeyor

0

Share

Upcoming SlideShare
How to write patches for Vim
How to write patches for Vim
Loading in …3
×
1 of 12
1 of 12

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Let's use AppVeyor

  1. 1. 1 Let's use AppVeyor – Introduction to CI for Windows – VimConf 2015 2015-11-21 K.Takata
  2. 2. 2 Profile ● Name: K.Takata ● Twitter: @k_takata ● GitHub: k-takata ● Bitbucket: k_takata ● Web: http://homepage3.nifty.com/k-takata/ ● Maintainer of Onigmo (The regex engine of Ruby 2.0 and later) ● Author of bregonig.dll (Regex DLL used by Sakura Editor, etc.) ● About 130 patches was merged into Vim in three years (since 7.3.668). K.T Now on sale!
  3. 3. 3 What is AppVeyor? ● Most of you may have use CI. – Travis CI is one of the most popular CI service. ● Supports Linux and Mac OSX, but does not support Windows.
  4. 4. 4 Installed Software ● OS: Windows Server 2012 R2 (x64) ● Visual Studio: 2008, 2010, 2012, 2013, 2015 ● Windows SDK: 7.0, 7.1, 8.0, 8.1, WDK 7.1.0 ● Languages: Go, Java, Ruby, Python, etc. ● GCC: MinGW, Cygwin, MSYS2 (MinGW-w64) ● Tools: 7-Zip, Git, appveyor command, etc. See: http://www.appveyor.com/docs/installed-software
  5. 5. 5 Case 1: Vim ● The official repository of Vim was moved to GitHub this summer. https://github.com/vim/vim ● AppVeyor is enabled since Vim 7.4.900. ● Based on vim-jp/vim-ci – Written by @cd01, @crazymaster and @k-takata
  6. 6. 6 Case 1: Vim (contd.) ● VC10: build and test ● MinGW: N/A ● MSYS2: N/A ● Cygwin: N/A Contribution is welcome. (maybe) Vim uses the following compiler on AppVeyor:
  7. 7. 7 Case 2: vimproc ● https://github.com/Shougo/vimproc.vim AppVeyor support is written by @thinca and @k-takata ● VC10 32/64-bit: build, test and deploy – When a tag is pushed, DLL is automatically released. – vim-themis is used for testing. ● MinGW 32-bit: build and test ● MSYS2 64-bit: build and test ● Cygwin: build only
  8. 8. 8 Case 3: universal-ctags ● Fork of exuberant-ctags. https://github.com/universal-ctags/ctags ● VC10 (msbuild): build only ● VC10 32/64-bit (nmake): build only ● MinGW 32-bit: build only ● MSYS2 64-bit: build (using autotools) and test ● Cygwin: build and test
  9. 9. 9 Problems (1) ● ./configure fails on Cygwin and MSYS2
  10. 10. 10 Problem (1) (contd.) ● Maybe caused by redirection system on AppVeyor. ● Workaround: just comment out the line E.g. > bash -lc "autoreconf -vfi" > perl -i".bak" -pe "s/^test -n ".DJDIR"/#$&/" configure > bash -lc "./configure --enable-iconv && make"
  11. 11. 11 Problem (2) ● Vim on Cygwin/MSYS2 doesn't work at all. No error messages! No outputs! ● Currently, NO workaround. Please HELP!!
  12. 12. 12 Enjoy Vimming!

×