# PLEASE adhere to the alphabetical ordering in this Makefile! # Also indentation by a single tab POTENTIALSSOURCE = \ Potentials/BindingModel.cpp \ Potentials/CompoundPotential.cpp \ Potentials/InternalCoordinates/CoordinatorFactory.cpp \ Potentials/InternalCoordinates/FourBody_ImproperAngle.cpp \ Potentials/InternalCoordinates/FourBody_TorsionAngle.cpp \ Potentials/InternalCoordinates/OneBody_Constant.cpp \ Potentials/InternalCoordinates/ThreeBody_Angle.cpp \ Potentials/InternalCoordinates/TwoBody_Length.cpp \ Potentials/PartialNucleiChargeFitter.cpp \ Potentials/ParticleTypeCheckers.cpp \ Potentials/Particles/Particle.cpp \ Potentials/Particles/ParticleFactory.cpp \ Potentials/Particles/ParticleRegistry.cpp \ Potentials/Particles/StreamFactory_Particle.cpp \ Potentials/PotentialFactory.cpp \ Potentials/PotentialRegistry.cpp \ Potentials/RegistrySerializer_Particle.cpp \ Potentials/SerializablePotential.cpp \ Potentials/Specifics/ConstantPotential.cpp \ Potentials/Specifics/FourBodyPotential_Improper.cpp \ Potentials/Specifics/FourBodyPotential_Torsion.cpp \ Potentials/Specifics/ManyBodyPotential_Tersoff.cpp \ Potentials/Specifics/PairPotential_Harmonic.cpp \ Potentials/Specifics/PairPotential_LennardJones.cpp \ Potentials/Specifics/PairPotential_Morse.cpp \ Potentials/Specifics/PotentialTypes.cpp \ Potentials/Specifics/ThreeBodyPotential_Angle.cpp \ Potentials/StreamFactory_EmpiricalPotential.cpp \ Potentials/TremoloPotentialFileParser.cpp \ Potentials/TremoloPotentialTypes.cpp POTENTIALSHEADER = \ Potentials/BindingModel.hpp \ Potentials/CompoundPotential.hpp \ Potentials/EmpiricalPotential.hpp \ Potentials/Exceptions.hpp \ Potentials/helpers.hpp \ Potentials/InternalCoordinates/Coordinator.hpp \ Potentials/InternalCoordinates/CoordinatorFactory.hpp \ Potentials/InternalCoordinates/FourBody_ImproperAngle.hpp \ Potentials/InternalCoordinates/FourBody_TorsionAngle.hpp \ Potentials/InternalCoordinates/OneBody_Constant.hpp \ Potentials/InternalCoordinates/ThreeBody_Angle.hpp \ Potentials/InternalCoordinates/TwoBody_Length.hpp \ Potentials/PartialNucleiChargeFitter.hpp \ Potentials/ParticleTypeCheckers.hpp \ Potentials/Particles/Particle.hpp \ Potentials/Particles/ParticleFactory.hpp \ Potentials/Particles/ParticleRegistry.hpp \ Potentials/Particles/StreamFactory_Particle.hpp \ Potentials/RegistryDeserializer_impl.hpp \ Potentials/RegistryDeserializer.hpp \ Potentials/PotentialFactory.hpp \ Potentials/PotentialRegistry.hpp \ Potentials/RegistrySerializer_impl.hpp \ Potentials/RegistrySerializer.hpp \ Potentials/SerializablePotential.hpp \ Potentials/Specifics/PotentialTypes.hpp \ Potentials/Specifics/PotentialTypes.def \ Potentials/Specifics/PotentialTypes.undef \ Potentials/StreamFactory.hpp \ Potentials/StreamFactory_EmpiricalPotential.hpp \ Potentials/TremoloPotentialFileParser.hpp \ Potentials/TremoloPotentialTypes.hpp if CONDLEVMAR POTENTIALSHEADER += \ Potentials/PotentialTrainer.hpp POTENTIALSSOURCE += \ Potentials/PotentialTrainer.cpp endif # add here headers for real potentials (i.e. the PotentialFactory should instantiate) SPECIFICPOTENTIALSHEADER = \ Potentials/Specifics/ConstantPotential.hpp \ Potentials/Specifics/FourBodyPotential_Improper.hpp \ Potentials/Specifics/FourBodyPotential_Torsion.hpp \ Potentials/Specifics/ManyBodyPotential_Tersoff.hpp \ Potentials/Specifics/PairPotential_Harmonic.hpp \ Potentials/Specifics/PairPotential_LennardJones.hpp \ Potentials/Specifics/PairPotential_Morse.hpp \ Potentials/Specifics/ThreeBodyPotential_Angle.hpp BUILT_SOURCES += AllPotentialHeaders.hpp noinst_LTLIBRARIES += libMolecuilderPotentials.la libMolecuilderPotentials_la_includedir = $(includedir)/MoleCuilder/ nobase_libMolecuilderPotentials_la_include_HEADERS = ${POTENTIALSHEADER} ${SPECIFICPOTENTIALSHEADER} nodist_libMolecuilderPotentials_la_include_HEADERS = AllPotentialHeaders.hpp ## Define the source file list for the "libexample-@MOLECUILDER_API_VERSION@.la" ## target. Note that @MOLECUILDER_API_VERSION@ is not interpreted by Automake and ## will therefore be treated as if it were literally part of the target name, ## and the variable name derived from that. ## The file extension .cc is recognized by Automake, and makes it produce ## rules which invoke the C++ compiler to produce a libtool object file (.lo) ## from each source file. Note that it is not necessary to list header files ## which are already listed elsewhere in a _HEADERS variable assignment. libMolecuilderPotentials_la_SOURCES = ${POTENTIALSSOURCE} ## Instruct libtool to include ABI version information in the generated shared ## library file (.so). The library ABI version is defined in configure.ac, so ## that all version information is kept in one place. #libMolecuilderPotentials_la_LDFLAGS = -version-info $(MOLECUILDER_SO_VERSION) ## The generated configuration header is installed in its own subdirectory of ## $(libdir). The reason for this is that the configuration information put ## into this header file describes the target platform the installed library ## has been built for. Thus the file must not be installed into a location ## intended for architecture-independent files, as defined by the Filesystem ## Hierarchy Standard (FHS). ## The nodist_ prefix instructs Automake to not generate rules for including ## the listed files in the distribution on 'make dist'. Files that are listed ## in _HEADERS variables are normally included in the distribution, but the ## configuration header file is generated at configure time and should not be ## shipped with the source tarball. #libMolecuilderPotentials_libincludedir = $(libdir)/MoleCuilder/include #nodist_libMolecuilderPotentials_libinclude_HEADERS = $(top_builddir)/libmolecuilder_config.h ## Install the generated pkg-config file (.pc) into the expected location for ## architecture-dependent package configuration information. Occasionally, ## pkg-config files are also used for architecture-independent data packages, ## in which case the correct install location would be $(datadir)/pkgconfig. #pkgconfigdir = $(libdir)/pkgconfig #pkgconfig_DATA = $(top_builddir)/MoleCuilder.pc AllPotentialHeaders.hpp: $(SPECIFICPOTENTIALSHEADER) echo "#ifndef ALLPOTENTIALHEADERS_HPP_" >$@; \ echo "#define ALLPOTENTIALHEADERS_HPP_" >>$@; \ for file in $(SPECIFICPOTENTIALSHEADER); do \ echo "#include \"$$file\"" >>$@; \ done; \ echo "#endif /* ALLPOTENTIALHEADERS_HPP_ */" >>$@; MOSTLYCLEANFILES += \ AllPotentialHeaders.hpp