gri3-wm/Makefile

82 lines
2.6 KiB
Makefile
Raw Normal View History

TOPDIR=$(shell pwd)
include $(TOPDIR)/common.mk
SUBDIRS:=i3-msg i3-input i3-nagbar i3-config-wizard i3bar i3-dump-log
2012-05-16 16:19:12 +02:00
ALL_TARGETS =
INSTALL_TARGETS =
CLEAN_TARGETS =
DISTCLEAN_TARGETS =
all: real-all
2012-05-16 16:19:12 +02:00
include src/i3.mk
2012-05-16 16:19:12 +02:00
real-all: $(ALL_TARGETS) subdirs
libi3/%.a: libi3/*.c
$(MAKE) -C libi3
subdirs:
for dir in $(SUBDIRS); do \
echo ""; \
echo "MAKE $$dir"; \
$(MAKE) -C $$dir; \
done
2012-05-16 16:19:12 +02:00
install: $(INSTALL_TARGETS)
for dir in $(SUBDIRS); do \
$(MAKE) -C $$dir install; \
done
2009-02-22 17:41:30 +01:00
2009-08-19 14:37:46 +02:00
dist: distclean
[ ! -d i3-${VERSION} ] || rm -rf i3-${VERSION}
[ ! -e i3-${VERSION}.tar.bz2 ] || rm i3-${VERSION}.tar.bz2
mkdir i3-${VERSION}
2012-06-10 18:23:20 +02:00
cp i3-migrate-config-to-v4 generate-command-parser.pl i3-sensible-* i3.config.keycodes DEPENDS LICENSE PACKAGE-MAINTAINER RELEASE-NOTES-${VERSION} i3.config i3.xsession.desktop i3.applications.desktop pseudo-doc.doxygen Makefile i3-${VERSION}
cp -r src libi3 i3-msg i3-nagbar i3-config-wizard i3bar i3-dump-log yajl-fallback include man parser-specs i3-${VERSION}
# Only copy toplevel documentation (important stuff)
mkdir i3-${VERSION}/docs
2010-03-30 13:20:04 +02:00
# Pre-generate documentation
$(MAKE) -C docs
$(MAKE) -C i3bar/doc
# Cleanup τεχ output files
find docs -regex ".*\.\(aux\|out\|log\|toc\|bm\|dvi\|log\)" -exec rm '{}' \;
2010-03-30 13:25:25 +02:00
find docs -maxdepth 1 -type f ! \( -name "*.xcf" -or -name "*.svg" \) -exec cp '{}' i3-${VERSION}/docs \;
2009-11-09 21:28:29 +01:00
# Only copy source code from i3-input
mkdir i3-${VERSION}/i3-input
find i3-input -maxdepth 1 -type f \( -name "*.c" -or -name "*.h" -or -name "Makefile" \) -exec cp '{}' i3-${VERSION}/i3-input \;
sed -e 's/^GIT_VERSION:=\(.*\)/GIT_VERSION:=$(shell /bin/echo '${GIT_VERSION}' | sed 's/\\/\\\\/g')/g;s/^VERSION:=\(.*\)/VERSION:=${VERSION}/g' common.mk > i3-${VERSION}/common.mk
2009-08-19 14:37:46 +02:00
# Pre-generate a manpage to allow distributors to skip this step and save some dependencies
2011-07-13 13:29:39 +02:00
$(MAKE) -C man
2009-11-09 21:28:29 +01:00
cp man/*.1 i3-${VERSION}/man/
cp i3bar/doc/*.1 i3-${VERSION}/i3bar/doc/
2009-11-09 21:28:29 +01:00
tar cfj i3-${VERSION}.tar.bz2 i3-${VERSION}
rm -rf i3-${VERSION}
2012-05-16 16:19:12 +02:00
clean: $(CLEAN_TARGETS)
(which lcov >/dev/null 2>&1 && lcov -d . --zerocounters) || true
$(MAKE) -C libi3 clean
$(MAKE) -C docs clean
$(MAKE) -C man clean
for dir in $(SUBDIRS); do \
echo ""; \
echo "CLEAN $$dir"; \
$(MAKE) TOPDIR=$(TOPDIR) -C $$dir distclean; \
done
2009-02-13 19:09:25 +01:00
2012-05-16 16:19:12 +02:00
distclean: clean $(DISTCLEAN_TARGETS)
2009-02-13 19:09:25 +01:00
rm -f i3
for dir in $(SUBDIRS); do \
echo ""; \
echo "DISTCLEAN $$dir"; \
$(MAKE) TOPDIR=$(TOPDIR) -C $$dir distclean; \
done
coverage:
rm -f /tmp/i3-coverage.info
rm -rf /tmp/i3-coverage
lcov -d . -b . --capture -o /tmp/i3-coverage.info
genhtml -o /tmp/i3-coverage/ /tmp/i3-coverage.info