-# To pass additional parameters for asciidoc
-ASCIIDOC=asciidoc
-
-ASCIIDOC_TARGETS:=hacking-howto.html debugging.html debugging-release-version.html userguide.html ipc.html multi-monitor.html wsbar.html testsuite.html i3bar-protocol.html
-
-all: ${ASCIIDOC_TARGETS}
-
-hacking-howto.html: hacking-howto
- $(ASCIIDOC) -a toc -n $<
-
-i3bar-protocol.html: i3bar-protocol
- $(ASCIIDOC) -a toc -n $<
-
-debugging.html: debugging
- $(ASCIIDOC) -n $<
-
-debugging-release-version.html: debugging-release-version
- $(ASCIIDOC) -n $<
-
-userguide.html: userguide
- $(ASCIIDOC) -a toc -n $<
-
-testsuite.html: testsuite
- $(ASCIIDOC) -a toc -n $<
-
-ipc.html: ipc
- $(ASCIIDOC) -a toc -n $<
-
-multi-monitor.html: multi-monitor
- $(ASCIIDOC) -a toc -n $<
-
-wsbar.html: wsbar
- $(ASCIIDOC) -a toc -n $<
+all:
+ $(MAKE) -C .. docs
clean:
- rm -f ${ASCIIDOC_TARGETS}
+ $(MAKE) -C .. clean-docs
+
+.PHONY: all clean
-# Default value so one can compile i3-input standalone
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3-config-wizard/i3-config-wizard
-include $(TOPDIR)/common.mk
-
-# Depend on the object files of all source-files in src/*.c and on all header files
-AUTOGENERATED:=cfgparse.tab.c cfgparse.yy.c
-FILES:=$(patsubst %.c,%.o,$(filter-out $(AUTOGENERATED),$(wildcard *.c)))
-HEADERS:=$(wildcard *.h)
-
-CPPFLAGS += -I$(TOPDIR)/include
-
-# Depend on the specific file (.c for each .o) and on all headers
-%.o: %.c ${HEADERS}
- echo "[i3-config-wizard] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-all: i3-config-wizard
-
-i3-config-wizard: $(TOPDIR)/libi3/libi3.a cfgparse.y.o cfgparse.yy.o ${FILES}
- echo "[i3-config-wizard] LINK i3-config-wizard"
- $(CC) $(LDFLAGS) -o $@ $(filter-out libi3/libi3.a,$^) $(LIBS)
-
-$(TOPDIR)/libi3/%.a: $(TOPDIR)/libi3/*.c
- $(MAKE) -C $(TOPDIR)/libi3
-
-cfgparse.yy.o: cfgparse.l cfgparse.y.o ${HEADERS}
- echo "[i3-config-wizard] LEX $<"
- $(FLEX) -i -o$(@:.o=.c) $<
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $(@:.o=.c)
-
-cfgparse.y.o: cfgparse.y ${HEADERS}
- echo "[i3-config-wizard] YACC $<"
- $(BISON) --debug --verbose -b $(basename $< .y) -d $<
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $(<:.y=.tab.c)
-
-
-install: all
- echo "[i3-config-wizard] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3-config-wizard $(DESTDIR)$(PREFIX)/bin/
+install:
+ $(MAKE) -C .. install-i3-config-wizard
clean:
- rm -f *.o cfgparse.tab.{c,h} cfgparse.output cfgparse.yy.c
+ $(MAKE) -C .. clean-i3-config-wizard
-distclean: clean
- rm -f i3-config-wizard
+.PHONY: all install clean
-# Default value so one can compile i3-dump-log standalone
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3-dump-log/i3-dump-log
-include $(TOPDIR)/common.mk
-
-CFLAGS += -I$(TOPDIR)/include
-
-# Depend on the object files of all source-files in src/*.c and on all header files
-FILES=$(patsubst %.c,%.o,$(wildcard *.c))
-HEADERS=$(wildcard *.h)
-
-# Depend on the specific file (.c for each .o) and on all headers
-%.o: %.c ${HEADERS}
- echo "[i3-dump-log] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-all: i3-dump-log
-
-i3-dump-log: ${FILES}
- echo "[i3-dump-log] LINK i3-dump-log"
- $(CC) $(LDFLAGS) -o i3-dump-log ${FILES} $(LIBS)
-
-install: all
- echo "[i3-dump-log] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3-dump-log $(DESTDIR)$(PREFIX)/bin/
+install:
+ $(MAKE) -C .. install-i3-dump-log
clean:
- rm -f *.o
+ $(MAKE) -C .. clean-i3-dump-log
-distclean: clean
- rm -f i3-dump-log
+.PHONY: all install clean
-# Default value so one can compile i3-input standalone
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3-input/i3-input
-include $(TOPDIR)/common.mk
-
-CPPFLAGS += -I$(TOPDIR)/include
-
-# Depend on the object files of all source-files in src/*.c and on all header files
-FILES=$(patsubst %.c,%.o,$(wildcard *.c))
-HEADERS=$(wildcard *.h)
-
-# Depend on the specific file (.c for each .o) and on all headers
-%.o: %.c ${HEADERS}
- echo "[i3-input] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-all: i3-input
-
-i3-input: $(TOPDIR)/libi3/libi3.a ${FILES}
- echo "[i3-input] LINK i3-input"
- $(CC) $(LDFLAGS) -o $@ $(filter-out libi3/libi3.a,$^) $(LIBS)
-
-$(TOPDIR)/libi3/%.a: $(TOPDIR)/libi3/*.c
- $(MAKE) -C $(TOPDIR)/libi3
-
-install: all
- echo "[i3-input] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3-input $(DESTDIR)$(PREFIX)/bin/
+install:
+ $(MAKE) -C .. install-i3-input
clean:
- rm -f *.o
+ $(MAKE) -C .. clean-i3-input
-distclean: clean
- rm -f i3-input
+.PHONY: all install clean
-# Default value so one can compile i3-msg standalone
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3-msg/i3-msg
-include $(TOPDIR)/common.mk
-
-CFLAGS += -I$(TOPDIR)/include
-
-# Depend on the object files of all source-files in src/*.c and on all header files
-FILES=$(patsubst %.c,%.o,$(wildcard *.c))
-HEADERS=$(wildcard *.h)
-
-# Depend on the specific file (.c for each .o) and on all headers
-%.o: %.c ${HEADERS}
- echo "[i3-msg] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-all: i3-msg
-
-i3-msg: ${FILES}
- echo "[i3-msg] LINK i3-msg"
- $(CC) $(LDFLAGS) -o i3-msg ${FILES} $(LIBS)
-
-install: all
- echo "[i3-msg] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3-msg $(DESTDIR)$(PREFIX)/bin/
+install:
+ $(MAKE) -C .. install-i3-msg
clean:
- rm -f *.o
+ $(MAKE) -C .. clean-i3-msg
-distclean: clean
- rm -f i3-msg
+.PHONY: all install clean
-# Default value so one can compile i3-nagbar standalone
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3-nagbar/i3-nagbar
-include $(TOPDIR)/common.mk
-
-CPPFLAGS += -I$(TOPDIR)/include
-
-# Depend on the object files of all source-files in src/*.c and on all header files
-FILES=$(patsubst %.c,%.o,$(wildcard *.c))
-HEADERS=$(wildcard *.h)
-
-# Depend on the specific file (.c for each .o) and on all headers
-%.o: %.c ${HEADERS}
- echo "[i3-nagbar] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-all: i3-nagbar
-
-i3-nagbar: $(TOPDIR)/libi3/libi3.a ${FILES}
- echo "[i3-nagbar] LINK i3-nagbar"
- $(CC) $(LDFLAGS) -o $@ $(filter-out libi3/libi3.a,$^) $(LIBS)
-
-$(TOPDIR)/libi3/%.a: $(TOPDIR)/libi3/*.c
- $(MAKE) -C $(TOPDIR)/libi3
-
-install: all
- echo "[i3-nagbar] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3-nagbar $(DESTDIR)$(PREFIX)/bin/
+install:
+ $(MAKE) -C .. install-i3-nagbar
clean:
- rm -f *.o
+ $(MAKE) -C .. clean-i3-nagbar
-distclean: clean
- rm -f i3-nagbar
+.PHONY: all install clean
-TOPDIR=..
+all:
+ $(MAKE) -C .. i3bar/i3bar
-include $(TOPDIR)/common.mk
-
-FILES:=$(wildcard src/*.c)
-FILES:=$(FILES:.c=.o)
-HEADERS:=$(wildcard include/*.h)
-
-CPPFLAGS += -I$(TOPDIR)/include
-
-all: i3bar doc
-
-i3bar: $(TOPDIR)/libi3/libi3.a ${FILES}
- echo "[i3bar] LINK"
- $(CC) $(LDFLAGS) -o $@ $(filter-out libi3/libi3.a,$^) $(LIBS)
-
-$(TOPDIR)/libi3/%.a: $(TOPDIR)/libi3/*.c
- $(MAKE) -C $(TOPDIR)/libi3
-
-doc:
- echo ""
- echo "[i3bar] SUBDIR doc"
- $(MAKE) -C doc
-
-src/%.o: src/%.c ${HEADERS}
- echo "[i3bar] CC $<"
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
-
-install: all
- echo "[i3bar] INSTALL"
- $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
- $(INSTALL) -m 0755 i3bar $(DESTDIR)$(PREFIX)/bin
+install:
+ $(MAKE) -C .. install-i3bar
clean:
- rm -f src/*.o
- $(MAKE) -C doc clean
-
-distclean: clean
- rm -f i3bar
- $(MAKE) -C doc distclean
+ $(MAKE) -C .. clean-i3bar
-.PHONY: install clean distclean doc
+.PHONY: all install clean
--- /dev/null
+all:
+ $(MAKE) -C .. libi3.a
+
+clean:
+ $(MAKE) -C .. clean-libi3
+
+.PHONY: all clean
--- /dev/null
+all:
+ $(MAKE) -C .. i3
+
+install:
+ $(MAKE) -C .. install-i3
+
+clean:
+ $(MAKE) -C .. clean-i3
+
+.PHONY: all install clean