rdkit_library(ForceField ForceField.cpp FiniteDifference.cpp AngleConstraint.cpp AngleConstraints.cpp DistanceConstraint.cpp DistanceConstraints.cpp PositionConstraint.cpp TorsionConstraint.cpp UFF/AngleBend.cpp UFF/BondStretch.cpp UFF/Nonbonded.cpp UFF/Inversion.cpp UFF/Inversions.cpp UFF/TorsionAngle.cpp UFF/Params.cpp UFF/Utils.cpp MMFF/AngleBend.cpp MMFF/BondStretch.cpp MMFF/StretchBend.cpp MMFF/OopBend.cpp MMFF/TorsionAngle.cpp MMFF/Nonbonded.cpp MMFF/Params.cpp LINK_LIBRARIES Optimizer Trajectory) target_compile_definitions(ForceField PRIVATE RDKIT_FORCEFIELD_BUILD) rdkit_headers(Contrib.h ForceField.h AngleConstraint.h AngleConstraints.h DistanceConstraint.h DistanceConstraints.h PositionConstraint.h TorsionConstraint.h DEST ForceField) rdkit_headers(UFF/AngleBend.h UFF/BondStretch.h UFF/Contribs.h UFF/DistanceConstraint.h UFF/AngleConstraint.h UFF/TorsionConstraint.h UFF/PositionConstraint.h UFF/Nonbonded.h UFF/Params.h UFF/Utils.h UFF/Inversion.h UFF/Inversions.h UFF/TorsionAngle.h DEST ForceField/UFF) rdkit_headers(MMFF/AngleBend.h MMFF/BondStretch.h MMFF/StretchBend.h MMFF/OopBend.h MMFF/TorsionAngle.h MMFF/Nonbonded.h MMFF/Contribs.h MMFF/DistanceConstraint.h MMFF/AngleConstraint.h MMFF/TorsionConstraint.h MMFF/PositionConstraint.h MMFF/Params.h DEST ForceField/MMFF) rdkit_catch_test(ForceFieldsCatch catch_tests.cpp LINK_LIBRARIES ForceField ForceFieldHelpers) add_subdirectory(UFF) add_subdirectory(MMFF) if(RDK_BUILD_PYTHON_WRAPPERS) add_subdirectory(Wrap) endif()