forked from wichtounet/etl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sonar-project.properties
69 lines (56 loc) · 2.54 KB
/
sonar-project.properties
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
sonar.projectKey=etl
sonar.projectName=etl
sonar.projectVersion=1.3.0
sonar.sourceEncoding=UTF-8
sonar.sources=include,test,workbench,benchmark
sonar.language=c++
# Add include directories to sonar-cxx
sonar.cxx.includeDirectories=include,lib/include,Catch/include,test/include,cpm/include
# Exclude some things from coverage
sonar.coverage.exclusions=test/src/*,test/include/*,workbench/src/*,benchmark/src/*,include/etl/eval_selectors.hpp,include/etl/no_vectorization.hpp,include/etl/optimizer.hpp
# optimizer.hpp because it's nearly impossible to cover and very experimental
# Remove from Duplication
sonar.cpd.exclusions=test/src/*,test/include/*,workbench/src/*,benchmark/src/*,include/etl/impl/pooling.hpp,include/etl/impl/vec/conv.hpp
# pooling.hpp is removed because of false positives because of lack of template handling
# conv.hpp is removed because duplication is done on purpose for maximum performance
# Declare list of ignore filters
sonar.issue.ignore.multicriteria=notest,nobench,noworkbench,noapibench,noapitest
# Ignore all issues on test sources
sonar.issue.ignore.multicriteria.notest.ruleKey=*
sonar.issue.ignore.multicriteria.notest.resourceKey=test/src/*
# Ignore all issues on benchmark sources
sonar.issue.ignore.multicriteria.nobench.ruleKey=*
sonar.issue.ignore.multicriteria.nobench.resourceKey=benchmark/src/*
# Ignore all issues on workbench sources
sonar.issue.ignore.multicriteria.noworkbench.ruleKey=*
sonar.issue.ignore.multicriteria.noworkbench.resourceKey=workbench/src/*
# Ignore all undocumented API issues on benchmark headers
sonar.issue.ignore.multicriteria.noapibench.ruleKey=cxx:UndocumentedApi
sonar.issue.ignore.multicriteria.noapibench.resourceKey=benchmark/include/*
# Ignore all undocumented API issues on test headers
sonar.issue.ignore.multicriteria.noapitest.ruleKey=cxx:UndocumentedApi
sonar.issue.ignore.multicriteria.noapitest.resourceKey=test/include/*
# Reports file for sonar-cxx
sonar.cxx.cppcheck.reportPath=cppcheck_report.xml
sonar.cxx.coverage.reportPath=coverage_report.xml
sonar.cxx.xunit.reportPath=catch_report.xml
# Activate workarounds in source code for sonar-cxx
# And let Sonar see much more code!
sonar.cxx.defines=SONAR_ANALYSIS true \n\
ETL_MANUAL_SELECT true \n\
ETL_CUDA true \n\
ETL_CUFFT_MODE true \n\
ETL_CUBLAS_MODE true \n\
ETL_CUDNN_MODE true \n\
ETL_BLAS_MODE true \n\
ETL_MKL_MODE true \n\
__SSE3__ true \n\
__AVX__ true \n\
__AVX2__ true \n\
__AVX512F__ true \n\
SERIAL_SECTION \n\
PARALLEL_SECTION \n\
SELECTED_SECTION \n\
ETL_VECTORIZE_IMPL true \n\
__attribute__(...) \n\
ETL_VECTORIZE_EXPR true