-render_dir:=render
-render_target:=librender.a
-render_sources:=color.c font.c gradient.c image.c mask.c render.c test.c
-render_CPPFLAGS:=$(CPPFLAGS) $(GLIB_CFLAGS) $(XFT_CFLAGS) \
- -DG_LOG_DOMAIN=\"Render\"
+include build/Makefile.incl
-render_srcdir:=$(srcdir)/$(render_dir)
-render_target:=$(addprefix $(render_dir)/,$(render_target))
-render_objects:=$(addprefix $(render_dir)/,$(render_sources:.c=.o))
-render_sources:=$(addprefix $(render_srcdir)/,$(render_sources))
-render_deps:=$(addprefix $(depdir)/,$(render_objects:.o=.d))
-render_depdir:=$(depdir)/$(render_dir)
+dir = render
-$(render_target): $(render_objects)
- $(AR) r $@ $^
+CPPFLAGS += $(GLIB_CFLAGS) $(XFT_CFLAGS) -DG_LOG_DOMAIN=\"Render\"
-$(render_dir):
- @mkdir $@
+target = librender.a
+sources = color.c font.c gradient.c image.c mask.c render.c test.c
-$(render_dir)/%.o: $(render_srcdir)/%.c $(depdir)/%.d
- $(CC) $(DEFS) $(render_CPPFLAGS) $(CFLAGS) -c -o $@ $<
+srcdir := $(srcdir)/$(dir)
+target := $(addprefix $(dir)/, $(target))
+objects := $(addprefix $(dir)/, $(sources:.c=.o))
+sources := $(addprefix $(srcdir)/, $(sources))
+deps := $(addprefix $(depdir)/, $(objects:.o=.d))
+depdir := $(depdir)/$(dir)
-$(render_depdir)/%.d: $(render_srcdir)/%.c $(render_depdir)
+all: $(target)
+
+$(target): $(objects)
+ $(LINK) -static -o $@ $^ $(LDFLAGS)
+
+$(dir)/%.o: $(srcdir)/%.c $(depdir)/%.d
+ $(LTCOMPILE) -c -o $@ $<
+
+$(depdir)/%.d: $(srcdir)/%.c
@echo Building dependancies for $<
- @mkdir $(dir $@) 2> /dev/null || true
- @$(CC) $(render_CPPFLAGS) $(CFLAGS) -w -MM -MF $@ -MQ $(<:.c=.o) $<
+ @$(INSTALL) -d $(depdir)
+ @$(DEPCOMPILE) -w -MM -MF $@ -MQ $(<:.c=.o) $<
+
+install:
-render-install:
+uninstall:
-render-uninstall:
+clean:
+ $(RM) $(target) $(objects) $(srcdir)/*\~
-render-clean:
- $(RM) $(render_target) $(render_objects) $(render_srcdir)/*\~
+distclean:
--include $(render_deps)
+-include $(deps)
-.PHONY: render-install render-uninstall render-clean
+.PHONY: all install uninstall clean distclean