-
Notifications
You must be signed in to change notification settings - Fork 23
/
.lgtm.yml
89 lines (84 loc) · 2.92 KB
/
.lgtm.yml
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# This config file facilitates automated static analysis on lgtm.com.
path_classifiers:
library:
- "src/imebra*"
- "src/imgui*"
- "src/implot*"
queries:
- exclude: cpp/fixme-comment
- exclude: cpp/empty-block
- exclude: cpp/large-parameter
extraction:
cpp:
prepare:
packages:
# Explicitly install known packages.
- "git"
- "cmake"
- "make"
- "g++"
- "vim"
- "ncurses-term"
- "gdb"
- "rsync"
- "wget"
- "ca-certificates"
- "libgsl-dev"
- "libeigen3-dev"
- "libboost-dev"
- "libboost-filesystem-dev"
- "libboost-iostreams-dev"
- "libboost-program-options-dev"
- "libboost-thread-dev"
- "libz-dev"
- "libsfml-dev"
- "libjansson-dev"
- "libpqxx-dev"
- "libcgal-dev"
- "libnlopt-dev"
- "libnlopt-cxx0"
- "libasio-dev"
- "freeglut3-dev"
- "libxi-dev"
- "libxmu-dev"
- "libthrift-dev"
= "thrift-compiler"
- "xorg-dev"
- "xserver-xorg-dev"
- "mesa-common-dev"
after_prepare:
# Create an accessible installation root directory.
- "cd $LGTM_WORKSPACE"
- "mkdir -pv placeholder_root/{include,lib,bin,share}"
# Ygor.
- "cd $LGTM_WORKSPACE"
- "mkdir -pv ygor"
- "cd ygor"
- "git clone https://github.com/hdclark/ygor ."
- "CXXFLAGS=-I$LGTM_WORKSPACE/placeholder_root/include LDFLAGS=-L$LGTM_WORKSPACE/placeholder_root/lib ./compile_and_install.sh -u -i $LGTM_WORKSPACE/placeholder_root -b build"
# Explicator.
- "cd $LGTM_WORKSPACE"
- "mkdir -pv explicator"
- "cd explicator"
- "git clone https://github.com/hdclark/explicator ."
- "CXXFLAGS=-I$LGTM_WORKSPACE/placeholder_root/include LDFLAGS=-L$LGTM_WORKSPACE/placeholder_root/lib ./compile_and_install.sh -u -i $LGTM_WORKSPACE/placeholder_root -b build"
# YgorClustering.
- "cd $LGTM_WORKSPACE"
- "mkdir -pv ygorclustering"
- "cd ygorclustering"
- "git clone https://github.com/hdclark/ygorclustering ."
- "CXXFLAGS=-I$LGTM_WORKSPACE/placeholder_root/include LDFLAGS=-L$LGTM_WORKSPACE/placeholder_root/lib ./compile_and_install.sh -u -i $LGTM_WORKSPACE/placeholder_root -b build"
# Wt.
- "cd $LGTM_WORKSPACE"
- "mkdir -pv wt"
- "cd wt"
- "git clone https://github.com/emweb/wt.git ."
- "mkdir -p build && cd build"
- "cmake -DCMAKE_INSTALL_PREFIX='' ../"
- "make -j 2 VERBOSE=1 DESTDIR=$LGTM_WORKSPACE/placeholder_root install"
index:
# Notes:
# - built in-repo so analysis tooling picks up the source files.
# - have to remove .git to permit in-repo builds.
# - not actually installed, since /etc/ is not accessible in lgtm environment.
build_command: "rm -rf .git && CXXFLAGS=-I$LGTM_WORKSPACE/placeholder_root/include LDFLAGS=-L$LGTM_WORKSPACE/placeholder_root/lib ./compile_and_install.sh -n -u -i $LGTM_WORKSPACE/placeholder_root -b $LGTM_SRC"