41 lines
958 B
Makefile
41 lines
958 B
Makefile
|
|
SHELL := bash
|
|
TARGET := sierpinski-gtk
|
|
OBJS := $(patsubst %.cc,%.o,$(wildcard *.cc))
|
|
DEPS := $(OBJS:.o=.dep)
|
|
|
|
export GTKMM_VERSION := 2.4
|
|
export GTKGLEXTMM_VERSION := 1.2
|
|
|
|
ifdef WIN32
|
|
export CPPFLAGS += -I"$(shell cd)"
|
|
else
|
|
export CPPFLAGS += -I"$(shell pwd)"
|
|
endif
|
|
export CXXFLAGS := -Wall -O2 \
|
|
`pkg-config --cflags gtkmm-$(GTKMM_VERSION)` \
|
|
`pkg-config --cflags gtkglextmm-$(GTKGLEXTMM_VERSION)`
|
|
export LDFLAGS := `pkg-config --libs gtkmm-$(GTKMM_VERSION)` \
|
|
`pkg-config --libs gtkglextmm-$(GTKGLEXTMM_VERSION)`
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CXX) -o $@ $^ $(CXXFLAGS) $(LDFLAGS)
|
|
|
|
%.o: %.cc
|
|
$(CXX) -c -o $@ $(CPPFLAGS) $(CXXFLAGS) $<
|
|
|
|
# Make dependency files
|
|
%.dep: %.cc
|
|
@set -e; rm -f $@; \
|
|
$(CXX) -MM $(CPPFLAGS) $< > $@.$$$$; \
|
|
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
|
|
rm -f $@.$$$$
|
|
|
|
clean:
|
|
-$(RM) -f *.o *.dep $(TARGET)
|
|
|
|
# Include dependency files
|
|
-include $(DEPS)
|