source: src/Makefile.am@ bcedf7

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

Extension of usage of Tsuna's boost.m4 macro.

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