forked from arbelt/mu
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.am
86 lines (73 loc) · 2.37 KB
/
Makefile.am
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
## Copyright (C) 2008-2013 Dirk-Jan C. Binnema <[email protected]>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 3 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software Foundation,
## Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
include $(top_srcdir)/gtest.mk
if BUILD_GUILE
guile=guile
else
guile=
endif
if BUILD_MU4E
mu4e=mu4e
else
mu4e=
endif
SUBDIRS=m4 man lib $(guile) mu $(mu4e) contrib toys
ACLOCAL_AMFLAGS=-I m4
# so we can say 'make test'
check: test cleanupnote
cleanupnote:
@echo -e "\nNote: you can remove the mu-test-<uid> dir in your tempdir"
@echo "after 'make check' has finished."
tags:
gtags
# this warns about function that have a cyclomatic complexity of > 10,
# which is a sign that it needs some refactoring. requires the pmccabe
# tool. If all is fine, it outputs nothing
cc10:
@$(PMCCABE) `find . -name '*.c' -o -name '*.cc'` \
| grep -v mu-str-normalize.c \
| grep -v mu_str_subject_normalize \
| grep -v tests \
| sort -nr | awk '($$1 > 10)'
# this warns about functions that are over 35 non-comment lines long, which is a
# sign that they need some refactoring. requires the pmccabe tool. if
# all is fine, it outputs nothing
# note, some functions are exempted from this rule.
line35:
@$(PMCCABE) -c `find . -name '*.c' -o -name '*.cc'` \
| grep -v mu-str-normalize.c \
| grep -v mu_str_subject_normalize \
| grep -v config_options_group_find \
| grep -v SCM_DEFINE \
| grep -v tests \
| awk '($$5 > 35)'
# get all todo/fixme messages
fixme:
@grep -i 'FIXME\|TODO' `find src -type f`
# check whether we can run make distcheck from the repo version
gitcheck:
cd `mktemp -d`; \
git clone git://github.com/djcb/mu.git ; \
cd mu; \
autoreconf -i ; \
./configure ; \
make distcheck
EXTRA_DIST= \
TODO \
HACKING \
gtest.mk \
NEWS \
autogen.sh