source: src/Makefile.am@ fa56f0

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

Begin of Refactoring of ParseCommandLineOptions().

  • new singleton class CommandLineParser which wraps boost's program_options
  • main() uses the new CommandLineParser and calls UIFactory with CommandLine specizliation if commands detected.
  • files added toe Makefile.am
  • BOOST_PROGRAM_OPTIONS added to configure.ac
  • BOOST_PROGRAM_OPTIONS_LIB added to molecuilder/src/Makefile.am

Signed-off-by: Frederik Heber <heber@…>

  • Property mode set to 100644
File size: 9.0 KB
Line 
1# PLEASE adhere to the alphabetical ordering in this Makefile!
2# Also indentation by a single tab
3
4# this includes source files that need to be present at multiple points
5HELPERSOURCE = \
6 Helpers/Assert.cpp \
7 Helpers/MemDebug.cpp
8
9ATOMSOURCE = \
10 atom.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 atom_atominfo.hpp \
22 atom_bondedparticle.hpp \
23 atom_bondedparticleinfo.hpp \
24 atom_graphnode.hpp \
25 atom_graphnodeinfo.hpp \
26 atom_particleinfo.hpp \
27 atom_trajectoryparticle.hpp \
28 atom_trajectoryparticleinfo.hpp
29
30LINALGSOURCE = \
31 ${HELPERSOURCE} \
32 gslmatrix.cpp \
33 gslvector.cpp \
34 linearsystemofequations.cpp \
35 Space.cpp \
36 vector.cpp
37
38LINALGHEADER = gslmatrix.hpp \
39 gslvector.hpp \
40 linearsystemofequations.hpp \
41 Space.hpp \
42 vector.hpp
43
44ANALYSISSOURCE = \
45 analysis_bonds.cpp \
46 analysis_correlation.cpp
47ANALYSISHEADER = \
48 analysis_bonds.hpp \
49 analysis_correlation.hpp
50
51ACTIONSSOURCE = Actions/Action.cpp \
52 ${ATOMACTIONSOURCE} \
53 ${FRAGMENTATIONACTIONSOURCE} \
54 ${MOLECULEACTIONSOURCE} \
55 ${PARSERACTIONSOURCE} \
56 ${TESSELATIONACTIONSOURCE} \
57 Actions/ActionHistory.cpp \
58 Actions/ActionRegistry.cpp \
59 Actions/ActionSequence.cpp \
60 Actions/ErrorAction.cpp \
61 Actions/MakroAction.cpp \
62 Actions/ManipulateAtomsProcess.cpp \
63 Actions/MethodAction.cpp \
64 Actions/Process.cpp
65
66ACTIONSHEADER = Actions/Action.hpp \
67 ${ATOMACTIONHEADER} \
68 ${FRAGMENTATIONACTIONHEADER} \
69 ${MOLECULEACTIONHEADER} \
70 ${PARSERACTIONHEADER} \
71 ${TESSELATIONACTIONHEADER} \
72 Actions/ActionHistory.hpp \
73 Actions/ActionRegistry.hpp \
74 Actions/ActionSequence.hpp \
75 Actions/Calculation.hpp \
76 Actions/Calculation_impl.hpp \
77 Actions/ErrorAction.hpp \
78 Actions/MakroAction.hpp \
79 Actions/ManipulateAtomsProcess.hpp \
80 Actions/MethodAction.hpp \
81 Actions/Process.hpp
82
83ATOMACTIONSOURCE =
84# Actions/AtomAction/SomeAction.cpp
85ATOMACTIONHEADER =
86# Actions/AtomAction/SomeAction.hpp
87
88FRAGMENTATIONACTIONSOURCE =
89# Actions/FragmentationAction/SomeAction.cpp
90FRAGMENTATIONACTIONHEADER =
91# Actions/FragmentationAction/SomeAction.hpp
92
93MOLECULEACTIONSOURCE = \
94 Actions/MoleculeAction/ChangeNameAction.cpp
95MOLECULEACTIONHEADER = \
96 Actions/MoleculeAction/ChangeNameAction.hpp
97
98PARSERACTIONSOURCE = \
99 Actions/ParserAction/LoadXyzAction.cpp \
100 Actions/ParserAction/SaveXyzAction.cpp
101PARSERACTIONHEADER = \
102 Actions/ParserAction/LoadXyzAction.hpp \
103 Actions/ParserAction/SaveXyzAction.hpp
104
105TESSELATIONACTIONSOURCE =
106# Actions/TesselationAction/SomeAction.cpp
107TESSELATIONACTIONHEADER =
108# Actions/TesselationAction/SomeAction.hpp
109
110PARSERSOURCE = \
111 Parser/ChangeTracker.cpp \
112 Parser/FormatParser.cpp \
113 Parser/TremoloParser.cpp \
114 Parser/XyzParser.cpp
115PARSERHEADER = \
116 Parser/ChangeTracker.hpp \
117 Parser/FormatParser.hpp \
118 Parser/TremoloParser.hpp \
119 Parser/XyzParser.hpp
120
121PATTERNSOURCE = \
122 Patterns/Observer.cpp
123PATTERNHEADER = \
124 Patterns/Cacheable.hpp \
125 Patterns/Observer.hpp \
126 Patterns/Singleton.hpp
127
128# Below is all for the User Interface
129
130VIEWSOURCE = \
131 Views/View.cpp \
132 Views/StringView.cpp \
133 Views/MethodStringView.cpp \
134 Views/StreamStringView.cpp
135VIEWHEADER = \
136 Views/View.hpp \
137 Views/StringView.hpp \
138 Views/MethodStringView.hpp \
139 Views/StreamStringView.hpp
140
141MENUSOURCE = \
142 Menu/Menu.cpp \
143 Menu/TextMenu.cpp \
144 Menu/MenuItem.cpp \
145 Menu/SubMenuItem.cpp \
146 Menu/ActionMenuItem.cpp \
147 Menu/SeperatorItem.cpp \
148 Menu/DisplayMenuItem.cpp
149
150MENUHEADER = \
151 Menu/Menu.hpp \
152 Menu/TextMenu.hpp \
153 Menu/MenuItem.hpp \
154 Menu/SubMenuItem.hpp \
155 Menu/ActionMenuItem.hpp \
156 Menu/SeperatorItem.hpp \
157 Menu/DisplayMenuItem.hpp
158
159UISOURCE = \
160 ${ACTIONSSOURCE} \
161 ${COMMANDLINEUISOURCE} \
162 ${MENUSOURCE} \
163 ${TEXTUISOURCE} \
164 ${VIEWSOURCE} \
165 UIElements/Dialog.cpp \
166 UIElements/MainWindow.cpp \
167 UIElements/UIFactory.cpp
168
169UIHEADER = \
170 ${ACTIONSHEADER} \
171 ${COMMANDLINEUIHEADER} \
172 ${MENUHEADER} \
173 ${TEXTUIHEADER} \
174 ${VIEWHEADER} \
175 UIElements/Dialog.hpp \
176 UIElements/MainWindow.hpp \
177 UIElements/UIFactory.hpp
178
179TEXTUISOURCE = \
180 UIElements/TextDialog.cpp \
181 UIElements/TextStatusIndicator.cpp \
182 UIElements/TextUIFactory.cpp \
183 UIElements/TextWindow.cpp
184TEXTUIHEADER = \
185 UIElements/TextDialog.hpp \
186 UIElements/TextStatusIndicator.hpp \
187 UIElements/TextUIFactory.hpp \
188 UIElements/TextWindow.hpp
189
190COMMANDLINEUISOURCE = \
191 UIElements/CommandLineDialog.cpp \
192 UIElements/CommandLineStatusIndicator.cpp \
193 UIElements/CommandLineUIFactory.cpp \
194 UIElements/CommandLineWindow.cpp
195COMMANDLINEUIHEADER = \
196 UIElements/CommandLineDialog.hpp \
197 UIElements/CommandLineStatusIndicator.hpp \
198 UIElements/CommandLineUIFactory.hpp \
199 UIElements/CommandLineWindow.hpp
200
201# all these files are only used for legacy reasons while the transition is in progress
202# they are only needed to keep the program usable at any point of the transition and will be
203# deleted once everything is fully refactored
204LEGACYSOURCE = Legacy/oldmenu.cpp
205LEGACYHEADER = Legacy/oldmenu.hpp
206
207DESCRIPTORSOURCE = Descriptors/AtomDescriptor.cpp \
208 Descriptors/AtomIdDescriptor.cpp \
209 Descriptors/AtomTypeDescriptor.cpp \
210 Descriptors/MoleculeDescriptor.cpp \
211 Descriptors/MoleculeIdDescriptor.cpp
212
213
214DESCRIPTORHEADER = Descriptors/AtomDescriptor.hpp \
215 Descriptors/AtomIdDescriptor.hpp \
216 Descriptors/AtomTypeDescriptor.hpp \
217 Descriptors/MoleculeDescriptor.hpp \
218 Descriptors/MoleculeIdDescriptor.hpp
219
220EXCEPTIONSOURCE = Exceptions/CustomException.cpp \
221 Exceptions/LinearDependenceException.cpp \
222 Exceptions/MathException.cpp \
223 Exceptions/ZeroVectorException.cpp
224
225EXCEPTIONHEADER = Exceptions/CustomException.hpp \
226 Exceptions/LinearDependenceException.hpp \
227 Exceptions/MathException.hpp \
228 Exceptions/ZeroVectorException.hpp
229
230SOURCE = \
231 ${ANALYSISSOURCE} \
232 ${ATOMSOURCE} \
233 ${PATTERNSOURCE} \
234 ${PARSERSOURCE} \
235 ${UISOURCE} \
236 ${DESCRIPTORSOURCE} \
237 ${HELPERSOURCE} \
238 ${LEGACYSOURCE} \
239 ${EXCEPTIONSOURCE} \
240 bond.cpp \
241 bondgraph.cpp \
242 boundary.cpp \
243 CommandLineParser.cpp \
244 config.cpp \
245 element.cpp \
246 ellipsoid.cpp \
247 errorlogger.cpp \
248 graph.cpp \
249 helpers.cpp \
250 info.cpp \
251 leastsquaremin.cpp \
252 Line.cpp \
253 linkedcell.cpp \
254 lists.cpp \
255 log.cpp \
256 logger.cpp \
257 memoryusageobserver.cpp \
258 moleculelist.cpp \
259 molecule.cpp \
260 molecule_dynamics.cpp \
261 molecule_fragmentation.cpp \
262 molecule_geometry.cpp \
263 molecule_graph.cpp \
264 molecule_pointcloud.cpp \
265 parser.cpp \
266 periodentafel.cpp \
267 Plane.cpp \
268 tesselation.cpp \
269 tesselationhelpers.cpp \
270 triangleintersectionlist.cpp \
271 verbose.cpp \
272 vector_ops.cpp \
273 World.cpp
274
275HEADER = \
276 ${ANALYSISHEADER} \
277 ${ATOMHEADER} \
278 ${PARSERHEADER} \
279 ${PATTERNHEADER} \
280 ${UIHEADER} \
281 ${DESCRIPTORHEADER} \
282 ${EXCEPTIONHEADER} \
283 ${LEGACYHEADER} \
284 bond.hpp \
285 bondgraph.hpp \
286 boundary.hpp \
287 CommandLineParser.hpp \
288 config.hpp \
289 defs.hpp \
290 element.hpp \
291 ellipsoid.hpp \
292 errorlogger.hpp \
293 graph.hpp \
294 helpers.hpp \
295 info.hpp \
296 leastsquaremin.hpp \
297 Line.hpp \
298 linkedcell.hpp \
299 lists.hpp \
300 log.hpp \
301 logger.hpp \
302 memoryallocator.hpp \
303 memoryusageobserver.hpp \
304 molecule.hpp \
305 molecule_template.hpp \
306 parser.hpp \
307 periodentafel.hpp \
308 Plane.hpp \
309 stackclass.hpp \
310 tesselation.hpp \
311 tesselationhelpers.hpp \
312 triangleintersectionlist.hpp \
313 verbose.hpp \
314 vector_ops.hpp \
315 World.hpp
316
317BOOST_LIB = $(BOOST_LDFLAGS) $(BOOST_MPL_LIB)
318INCLUDES = -I$(top_srcdir)/src/unittests
319
320noinst_LIBRARIES = libmolecuilder.a libgslwrapper.a
321bin_PROGRAMS = molecuilder joiner analyzer
322molecuilderdir = ${bindir}
323libmolecuilder_a_SOURCES = ${SOURCE} ${HEADER}
324libgslwrapper_a_SOURCES = ${LINALGSOURCE} ${LINALGHEADER}
325molecuilder_DATA = elements.db valence.db orbitals.db Hbonddistance.db Hbondangle.db
326molecuilder_LDFLAGS = $(BOOST_LDFLAGS)
327molecuilder_SOURCES = builder.cpp
328molecuilder_LDADD = libmolecuilder.a libgslwrapper.a $(BOOST_LIB) ${BOOST_THREAD_LIB} ${BOOST_PROGRAM_OPTIONS_LIB}
329joiner_SOURCES = joiner.cpp datacreator.cpp parser.cpp datacreator.hpp helpers.hpp parser.hpp periodentafel.hpp
330joiner_LDADD = libmolecuilder.a $(BOOST_LIB) ${BOOST_THREAD_LIB}
331analyzer_SOURCES = analyzer.cpp datacreator.cpp parser.cpp helpers.hpp periodentafel.hpp parser.hpp datacreator.hpp
332analyzer_LDADD = libmolecuilder.a $(BOOST_LIB) ${BOOST_THREAD_LIB}
333
334FORCE:
335$(srcdir)/.git-version: FORCE
336 @if (test -d $(top_srcdir)/../.git && cd $(srcdir) && git describe HEAD) > .git-version-t 2>/dev/null \
337 && ! diff .git-version-t $(srcdir)/.git-version >/dev/null 2>&1; then \
338 mv -f .git-version-t $(srcdir)/.git-version; \
339 else \
340 rm -f .git-version-t; \
341 fi
342
343EXTRA_DIST = $(srcdir)/.git-version
344
345$(srcdir)/version.c: $(srcdir)/.git-version
346 echo "const char *ESPACKVersion = \"$(PACKAGE_NAME) -- git version: "`cat $(srcdir)/.git-version`"\";" > $@
347
348molecuilder_SOURCES += $(srcdir)/version.c
Note: See TracBrowser for help on using the repository browser.