1
# Author Gr�goire Dooms
2
# Copied from Gecode Makefile.in
3
# The gecode configure script makes the Makefile.in from this Makefile.in.in
4
# Then the cp(Graph) configure script makes the Makefile from the Makefile.in
6
# get variables from top Makefile
8
gecode_top_srcdir = $(top_srcdir)
9
cpgraph_top_srcdir = $(curdir)
12
KERNELDLL := $(KERNELDLL:%=../../%)
13
SETDLL := $(SETDLL:%=../../%)
14
INTDLL := $(INTDLL:%=../../%)
15
SUPPORTOBJ := $(SUPPORTOBJ:%=../../%)
17
ifeq "$(LIBPREFIX)" "$(LINKPREFIX)"
18
LINKSET:=../../$(LINKSET)
19
LINKKERNEL:=../../$(LINKKERNEL)
20
LINKINT:=../../$(LINKINT)
21
LINKMM:=../../$(LINKMM)
22
LINKSEARCH:=../../$(LINKSEARCH)
23
LINKALL := $(LINKMM) $(LINKSET) $(LINKINT) $(LINKSEARCH) $(LINKKERNEL)
25
EXTRALINKFLAGS := -L../..
32
GRAPHSRC0 = view/arcnode.cc
33
GRAPHHDR0 = view/outadjsets.icc view/constant.icc view/arcnode.hh view/nodearcsets.icc graphutils.icc var.icc view.icc graphutils.h view/boundsgraphs.icc view/prop.icc path/path.icc path/pathgraphs.icc path.hh path.icc
34
#GRAPHHDR0 = @GRAPHHDR@
37
GRAPHSRC = $(GRAPHSRC0)
38
GRAPHHDR = graph.hh $(GRAPHHDR0)
39
GRAPHOBJ = $(GRAPHSRC:%.cc=%$(OBJSUFFIX))
40
GRAPHFLAGS = -I@BOOST_DIR@ -I../.. $(EXTRALINKFLAGS)
41
GRAPHDLL = $(LIBPREFIX)@GRAPH@$(DLLSUFFIX)
42
GRAPHSTATICLIB = $(LIBPREFIX)@GRAPH@$(STATICLIBSUFFIX)
43
GRAPHLIB = $(LIBPREFIX)@GRAPH@$(LIBSUFFIX)
44
LINKGRAPH = $(LINKPREFIX)@GRAPH@$(LINKSUFFIX)
45
#GRAPHBUILDDIRS = view
47
ifeq "$(LIBPREFIX)" "$(LINKPREFIX)"
48
LINKGRAPH := $(LINKGRAPH)
50
EXTRALINKFLAGS := -L../..
53
LINKALL := $(LINKALL) $(LINKGRAPH)
59
GRAPHEXAMPLESRC0 = cpgraph-basic cpgraph-path cpgraph-complement cpgraph-path2 cpgraph-instUB cpgraph-pathcost
60
GRAPHEXAMPLESRC = $(GRAPHEXAMPLESRC0:%=examples/%.cc)
61
GRAPHEXAMPLEOBJ = $(GRAPHEXAMPLESRC:%.cc=%$(OBJSUFFIX))
62
GRAPHEXAMPLESBJ = $(GRAPHEXAMPLESRC:%.cc=%$(SBJSUFFIX))
63
GRAPHEXAMPLEEXE = $(GRAPHEXAMPLESRC:%.cc=%$(EXESUFFIX))
64
GRAPHEXAMPLEBUILDDIRS = examples/
66
GRAPHEXAMPLEHDR0 = $(gecode_top_srcdir)/support.hh $(gecode_top_srcdir)/support.icc $(gecode_top_srcdir)/timer.hh
67
GRAPHEXAMPLEHDR = $(GRAPHEXAMPLEHDR0:%=../../examples/%) $(GRAPHHDR)
69
ALLLIB := $(ALLLIB) $(GRAPHLIB)
72
LIBTARGETS = $(GRAPHDLL) $(GRAPHLIB)
74
all : $(LIBTARGETS) $(GRAPHEXAMPLEEXE)
81
examples/%$(OBJSUFFIX): examples/%.cc
82
$(CXX) $(CXXFLAGS) $(EXAMPLES_EXTRA_CXXFLAGS) $(GRAPHFLAGS)\
83
@COMPILEOBJ@$@ @COMPILERIN@ $<
84
examples/%$(SBJSUFFIX): examples/%.cc
85
$(CXX) $(CXXFLAGS) $(EXAMPLES_EXTRA_CXXFLAGS) $(GRAPHFLAGS)\
86
@COMPILESBJ@$@ @COMPILERIN@ $<
89
$(CXX) $(CXXFLAGS) -DGECODE_BUILD_GRAPH $(GRAPHFLAGS)\
90
@COMPILEOBJ@$@ @COMPILERIN@ $<
92
$(CXX) $(CXXFLAGS) -DGECODE_BUILD_GRAPH $(GRAPHFLAGS)\
93
@COMPILESBJ@$@ @COMPILERIN@ $<
99
ifeq "$(DLLSUFFIX)" "$(LIBSUFFIX)"
101
$(GRAPHDLL): $(GRAPHOBJ) $(KERNELDLL) $(INTDLL) $(SETDLL)
102
$(CXX) $(DLLFLAGS) $(GRAPHOBJ) $(GRAPHFLAGS)\
103
@DLLPATH@ $(LINKKERNEL) $(LINKINT) \
104
@LINKOUTPUT@$(GRAPHDLL)
107
$(GRAPHDLL) $(GRAPHLIB): $(GRAPHOBJ) $(KERNELDLL) $(INTDLL) $(SETDLL)
108
$(CXX) $(DLLFLAGS) $(GRAPHOBJ) $(GRAPHFLAGS)\
109
@DLLPATH@ $(LINKKERNEL) $(LINKINT) $(LINKSET) \
110
@LINKOUTPUT@$(GRAPHDLL)
119
.PRECIOUS: examples/%$(OBJSUFFIX)
120
examples/%$(EXESUFFIX): examples/%$(OBJSUFFIX) $(SUPPORTOBJ) $(ALLIB)
121
$(CXX) -o $@ $< $(SUPPORTOBJ) $(DLLPATH) $(CXXFLAGS) $(GRAPHFLAGS)\
122
$(LDFLAGS) $(LINKALL)
123
CXXFLAGS := $(CXXFLAGS) $(GRAPHFLAGS)
127
doc: $(GRAPHHDR) $(GRAPHSRC)
135
configure: configure.ac
137
config.status: configure
138
../../config.status --recheck
139
./config.status --recheck
140
Makefile: Makefile.in config.status
142
Makefile.in : Makefile.in.in ../../config.status
143
../../config.status --file $@:$<
146
.PHONY: clean veryclean distclean
148
find examples -perm +u+x -not -type d -exec rm '{}' ';'
152
$(RMF) $(GRAPHOBJ) $(GRAPHSBJ)
156
$(RMF) $(LIBTARGETS:%$(DLLSUFFIX)=%.exp) $(LIBTARGETS:%$(DLLSUFFIX)=%.lib)
157
$(RMF) $(LIBTARGETS:%$(DLLSUFFIX)=%.ilk) $(LIBTARGETS:%$(DLLSUFFIX)=%.pdb)
158
$(RMF) $(GRAPHEXAMPLEEXE:%$(EXESUFFIX)=%.pdb)
159
$(RMF) $(GRAPHEXAMPLEEXE:%$(EXESUFFIX)=%$(OBJSUFFIX))
160
$(RMF) $(GRAPHEXAMPLEEXE:%$(EXESUFFIX)=%$(SBJSUFFIX))
161
$(RMF) doc CPGraphReference.chm
162
$(RMF) $(GRAPHEXAMPLEEXE)
165
$(RMF) config.log config.status Makefile.in