# Build configuration
STATIC = -static# Comment this if you want a dynamic-linked executable
CC = gcc -fdiagnostics-color=never -fno-diagnostics-show-caret
CFLAGS = -Wall -g $(CONF)

# Install paths
PREFIX = /usr/local

TARGET = nokotan
SRCMODULES = main.c server.c client.c spartan.c url.c dir.c mimetype.c \
	passwd.c str.c logger.c
OBJMODULES = $(SRCMODULES:.c=.o)

all: $(TARGET)

%.o: %.c
	$(CC) $(CFLAGS) -c $< -o $@

$(TARGET): $(OBJMODULES)
	$(CC) $(CFLAGS) $(STATIC) $^ -o $@

clean:
	rm -f $(OBJMODULES) $(TARGET) deps.mk

install: all
	mkdir -p $(DESTDIR)$(PREFIX)/bin/
	cp -f $(TARGET) $(DESTDIR)$(PREFIX)/bin/
	chmod 755 $(DESTDIR)$(PREFIX)/bin/$(TARGET)

uninstall:
	rm -f $(DESTDIR)$(PREFIX)/bin/$(TARGET)

ifneq (clean, $(MAKECMDGOALS))
-include deps.mk
endif

deps.mk: $(SRCMODULES)
	$(CC) -MM $^ > $@
