1 | # PLEASE adhere to the alphabetical ordering in this Makefile!
|
---|
2 | # Also indentation by a single tab
|
---|
3 |
|
---|
4 | SUBDIRS = \
|
---|
5 | Exceptions \
|
---|
6 | RandomNumbers \
|
---|
7 | Parser \
|
---|
8 | LinearAlgebra \
|
---|
9 | Shapes \
|
---|
10 | Actions \
|
---|
11 | UIElements
|
---|
12 |
|
---|
13 | AM_CPPFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS}
|
---|
14 |
|
---|
15 | ATOMSOURCE = \
|
---|
16 | atom.cpp \
|
---|
17 | AtomicInfo.cpp \
|
---|
18 | atom_atominfo.cpp \
|
---|
19 | atom_bondedparticle.cpp \
|
---|
20 | atom_bondedparticleinfo.cpp \
|
---|
21 | atom_graphnode.cpp \
|
---|
22 | atom_graphnodeinfo.cpp \
|
---|
23 | atom_particleinfo.cpp \
|
---|
24 | atom_trajectoryparticle.cpp \
|
---|
25 | atom_trajectoryparticleinfo.cpp
|
---|
26 | ATOMHEADER = \
|
---|
27 | atom.hpp \
|
---|
28 | AtomicInfo.hpp \
|
---|
29 | atom_atominfo.hpp \
|
---|
30 | atom_bondedparticle.hpp \
|
---|
31 | atom_bondedparticleinfo.hpp \
|
---|
32 | atom_graphnode.hpp \
|
---|
33 | atom_graphnodeinfo.hpp \
|
---|
34 | atom_particleinfo.hpp \
|
---|
35 | atom_trajectoryparticle.hpp \
|
---|
36 | atom_trajectoryparticleinfo.hpp
|
---|
37 |
|
---|
38 | ANALYSISSOURCE = \
|
---|
39 | analysis_bonds.cpp \
|
---|
40 | analysis_correlation.cpp
|
---|
41 | ANALYSISHEADER = \
|
---|
42 | analysis_bonds.hpp \
|
---|
43 | analysis_correlation.hpp
|
---|
44 |
|
---|
45 | ACTIONSSOURCE = \
|
---|
46 | Actions/Action.cpp \
|
---|
47 | Actions/ActionHistory.cpp \
|
---|
48 | Actions/ActionRegistry.cpp \
|
---|
49 | Actions/ActionSequence.cpp \
|
---|
50 | Actions/ActionTraits.cpp \
|
---|
51 | Actions/ErrorAction.cpp \
|
---|
52 | Actions/MakroAction.cpp \
|
---|
53 | Actions/ManipulateAtomsProcess.cpp \
|
---|
54 | Actions/MethodAction.cpp \
|
---|
55 | Actions/OptionRegistry.cpp \
|
---|
56 | Actions/OptionTrait.cpp \
|
---|
57 | Actions/Process.cpp
|
---|
58 |
|
---|
59 | ACTIONSHEADER = \
|
---|
60 | Actions/Action.hpp \
|
---|
61 | Actions/ActionHistory.hpp \
|
---|
62 | Actions/ActionRegistry.hpp \
|
---|
63 | Actions/ActionSequence.hpp \
|
---|
64 | Actions/ActionTraits.hpp \
|
---|
65 | Actions/Calculation.hpp \
|
---|
66 | Actions/Calculation_impl.hpp \
|
---|
67 | Actions/ErrorAction.hpp \
|
---|
68 | Actions/MakroAction.hpp \
|
---|
69 | Actions/ManipulateAtomsProcess.hpp \
|
---|
70 | Actions/MethodAction.hpp \
|
---|
71 | Actions/OptionRegistry.hpp \
|
---|
72 | Actions/OptionTrait.hpp \
|
---|
73 | Actions/Process.hpp
|
---|
74 |
|
---|
75 |
|
---|
76 | DESCRIPTORSOURCE = \
|
---|
77 | Descriptors/AtomDescriptor.cpp \
|
---|
78 | Descriptors/AtomIdDescriptor.cpp \
|
---|
79 | Descriptors/AtomOfMoleculeSelectionDescriptor.cpp \
|
---|
80 | Descriptors/AtomSelectionDescriptor.cpp \
|
---|
81 | Descriptors/AtomShapeDescriptor.cpp \
|
---|
82 | Descriptors/AtomTypeDescriptor.cpp \
|
---|
83 | Descriptors/MoleculeDescriptor.cpp \
|
---|
84 | Descriptors/MoleculeFormulaDescriptor.cpp \
|
---|
85 | Descriptors/MoleculeIdDescriptor.cpp \
|
---|
86 | Descriptors/MoleculeNameDescriptor.cpp \
|
---|
87 | Descriptors/MoleculeOfAtomSelectionDescriptor.cpp \
|
---|
88 | Descriptors/MoleculeOrderDescriptor.cpp \
|
---|
89 | Descriptors/MoleculePtrDescriptor.cpp \
|
---|
90 | Descriptors/MoleculeSelectionDescriptor.cpp
|
---|
91 |
|
---|
92 |
|
---|
93 | DESCRIPTORHEADER = \
|
---|
94 | Descriptors/AtomDescriptor.hpp \
|
---|
95 | Descriptors/AtomIdDescriptor.hpp \
|
---|
96 | Descriptors/AtomOfMoleculeSelectionDescriptor.hpp \
|
---|
97 | Descriptors/AtomSelectionDescriptor.hpp \
|
---|
98 | Descriptors/AtomShapeDescriptor.hpp \
|
---|
99 | Descriptors/AtomTypeDescriptor.hpp \
|
---|
100 | Descriptors/MoleculeDescriptor.hpp \
|
---|
101 | Descriptors/MoleculeFormulaDescriptor.hpp \
|
---|
102 | Descriptors/MoleculeIdDescriptor.hpp \
|
---|
103 | Descriptors/MoleculeNameDescriptor.hpp \
|
---|
104 | Descriptors/MoleculeOfAtomSelectionDescriptor.hpp \
|
---|
105 | Descriptors/MoleculeOrderDescriptor.hpp \
|
---|
106 | Descriptors/MoleculePtrDescriptor.hpp \
|
---|
107 | Descriptors/MoleculeSelectionDescriptor.hpp
|
---|
108 |
|
---|
109 | DESCRIPTORIMPLHEADER = \
|
---|
110 | Descriptors/AtomDescriptor_impl.hpp \
|
---|
111 | Descriptors/AtomIdDescriptor_impl.hpp \
|
---|
112 | Descriptors/AtomOfMoleculeSelectionDescriptor_impl.hpp \
|
---|
113 | Descriptors/AtomSelectionDescriptor_impl.hpp \
|
---|
114 | Descriptors/AtomShapeDescriptor_impl.hpp \
|
---|
115 | Descriptors/AtomTypeDescriptor_impl.hpp \
|
---|
116 | Descriptors/MoleculeDescriptor_impl.hpp \
|
---|
117 | Descriptors/MoleculeFormulaDescriptor_impl.hpp \
|
---|
118 | Descriptors/MoleculeIdDescriptor_impl.hpp \
|
---|
119 | Descriptors/MoleculeNameDescriptor_impl.hpp \
|
---|
120 | Descriptors/MoleculeOfAtomSelectionDescriptor_impl.hpp \
|
---|
121 | Descriptors/MoleculeOrderDescriptor_impl.hpp \
|
---|
122 | Descriptors/MoleculePtrDescriptor_impl.hpp \
|
---|
123 | Descriptors/MoleculeSelectionDescriptor_impl.hpp
|
---|
124 |
|
---|
125 | THERMOSTATSOURCE = \
|
---|
126 | Thermostats/Berendsen.cpp \
|
---|
127 | Thermostats/GaussianThermostat.cpp \
|
---|
128 | Thermostats/Langevin.cpp \
|
---|
129 | Thermostats/NoseHoover.cpp \
|
---|
130 | Thermostats/NoThermostat.cpp \
|
---|
131 | Thermostats/Thermostat.cpp \
|
---|
132 | Thermostats/Woodcock.cpp
|
---|
133 |
|
---|
134 | THERMOSTATHEADER = \
|
---|
135 | Thermostats/Berendsen.hpp \
|
---|
136 | Thermostats/GaussianThermostat.hpp \
|
---|
137 | Thermostats/Langevin.hpp \
|
---|
138 | Thermostats/NoseHoover.hpp \
|
---|
139 | Thermostats/NoThermostat.hpp \
|
---|
140 | Thermostats/Thermostat.hpp \
|
---|
141 | Thermostats/Woodcock.hpp
|
---|
142 |
|
---|
143 | TESSELATIONSOURCE = \
|
---|
144 | BoundaryLineSet.cpp \
|
---|
145 | BoundaryPointSet.cpp \
|
---|
146 | BoundaryPolygonSet.cpp \
|
---|
147 | BoundaryTriangleSet.cpp \
|
---|
148 | CandidateForTesselation.cpp \
|
---|
149 | PointCloud.cpp \
|
---|
150 | tesselation.cpp \
|
---|
151 | tesselationhelpers.cpp \
|
---|
152 | TesselPoint.cpp
|
---|
153 |
|
---|
154 | TESSELATIONHEADER = \
|
---|
155 | BoundaryLineSet.hpp \
|
---|
156 | BoundaryPointSet.hpp \
|
---|
157 | BoundaryPolygonSet.hpp \
|
---|
158 | BoundaryTriangleSet.hpp \
|
---|
159 | CandidateForTesselation.hpp \
|
---|
160 | PointCloud.hpp \
|
---|
161 | tesselation.hpp \
|
---|
162 | tesselationhelpers.hpp \
|
---|
163 | TesselPoint.hpp
|
---|
164 |
|
---|
165 | MOLECUILDERSOURCE = \
|
---|
166 | ${ANALYSISSOURCE} \
|
---|
167 | ${ACTIONSSOURCE} \
|
---|
168 | ${ATOMSOURCE} \
|
---|
169 | ${DESCRIPTORSOURCE} \
|
---|
170 | ${RANDOMSOURCE} \
|
---|
171 | ${THERMOSTATSOURCE} \
|
---|
172 | ${TESSELATIONSOURCE} \
|
---|
173 | Helpers/defs.cpp \
|
---|
174 | Helpers/helpers.cpp \
|
---|
175 | bond.cpp \
|
---|
176 | bondgraph.cpp \
|
---|
177 | boundary.cpp \
|
---|
178 | Box.cpp \
|
---|
179 | config.cpp \
|
---|
180 | ConfigFileBuffer.cpp \
|
---|
181 | element.cpp \
|
---|
182 | elements_db.cpp \
|
---|
183 | ellipsoid.cpp \
|
---|
184 | Formula.cpp \
|
---|
185 | graph.cpp \
|
---|
186 | linkedcell.cpp \
|
---|
187 | moleculelist.cpp \
|
---|
188 | molecule.cpp \
|
---|
189 | molecule_dynamics.cpp \
|
---|
190 | molecule_fragmentation.cpp \
|
---|
191 | molecule_geometry.cpp \
|
---|
192 | molecule_graph.cpp \
|
---|
193 | molecule_pointcloud.cpp \
|
---|
194 | parser.cpp \
|
---|
195 | periodentafel.cpp \
|
---|
196 | ThermoStatContainer.cpp \
|
---|
197 | triangleintersectionlist.cpp \
|
---|
198 | UIElements/UIFactory.cpp \
|
---|
199 | World.cpp \
|
---|
200 | WorldTime.cpp
|
---|
201 |
|
---|
202 | MOLECUILDERHEADER = \
|
---|
203 | ${ANALYSISHEADER} \
|
---|
204 | ${ACTIONSHEADER} \
|
---|
205 | ${ATOMHEADER} \
|
---|
206 | ${DESCRIPTORHEADER} \
|
---|
207 | ${DESCRIPTORIMPLHEADER} \
|
---|
208 | ${RANDOMSOURCE} \
|
---|
209 | ${THERMOSTATHEADER} \
|
---|
210 | ${TESSELATIONHEADER} \
|
---|
211 | Helpers/defs.hpp \
|
---|
212 | Helpers/fast_functions.hpp \
|
---|
213 | Helpers/helpers.hpp \
|
---|
214 | bond.hpp \
|
---|
215 | bondgraph.hpp \
|
---|
216 | boundary.hpp \
|
---|
217 | Box.hpp \
|
---|
218 | config.hpp \
|
---|
219 | ConfigFileBuffer.hpp \
|
---|
220 | element.hpp \
|
---|
221 | elements_db.hpp \
|
---|
222 | ellipsoid.hpp \
|
---|
223 | Formula.hpp \
|
---|
224 | graph.hpp \
|
---|
225 | linkedcell.hpp \
|
---|
226 | lists.hpp \
|
---|
227 | molecule.hpp \
|
---|
228 | parser.hpp \
|
---|
229 | periodentafel.hpp \
|
---|
230 | ThermoStatContainer.hpp \
|
---|
231 | triangleintersectionlist.hpp \
|
---|
232 | UIElements/UIFactory.hpp \
|
---|
233 | World.hpp \
|
---|
234 | WorldTime.hpp
|
---|
235 |
|
---|
236 | lib_LTLIBRARIES = libMolecuilder.la
|
---|
237 | libMolecuilder_la_includedir = $(includedir)/MoleCuilder/
|
---|
238 | libMolecuilder_la_LIBADD = \
|
---|
239 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
240 | ${CodePatterns_LIBS} \
|
---|
241 | ${BOOST_PROGRAM_OPTIONS_LIB}
|
---|
242 |
|
---|
243 | nobase_libMolecuilder_la_include_HEADERS = ${MOLECUILDERHEADER}
|
---|
244 |
|
---|
245 | ## Define the source file list for the "libexample-@MOLECUILDER_API_VERSION@.la"
|
---|
246 | ## target. Note that @MOLECUILDER_API_VERSION@ is not interpreted by Automake and
|
---|
247 | ## will therefore be treated as if it were literally part of the target name,
|
---|
248 | ## and the variable name derived from that.
|
---|
249 | ## The file extension .cc is recognized by Automake, and makes it produce
|
---|
250 | ## rules which invoke the C++ compiler to produce a libtool object file (.lo)
|
---|
251 | ## from each source file. Note that it is not necessary to list header files
|
---|
252 | ## which are already listed elsewhere in a _HEADERS variable assignment.
|
---|
253 | libMolecuilder_la_SOURCES = ${MOLECUILDERSOURCE} $(srcdir)/version.c
|
---|
254 |
|
---|
255 | ## Instruct libtool to include ABI version information in the generated shared
|
---|
256 | ## library file (.so). The library ABI version is defined in configure.ac, so
|
---|
257 | ## that all version information is kept in one place.
|
---|
258 | libMolecuilder_la_LDFLAGS = -version-info $(MOLECUILDER_SO_VERSION)
|
---|
259 |
|
---|
260 | ## The generated configuration header is installed in its own subdirectory of
|
---|
261 | ## $(libdir). The reason for this is that the configuration information put
|
---|
262 | ## into this header file describes the target platform the installed library
|
---|
263 | ## has been built for. Thus the file must not be installed into a location
|
---|
264 | ## intended for architecture-independent files, as defined by the Filesystem
|
---|
265 | ## Hierarchy Standard (FHS).
|
---|
266 | ## The nodist_ prefix instructs Automake to not generate rules for including
|
---|
267 | ## the listed files in the distribution on 'make dist'. Files that are listed
|
---|
268 | ## in _HEADERS variables are normally included in the distribution, but the
|
---|
269 | ## configuration header file is generated at configure time and should not be
|
---|
270 | ## shipped with the source tarball.
|
---|
271 | libMolecuilder_la_libincludedir = $(libdir)/MoleCuilder/include
|
---|
272 | nodist_libMolecuilder_la_libinclude_HEADERS = $(top_builddir)/libmolecuilder_config.h
|
---|
273 |
|
---|
274 | ## Install the generated pkg-config file (.pc) into the expected location for
|
---|
275 | ## architecture-dependent package configuration information. Occasionally,
|
---|
276 | ## pkg-config files are also used for architecture-independent data packages,
|
---|
277 | ## in which case the correct install location would be $(datadir)/pkgconfig.
|
---|
278 | pkgconfigdir = $(libdir)/pkgconfig
|
---|
279 | pkgconfig_DATA = $(top_builddir)/MoleCuilder.pc
|
---|
280 |
|
---|
281 |
|
---|
282 | BOOST_LIB = $(BOOST_LDFLAGS) $(BOOST_MPL_LIB) $(BOOST_PROGRAM_OPTIONS_LIB) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB) $(BOOST_THREAD_LIB)
|
---|
283 | INCLUDES = -I$(top_srcdir)/src/unittests -I$(top_srcdir)/src/Actions -I$(top_srcdir)/src/UIElements
|
---|
284 |
|
---|
285 | noinst_LIBRARIES = libmenu.a
|
---|
286 | bin_PROGRAMS = molecuilder molecuildergui joiner analyzer SubspaceFactorizer
|
---|
287 | EXTRA_PROGRAMS = unity
|
---|
288 |
|
---|
289 | molecuilderdir = ${bindir}
|
---|
290 |
|
---|
291 | libmenu_a_SOURCES = ${UISOURCE} ${UIHEADER}
|
---|
292 |
|
---|
293 | molecuilder_DATA = elements.db valence.db orbitals.db Hbonddistance.db Hbondangle.db
|
---|
294 |
|
---|
295 | SubspaceFactorizer_CXXFLAGS = $(BOOST_CPPFLAGS)
|
---|
296 | SubspaceFactorizer_SOURCES = SubspaceFactorizer.cpp Helpers/defs.cpp Helpers/defs.hpp Helpers/helpers.cpp Helpers/helpers.hpp
|
---|
297 | SubspaceFactorizer_LDADD = \
|
---|
298 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
299 | Exceptions/libMolecuilderExceptions.la \
|
---|
300 | ${CodePatterns_LIBS} \
|
---|
301 | $(GSLLIB) \
|
---|
302 | $(BOOST_LIB)
|
---|
303 |
|
---|
304 | molecuilder_CXXFLAGS = $(BOOST_CPPFLAGS)
|
---|
305 | #molecuilder_CXXFLAGS += -DNO_CACHING
|
---|
306 | molecuilder_LDFLAGS = $(BOOST_LIB)
|
---|
307 | molecuilder_SOURCES = builder.cpp builder_init.cpp builder_init.hpp
|
---|
308 | molecuilder_LDADD = \
|
---|
309 | UIElements/libMolecuilderUI.la \
|
---|
310 | Actions/libMolecuilderActions.la \
|
---|
311 | libMolecuilder.la \
|
---|
312 | Parser/libMolecuilderParser.la \
|
---|
313 | Shapes/libMolecuilderShapes.la \
|
---|
314 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
315 | Exceptions/libMolecuilderExceptions.la \
|
---|
316 | RandomNumbers/libMolecuilderRandomNumbers.la \
|
---|
317 | ${CodePatterns_LIBS} \
|
---|
318 | $(BOOST_LIB)
|
---|
319 |
|
---|
320 | #Stuff for building the GUI using Qt
|
---|
321 | molecuildergui_SOURCES = builder.cpp builder_init.cpp builder_init.hpp
|
---|
322 | molecuildergui_CXXFLAGS = $(BOOST_CPPFLAGS) -DUSE_GUI_QT
|
---|
323 | molecuildergui_LDFLAGS = $(BOOST_LIB)
|
---|
324 |
|
---|
325 | unity_SOURCES = unity.cpp
|
---|
326 | unity_LDADD = $(BOOST_LIB)
|
---|
327 |
|
---|
328 | molecuildergui_LDADD = \
|
---|
329 | UIElements/libMolecuilderUI.la \
|
---|
330 | UIElements/libMolecuilderQtUI.la \
|
---|
331 | Actions/libMolecuilderActions.la \
|
---|
332 | libMolecuilder.la \
|
---|
333 | Parser/libMolecuilderParser.la \
|
---|
334 | Shapes/libMolecuilderShapes.la \
|
---|
335 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
336 | Exceptions/libMolecuilderExceptions.la \
|
---|
337 | RandomNumbers/libMolecuilderRandomNumbers.la \
|
---|
338 | ${CodePatterns_LIBS} \
|
---|
339 | $(BOOST_LIB) \
|
---|
340 | ${GUI_LIBS}
|
---|
341 |
|
---|
342 | joiner_SOURCES = joiner.cpp datacreator.cpp datacreator.hpp periodentafel.hpp
|
---|
343 | joiner_LDADD = \
|
---|
344 | UIElements/libMolecuilderUI.la \
|
---|
345 | Actions/libMolecuilderActions.la \
|
---|
346 | libMolecuilder.la \
|
---|
347 | Parser/libMolecuilderParser.la \
|
---|
348 | Shapes/libMolecuilderShapes.la \
|
---|
349 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
350 | Exceptions/libMolecuilderExceptions.la \
|
---|
351 | RandomNumbers/libMolecuilderRandomNumbers.la \
|
---|
352 | ${CodePatterns_LIBS} \
|
---|
353 | $(BOOST_LIB)
|
---|
354 |
|
---|
355 | analyzer_SOURCES = analyzer.cpp datacreator.cpp periodentafel.hpp datacreator.hpp
|
---|
356 | analyzer_LDADD = \
|
---|
357 | UIElements/libMolecuilderUI.la \
|
---|
358 | Actions/libMolecuilderActions.la \
|
---|
359 | libMolecuilder.la \
|
---|
360 | Parser/libMolecuilderParser.la \
|
---|
361 | Shapes/libMolecuilderShapes.la \
|
---|
362 | LinearAlgebra/libMolecuilderLinearAlgebra.la \
|
---|
363 | Exceptions/libMolecuilderExceptions.la \
|
---|
364 | RandomNumbers/libMolecuilderRandomNumbers.la \
|
---|
365 | ${CodePatterns_LIBS} \
|
---|
366 | $(BOOST_LIB)
|
---|
367 |
|
---|
368 | #EXTRA_DIST = ${molecuilder_DATA}
|
---|
369 |
|
---|
370 | FORCE:
|
---|
371 | $(srcdir)/.git-version: FORCE
|
---|
372 | @if (test -d $(top_srcdir)/.git && cd $(srcdir) \
|
---|
373 | && { git describe --dirty --always || git describe; } ) > .git-version-t 2>/dev/null \
|
---|
374 | && ! diff .git-version-t $(srcdir)/.git-version >/dev/null 2>&1; then \
|
---|
375 | mv -f .git-version-t $(srcdir)/.git-version; \
|
---|
376 | else \
|
---|
377 | rm -f .git-version-t; \
|
---|
378 | fi
|
---|
379 |
|
---|
380 | EXTRA_DIST = $(srcdir)/.git-version
|
---|
381 |
|
---|
382 | $(srcdir)/version.c: $(srcdir)/.git-version
|
---|
383 | echo "const char *MOLECUILDERVERSION = \"$(PACKAGE_NAME) version "`cat $(srcdir)/.git-version`"\";" > $@
|
---|
384 |
|
---|
385 |
|
---|
386 | unity.cpp: ${MOLECUILDERSOURCE} ${MOLECUILDERHEADER}
|
---|
387 | echo "#include \"$(srcdir)/Helpers/MemDebug.cpp\"" > unity.cpp; \
|
---|
388 | list='$(MOLECUILDERSOURCE)'; for file in $$list; do \
|
---|
389 | echo "#include \"$(srcdir)/$$file\"" >> unity.cpp; \
|
---|
390 | done; \
|
---|
391 | subdirs='$(SUBDIRS)';for directory in $$subdirs; do\
|
---|
392 | olddir=$$PWD;\
|
---|
393 | cd $$directory && make unity.cpp;\
|
---|
394 | cd $$olddir;\
|
---|
395 | echo "#include \"$$directory/unity.cpp\"" >> unity.cpp;\
|
---|
396 | done;\
|
---|
397 | echo "#include \"$(srcdir)/builder.cpp\"" >> unity.cpp;
|
---|
398 | echo "#include \"$(srcdir)/version.c\"" >> unity.cpp;
|
---|
399 |
|
---|
400 | MOSTLYCLEANFILES = unity.cpp
|
---|
401 |
|
---|