source: src/Makefile.am@ 41a467

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 41a467 was 41a467, checked in by Frederik Heber <heber@…>, 14 years ago

LARGE: config class is now just a tiny container.

  • this was loooooobg overdue. Config.cpp contained remnants from parsing pcp files and much else. Also fragmentation depended on it. Since refactoring of MoleculeListClass and the fragmentation, we don't need it anymore.
  • helper functions ParseForParameters(), LoadMolecule() extracted into new module PcpParser_helper.
  • config class now just contains 4 variables that are generally required (especially IsAngstroem) and they should probably remain with the world.
  • removed some places where config.hpp was no unnecessarily included.
  • Moved ConfigFileBuffer.* over to subfolder src/Parser/ where it rather belongs (associated with PcpParser).
  • Property mode set to 100644
File size: 11.5 KB
Line 
1# PLEASE adhere to the alphabetical ordering in this Makefile!
2# Also indentation by a single tab
3
4MOSTLYCLEANFILES =
5lib_LTLIBRARIES =
6noinst_LTLIBRARIES =
7bin_PROGRAMS =
8
9include Actions/Makefile.am
10include Analysis/Makefile.am
11include Element/Makefile.am
12include Fragmentation/Makefile.am
13include Graph/Makefile.am
14include Helpers/Makefile.am
15include Parser/Makefile.am
16include RandomNumbers/Makefile.am
17include Shapes/Makefile.am
18include UIElements/Makefile.am
19
20AM_LDFLAGS = -ldl ${BOOST_LDFLAGS}
21AM_CPPFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS}
22
23ATOMSOURCE = \
24 atom.cpp \
25 AtomicInfo.cpp \
26 atom_atominfo.cpp \
27 atom_bondedparticle.cpp \
28 atom_bondedparticleinfo.cpp \
29 atom_graphnode.cpp \
30 atom_graphnodeinfo.cpp \
31 atom_observable.cpp \
32 atom_particleinfo.cpp
33ATOMHEADER = \
34 atom.hpp \
35 atom_atominfo.hpp \
36 atom_bondedparticle.hpp \
37 atom_bondedparticleinfo.hpp \
38 atom_graphnode.hpp \
39 atom_graphnodeinfo.hpp \
40 atom_observable.hpp \
41 atom_particleinfo.hpp \
42 AtomicInfo.hpp \
43 AtomSet.hpp
44
45BONDSOURCE = \
46 Bond/bond.cpp \
47 Bond/GraphEdge.cpp
48
49BONDHEADER = \
50 Bond/bond.hpp \
51 Bond/GraphEdge.hpp
52
53DESCRIPTORSOURCE = \
54 Descriptors/AtomDescriptor.cpp \
55 Descriptors/AtomIdDescriptor.cpp \
56 Descriptors/AtomOfMoleculeSelectionDescriptor.cpp \
57 Descriptors/AtomSelectionDescriptor.cpp \
58 Descriptors/AtomShapeDescriptor.cpp \
59 Descriptors/AtomTypeDescriptor.cpp \
60 Descriptors/MoleculeDescriptor.cpp \
61 Descriptors/MoleculeFormulaDescriptor.cpp \
62 Descriptors/MoleculeIdDescriptor.cpp \
63 Descriptors/MoleculeNameDescriptor.cpp \
64 Descriptors/MoleculeOfAtomSelectionDescriptor.cpp \
65 Descriptors/MoleculeOrderDescriptor.cpp \
66 Descriptors/MoleculePtrDescriptor.cpp \
67 Descriptors/MoleculeSelectionDescriptor.cpp
68
69
70DESCRIPTORHEADER = \
71 Descriptors/AtomDescriptor.hpp \
72 Descriptors/AtomIdDescriptor.hpp \
73 Descriptors/AtomOfMoleculeSelectionDescriptor.hpp \
74 Descriptors/AtomSelectionDescriptor.hpp \
75 Descriptors/AtomShapeDescriptor.hpp \
76 Descriptors/AtomTypeDescriptor.hpp \
77 Descriptors/DescriptorBase.hpp \
78 Descriptors/MoleculeDescriptor.hpp \
79 Descriptors/MoleculeFormulaDescriptor.hpp \
80 Descriptors/MoleculeIdDescriptor.hpp \
81 Descriptors/MoleculeNameDescriptor.hpp \
82 Descriptors/MoleculeOfAtomSelectionDescriptor.hpp \
83 Descriptors/MoleculeOrderDescriptor.hpp \
84 Descriptors/MoleculePtrDescriptor.hpp \
85 Descriptors/MoleculeSelectionDescriptor.hpp \
86 Descriptors/SelectiveIterator.hpp
87
88DESCRIPTORIMPLHEADER = \
89 Descriptors/AtomDescriptor_impl.hpp \
90 Descriptors/AtomIdDescriptor_impl.hpp \
91 Descriptors/AtomOfMoleculeSelectionDescriptor_impl.hpp \
92 Descriptors/AtomSelectionDescriptor_impl.hpp \
93 Descriptors/AtomShapeDescriptor_impl.hpp \
94 Descriptors/AtomTypeDescriptor_impl.hpp \
95 Descriptors/DescriptorBase_impl.hpp \
96 Descriptors/MoleculeDescriptor_impl.hpp \
97 Descriptors/MoleculeFormulaDescriptor_impl.hpp \
98 Descriptors/MoleculeIdDescriptor_impl.hpp \
99 Descriptors/MoleculeNameDescriptor_impl.hpp \
100 Descriptors/MoleculeOfAtomSelectionDescriptor_impl.hpp \
101 Descriptors/MoleculeOrderDescriptor_impl.hpp \
102 Descriptors/MoleculePtrDescriptor_impl.hpp \
103 Descriptors/MoleculeSelectionDescriptor_impl.hpp \
104 Descriptors/SelectiveIterator_impl.hpp
105
106DYNAMICSSOURCE = \
107 Dynamics/MinimiseConstrainedPotential.cpp
108
109DYNAMICSHEADER = \
110 Dynamics/LinearInterpolationBetweenSteps.hpp \
111 Dynamics/MinimiseConstrainedPotential.hpp \
112 Dynamics/OutputTemperature.hpp \
113 Dynamics/VerletForceIntegration.hpp
114
115THERMOSTATSOURCE = \
116 Thermostats/Berendsen.cpp \
117 Thermostats/GaussianThermostat.cpp \
118 Thermostats/Langevin.cpp \
119 Thermostats/NoseHoover.cpp \
120 Thermostats/NoThermostat.cpp \
121 Thermostats/Thermostat.cpp \
122 Thermostats/Woodcock.cpp
123
124THERMOSTATHEADER = \
125 Thermostats/Berendsen.hpp \
126 Thermostats/GaussianThermostat.hpp \
127 Thermostats/Langevin.hpp \
128 Thermostats/NoseHoover.hpp \
129 Thermostats/NoThermostat.hpp \
130 Thermostats/Thermostat.hpp \
131 Thermostats/Woodcock.hpp
132
133TESSELATIONSOURCE = \
134 Tesselation/boundary.cpp \
135 Tesselation/BoundaryLineSet.cpp \
136 Tesselation/BoundaryPointSet.cpp \
137 Tesselation/BoundaryPolygonSet.cpp \
138 Tesselation/BoundaryTriangleSet.cpp \
139 Tesselation/CandidateForTesselation.cpp \
140 Tesselation/ellipsoid.cpp \
141 Tesselation/tesselation.cpp \
142 Tesselation/tesselationhelpers.cpp \
143 Tesselation/TesselPoint.cpp \
144 Tesselation/triangleintersectionlist.cpp
145
146TESSELATIONHEADER = \
147 Tesselation/boundary.hpp \
148 Tesselation/BoundaryLineSet.hpp \
149 Tesselation/BoundaryMaps.hpp \
150 Tesselation/BoundaryPointSet.hpp \
151 Tesselation/BoundaryPolygonSet.hpp \
152 Tesselation/BoundaryTriangleSet.hpp \
153 Tesselation/CandidateForTesselation.hpp \
154 Tesselation/ellipsoid.hpp \
155 IPointCloud.hpp \
156 PointCloudAdaptor.hpp \
157 Tesselation/tesselation.hpp \
158 Tesselation/tesselationhelpers.hpp \
159 Tesselation/TesselPoint.hpp \
160 Tesselation/triangleintersectionlist.hpp
161
162MOLECUILDERSOURCE = \
163 ${ATOMSOURCE} \
164 ${BONDSOURCE} \
165 ${DESCRIPTORSOURCE} \
166 ${DYNAMICSSOURCE} \
167 ${THERMOSTATSOURCE} \
168 ${TESSELATIONSOURCE} \
169 Box.cpp \
170 config.cpp \
171 Formula.cpp \
172 linkedcell.cpp \
173 MoleculeLeafClass.cpp \
174 moleculelist.cpp \
175 molecule.cpp \
176 molecule_geometry.cpp \
177 molecule_graph.cpp \
178 ThermoStatContainer.cpp \
179 UIElements/UIFactory.cpp \
180 version.c \
181 World.cpp \
182 WorldTime.cpp
183
184MOLECUILDERHEADER = \
185 ${ATOMHEADER} \
186 ${BONDHEADER} \
187 ${DESCRIPTORHEADER} \
188 ${DESCRIPTORIMPLHEADER} \
189 ${DYNAMICSHEADER} \
190 ${THERMOSTATHEADER} \
191 ${TESSELATIONHEADER} \
192 Box.hpp \
193 config.hpp \
194 Formula.hpp \
195 linkedcell.hpp \
196 MoleculeLeafClass.hpp \
197 molecule.hpp \
198 ThermoStatContainer.hpp \
199 types.hpp \
200 UIElements/UIFactory.hpp \
201 version.h \
202 World.hpp \
203 World_calculations.hpp \
204 WorldTime.hpp
205
206noinst_LTLIBRARIES += libMolecuilder.la
207libMolecuilder_la_includedir = $(includedir)/MoleCuilder/
208
209nobase_libMolecuilder_la_include_HEADERS = ${MOLECUILDERHEADER}
210
211## Define the source file list for the "libexample-@MOLECUILDER_API_VERSION@.la"
212## target. Note that @MOLECUILDER_API_VERSION@ is not interpreted by Automake and
213## will therefore be treated as if it were literally part of the target name,
214## and the variable name derived from that.
215## The file extension .cc is recognized by Automake, and makes it produce
216## rules which invoke the C++ compiler to produce a libtool object file (.lo)
217## from each source file. Note that it is not necessary to list header files
218## which are already listed elsewhere in a _HEADERS variable assignment.
219libMolecuilder_la_SOURCES = ${MOLECUILDERSOURCE}
220
221## Instruct libtool to include ABI version information in the generated shared
222## library file (.so). The library ABI version is defined in configure.ac, so
223## that all version information is kept in one place.
224#libMolecuilder_la_LDFLAGS = -version-info $(MOLECUILDER_SO_VERSION)
225
226## The generated configuration header is installed in its own subdirectory of
227## $(libdir). The reason for this is that the configuration information put
228## into this header file describes the target platform the installed library
229## has been built for. Thus the file must not be installed into a location
230## intended for architecture-independent files, as defined by the Filesystem
231## Hierarchy Standard (FHS).
232## The nodist_ prefix instructs Automake to not generate rules for including
233## the listed files in the distribution on 'make dist'. Files that are listed
234## in _HEADERS variables are normally included in the distribution, but the
235## configuration header file is generated at configure time and should not be
236## shipped with the source tarball.
237libMolecuilder_la_libincludedir = $(libdir)/MoleCuilder/include
238nodist_libMolecuilder_la_libinclude_HEADERS = $(top_builddir)/libmolecuilder_config.h
239
240## Install the generated pkg-config file (.pc) into the expected location for
241## architecture-dependent package configuration information. Occasionally,
242## pkg-config files are also used for architecture-independent data packages,
243## in which case the correct install location would be $(datadir)/pkgconfig.
244pkgconfigdir = $(libdir)/pkgconfig
245pkgconfig_DATA = $(top_builddir)/MoleCuilder.pc
246
247
248INCLUDES = -I$(top_srcdir)/src/unittests -I$(top_srcdir)/src/Actions -I$(top_srcdir)/src/UIElements -I$(top_srcdir)/LinearAlgebra/src
249
250noinst_LIBRARIES = libmenu.a
251bin_PROGRAMS += molecuilder molecuildergui joiner analyzer
252EXTRA_PROGRAMS = unity
253
254molecuilderdir = ${bindir}
255
256libmenu_a_SOURCES = ${UISOURCE} ${UIHEADER}
257
258molecuilder_DATA = Element/elements.db Element/valence.db Element/orbitals.db Element/Hbonddistance.db Element/Hbondangle.db
259
260molecuilder_CXXFLAGS = $(AM_CPPFLAGS)
261#molecuilder_CXXFLAGS += -DNO_CACHING
262molecuilder_LDFLAGS = $(AM_LDFLAGS) $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_PROGRAM_OPTIONS_LDFLAGS) $(BOOST_RANDOM_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_THREAD_LDFLAGS)
263molecuilder_SOURCES = builder.cpp builder_init.cpp builder_init.hpp
264molecuilder_LDADD = \
265 libMolecuilderUI.la \
266 $(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
267 ${CodePatterns_LIBS} \
268 $(BOOST_THREAD_LIBS) \
269 $(BOOST_PROGRAM_OPTIONS_LIBS) \
270 $(BOOST_RANDOM_LIBS) \
271 $(BOOST_SYSTEM_LIBS) \
272 $(BOOST_FILESYSTEM_LIBS)
273
274#Stuff for building the GUI using Qt
275molecuildergui_SOURCES = builder.cpp builder_init.cpp builder_init.hpp
276molecuildergui_CXXFLAGS = $(AM_CPPFLAGS) -DUSE_GUI_QT
277molecuildergui_LDFLAGS = $(AM_LDFLAGS) $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_PROGRAM_OPTIONS_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_THREAD_LDFLAGS)
278molecuildergui_LDADD = \
279 libMolecuilderQtUI.la \
280 libMolecuilderUI.la \
281 $(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
282 ${CodePatterns_LIBS} \
283 $(BOOST_THREAD_LIBS) \
284 $(BOOST_PROGRAM_OPTIONS_LIBS) \
285 $(BOOST_RANDOM_LIBS) \
286 $(BOOST_SYSTEM_LIBS) \
287 $(BOOST_FILESYSTEM_LIBS) \
288 $(GUI_LIBS)
289
290joiner_SOURCES = Fragmentation/joiner.cpp Fragmentation/datacreator.cpp Fragmentation/datacreator.hpp
291joiner_LDADD = \
292 libMolecuilderFragmentation.la \
293 libMolecuilderHelpers.la \
294 libMolecuilderElement.la \
295 $(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
296 ${CodePatterns_LIBS} \
297 $(BOOST_THREAD_LIBS)
298
299analyzer_SOURCES = Fragmentation/analyzer.cpp Fragmentation/datacreator.cpp Fragmentation/datacreator.hpp
300analyzer_LDADD = \
301 libMolecuilderFragmentation.la \
302 libMolecuilderHelpers.la \
303 libMolecuilderElement.la \
304 $(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
305 ${CodePatterns_LIBS} \
306 $(BOOST_THREAD_LIBS)
307
308unity_SOURCES = unity.cpp
309unity_LDADD = \
310 ${CodePatterns_LIBS} \
311 $(BOOST_THREAD_LIBS) \
312 $(BOOST_PROGRAM_OPTIONS_LIBS) \
313 $(BOOST_RANDOM_LIBS) \
314 $(BOOST_SYSTEM_LIBS) \
315 $(BOOST_FILESYSTEM_LIBS)
316
317
318FORCE:
319$(srcdir)/.git-version: FORCE
320 @if (test -d $(top_srcdir)/.git && cd $(srcdir) \
321 && { git describe --dirty --always || git describe; } ) > .git-version-t 2>/dev/null \
322 && ! diff .git-version-t $(srcdir)/.git-version >/dev/null 2>&1; then \
323 mv -f .git-version-t $(srcdir)/.git-version; \
324 else \
325 rm -f .git-version-t; \
326 fi
327
328EXTRA_DIST = $(srcdir)/.git-version $(molecuilder_DATA)
329
330$(srcdir)/version.c: $(srcdir)/.git-version
331 echo "const char *MOLECUILDERVERSION = \"$(PACKAGE_NAME) version "`cat $(srcdir)/.git-version`"\";" > $@
332
333
334unity.cpp: ${MOLECUILDERSOURCE} ${MOLECUILDERHEADER}
335 echo "#include \"$(srcdir)/Helpers/MemDebug.cpp\"" > unity.cpp; \
336 list='$(MOLECUILDERSOURCE)'; for file in $$list; do \
337 echo "#include \"$(srcdir)/$$file\"" >> unity.cpp; \
338 done; \
339 subdirs='$(SUBDIRS)';for directory in $$subdirs; do\
340 olddir=$$PWD;\
341 cd $$directory && make unity.cpp;\
342 cd $$olddir;\
343 echo "#include \"$$directory/unity.cpp\"" >> unity.cpp;\
344 done;\
345 echo "#include \"$(srcdir)/builder.cpp\"" >> unity.cpp;
346 echo "#include \"$(srcdir)/version.c\"" >> unity.cpp;
347
348MOSTLYCLEANFILES += unity.cpp
349
Note: See TracBrowser for help on using the repository browser.