source: src/Makefile.am@ dda246

Action_Thermostats Add_AtomRandomPerturbation Add_FitFragmentPartialChargesAction Add_RotateAroundBondAction Add_SelectAtomByNameAction Added_ParseSaveFragmentResults AddingActions_SaveParseParticleParameters Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_ParticleName_to_Atom Adding_StructOpt_integration_tests AtomFragments Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.5.4 Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator CombiningParticlePotentialParsing Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_BoundInBox_CenterInBox_MoleculeActions Fix_ChargeSampling_PBC Fix_ChronosMutex Fix_FitPartialCharges Fix_FitPotential_needs_atomicnumbers Fix_ForceAnnealing Fix_IndependentFragmentGrids Fix_ParseParticles Fix_ParseParticles_split_forward_backward_Actions Fix_PopActions Fix_QtFragmentList_sorted_selection Fix_Restrictedkeyset_FragmentMolecule Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns Fix_fitting_potentials Fixes ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion FragmentAction_writes_AtomFragments FragmentMolecule_checks_bonddegrees GeometryObjects Gui_Fixes Gui_displays_atomic_force_velocity ImplicitCharges IndependentFragmentGrids IndependentFragmentGrids_IndividualZeroInstances IndependentFragmentGrids_IntegrationTest IndependentFragmentGrids_Sole_NN_Calculation JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix MoreRobust_FragmentAutomation ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PdbParser_setsAtomName PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks Rewrite_FitPartialCharges RotateToPrincipalAxisSystem_UndoRedo SaturateAtoms_findBestMatching SaturateAtoms_singleDegree StoppableMakroAction Subpackage_CodePatterns Subpackage_JobMarket Subpackage_LinearAlgebra Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg Switchable_LogView ThirdParty_MPQC_rebuilt_buildsystem TrajectoryDependenant_MaxOrder TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps TremoloParser_setsAtomName Ubuntu_1604_changes stable
Last change on this file since dda246 was dda246, checked in by Frederik Heber <heber@…>, 14 years ago

Made Helpers into commodity library to prevent double inclusion.

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