File: Makefile.am

package info (click to toggle)
wget2 1.99.1-2
  • links: PTS, VCS
  • area: main
  • in suites: buster, sid
  • size: 13,468 kB
  • sloc: ansic: 88,607; sh: 10,241; makefile: 501; xml: 182; sed: 16
file content (73 lines) | stat: -rw-r--r-- 2,890 bytes parent folder | download
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
# got some hints from https://gitorious.org/openismus-playground/examplelib/source

SUBDIRS = lib include libwget examples src

if HAVE_PO
SUBDIRS += po
endif

if WITH_DOCS
SUBDIRS += docs
endif

SUBDIRS += fuzz unit-tests

if WITH_MICROHTTPD
SUBDIRS += tests
endif

ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}

## Install the generated pkg-config file (.pc) into the expected location for
## architecture-dependent package configuration information. Occasionally,
## pkg-config files are also used for architecture-independent data packages,
## in which case the correct install location would be $(datadir)/pkgconfig.
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libwget.pc

EXTRA_DIST = cfg.mk build-aux/config.rpath m4/gnulib-cache.m4 README.md contrib/check_options

dist-hook: gen-ChangeLog

.PHONY: gen-ChangeLog check-valgrind

gen-ChangeLog:
	$(AM_V_GEN)if test -d .git; then \
	  git log --no-merges --date=short \
	    --pretty='format:%ad %an <%ae>%w(0,0,5)%+B' | sed '/^[1-9].*/G' \
	    > $(distdir)/ChangeLog; \
	fi

check-valgrind:
	TESTS_ENVIRONMENT="VALGRIND_TESTS=1" $(MAKE) check

clean-lcov:
	rm -rf wget2.info */*.gc?? */.libs/*.gc?? lcov/
	lcov --zerocounters --directory src/ --directory libwget/

LCOV_INFO=wget2.info
check-coverage: clean clean-lcov
	$(MAKE) CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage"
	lcov --capture --initial --directory src/ --directory libwget/.libs --output-file $(LCOV_INFO)
	$(MAKE) CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage" VALGRIND_TESTS=0 check
	lcov --capture --directory src/ --directory libwget/.libs --output-file $(LCOV_INFO)
	lcov --remove $(LCOV_INFO) '*/test_linking.c' '*/css_tokenizer.lex' -o $(LCOV_INFO)
	genhtml --prefix . --ignore-errors source $(LCOV_INFO) --legend --title "Wget2" --output-directory=lcov
	@echo
	@echo "You can now view the coverage report with 'xdg-open lcov/index.html'"

fuzz-coverage: clean clean-lcov
	$(MAKE) -C lib
	$(MAKE) -C libwget CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage"
	$(MAKE) -C src CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage"
	$(MAKE) -C fuzz check CFLAGS="$(CFLAGS) --coverage" LDFLAGS="$(LDFLAGS) --coverage"
	lcov --capture --initial --directory libwget/.libs --directory fuzz --directory src --output-file $(LCOV_INFO)
	lcov --capture --directory libwget/.libs --directory fuzz --directory src --output-file $(LCOV_INFO)
	lcov --remove $(LCOV_INFO) '*/test_linking.c' '*/css_tokenizer.lex' -o $(LCOV_INFO)
	genhtml --prefix . --ignore-errors source $(LCOV_INFO) --legend --title "Wget2-fuzz" --output-directory=lcov
	@echo
	@echo "You can now view the coverage report with 'xdg-open lcov/index.html'"

check-local:
	$(AM_V_at)test -e .git && $(MAKE) -s syntax-check >/dev/null || :
	$(AM_V_at)test -e .git && $(srcdir)/contrib/check_options $(srcdir)/docs/wget2.md $(builddir)/src/wget2$(EXEEXT) || :