1 |
# Feeping Creaturism |
2 |
# |
3 |
# Douglas Thrift |
4 |
# |
5 |
# $Id$ |
6 |
|
7 |
menes = menes |
8 |
pstreams = $(HOME)/SourceForge.net/pstreams |
9 |
cxxsrc = FeepingCreaturism.cpp Jargon.cpp Environment.cpp Matcher.cpp \ |
10 |
$(menes)/menes-app/configuration.cpp $(menes)/menes-ext/allocator.cpp \ |
11 |
$(menes)/menes-ext/exception.cpp $(menes)/menes-opt/assert.cpp \ |
12 |
$(wildcard $(foreach prj, api/execinfo api/posix ios xml, \ |
13 |
$(menes)/menes-$(prj)/*.cpp)) |
14 |
cxxhdr = $(patsubst %.cpp, %.hpp, ${cxxsrc}) |
15 |
cxxobj = $(patsubst %.cpp, object/%.o, ${cxxsrc}) |
16 |
cxxdep = $(patsubst %.cpp, object/%.d, ${cxxsrc}) |
17 |
exe = jargon.cgi |
18 |
|
19 |
CXX := g++34 |
20 |
CXXFLAGS := -g -O0 -funsigned-char #-fuse-cxa-atexit |
21 |
CPPFLAGS += -DNFINLINE -DNPROFILE -I$(menes) -I$(pstreams) |
22 |
LDFLAGS := |
23 |
LDLIBS += -lpcre -lexecinfo |
24 |
|
25 |
all: ${exe} |
26 |
|
27 |
${exe}: ${cxxobj} |
28 |
$(CXX) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@ |
29 |
|
30 |
object/%.o: %.cpp |
31 |
@mkdir -p $(@D) |
32 |
$(CXX) -MP -MD $(CPPFLAGS) $(CXXFLAGS) -o $@ -c $< |
33 |
|
34 |
-include $(cxxdep) |
35 |
|
36 |
install: |
37 |
ln -f ${exe} $(HOME)/DouglasThrift.net/WWW/data/computers |
38 |
|
39 |
clean: |
40 |
-rm -rf object ${exe} core *.core $(patsubst %, %.stackdump, ${exe}) |