# BlinkenStreamView
# version 0.1.2 date 2014-01-18
# Copyright 2005-2014 Stefan Schuermans <stefan@schuermans.info>
# Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html

TARGET=BlinkenStreamView

SRCS=$(wildcard *.c)

PACKAGES=gtk+-2.0
CFLAGS=-Wall -Wextra -Werror -O2 -g $(shell pkg-config --cflags $(PACKAGES))
DEFINES=
INCLUDES=
LDFLAGS=$(shell pkg-config --libs-only-L $(PACKAGES))
LIBS=$(shell pkg-config --libs-only-l $(PACKAGES))

CC=gcc
CCARGS=$(CFLAGS) $(DEFINES) $(INCLUDES)

SRCS_BASE=$(patsubst %.c,%,$(SRCS))
DEPS=$(addsuffix .d,$(SRCS_BASE))
OBJS=$(addsuffix .o,$(SRCS_BASE))

.PHONY: all clean
.SECONDARY:
.SUFFIXES:

all: deps $(TARGET)

ifneq ($(MAKECMDGOALS),clean)
  include deps
endif

deps: $(DEPS)
	cat /dev/null $^ >$@

%.d: %.c Makefile
	$(CC) $(CCARGS) -M -o $@ $<

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

$(TARGET): $(OBJS)
	$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)

clean:
	rm -rf $(DEPS) deps $(OBJS) $(TARGET)

