aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Alex Chernyakhovsky <achernya@google.com>2022-02-06 19:34:58 -0500
committerGravatar Alex Chernyakhovsky <achernya@mit.edu>2022-05-30 19:38:10 -0400
commit70a02d1e8384050770bd028a28fd48a4b1770ad0 (patch)
tree2ae9e64c5d9351aeaca7c50a128b5c82ab355cb9 /src
parentdbe419d0e069df3fedc212d456449f64d0280c76 (diff)
Add support for generating coverage reports
This change adds autoconf/automake support for building all of mosh with gcov, and generates an lcov html report. This allows seeing which parts ofthe source tree have good test coverage, and which can be shored up. Eventually, it would be good to hook this up to Github Actions to be generated automatically.
Diffstat (limited to 'src')
-rw-r--r--src/crypto/Makefile.am2
-rw-r--r--src/frontend/Makefile.am4
-rw-r--r--src/network/Makefile.am2
-rw-r--r--src/protobufs/Makefile.am2
-rw-r--r--src/statesync/Makefile.am2
-rw-r--r--src/terminal/Makefile.am2
-rw-r--r--src/tests/Makefile.am4
-rw-r--r--src/util/Makefile.am2
8 files changed, 10 insertions, 10 deletions
diff --git a/src/crypto/Makefile.am b/src/crypto/Makefile.am
index d01008e..57ef646 100644
--- a/src/crypto/Makefile.am
+++ b/src/crypto/Makefile.am
@@ -1,5 +1,5 @@
AM_CPPFLAGS = -I$(srcdir)/../util $(CRYPTO_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
noinst_LIBRARIES = libmoshcrypto.a
diff --git a/src/frontend/Makefile.am b/src/frontend/Makefile.am
index a9d4188..1aa83fd 100644
--- a/src/frontend/Makefile.am
+++ b/src/frontend/Makefile.am
@@ -1,6 +1,6 @@
AM_CPPFLAGS = -I$(srcdir)/../statesync -I$(srcdir)/../terminal -I$(srcdir)/../network -I$(srcdir)/../crypto -I../protobufs -I$(srcdir)/../util $(TINFO_CFLAGS) $(protobuf_CFLAGS) $(CRYPTO_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
-AM_LDFLAGS = $(HARDEN_LDFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
+AM_LDFLAGS = $(HARDEN_LDFLAGS) $(CODE_COVERAGE_LIBS)
LDADD = ../crypto/libmoshcrypto.a ../network/libmoshnetwork.a ../statesync/libmoshstatesync.a ../terminal/libmoshterminal.a ../util/libmoshutil.a ../protobufs/libmoshprotos.a -lm $(TINFO_LIBS) $(protobuf_LIBS) $(CRYPTO_LIBS)
mosh_server_LDADD = $(LDADD)
diff --git a/src/network/Makefile.am b/src/network/Makefile.am
index 74bca89..021d241 100644
--- a/src/network/Makefile.am
+++ b/src/network/Makefile.am
@@ -1,5 +1,5 @@
AM_CPPFLAGS = -I$(srcdir)/../util -I$(srcdir)/../crypto -I../protobufs $(protobuf_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
noinst_LIBRARIES = libmoshnetwork.a
diff --git a/src/protobufs/Makefile.am b/src/protobufs/Makefile.am
index 13fdce8..e42ae65 100644
--- a/src/protobufs/Makefile.am
+++ b/src/protobufs/Makefile.am
@@ -1,7 +1,7 @@
source = userinput.proto hostinput.proto transportinstruction.proto
AM_CPPFLAGS = $(protobuf_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) -Wno-error
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS) -Wno-error
SUFFIXES = .proto .pb.cc
diff --git a/src/statesync/Makefile.am b/src/statesync/Makefile.am
index 470ece2..edf1b9e 100644
--- a/src/statesync/Makefile.am
+++ b/src/statesync/Makefile.am
@@ -1,5 +1,5 @@
AM_CPPFLAGS = -I$(srcdir)/../util -I$(srcdir)/../terminal -I../protobufs $(protobuf_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
noinst_LIBRARIES = libmoshstatesync.a
diff --git a/src/terminal/Makefile.am b/src/terminal/Makefile.am
index 36e165d..2b343c7 100644
--- a/src/terminal/Makefile.am
+++ b/src/terminal/Makefile.am
@@ -1,5 +1,5 @@
AM_CPPFLAGS = -I$(srcdir)/../util $(TINFO_CFLAGS)
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
noinst_LIBRARIES = libmoshterminal.a
diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index 4863af6..a52f800 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -7,8 +7,8 @@ EXTRA_DIST = \
$(displaytests) \
emulation-attributes.test
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
-AM_LDFLAGS = $(HARDEN_LDFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
+AM_LDFLAGS = $(HARDEN_LDFLAGS) $(CODE_COVERAGE_LIBS)
displaytests = \
e2e-success.test \
diff --git a/src/util/Makefile.am b/src/util/Makefile.am
index 1eaf684..d189d49 100644
--- a/src/util/Makefile.am
+++ b/src/util/Makefile.am
@@ -1,4 +1,4 @@
-AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS)
+AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(PICKY_CXXFLAGS) $(HARDEN_CFLAGS) $(MISC_CXXFLAGS) $(CODE_COVERAGE_CXXFLAGS)
noinst_LIBRARIES = libmoshutil.a