|
1 | 1 | language: c |
2 | | -dist: trusty |
3 | 2 |
|
4 | | -os: |
5 | | - - osx |
| 3 | +os: osx |
6 | 4 |
|
7 | | -osx_image: |
8 | | - - xcode11.2 |
9 | | - - xcode10.3 |
10 | | - - xcode7.3 |
11 | | - - xcode9.4 |
12 | | - |
13 | | -compiler: |
14 | | - - clang |
15 | | - |
16 | | -addons: |
17 | | - homebrew: |
18 | | - packages: |
19 | | - - lua |
20 | | - - ruby |
21 | | - - python3 |
22 | | - update: true |
| 5 | +compiler: clang |
23 | 6 |
|
24 | 7 | env: |
25 | | - - MACOSX_DEPLOYMENT_TARGET=10.9 |
26 | | - VERSIONER_PERL_VERSION=5.18 |
27 | | - VERSIONER_PYTHON_VERSION=2.7 |
28 | | - vi_cv_path_python=/usr/bin/python |
29 | | - vi_cv_path_python3=/usr/local/bin/python3 |
30 | | - vi_cv_path_plain_lua=/usr/local/bin/lua |
31 | | - vi_cv_dll_name_perl=/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/libperl.dylib |
32 | | - vi_cv_dll_name_python=/System/Library/Frameworks/Python.framework/Versions/2.7/Python |
33 | | - vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.7/Python |
34 | | - VIMCMD=src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim |
35 | | - "CONFOPT='--with-features=huge --enable-multibyte --enable-terminal --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --with-ruby-command=/usr/local/opt/ruby/bin/ruby --enable-luainterp=dynamic --with-lua-prefix=/usr/local --enable-gui=macvim'" |
36 | | - DYLD_LIBRARY_PATH=/usr/local/opt/ruby/lib:$DYLD_LIBRARY_PATH # Ruby is keg-only in Homebrew, so need to manually link in the path so Vim will know where to look for the binaries. |
| 8 | + global: |
| 9 | + - MACOSX_DEPLOYMENT_TARGET=10.9 |
| 10 | + VERSIONER_PERL_VERSION=5.18 |
| 11 | + VERSIONER_PYTHON_VERSION=2.7 |
| 12 | + vi_cv_path_python=/usr/bin/python |
| 13 | + vi_cv_path_python3=/usr/local/bin/python3 |
| 14 | + vi_cv_path_plain_lua=/usr/local/bin/lua |
| 15 | + vi_cv_path_ruby=/usr/local/opt/ruby/bin/ruby |
| 16 | + vi_cv_dll_name_perl=/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/libperl.dylib |
| 17 | + vi_cv_dll_name_python=/System/Library/Frameworks/Python.framework/Versions/2.7/Python |
| 18 | + vi_cv_dll_name_python3=/usr/local/Frameworks/Python.framework/Versions/3.7/Python |
| 19 | + vi_cv_dll_name_ruby=/usr/local/opt/ruby/lib/libruby.dylib |
| 20 | + VIMCMD=src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim |
| 21 | + "CONFOPT='--with-features=huge --enable-multibyte --enable-terminal --enable-netbeans --with-tlib=ncurses --enable-cscope --enable-gui=macvim'" |
| 22 | + |
| 23 | +anchors: |
| 24 | + - &homebrew |
| 25 | + addons: |
| 26 | + homebrew: |
| 27 | + packages: |
| 28 | + - lua |
| 29 | + - python |
| 30 | + - ruby |
| 31 | + update: true |
| 32 | + - &caches |
| 33 | + cache: |
| 34 | + directories: |
| 35 | + - /usr/local/Homebrew/Library/Homebrew/vendor/ |
| 36 | + - /usr/local/Homebrew/Library/Taps/ |
| 37 | + - ${TRAVIS_BUILD_DIR}/src/MacVim/build/Release/MacVim.app/ |
| 38 | + before_cache: |
| 39 | + - brew cleanup |
37 | 40 |
|
38 | 41 | sudo: false |
39 | 42 |
|
40 | 43 | script: |
41 | | - - set -e |
42 | | - - if [ "$TRAVIS_OSX_IMAGE" = "xcode8.3" ]; then brew reinstall --build-from-source ruby; fi |
43 | | - - echo "Configuring MacVim" && echo -en "travis_fold:start:config\\r" |
| 44 | + - set -o errexit |
| 45 | + - echo -e "\\033[33;1mConfiguring MacVim\\033[0m" && echo -en "travis_fold:start:configure\\r\\033[0K" |
44 | 46 | - NPROC=$(getconf _NPROCESSORS_ONLN) |
45 | | - - ./configure $CONFOPT --enable-fail-if-missing |
| 47 | + - make distclean |
| 48 | + - ./configure ${CONFOPT} ${LANGOPT} --enable-fail-if-missing |
| 49 | + # Ruby is keg-only in Homebrew, so need to manually link in the path so Vim will know where to look for the binaries. |
| 50 | + - perl -p -i -e "s#(?<=-DDYNAMIC_RUBY_DLL=\\\\\").*?(?=\\\\\")#${vi_cv_dll_name_ruby}#" src/auto/config.mk |
46 | 51 | - cat src/auto/config.mk |
47 | 52 | - cat src/auto/config.h |
48 | | - - grep -q -- "-DDYNAMIC_PERL_DLL=\\\\\"$vi_cv_dll_name_perl\\\\\"" src/auto/config.mk |
49 | | - - grep -q -- "-DDYNAMIC_PYTHON_DLL=\\\\\"$vi_cv_dll_name_python\\\\\"" src/auto/config.mk |
50 | | - - grep -q -- "-DDYNAMIC_PYTHON3_DLL=\\\\\"$vi_cv_dll_name_python3\\\\\"" src/auto/config.mk |
51 | | - - echo -en "travis_fold:end:config\\r" |
52 | | - - echo "Building MacVim" && echo -en "travis_fold:start:build\\r" |
53 | | - - make -j$NPROC |
54 | | - - echo -en "travis_fold:end:build\\r" |
55 | | - - echo "Testing MacVim" && echo -en "travis_fold:start:test\\r" |
56 | | - - rm -f result; $VIMCMD -g -f -c "redir>result" -c "lua print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result |
57 | | - - rm -f result; $VIMCMD -g -f -c "redir>result" -c "perl VIM::Msg(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result |
58 | | - - rm -f result; $VIMCMD -g -f -c "redir>result" -c "py import sys; print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result |
59 | | - - rm -f result; $VIMCMD -g -f -c "redir>result" -c "py3 import sys; print(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result |
60 | | - - rm -f result; $VIMCMD -g -f -c "redir>result" -c "ruby puts(\"Test\")" -c "redir END" -c q; cat result; echo; grep -q -w Test result |
61 | | - - rm -f result; |
| 53 | + - | |
| 54 | + if [[ -n "${LANGOPT}" ]]; then |
| 55 | + grep -q -- "-DDYNAMIC_PERL_DLL=\\\\\"${vi_cv_dll_name_perl}\\\\\"" src/auto/config.mk |
| 56 | + grep -q -- "-DDYNAMIC_PYTHON_DLL=\\\\\"${vi_cv_dll_name_python}\\\\\"" src/auto/config.mk |
| 57 | + grep -q -- "-DDYNAMIC_PYTHON3_DLL=\\\\\"${vi_cv_dll_name_python3}\\\\\"" src/auto/config.mk |
| 58 | + grep -q -- "-DDYNAMIC_RUBY_DLL=\\\\\"${vi_cv_dll_name_ruby}\\\\\"" src/auto/config.mk |
| 59 | + fi |
| 60 | + - echo -en "travis_fold:end:configure\\r\\033[0K" |
| 61 | + - echo -e "\\033[33;1mBuilding MacVim\\033[0m" && echo -en "travis_fold:start:build\\r\\033[0K" |
| 62 | + - make -j${NPROC} |
| 63 | + - echo -en "travis_fold:end:build\\r\\033[0K" |
| 64 | + - set +o errexit |
| 65 | + - echo -e "\\033[33;1mTesting MacVim\\033[0m" && echo -en "travis_fold:start:test\\r\\033[0K" |
| 66 | + - | |
| 67 | + macvim_excmd() { |
| 68 | + if [[ -n "${LANGOPT}" ]]; then |
| 69 | + ${VIMCMD} -u NONE -i NONE -g -f -X -V1 -es "$@" -c 'echo ""' -c quit 2>&1 |
| 70 | + fi |
| 71 | + } |
| 72 | + - macvim_excmd -c 'lua print("Test")' |
| 73 | + - macvim_excmd -c 'perl VIM::Msg("Test")' |
| 74 | + - macvim_excmd -c 'py import sys; print("Test")' |
| 75 | + - macvim_excmd -c 'py3 import sys; print("Test")' |
| 76 | + - macvim_excmd -c 'ruby puts("Test")' |
62 | 77 | - make test |
63 | | - - echo -en "travis_fold:end:test\\r" |
64 | | - - echo "Testing MacVim (GUI)" && echo -en "travis_fold:start:test_gui\\r" |
| 78 | + - echo -en "travis_fold:end:test\\r\\033[0K" |
| 79 | + - echo -e "\\033[33;1mTesting MacVim (GUI)\\033[0m" && echo -en "travis_fold:start:test_gui\\r\\033[0K" |
65 | 80 | - make -C src/testdir clean |
66 | 81 | - make -C src testgui |
67 | | - - echo -en "travis_fold:end:test_gui\\r" |
| 82 | + - echo -en "travis_fold:end:test_gui\\r\\033[0K" |
68 | 83 |
|
69 | | -before_deploy: |
70 | | - - make -C src macvim-dmg |
71 | | -deploy: |
72 | | - provider: releases |
73 | | - api_key: |
74 | | - secure: ukjm+qbuNiTli25Ut2BoVpeBCV+JyVbRUwPqjTKrJxfHz34bpr38eSbryIB8BgKBItgzE876Yoqa3CD0k8mqGClis1+98MtrYFpAkO97juJmHpcZZZB7ausbHGf7Z7VdMT4jBjjVGcBeaNj0mio0hwem0/S4WyJK3M/3Fym995CltCUtJKRfMvRiGkWZqUs8K7EZf53DFR6CXUn38rq/3B88SeK51OZuCkMsiDWLGYCdayH19vJfFrTF8MYMQYDYxz16Q/Kf21PVhwia7HEhOzqnXS8RXS+vLkZw8mzIxowX+w6NT90q7Sj0ENdR7YaS27QPfDdhZEnOgpgqj+za63lpiyIdRcgSBkGxNYrM6B5KhiwC1VocBxCBdCxT5WXlx9rA9+k4CASdsxAW/MtQOK6PRMfZEnAB+ShFvshM2H/iE5Jch+o/SIjCXhdkeASD5qov2x6eXcsEVu8PIxvEUptCpHeqJTN5/26nfKsvOdrsqbwJbDluwISOKfEPhohb8Hn7JqOJNTS2aJr3jfvU+egE1NS0eLqKPXecu7MOOsOq1CQL6WxblphG2JCCmAOuNMYrJx9+w28ekMDRDAbI9r5nWcPLZtBqjFUyuBXXM7UknMar0FZ2fd7YTi/Gki3n56UN0lKaSAKaJB9EXlneDSKp/1ogsETr9/b7jz0s6lI= |
75 | | - file: src/MacVim/build/Release/MacVim.dmg |
76 | | - skip_cleanup: true |
77 | | - draft: true |
78 | | - on: |
79 | | - condition: $TRAVIS_OSX_IMAGE = xcode11.2 |
80 | | - all_branches: true |
81 | | - tags: true |
82 | | - repo: macvim-dev/macvim |
| 84 | +jobs: |
| 85 | + include: |
| 86 | + - osx_image: xcode11.2 |
| 87 | + env: "LANGOPT='--enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --enable-luainterp=dynamic --with-lua-prefix=/usr/local'" |
| 88 | + <<: *homebrew |
| 89 | + <<: *caches |
| 90 | + - osx_image: xcode10.3 |
| 91 | + - osx_image: xcode9.4 |
| 92 | + - osx_image: xcode7.3 |
| 93 | + - stage: deploy |
| 94 | + osx_image: xcode11.2 |
| 95 | + <<: *caches |
| 96 | + script: skip |
| 97 | + before_deploy: |
| 98 | + - make -C src macvim-dmg |
| 99 | + deploy: |
| 100 | + provider: releases |
| 101 | + api_key: |
| 102 | + secure: ukjm+qbuNiTli25Ut2BoVpeBCV+JyVbRUwPqjTKrJxfHz34bpr38eSbryIB8BgKBItgzE876Yoqa3CD0k8mqGClis1+98MtrYFpAkO97juJmHpcZZZB7ausbHGf7Z7VdMT4jBjjVGcBeaNj0mio0hwem0/S4WyJK3M/3Fym995CltCUtJKRfMvRiGkWZqUs8K7EZf53DFR6CXUn38rq/3B88SeK51OZuCkMsiDWLGYCdayH19vJfFrTF8MYMQYDYxz16Q/Kf21PVhwia7HEhOzqnXS8RXS+vLkZw8mzIxowX+w6NT90q7Sj0ENdR7YaS27QPfDdhZEnOgpgqj+za63lpiyIdRcgSBkGxNYrM6B5KhiwC1VocBxCBdCxT5WXlx9rA9+k4CASdsxAW/MtQOK6PRMfZEnAB+ShFvshM2H/iE5Jch+o/SIjCXhdkeASD5qov2x6eXcsEVu8PIxvEUptCpHeqJTN5/26nfKsvOdrsqbwJbDluwISOKfEPhohb8Hn7JqOJNTS2aJr3jfvU+egE1NS0eLqKPXecu7MOOsOq1CQL6WxblphG2JCCmAOuNMYrJx9+w28ekMDRDAbI9r5nWcPLZtBqjFUyuBXXM7UknMar0FZ2fd7YTi/Gki3n56UN0lKaSAKaJB9EXlneDSKp/1ogsETr9/b7jz0s6lI= |
| 103 | + file: src/MacVim/build/Release/MacVim.dmg |
| 104 | + skip_cleanup: true |
| 105 | + draft: true |
| 106 | + on: |
| 107 | + all_branches: true |
| 108 | + tags: true |
| 109 | + repo: macvim-dev/macvim |
83 | 110 |
|
84 | 111 | # vim:set sts=2 sw=2 tw=0 et: |
0 commit comments