master
 1#!/usr/bin/make -f
 2SHELL=/bin/sh
 3
 4CC=clang
 5TEST_LIBS = -lcgreen
 6
 7BUILDDIR := build
 8OBJS := $(addprefix $(BUILDDIR)/,stack.o)
 9TEST_OBJS := $(addprefix $(BUILDDIR)/,stack_test.o)
10
11$(BUILDDIR)/%.o : %.c
12	$(COMPILE.c) $(OUTPUT_OPTION) $<
13
14.PHONY: all
15all: $(OBJS) $(BUILDDIR)/main.o
16	$(CC) $(OBJS) $(BUILDDIR)/main.o -o $(BUILDDIR)/program
17
18.PHONY: test
19test: $(OBJS) $(TEST_OBJS)
20	$(CC) $(OBJS) $(TEST_OBJS) $(TEST_LIBS) -o $(BUILDDIR)/test
21
22$(OBJS): | $(BUILDDIR)
23
24$(TEST_OBJS): | $(BUILDDIR)
25
26$(BUILDDIR):
27	mkdir $(BUILDDIR)
28
29.PHONY: clean
30clean:
31	rm -fr build
32
33run : all
34	./build/program
35
36run_test : test
37	cgreen-runner -c -v $(BUILDDIR)/test