3 include $(TOPDIR)/common.mk
14 include libi3/libi3.mk
16 include i3-config-wizard/i3-config-wizard.mk
17 include i3-msg/i3-msg.mk
18 include i3-input/i3-input.mk
19 include i3-nagbar/i3-nagbar.mk
20 include i3bar/i3bar.mk
21 include i3-dump-log/i3-dump-log.mk
25 # Update $(TOPDIR)/LAST_VERSION if it differs from $I3_VERSION
26 CACHED_VERSION := '$(shell [ -f $(TOPDIR)/LAST_VERSION ] && cat $(TOPDIR)/LAST_VERSION)'
27 ifneq ($(CACHED_VERSION),$(I3_VERSION))
28 $(shell echo -n ${I3_VERSION} > $(TOPDIR)/LAST_VERSION)
31 real-all: $(ALL_TARGETS)
33 install: $(INSTALL_TARGETS)
36 [ ! -d i3-${VERSION} ] || rm -rf i3-${VERSION}
37 [ ! -e i3-${VERSION}.tar.bz2 ] || rm i3-${VERSION}.tar.bz2
39 cp i3-migrate-config-to-v4 i3-save-tree generate-command-parser.pl i3-sensible-* i3-dmenu-desktop i3.config.keycodes DEPENDS LICENSE PACKAGE-MAINTAINER RELEASE-NOTES-${VERSION} i3.config i3.xsession.desktop i3-with-shmlog.xsession.desktop i3.applications.desktop pseudo-doc.doxygen common.mk Makefile i3-${VERSION}
40 cp -r src libi3 i3-msg i3-nagbar i3-config-wizard i3bar i3-dump-log include man parser-specs testcases i3-${VERSION}
41 # Only copy toplevel documentation (important stuff)
42 mkdir i3-${VERSION}/docs
43 # Pre-generate documentation
45 # Cleanup τεχ output files
46 find docs -regex ".*\.\(aux\|out\|log\|toc\|bm\|dvi\|log\)" -exec rm '{}' \;
47 find docs -maxdepth 1 -type f ! \( -name "*.xcf" -or -name "*.svg" \) -exec cp '{}' i3-${VERSION}/docs \;
48 # Only copy source code from i3-input
49 mkdir i3-${VERSION}/i3-input
50 find i3-input -maxdepth 1 -type f \( -name "*.c" -or -name "*.mk" -or -name "*.h" -or -name "Makefile" \) -exec cp '{}' i3-${VERSION}/i3-input \;
51 echo -n ${I3_VERSION} > i3-${VERSION}/I3_VERSION
52 echo -n ${VERSION} > i3-${VERSION}/VERSION
53 # Pre-generate a manpage to allow distributors to skip this step and save some dependencies
55 cp man/*.1 i3-${VERSION}/man/
56 tar cfj i3-${VERSION}.tar.bz2 i3-${VERSION}
59 clean: $(CLEAN_TARGETS)
60 (which lcov >/dev/null 2>&1 && lcov -d . --zerocounters) || true
62 distclean: clean $(DISTCLEAN_TARGETS)
65 rm -f /tmp/i3-coverage.info
66 rm -rf /tmp/i3-coverage
67 lcov -d . -b . --capture -o /tmp/i3-coverage.info
68 genhtml -o /tmp/i3-coverage/ /tmp/i3-coverage.info