-
Notifications
You must be signed in to change notification settings - Fork 66
/
Copy pathmissing.sh
75 lines (72 loc) · 1.54 KB
/
missing.sh
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
#!/bin/bash
#
already=$(ls src/*.cpp | sed -e "s/src\/\(.*\).cpp$/\1/g")
skip="
ARAPEnergyType
EPS
Hit
IGL_ASSERT
LinSpaced
PI
cat
colon
cumsum
decimate_callback_types
find
get_seconds
igl_inline
list_to_matrix
matrix_to_list
min_quad_with_fixed.impl
parallel_for
pathinfo
placeholders
quadric_binary_plus_operator
redux
repdiag
repmat
rotation_matrix_from_directions
setdiff
slice
sort
sortrows
sparse
speye
sum
tinyply
unique
unique_rows
verbose
decimate_trivial_callbacks
edges
for_each
generate_default_urbg
max_size
min
min_size
collapse_edge
max
mode
main
gl
opengl/glfw/Viewer
C_STR
STR
"
# combine these into exclude
exclude=$(echo -e "$already\n$skip" | sort | uniq)
# but don't include any from exclude
# Run grep and filter out excluded files
include_igl=$(grep -hor '#include "[^"]\+"' /Users/alecjacobson/Repos/libigl/include/igl/ | sed 's/#include "\(.*\).h"/\1/')
# remove any .cpp includes
include_igl=$(echo "$include_igl" | grep -v -F ".cpp")
# remove any number of "../" from the beginning of the line
include_igl=$(echo "$include_igl" | sed -e 's#^\(\.\./\)*##')
# stray includes
include_igl=$(echo "$include_igl" | grep -v -F "#include")
tutorial_igl=$(grep -hor '#include <[^>]\+>' /Users/alecjacobson/Repos/libigl/tutorial/ | sed -n 's/#include <igl\/\(.*\).h>/\1/p')
tests_igl=$(grep -hor '#include <[^>]\+>' /Users/alecjacobson/Repos/libigl/tests/ | sed -n 's/#include <igl\/\(.*\).h>/\1/p')
# append to include_igl
all=$(echo -e "$include_igl\n$tutorial_igl\n$tests_igl")
#
echo "$all" | grep -v -F -w -f <(echo "$exclude") | sort | uniq -c | sort -n