1 | # PLEASE adhere to the alphabetical ordering in this Makefile!
|
---|
2 | # Also indentation by a single tab
|
---|
3 |
|
---|
4 | SUBDIRS = Actions UIElements
|
---|
5 |
|
---|
6 | # this includes source files that need to be present at multiple points
|
---|
7 | HELPERSOURCE = \
|
---|
8 | Helpers/Assert.cpp \
|
---|
9 | Helpers/MemDebug.cpp
|
---|
10 |
|
---|
11 | BASESOURCE = \
|
---|
12 | ${HELPERSOURCE} \
|
---|
13 | Space.cpp \
|
---|
14 | vector.cpp
|
---|
15 |
|
---|
16 | BASEHEADER = \
|
---|
17 | ${HELPERHEADER} \
|
---|
18 | Space.hpp \
|
---|
19 | vector.hpp
|
---|
20 |
|
---|
21 | ATOMSOURCE = \
|
---|
22 | atom.cpp \
|
---|
23 | atom_atominfo.cpp \
|
---|
24 | atom_bondedparticle.cpp \
|
---|
25 | atom_bondedparticleinfo.cpp \
|
---|
26 | atom_graphnode.cpp \
|
---|
27 | atom_graphnodeinfo.cpp \
|
---|
28 | atom_particleinfo.cpp \
|
---|
29 | atom_trajectoryparticle.cpp \
|
---|
30 | atom_trajectoryparticleinfo.cpp
|
---|
31 | ATOMHEADER = \
|
---|
32 | atom.hpp \
|
---|
33 | atom_atominfo.hpp \
|
---|
34 | atom_bondedparticle.hpp \
|
---|
35 | atom_bondedparticleinfo.hpp \
|
---|
36 | atom_graphnode.hpp \
|
---|
37 | atom_graphnodeinfo.hpp \
|
---|
38 | atom_particleinfo.hpp \
|
---|
39 | atom_trajectoryparticle.hpp \
|
---|
40 | atom_trajectoryparticleinfo.hpp
|
---|
41 |
|
---|
42 | LINALGSOURCE = \
|
---|
43 | gslmatrix.cpp \
|
---|
44 | gslvector.cpp \
|
---|
45 | linearsystemofequations.cpp
|
---|
46 |
|
---|
47 | LINALGHEADER = \
|
---|
48 | gslmatrix.hpp \
|
---|
49 | gslvector.hpp \
|
---|
50 | linearsystemofequations.hpp
|
---|
51 |
|
---|
52 | ANALYSISSOURCE = \
|
---|
53 | analysis_bonds.cpp \
|
---|
54 | analysis_correlation.cpp
|
---|
55 | ANALYSISHEADER = \
|
---|
56 | analysis_bonds.hpp \
|
---|
57 | analysis_correlation.hpp
|
---|
58 |
|
---|
59 | ACTIONSSOURCE = \
|
---|
60 | Actions/Action.cpp \
|
---|
61 | Actions/ActionHistory.cpp \
|
---|
62 | Actions/ActionRegistry.cpp \
|
---|
63 | Actions/ActionSequence.cpp \
|
---|
64 | Actions/ErrorAction.cpp \
|
---|
65 | Actions/MakroAction.cpp \
|
---|
66 | Actions/ManipulateAtomsProcess.cpp \
|
---|
67 | Actions/MethodAction.cpp \
|
---|
68 | Actions/Process.cpp
|
---|
69 |
|
---|
70 | ACTIONSHEADER = \
|
---|
71 | Actions/Action.hpp \
|
---|
72 | Actions/ActionHistory.hpp \
|
---|
73 | Actions/ActionRegistry.hpp \
|
---|
74 | Actions/ActionSequence.hpp \
|
---|
75 | Actions/Calculation.hpp \
|
---|
76 | Actions/Calculation_impl.hpp \
|
---|
77 | Actions/ErrorAction.hpp \
|
---|
78 | Actions/MakroAction.hpp \
|
---|
79 | Actions/ManipulateAtomsProcess.hpp \
|
---|
80 | Actions/MapOfActions.hpp \
|
---|
81 | Actions/MethodAction.hpp \
|
---|
82 | Actions/Process.hpp
|
---|
83 |
|
---|
84 | EXCEPTIONSOURCE = \
|
---|
85 | Exceptions/CustomException.cpp \
|
---|
86 | Exceptions/IllegalTypeException.cpp \
|
---|
87 | Exceptions/LinearDependenceException.cpp \
|
---|
88 | Exceptions/MathException.cpp \
|
---|
89 | Exceptions/MissingValueException.cpp \
|
---|
90 | Exceptions/NotInvertibleException.cpp \
|
---|
91 | Exceptions/ParseError.cpp \
|
---|
92 | Exceptions/SkewException.cpp \
|
---|
93 | Exceptions/ZeroVectorException.cpp
|
---|
94 |
|
---|
95 | EXCEPTIONHEADER = \
|
---|
96 | Exceptions/CustomException.hpp \
|
---|
97 | Exceptions/IllegalTypeException.hpp \
|
---|
98 | Exceptions/LinearDependenceException.hpp \
|
---|
99 | Exceptions/MathException.hpp \
|
---|
100 | Exceptions/MissingValueException.hpp \
|
---|
101 | Exceptions/NotInvertibleException.hpp \
|
---|
102 | Exceptions/ParseError.hpp \
|
---|
103 | Exceptions/SkewException.hpp \
|
---|
104 | Exceptions/ZeroVectorException.hpp
|
---|
105 |
|
---|
106 | PARSERSOURCE = \
|
---|
107 | Parser/ChangeTracker.cpp \
|
---|
108 | Parser/FormatParser.cpp \
|
---|
109 | Parser/FormatParserStorage.cpp \
|
---|
110 | Parser/MpqcParser.cpp \
|
---|
111 | Parser/PcpParser.cpp \
|
---|
112 | Parser/TremoloParser.cpp \
|
---|
113 | Parser/XyzParser.cpp
|
---|
114 |
|
---|
115 | PARSERHEADER = \
|
---|
116 | Parser/ChangeTracker.hpp \
|
---|
117 | Parser/FormatParser.hpp \
|
---|
118 | Parser/FormatParserStorage.hpp \
|
---|
119 | Parser/MpqcParser.hpp \
|
---|
120 | Parser/PcpParser.hpp \
|
---|
121 | Parser/TremoloParser.hpp \
|
---|
122 | Parser/XyzParser.hpp
|
---|
123 |
|
---|
124 | PATTERNSOURCE = \
|
---|
125 | Patterns/Observer.cpp
|
---|
126 | PATTERNHEADER = \
|
---|
127 | Patterns/Cacheable.hpp \
|
---|
128 | Patterns/Observer.hpp \
|
---|
129 | Patterns/Singleton.hpp
|
---|
130 |
|
---|
131 | SHAPESOURCE = \
|
---|
132 | Shapes/BaseShapes.cpp \
|
---|
133 | Shapes/Shape.cpp \
|
---|
134 | Shapes/ShapeOps.cpp
|
---|
135 | SHAPEHEADER = \
|
---|
136 | Shapes/BaseShapes.hpp \
|
---|
137 | Shapes/Shape.hpp \
|
---|
138 | Shapes/ShapeOps.hpp
|
---|
139 |
|
---|
140 |
|
---|
141 | DESCRIPTORSOURCE = Descriptors/AtomDescriptor.cpp \
|
---|
142 | Descriptors/AtomIdDescriptor.cpp \
|
---|
143 | Descriptors/AtomSelectionDescriptor.cpp \
|
---|
144 | Descriptors/AtomTypeDescriptor.cpp \
|
---|
145 | Descriptors/MoleculeDescriptor.cpp \
|
---|
146 | Descriptors/MoleculeFormulaDescriptor.cpp \
|
---|
147 | Descriptors/MoleculeIdDescriptor.cpp \
|
---|
148 | Descriptors/MoleculeNameDescriptor.cpp \
|
---|
149 | Descriptors/MoleculePtrDescriptor.cpp \
|
---|
150 | Descriptors/MoleculeSelectionDescriptor.cpp
|
---|
151 |
|
---|
152 |
|
---|
153 | DESCRIPTORHEADER = Descriptors/AtomDescriptor.hpp \
|
---|
154 | Descriptors/AtomIdDescriptor.hpp \
|
---|
155 | Descriptors/AtomSelectionDescriptor.hpp \
|
---|
156 | Descriptors/AtomTypeDescriptor.hpp \
|
---|
157 | Descriptors/MoleculeDescriptor.hpp \
|
---|
158 | Descriptors/MoleculeFormulaDescriptor.hpp \
|
---|
159 | Descriptors/MoleculeIdDescriptor.hpp \
|
---|
160 | Descriptors/MoleculeNameDescriptor.hpp \
|
---|
161 | Descriptors/MoleculePtrDescriptor.hpp \
|
---|
162 | Descriptors/MoleculeSelectionDescriptor.cpp
|
---|
163 |
|
---|
164 |
|
---|
165 | QTUIMOC_HEADER = UIElements/QT4/QTDialog.hpp \
|
---|
166 | UIElements/QT4/QTMainWindow.hpp \
|
---|
167 | UIElements/Menu/QT4/QTMenu.hpp \
|
---|
168 | UIElements/Views/QT4/QTWorldView.hpp \
|
---|
169 | UIElements/Views/QT4/GLMoleculeView.hpp \
|
---|
170 | UIElements/Views/QT4/QTMoleculeView.hpp \
|
---|
171 | UIElements/Views/QT4/QTStatusBar.hpp
|
---|
172 |
|
---|
173 | QTUISOURCE = allmocs.moc.cpp \
|
---|
174 | UIElements/QT4/QTMainWindow.cpp \
|
---|
175 | UIElements/QT4/QTDialog.cpp \
|
---|
176 | UIElements/QT4/QTUIFactory.cpp \
|
---|
177 | UIElements/Menu/QT4/QTMenu.cpp \
|
---|
178 | UIElements/Views/QT4/QTWorldView.cpp \
|
---|
179 | UIElements/Views/QT4/GLMoleculeView.cpp \
|
---|
180 | UIElements/Views/QT4/QTMoleculeView.cpp \
|
---|
181 | UIElements/Views/QT4/QTStatusBar.cpp
|
---|
182 |
|
---|
183 | QTUIHEADER = ${QTUIMOC_HEADER} UIElements/QT4/QTUIFactory.hpp
|
---|
184 |
|
---|
185 | QTUI_DEFS =
|
---|
186 |
|
---|
187 | SOURCE = \
|
---|
188 | ${ANALYSISSOURCE} \
|
---|
189 | ${ACTIONSSOURCE} \
|
---|
190 | ${ATOMSOURCE} \
|
---|
191 | ${EXCEPTIONSOURCE} \
|
---|
192 | ${PATTERNSOURCE} \
|
---|
193 | ${PARSERSOURCE} \
|
---|
194 | ${SHAPESOURCE} \
|
---|
195 | ${DESCRIPTORSOURCE} \
|
---|
196 | bond.cpp \
|
---|
197 | bondgraph.cpp \
|
---|
198 | boundary.cpp \
|
---|
199 | Box.cpp \
|
---|
200 | CommandLineParser.cpp \
|
---|
201 | config.cpp \
|
---|
202 | ConfigFileBuffer.cpp \
|
---|
203 | element.cpp \
|
---|
204 | elements_db.cpp \
|
---|
205 | ellipsoid.cpp \
|
---|
206 | errorlogger.cpp \
|
---|
207 | Formula.cpp \
|
---|
208 | graph.cpp \
|
---|
209 | helpers.cpp \
|
---|
210 | info.cpp \
|
---|
211 | leastsquaremin.cpp \
|
---|
212 | Line.cpp \
|
---|
213 | linkedcell.cpp \
|
---|
214 | log.cpp \
|
---|
215 | logger.cpp \
|
---|
216 | Matrix.cpp \
|
---|
217 | moleculelist.cpp \
|
---|
218 | molecule.cpp \
|
---|
219 | molecule_dynamics.cpp \
|
---|
220 | molecule_fragmentation.cpp \
|
---|
221 | molecule_geometry.cpp \
|
---|
222 | molecule_graph.cpp \
|
---|
223 | molecule_pointcloud.cpp \
|
---|
224 | parser.cpp \
|
---|
225 | periodentafel.cpp \
|
---|
226 | Plane.cpp \
|
---|
227 | tesselation.cpp \
|
---|
228 | tesselationhelpers.cpp \
|
---|
229 | ThermoStatContainer.cpp \
|
---|
230 | triangleintersectionlist.cpp \
|
---|
231 | UIElements/UIFactory.cpp \
|
---|
232 | vector_ops.cpp \
|
---|
233 | verbose.cpp \
|
---|
234 | World.cpp
|
---|
235 |
|
---|
236 | HEADER = \
|
---|
237 | ${ANALYSISHEADER} \
|
---|
238 | ${ACTIONSHEADER} \
|
---|
239 | ${ATOMHEADER} \
|
---|
240 | ${EXCEPTIONHEADER} \
|
---|
241 | ${PARSERHEADER} \
|
---|
242 | ${PATTERNHEADER} \
|
---|
243 | ${SHAPEHEADER} \
|
---|
244 | ${DESCRIPTORHEADER} \
|
---|
245 | bond.hpp \
|
---|
246 | bondgraph.hpp \
|
---|
247 | boundary.hpp \
|
---|
248 | Box.hpp \
|
---|
249 | CommandLineParser.hpp \
|
---|
250 | config.hpp \
|
---|
251 | ConfigFileBuffer.hpp \
|
---|
252 | defs.hpp \
|
---|
253 | element.hpp \
|
---|
254 | elements_db.hpp \
|
---|
255 | ellipsoid.hpp \
|
---|
256 | errorlogger.hpp \
|
---|
257 | Formula.hpp \
|
---|
258 | graph.hpp \
|
---|
259 | helpers.hpp \
|
---|
260 | info.hpp \
|
---|
261 | leastsquaremin.hpp \
|
---|
262 | Line.hpp \
|
---|
263 | linkedcell.hpp \
|
---|
264 | lists.hpp \
|
---|
265 | log.hpp \
|
---|
266 | logger.hpp \
|
---|
267 | Matrix.hpp \
|
---|
268 | molecule.hpp \
|
---|
269 | molecule_template.hpp \
|
---|
270 | parser.hpp \
|
---|
271 | periodentafel.hpp \
|
---|
272 | Plane.hpp \
|
---|
273 | stackclass.hpp \
|
---|
274 | tesselation.hpp \
|
---|
275 | tesselationhelpers.hpp \
|
---|
276 | ThermoStatContainer.hpp \
|
---|
277 | triangleintersectionlist.hpp \
|
---|
278 | UIElements/UIFactory.hpp \
|
---|
279 | verbose.hpp \
|
---|
280 | vector_ops.hpp \
|
---|
281 | World.hpp
|
---|
282 |
|
---|
283 | # the following files are no longer used:
|
---|
284 | # memoryallocator.hpp \
|
---|
285 | # memoryallocator.cpp \
|
---|
286 | # memoryusageobserver.hpp \
|
---|
287 | # memoryusageobserver.cpp
|
---|
288 |
|
---|
289 | BOOST_LIB = $(BOOST_LDFLAGS) $(BOOST_MPL_LIB)
|
---|
290 | GUI_LIBS = ${QT_LDADD} ${QT_LIB_GUI} -lQtOpenGL ${GLU_LIBS}
|
---|
291 | INCLUDES = -I$(top_srcdir)/src/unittests -I$(top_srcdir)/src/Actions -I$(top_srcdir)/src/UIElements
|
---|
292 |
|
---|
293 | noinst_LIBRARIES = libmolecuilderbase.a libmolecuilder.a libgslwrapper.a libmenu.a libparser.a
|
---|
294 | bin_PROGRAMS = molecuilder molecuildergui joiner analyzer
|
---|
295 | EXTRA_PROGRAMS = unity
|
---|
296 |
|
---|
297 | molecuilderdir = ${bindir}
|
---|
298 |
|
---|
299 | libmolecuilderbase_a_SOURCES = ${BASESOURCE} ${BASEHEADER}
|
---|
300 | libmolecuilder_a_SOURCES = ${SOURCE} ${HEADER}
|
---|
301 | libmenu_a_SOURCES = ${UISOURCE} ${UIHEADER}
|
---|
302 | libparser_a_SOURCES = ${PARSERSOURCE} ${PARSERHEADER}
|
---|
303 | libgslwrapper_a_SOURCES = ${LINALGSOURCE} ${LINALGHEADER}
|
---|
304 |
|
---|
305 | molecuilder_DATA = elements.db valence.db orbitals.db Hbonddistance.db Hbondangle.db
|
---|
306 |
|
---|
307 | molecuilder_CXXFLAGS = $(BOOST_CPPFLAGS)
|
---|
308 | #molecuilder_CXXFLAGS += -DNO_CACHING
|
---|
309 | molecuilder_LDFLAGS = $(BOOST_LIB)
|
---|
310 | molecuilder_SOURCES = ${LEGACYSOURCE} builder.cpp
|
---|
311 | molecuilder_SOURCES += $(srcdir)/version.c
|
---|
312 | molecuilder_LDADD = UIElements/libMolecuilderUI.a Actions/libMolecuilderActions.a libmolecuilderbase.a libmolecuilder.a libparser.a libgslwrapper.a $(BOOST_LIB) ${BOOST_THREAD_LIB} ${BOOST_PROGRAM_OPTIONS_LIB}
|
---|
313 |
|
---|
314 | #Stuff for building the GUI using QT
|
---|
315 | molecuildergui_SOURCES = ${QTUISOURCE} ${LEGACYSOURCE} builder.cpp
|
---|
316 | molecuildergui_SOURCES += $(srcdir)/version.c
|
---|
317 | molecuildergui_CXXFLAGS = ${QT_CXXFLAGS} ${GLU_CXXFLAGS} -DUSE_GUI_QT
|
---|
318 | molecuildergui_LDFLAGS = $(BOOST_LIB) ${QT_LDFLAGS} ${GLU_LDFLAGS}
|
---|
319 | molecuildergui_LDADD = UIElements/libMolecuilderUI.a Actions/libMolecuilderActions.a libmolecuilderbase.a libmolecuilder.a libparser.a libgslwrapper.a $(BOOST_LIB) ${BOOST_THREAD_LIB} ${BOOST_PROGRAM_OPTIONS_LIB} ${GUI_LIBS}
|
---|
320 |
|
---|
321 | joiner_SOURCES = joiner.cpp datacreator.cpp parser.cpp datacreator.hpp helpers.hpp parser.hpp periodentafel.hpp
|
---|
322 | joiner_LDADD = libmolecuilder.a libmolecuilderbase.a $(BOOST_LIB) ${BOOST_THREAD_LIB}
|
---|
323 |
|
---|
324 | analyzer_SOURCES = analyzer.cpp datacreator.cpp parser.cpp helpers.hpp periodentafel.hpp parser.hpp datacreator.hpp
|
---|
325 | analyzer_LDADD = libmolecuilder.a libmolecuilderbase.a $(BOOST_LIB) ${BOOST_THREAD_LIB}
|
---|
326 |
|
---|
327 | unity_SOURCES = unity.cpp $(srcdir)/version.c
|
---|
328 | unity_LDADD = $(BOOST_LIB) ${BOOST_THREAD_LIB} ${BOOST_PROGRAM_OPTIONS_LIB}
|
---|
329 |
|
---|
330 | #Rules needed for QT4
|
---|
331 | # UI-Files are scattered throughout several subdirectories
|
---|
332 | # Therfore `%'-rules do not seem to work
|
---|
333 | #Quick fix to get it done otherwise
|
---|
334 | allmocs.moc.cpp: ${QTUIMOC_HEADER}
|
---|
335 | echo "" > allmocs.moc.cpp;\
|
---|
336 | list='$(QTUIMOC_HEADER)'; for header in $$list; do \
|
---|
337 | echo "Making mocfile for $$header"; \
|
---|
338 | target=`basename $$header | sed "s/\(.*\)\..*/\1.moc.cpp/"`;\
|
---|
339 | $(MOC) $(srcdir)/$$header -o $$target \
|
---|
340 | || eval $$failcom; \
|
---|
341 | echo "#include \"$$target\"" >> allmocs.moc.cpp; \
|
---|
342 | done;
|
---|
343 |
|
---|
344 | unity.cpp: ${LINALGSOURCE} ${LINALGHEADER} ${SOURCE} ${HEADER}
|
---|
345 | echo "" > unity.cpp; \
|
---|
346 | list='$(BASESOURCE)'; for file in $$list; do \
|
---|
347 | echo "#include \"$(srcdir)/$$file\"" >> unity.cpp; \
|
---|
348 | done; \
|
---|
349 | list='$(LINALGSOURCE)'; for file in $$list; do \
|
---|
350 | echo "#include \"$(srcdir)/$$file\"" >> unity.cpp; \
|
---|
351 | done; \
|
---|
352 | list='$(SOURCE)'; for file in $$list; do \
|
---|
353 | echo "#include \"$(srcdir)/$$file\"" >> unity.cpp; \
|
---|
354 | done; \
|
---|
355 | subdirs='$(SUBDIRS)';for directory in $$subdirs; do\
|
---|
356 | olddir=$$PWD;\
|
---|
357 | cd $$directory && make unity.cpp;\
|
---|
358 | cd $$olddir;\
|
---|
359 | echo "#include \"$$directory/unity.cpp\"" >> unity.cpp;\
|
---|
360 | done;\
|
---|
361 | echo "#include \"$(srcdir)/builder.cpp\"" >> unity.cpp;
|
---|
362 |
|
---|
363 | MOSTLYCLEANFILES = allmocs.moc.cpp unity.cpp
|
---|
364 |
|
---|
365 | #EXTRA_DIST = ${molecuilder_DATA}
|
---|
366 |
|
---|
367 | FORCE:
|
---|
368 | $(srcdir)/.git-version: FORCE
|
---|
369 | @if (test -d $(top_srcdir)/.git && cd $(srcdir) \
|
---|
370 | && { git describe --dirty --always || git describe; } ) > .git-version-t 2>/dev/null \
|
---|
371 | && ! diff .git-version-t $(srcdir)/.git-version >/dev/null 2>&1; then \
|
---|
372 | mv -f .git-version-t $(srcdir)/.git-version; \
|
---|
373 | else \
|
---|
374 | rm -f .git-version-t; \
|
---|
375 | fi
|
---|
376 |
|
---|
377 | EXTRA_DIST = $(srcdir)/.git-version
|
---|
378 |
|
---|
379 | $(srcdir)/version.c: $(srcdir)/.git-version
|
---|
380 | echo "const char *ESPACKVersion = \"$(PACKAGE_NAME) -- git version: "`cat $(srcdir)/.git-version`"\";" > $@
|
---|
381 |
|
---|
382 |
|
---|