ATOMSOURCE = atom.cpp atom_atominfo.cpp atom_bondedparticle.cpp atom_bondedparticleinfo.cpp atom_graphnode.cpp atom_graphnodeinfo.cpp atom_particleinfo.cpp atom_trajectoryparticle.cpp atom_trajectoryparticleinfo.cpp ATOMHEADER = atom.hpp atom_atominfo.hpp atom_bondedparticle.hpp atom_bondedparticleinfo.hpp atom_graphnode.hpp atom_graphnodeinfo.hpp atom_particleinfo.hpp atom_trajectoryparticle.hpp atom_trajectoryparticleinfo.hpp LINALGSOURCE = gslmatrix.cpp gslvector.cpp linearsystemofequations.cpp LINALGHEADER = gslmatrix.hpp gslvector.hpp linearsystemofequations.hpp ANALYSISSOURCE = analysis_bonds.cpp analysis_correlation.cpp ANALYSISHEADER = analysis_bonds.hpp analysis_correlation.hpp # only include Actions that are free of user interaction at this point # the UIFactory et. al. wont be known for the libmolecuilder, so the user interaction cannot be done. ACTIONSSOURCE = Actions/Action.cpp Actions/Process.cpp Actions/MethodAction.cpp Actions/ActionSequence.cpp Actions/MakroAction.cpp Actions/ManipulateAtomsProcess.cpp Actions/ActionRegistry.cpp ACTIONSHEADER = Actions/Action.hpp Actions/Process.hpp Actions/Calculation.hpp Actions/Calculation_impl.hpp Actions/MethodAction.hpp Actions/ActionSequence.hpp Actions/MakroAction.hpp Actions/ManipulateAtomsProcess.hpp Actions/ActionRegistry.hpp # All actions that need user interaction go here MENUACTIONSSOURCE = Actions/ErrorAction.cpp Actions/small_actions.cpp MENUACTIONSHEADER = Actions/ErrorAction.hpp Actions/small_actions.hpp PATTERNSOURCE = Patterns/Observer.cpp PATTERNHEADER = Patterns/Observer.hpp Patterns/Cacheable.hpp VIEWSOURCE = Views/View.cpp Views/StringView.cpp Views/MethodStringView.cpp Views/StreamStringView.cpp VIEWHEADER = Views/View.hpp Views/StringView.hpp Views/MethodStringView.hpp Views/StreamStringView.hpp MENUSOURCE = Menu/Menu.cpp Menu/TextMenu.cpp Menu/MenuItem.cpp Menu/SubMenuItem.cpp Menu/ActionMenuItem.cpp Menu/SeperatorItem.cpp Menu/DisplayMenuItem.cpp MENUHEADER = Menu/Menu.hpp Menu/TextMenu.hpp Menu/MenuItem.hpp Menu/SubMenuItem.hpp Menu/ActionMenuItem.hpp Menu/SeperatorItem.hpp Menu/DisplayMenuItem.hpp UISOURCE = ${MENUACTIONSSOURCE} ${VIEWSOURCE} ${MENUSOURCE} UIElements/TextUIFactory.cpp UIElements/MainWindow.cpp UIElements/TextWindow.cpp UIElements/Dialog.cpp UIElements/TextDialog.cpp UIElements/TextStatusIndicator.cpp UIHEADER = ${MENUACTIONSHEADER} ${VIEWHEADER} ${MENUHEADER} UIElements/TextUIFactory.hpp UIElements/MainWindow.hpp UIElements/TextWindow.hpp UIElements/Dialog.hpp UIElements/TextDialog.hpp UIElements/TextStatusIndicator.hpp FACTORYSOURCE = UIElements/UIFactory.cpp FACTORYHEADER = UIElements/UIFactory.hpp # all these files are only used for legacy reasons while the transition is in progress # they are only needed to keep the program usable at any point of the transition and will be # deleted once everything is fully refactored LEGACYSOURCE = Legacy/oldmenu.cpp LEGACYHEADER = Legacy/oldmenu.hpp QTUIMOC_HEADER = UIElements/QT4/QTMainWindow.hpp UIElements/QT4/QTDialog.hpp Menu/QT4/QTMenu.hpp Views/QT4/QTMoleculesView.hpp Views/QT4/GLMoleculeView.hpp Views/QT4/QTStatusBar.hpp QTUIMOC_TARGETS = QTMainWindow.moc.cpp QTMenu.moc.cpp QTDialog.moc.cpp QTMoleculesView.moc.cpp GLMoleculeView.moc.cpp QTStatusBar.moc.cpp DESCRIPTORSOURCE = Descriptors/AtomDescriptor.cpp Descriptors/AtomIdDescriptor.cpp Descriptors/AtomTypeDescriptor.cpp DESCRIPTORHEADER = Descriptors/AtomDescriptor.hpp Descriptors/AtomIdDescriptor.hpp Descriptors/AtomTypeDescriptor.hpp QTUISOURCE = ${QTUIMOC_TARGETS} UIElements/QT4/QTMainWindow.cpp UIElements/QT4/QTDialog.cpp UIElements/QT4/QTUIFactory.cpp Menu/QT4/QTMenu.cpp Views/QT4/QTMoleculesView.cpp Views/QT4/GLMoleculeView.cpp Views/QT4/QTStatusBar.cpp QTUIHEADER = ${QTUIMOC_HEADER} UIElements/QT4/QTUIFactory.hpp QTUI_DEFS = SOURCE = ${ANALYSISSOURCE} ${ATOMSOURCE} ${PATTERNSOURCE} ${ACTIONSSOURCE} ${DESCRIPTORSOURCE} bond.cpp bondgraph.cpp boundary.cpp config.cpp element.cpp ellipsoid.cpp errorlogger.cpp graph.cpp helpers.cpp info.cpp leastsquaremin.cpp linkedcell.cpp lists.cpp log.cpp logger.cpp memoryusageobserver.cpp moleculelist.cpp molecule.cpp molecule_dynamics.cpp molecule_fragmentation.cpp molecule_geometry.cpp molecule_graph.cpp molecule_pointcloud.cpp parser.cpp periodentafel.cpp tesselation.cpp tesselationhelpers.cpp vector.cpp verbose.cpp World.cpp WorldIterators.cpp HEADER = ${ANALYSISHEADER} ${ATOMHEADER} ${PATTERNHEADER} ${ACTIONSHEADER} ${DESCRIPTORHEADER} ${LEGACYHEADER} bond.hpp bondgraph.hpp boundary.hpp config.hpp defs.hpp element.hpp ellipsoid.hpp errorlogger.hpp graph.hpp helpers.hpp info.hpp leastsquaremin.hpp linkedcell.hpp lists.hpp log.hpp logger.hpp memoryallocator.hpp memoryusageobserver.hpp molecule.hpp molecule_template.hpp parser.hpp periodentafel.hpp stackclass.hpp tesselation.hpp tesselationhelpers.hpp vector.hpp verbose.hpp World.hpp BOOST_LIB = $(BOOST_LDFLAGS) $(BOOST_MPL_LIB) GUI_LIBS = ${QT_LDADD} ${QT_LIB_GUI} -lQtOpenGL ${GLU_LIBS} INCLUDES = -I$(top_srcdir)/src/unittests noinst_LIBRARIES = libmolecuilder.a libgslwrapper.a libmenu.a bin_PROGRAMS = molecuilder molecuildergui joiner analyzer molecuilderdir = ${bindir} #libmolecuilder_a_CXXFLAGS = -DNO_CACHING libmolecuilder_a_SOURCES = ${SOURCE} ${HEADER} libmenu_a_SOURCES = ${UISOURCE} ${UIHEADER} libgslwrapper_a_SOURCES = ${LINALGSOURCE} ${LINALGHEADER} molecuilder_DATA = elements.db valence.db orbitals.db Hbonddistance.db Hbondangle.db molecuilder_CXXFLAGS = $(BOOST_CPPFLAGS) #molecuilder_CXXFLAGS += -DNO_CACHING molecuilder_LDFLAGS = $(BOOST_LIB) molecuilder_SOURCES = ${FACTORYSOURCE} ${LEGACYSOURCE} builder.cpp molecuilder_SOURCES += $(srcdir)/version.c molecuilder_LDADD = libmolecuilder.a libgslwrapper.a libmenu.a ${BOOST_THREAD_LIB} #Stuff for building the GUI using QT molecuildergui_SOURCES = ${QTUISOURCE} ${FACTORYSOURCE} ${LEGACYSOURCE} builder.cpp molecuildergui_SOURCES += $(srcdir)/version.c molecuildergui_CXXFLAGS = ${QT_CXXFLAGS} ${GLU_CXXFLAGS} -DUSE_GUI_QT molecuildergui_LDFLAGS = $(BOOST_LIB) ${QT_LDFLAGS} ${GLU_LDFLAGS} molecuildergui_LDADD = libmolecuilder.a libgslwrapper.a libmenu.a ${BOOST_THREAD_LIB} ${GUI_LIBS} joiner_SOURCES = joiner.cpp datacreator.cpp parser.cpp datacreator.hpp helpers.hpp parser.hpp periodentafel.hpp joiner_LDADD = libmolecuilder.a $(BOOST_LIB) ${BOOST_THREAD_LIB} analyzer_SOURCES = analyzer.cpp datacreator.cpp parser.cpp helpers.hpp periodentafel.hpp parser.hpp datacreator.hpp analyzer_LDADD = libmolecuilder.a $(BOOST_LIB) ${BOOST_THREAD_LIB} #Rules needed for QT4 # UI-Files are scattered throughout several subdirectories # Therfore `%'-rules do not seem to work #Quick fix to get it done otherwise ${QTUIMOC_TARGETS}: ${QTUIMOC_HEADER} list='$(QTUIMOC_HEADER)'; for header in $$list; do \ echo "Making mocfile for $$header"; \ target=`basename $$header | sed "s/\(.*\)\..*/\1.moc.cpp/"`;\ $(MOC) $(srcdir)/$$header -o $$target \ || eval $$failcom; \ done; MOSTLYCLEANFILES = ${QTUIMOC_TARGETS} #EXTRA_DIST = ${molecuilder_DATA} FORCE: $(srcdir)/.git-version: FORCE @if (test -d $(top_srcdir)/../.git && cd $(srcdir) && git describe HEAD) > .git-version-t 2>/dev/null \ && ! diff .git-version-t $(srcdir)/.git-version >/dev/null 2>&1; then \ mv -f .git-version-t $(srcdir)/.git-version; \ else \ rm -f .git-version-t; \ fi EXTRA_DIST = $(srcdir)/.git-version $(srcdir)/version.c: $(srcdir)/.git-version echo "const char *ESPACKVersion = \"$(PACKAGE_NAME) -- git version: "`cat $(srcdir)/.git-version`"\";" > $@