| OLD | NEW |
| (Empty) |
| 1 # | |
| 2 # Makefile for LCOV | |
| 3 # | |
| 4 # Make targets: | |
| 5 # - install: install LCOV tools and man pages on the system | |
| 6 # - uninstall: remove tools and man pages from the system | |
| 7 # - dist: create files required for distribution, i.e. the lcov.tar.gz | |
| 8 # and the lcov.rpm file. Just make sure to adjust the VERSION | |
| 9 # and RELEASE variables below - both version and date strings | |
| 10 # will be updated in all necessary files. | |
| 11 # - clean: remove all generated files | |
| 12 # | |
| 13 | |
| 14 VERSION := 1.9 | |
| 15 RELEASE := 1 | |
| 16 | |
| 17 CFG_DIR := $(PREFIX)/etc | |
| 18 BIN_DIR := $(PREFIX)/usr/bin | |
| 19 MAN_DIR := $(PREFIX)/usr/share/man | |
| 20 TMP_DIR := /tmp/lcov-tmp.$(shell echo $$$$) | |
| 21 FILES := $(wildcard bin/*) $(wildcard man/*) README CHANGES Makefile \ | |
| 22 $(wildcard rpm/*) lcovrc | |
| 23 | |
| 24 .PHONY: all info clean install uninstall rpms | |
| 25 | |
| 26 all: info | |
| 27 | |
| 28 info: | |
| 29 @echo "Available make targets:" | |
| 30 @echo " install : install binaries and man pages in PREFIX (default /
)" | |
| 31 @echo " uninstall : delete binaries and man pages from PREFIX (default
/)" | |
| 32 @echo " dist : create packages (RPM, tarball) ready for distributi
on" | |
| 33 | |
| 34 clean: | |
| 35 rm -f lcov-*.tar.gz | |
| 36 rm -f lcov-*.rpm | |
| 37 make -C example clean | |
| 38 | |
| 39 install: | |
| 40 bin/install.sh bin/lcov $(BIN_DIR)/lcov -m 755 | |
| 41 bin/install.sh bin/genhtml $(BIN_DIR)/genhtml -m 755 | |
| 42 bin/install.sh bin/geninfo $(BIN_DIR)/geninfo -m 755 | |
| 43 bin/install.sh bin/genpng $(BIN_DIR)/genpng -m 755 | |
| 44 bin/install.sh bin/gendesc $(BIN_DIR)/gendesc -m 755 | |
| 45 bin/install.sh man/lcov.1 $(MAN_DIR)/man1/lcov.1 -m 644 | |
| 46 bin/install.sh man/genhtml.1 $(MAN_DIR)/man1/genhtml.1 -m 644 | |
| 47 bin/install.sh man/geninfo.1 $(MAN_DIR)/man1/geninfo.1 -m 644 | |
| 48 bin/install.sh man/genpng.1 $(MAN_DIR)/man1/genpng.1 -m 644 | |
| 49 bin/install.sh man/gendesc.1 $(MAN_DIR)/man1/gendesc.1 -m 644 | |
| 50 bin/install.sh man/lcovrc.5 $(MAN_DIR)/man5/lcovrc.5 -m 644 | |
| 51 bin/install.sh lcovrc $(CFG_DIR)/lcovrc -m 644 | |
| 52 | |
| 53 uninstall: | |
| 54 bin/install.sh --uninstall bin/lcov $(BIN_DIR)/lcov | |
| 55 bin/install.sh --uninstall bin/genhtml $(BIN_DIR)/genhtml | |
| 56 bin/install.sh --uninstall bin/geninfo $(BIN_DIR)/geninfo | |
| 57 bin/install.sh --uninstall bin/genpng $(BIN_DIR)/genpng | |
| 58 bin/install.sh --uninstall bin/gendesc $(BIN_DIR)/gendesc | |
| 59 bin/install.sh --uninstall man/lcov.1 $(MAN_DIR)/man1/lcov.1 | |
| 60 bin/install.sh --uninstall man/genhtml.1 $(MAN_DIR)/man1/genhtml.1 | |
| 61 bin/install.sh --uninstall man/geninfo.1 $(MAN_DIR)/man1/geninfo.1 | |
| 62 bin/install.sh --uninstall man/genpng.1 $(MAN_DIR)/man1/genpng.1 | |
| 63 bin/install.sh --uninstall man/gendesc.1 $(MAN_DIR)/man1/gendesc.1 | |
| 64 bin/install.sh --uninstall man/lcovrc.5 $(MAN_DIR)/man5/lcovrc.5 | |
| 65 bin/install.sh --uninstall lcovrc $(CFG_DIR)/lcovrc | |
| 66 | |
| 67 dist: lcov-$(VERSION).tar.gz lcov-$(VERSION)-$(RELEASE).noarch.rpm \ | |
| 68 lcov-$(VERSION)-$(RELEASE).src.rpm | |
| 69 | |
| 70 lcov-$(VERSION).tar.gz: $(FILES) | |
| 71 mkdir $(TMP_DIR) | |
| 72 mkdir $(TMP_DIR)/lcov-$(VERSION) | |
| 73 cp -r * $(TMP_DIR)/lcov-$(VERSION) | |
| 74 find $(TMP_DIR)/lcov-$(VERSION) -name CVS -type d | xargs rm -rf | |
| 75 make -C $(TMP_DIR)/lcov-$(VERSION) clean | |
| 76 bin/updateversion.pl $(TMP_DIR)/lcov-$(VERSION) $(VERSION) $(RELEASE) | |
| 77 cd $(TMP_DIR) ; \ | |
| 78 tar cfz $(TMP_DIR)/lcov-$(VERSION).tar.gz lcov-$(VERSION) | |
| 79 mv $(TMP_DIR)/lcov-$(VERSION).tar.gz . | |
| 80 rm -rf $(TMP_DIR) | |
| 81 | |
| 82 lcov-$(VERSION)-$(RELEASE).noarch.rpm: rpms | |
| 83 lcov-$(VERSION)-$(RELEASE).src.rpm: rpms | |
| 84 | |
| 85 rpms: lcov-$(VERSION).tar.gz | |
| 86 mkdir $(TMP_DIR) | |
| 87 mkdir $(TMP_DIR)/BUILD | |
| 88 mkdir $(TMP_DIR)/RPMS | |
| 89 mkdir $(TMP_DIR)/SOURCES | |
| 90 mkdir $(TMP_DIR)/SRPMS | |
| 91 cp lcov-$(VERSION).tar.gz $(TMP_DIR)/SOURCES | |
| 92 cd $(TMP_DIR)/BUILD ; \ | |
| 93 tar xfz $(TMP_DIR)/SOURCES/lcov-$(VERSION).tar.gz \ | |
| 94 lcov-$(VERSION)/rpm/lcov.spec | |
| 95 rpmbuild --define '_topdir $(TMP_DIR)' \ | |
| 96 -ba $(TMP_DIR)/BUILD/lcov-$(VERSION)/rpm/lcov.spec | |
| 97 mv $(TMP_DIR)/RPMS/noarch/lcov-$(VERSION)-$(RELEASE).noarch.rpm . | |
| 98 mv $(TMP_DIR)/SRPMS/lcov-$(VERSION)-$(RELEASE).src.rpm . | |
| 99 rm -rf $(TMP_DIR) | |
| OLD | NEW |