# Makefile for sphone
PP=cpp
CC=gcc
CCFLAGS=`pkg-config --cflags gtk+-2.0`
LDFLAGS=`pkg-config --libs gtk+-2.0`
SRCDIR=src
BINDIR=bin
BUILDDIR=build
TARGET=$(BINDIR)/sphone
CCOBJSFILE=$(BUILDDIR)/ccobjs
-include $(CCOBJSFILE)
LDOBJS=$(patsubst $(SRCDIR)%.c,$(BUILDDIR)%.o,$(CCOBJS))
DEPEND=$(LDOBJS:.o=.dep)
all : $(CCOBJSFILE) $(TARGET)
@$(RM) $(CCOBJSFILE)
clean :
@echo -n "Clean ... " && $(RM) $(BINDIR)/* $(BUILDDIR)/* && echo "OK"
$(CCOBJSFILE) :
@echo CCOBJS=`ls $(SRCDIR)/*.c` > $(CCOBJSFILE)
$(TARGET) : $(LDOBJS)
@echo -n "Linking $^ to [email protected] ... " && $(CC) -o [email protected] $^ $(LDFLAGS) && echo "OK"
$(BUILDDIR)/%.dep : $(SRCDIR)/%.c
@$(PP) $(CCFLAGS) -MM -MT $(@:.dep=.o) -o [email protected] $<
$(BUILDDIR)/%.o : $(SRCDIR)/%.c
@echo -n "Building $< ... " && $(CC) $(CCFLAGS) -c -o [email protected] $< && echo "OK"
-include $(DEPEND)
Over!