]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Add CONFIG_CODE_COVERAGE=y option for gcov
authorJouni Malinen <j@w1.fi>
Sun, 24 Nov 2013 17:16:12 +0000 (19:16 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 24 Nov 2013 17:16:12 +0000 (19:16 +0200)
This can be used to measure code coverage from test scripts.

Signed-hostap: Jouni Malinen <j@w1.fi>

19 files changed:
.gitignore
hostapd/Makefile
src/ap/Makefile
src/common/Makefile
src/crypto/Makefile
src/drivers/Makefile
src/eap_common/Makefile
src/eap_peer/Makefile
src/eap_server/Makefile
src/eapol_auth/Makefile
src/eapol_supp/Makefile
src/l2_packet/Makefile
src/p2p/Makefile
src/radius/Makefile
src/rsn_supp/Makefile
src/utils/Makefile
src/wps/Makefile
wpa_supplicant/Makefile
wpa_supplicant/dbus/Makefile

index 7420b726a9ede459581d697d73f5645b24d78543..ae624c91f5066d84923adfecc9b40eee4ab07db4 100644 (file)
@@ -1,5 +1,8 @@
 *.o
 *.d
+*.gcno
+*.gcda
+*.gcov
 *.pyc
 *~
 .config
index b4704bafa9c071dc6574d44b36f3f976472d4079..ae96d35d961519faf721b1cb230243f80519bc5d 100644 (file)
@@ -105,6 +105,14 @@ OBJS += ../src/common/wpa_common.o
 OBJS += ../src/eapol_auth/eapol_auth_sm.o
 
 
+ifdef CONFIG_CODE_COVERAGE
+CFLAGS += -O0 -fprofile-arcs -ftest-coverage
+LIBS += -lgcov
+LIBS_c += -lgcov
+LIBS_h += -lgcov
+LIBS_n += -lgcov
+endif
+
 ifndef CONFIG_NO_DUMP_STATE
 # define HOSTAPD_DUMP_STATE to include SIGUSR1 handler for dumping state to
 # a file (undefine it, if you want to save in binary size)
@@ -939,6 +947,6 @@ hlr_auc_gw: $(HOBJS)
 clean:
        $(MAKE) -C ../src clean
        rm -f core *~ *.o hostapd hostapd_cli nt_password_hash hlr_auc_gw
-       rm -f *.d
+       rm -f *.d *.gcno *.gcda *.gcov
 
 -include $(OBJS:%.o=%.d)
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index a605a65cd821ea5598a4e1f5e3510b74b9aa3738..fcf958629129678f8abd9b5c8e3255dff2a3bf83 100644 (file)
@@ -1,7 +1,7 @@
 all: libcrypto.a
 
 clean:
-       rm -f *~ *.o *.d libcrypto.a
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov libcrypto.a
 
 install:
        @echo Nothing to be made.
index 07600e52c2fdecee0d73bd78f5183e9ebd180e71..5721154014ecca24bdfb19a5795e8c7047bf348a 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
        rm -f build.wpa_supplicant build.hostapd
 
 install:
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index 3651056110493cb1cb3829ce4e915e84b8d2898e..f79519b71849942b94eddaa74a37c4695519426b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.so *.d
+       rm -f *~ *.o *.so *.d *.gcno *.gcda *.gcov
 
 install:
        if ls *.so >/dev/null 2>&1; then \
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index cffba620da04f45c449cf31dfded3b58cc03ab38..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,8 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       for d in $(SUBDIRS); do make -C $$d clean; done
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index b199be8b197037c210421f4d244a061e8779d01b..b5d063dac10d6b832b7aac1ff632612fa900864c 100644 (file)
@@ -1,7 +1,7 @@
 all: libradius.a
 
 clean:
-       rm -f *~ *.o *.d libradius.a
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov libradius.a
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index b04a8a361dcb1952d50d1c3c7673b3be1b26d207..8aad813cfc8580fd4e516c76c21c5135c039657e 100644 (file)
@@ -1,7 +1,7 @@
 all: libutils.a
 
 clean:
-       rm -f *~ *.o *.d libutils.a
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov libutils.a
 
 install:
        @echo Nothing to be made.
index 9c41962fd7e164b57562bc36f6fd30ba38c1b9b0..adfd3dfd5b9be95cb02e9fbbb7bbb0d09a5c570b 100644 (file)
@@ -2,7 +2,7 @@ all:
        @echo Nothing to be made.
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
 
 install:
        @echo Nothing to be made.
index f6a46d28e680a5366f812871577f6d9bd12db769..260c0ae44a43cdaf0559ed3b4309a52f3351d6f2 100644 (file)
@@ -129,6 +129,13 @@ ifdef CONFIG_EAPOL_TEST
 CFLAGS += -Werror -DEAPOL_TEST
 endif
 
+ifdef CONFIG_CODE_COVERAGE
+CFLAGS += -O0 -fprofile-arcs -ftest-coverage
+LIBS += -lgcov
+LIBS_c += -lgcov
+LIBS_p += -lgcov
+endif
+
 ifdef CONFIG_HT_OVERRIDES
 CFLAGS += -DCONFIG_HT_OVERRIDES
 endif
@@ -1672,7 +1679,8 @@ fips:
 clean:
        $(MAKE) -C ../src clean
        $(MAKE) -C dbus clean
-       rm -f core *~ *.o *.d eap_*.so $(ALL) $(WINALL) eapol_test preauth_test
+       rm -f core *~ *.o *.d *.gcno *.gcda *.gcov
+       rm -f eap_*.so $(ALL) $(WINALL) eapol_test preauth_test
        rm -f wpa_priv
        rm -f nfc_pw_token
 
index d64c65ca2f6c2c503de30b1ca91e463922fed1fe..f355ebef51d237e71ece55cb02d13ac70fcc7cdc 100644 (file)
@@ -1,7 +1,7 @@
 all: libwpadbus.a
 
 clean:
-       rm -f *~ *.o *.d
+       rm -f *~ *.o *.d *.gcno *.gcda *.gcov
        rm -f libwpadbus.a
 
 install: