SRCDIR ?= src
CPPFLAGS ::= -iquotesrc/ $(CPPFLAGS)
-CFLAGS ::= -g -std=c99 -Wall -Wextra -Wpedantic $(CFLAGS)
+CFLAGS ::= -g -std=c99 -Wall -Wextra -Wpedantic -Werror $(CFLAGS)
LDFLAGS ::= $(LDFLAGS)
LDLIBS ::= -L/usr/local/lib -lGL -lGLEW -lglut -lassimp $(LDLIBS)
# Default rule: build executable
$(binary): $(objects)
@mkdir -p $(@D)
- @echo "###### Linking executable..."
- $(CC) $(LDFLAGS) -o $(binary) $^ $(LOADLIBES) $(LDLIBS)
+ @echo "Linking executable"
+ @$(CC) $(LDFLAGS) -o $(binary) $^ $(LOADLIBES) $(LDLIBS)
# Build C translation units
$(objects): $(BUILDDIR)/%.c.o: %.c $(BUILDDIR)/%.c.mk
@mkdir -p $(@D)
- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
+ @echo "Building $@"
+ @$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
# ######
# Setup
# Initialise build environment
init:
- mkdir -p $(BUILDDIR)
+ @echo "Creating build directory $(BUILDDIR)"
+ @mkdir -p $(BUILDDIR)
.PHONY: init
# ######
# ######
clean:
- rm -rf $(BUILDDIR)
+ @echo "Removing $(BUILDDIR)"
+ @rm -rf $(BUILDDIR)
.PHONY: clean