source: src/Makefile.am@ a0064e

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

Moved stuff in src/Helpers and src/Patterns out to stand-alone project CodePatterns.

Makefile.am's:

  • CodePatterns added to AM_LDFLAGS and AM_CFLAGS
  • libMoleCuilderHelpers removed

Helpers/...

  • defs.hpp include prefixed with Helpers/
  • helpers.?pp removed lots of old, unused functions: bound, ask_value, ...
  • fast_functions.hpp has lots of functions removed as well.
  • all other files and unit tests moved to project CodePatterns.

Patterns/...

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