going to try clang_sanitize with libstdc++ with g++-6 implementation
Conflicts: .travis.yml Makefile
This commit is contained in:
		
							parent
							
								
									d7029c37aa
								
							
						
					
					
						commit
						010ea126f3
					
				
					 2 changed files with 16 additions and 9 deletions
				
			
		
							
								
								
									
										22
									
								
								.travis.yml
									
										
									
									
									
								
							
							
						
						
									
										22
									
								
								.travis.yml
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -42,14 +42,20 @@ matrix:
 | 
			
		|||
      - make check TEST_PREFIX="valgrind --error-exitcode=1 --leak-check=full " TEST_PATTERN=""
 | 
			
		||||
 | 
			
		||||
  # cLang sanitizer
 | 
			
		||||
 | 
			
		||||
  #- os: linux
 | 
			
		||||
  #  env:
 | 
			
		||||
  #    - LLVM_VERSION=3.8.1
 | 
			
		||||
  #    - SPECIAL=sanitizer
 | 
			
		||||
  #  compiler: clang
 | 
			
		||||
  #  before_script:
 | 
			
		||||
  #    - make clang_sanitize
 | 
			
		||||
  # note: sadly clang's libc++ has errors when running with sanitize,
 | 
			
		||||
  # so we use clang with gcc's libstdc++ which doesn't give those error.
 | 
			
		||||
  # that's why we need to install g++-6 to get the lastest version
 | 
			
		||||
  - os: linux
 | 
			
		||||
    env:
 | 
			
		||||
      - LLVM_VERSION=3.8.1
 | 
			
		||||
      - SPECIAL=sanitizer
 | 
			
		||||
    addons:
 | 
			
		||||
      apt:
 | 
			
		||||
        sources: ['ubuntu-toolchain-r-test']
 | 
			
		||||
        packages: g++-6
 | 
			
		||||
    compiler: clang
 | 
			
		||||
    before_script:
 | 
			
		||||
      - make clang_sanitize
 | 
			
		||||
 | 
			
		||||
  # cppcheck
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										3
									
								
								Makefile
									
										
									
									
									
								
							
							
						
						
									
										3
									
								
								Makefile
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -92,8 +92,9 @@ fuzzing-stop:
 | 
			
		|||
cppcheck:
 | 
			
		||||
	cppcheck --enable=warning --inconclusive --force --std=c++11 src/json.hpp --error-exitcode=1
 | 
			
		||||
 | 
			
		||||
# run clang sanitize (we are overrding the CXXFLAGS provided by travis in order to use gcc's libstdc++)
 | 
			
		||||
clang_sanitize: clean
 | 
			
		||||
	CXX=clang++ CXXFLAGS="-g -O2 -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer" $(MAKE)
 | 
			
		||||
	CXX=clang++ CXXFLAGS="-g -O2 -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer" $(MAKE) check -C test
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
##########################################################################
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue