]> granicus.if.org Git - vim/commitdiff
patch 8.0.0239: no CI with an address sanitizer v8.0.0239
authorBram Moolenaar <Bram@vim.org>
Thu, 26 Jan 2017 19:11:12 +0000 (20:11 +0100)
committerBram Moolenaar <Bram@vim.org>
Thu, 26 Jan 2017 19:11:12 +0000 (20:11 +0100)
Problem:    The address sanitizer sometimes finds errors, but it needs to be
            run manually.
Solution:   Add an environment to Travis with clang and the address sanitizer.
            (Christian Brabandt)  Also include changes only on github.

.travis.yml
src/version.c

index 543b033f62d662a20fc63fc216a278c7c28829f6..73aac5a5d2dfdc93a528ed0d5192c94140407835 100644 (file)
@@ -18,13 +18,16 @@ env:
     # Mac OSX build
   - BUILD=yes TEST=test COVERAGE=no FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
     "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    # ASAN build
+  - BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no
+    "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
 
 sudo: false
 
 git:
   depth: 1
 
-# instead of a 6*2*2 matrix (2*os + 2*compiler + 6*env),
+# instead of a 2*2*8 matrix (2*os + 2*compiler + 8*env),
 # exclude some builds on mac os x and linux
 # linux: 2*compiler + 5*env + mac: 2*compiler + 2*env
 matrix:
@@ -38,6 +41,13 @@ matrix:
     - os: osx
       env: BUILD=yes TEST=scripttests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
             "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp'"
+    - os: osx
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
+    - os: linux
+      compiler: gcc
+      env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -fsanitize=address -fno-omit-frame-pointer" FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no
+            "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'"
     - os: linux
       compiler: clang
       env: BUILD=no TEST=unittests COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=yes
@@ -65,10 +75,8 @@ addons:
       - cscope
 
 before_install:
-  - if [ "$COVERAGE" = "yes" ]; then pip install --user cpp-coveralls; fi
-    # needed for https support for coveralls
-    # building cffi only works with gcc, not with clang
-  - if [ "$COVERAGE" = "yes" ]; then CC=gcc pip install --user pyopenssl ndg-httpsclient pyasn1; fi
+  - pip install --user cpp-coveralls
+  - pip install --user requests[security]
     # Lua is not installed on Travis OSX
   - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install lua; export LUA_PREFIX=/usr/local; fi
 
index d8952160029ccfe9f89186e93d851664525e9324..36dbe3a54c6dbc459fc2c89c4bdd71580561f575 100644 (file)
@@ -764,6 +764,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    239,
 /**/
     238,
 /**/