296 lines
11 KiB
CMake
296 lines
11 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
|
|
project(OndselSolver VERSION 1.0.1 DESCRIPTION "Assembly Constraints and Multibody Dynamics code")
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
|
|
set(ONDSEL_EXPORT
|
|
OndselSolver/Abs.cpp
|
|
OndselSolver/AbsConstraint.cpp
|
|
OndselSolver/AccICKineNewtonRaphson.cpp
|
|
OndselSolver/AccICNewtonRaphson.cpp
|
|
OndselSolver/AccKineNewtonRaphson.cpp
|
|
OndselSolver/AccNewtonRaphson.cpp
|
|
OndselSolver/AngleJoint.cpp
|
|
OndselSolver/AngleZIecJec.cpp
|
|
OndselSolver/AngleZIeqcJec.cpp
|
|
OndselSolver/AngleZIeqcJeqc.cpp
|
|
OndselSolver/AnyGeneralSpline.cpp
|
|
OndselSolver/AnyPosICNewtonRaphson.cpp
|
|
OndselSolver/ArcTan.cpp
|
|
OndselSolver/ArcTan2.cpp
|
|
OndselSolver/Array.cpp
|
|
OndselSolver/ASMTAnimationParameters.cpp
|
|
OndselSolver/ASMTAssembly.cpp
|
|
OndselSolver/ASMTConstantGravity.cpp
|
|
OndselSolver/ASMTConstraintSet.cpp
|
|
OndselSolver/ASMTCylindricalJoint.cpp
|
|
OndselSolver/ASMTExtrusion.cpp
|
|
OndselSolver/ASMTFixedJoint.cpp
|
|
OndselSolver/ASMTForceTorque.cpp
|
|
OndselSolver/ASMTGeneralMotion.cpp
|
|
OndselSolver/ASMTItem.cpp
|
|
OndselSolver/ASMTItemIJ.cpp
|
|
OndselSolver/ASMTJoint.cpp
|
|
OndselSolver/ASMTKinematicIJ.cpp
|
|
OndselSolver/ASMTMarker.cpp
|
|
OndselSolver/ASMTMotion.cpp
|
|
OndselSolver/ASMTPart.cpp
|
|
OndselSolver/ASMTPointInPlaneJoint.cpp
|
|
OndselSolver/ASMTPrincipalMassMarker.cpp
|
|
OndselSolver/ASMTRefCurve.cpp
|
|
OndselSolver/ASMTRefItem.cpp
|
|
OndselSolver/ASMTRefPoint.cpp
|
|
OndselSolver/ASMTRefSurface.cpp
|
|
OndselSolver/ASMTRevoluteJoint.cpp
|
|
OndselSolver/ASMTRotationalMotion.cpp
|
|
OndselSolver/ASMTSimulationParameters.cpp
|
|
OndselSolver/ASMTSpatialContainer.cpp
|
|
OndselSolver/ASMTSpatialItem.cpp
|
|
OndselSolver/ASMTSphericalJoint.cpp
|
|
OndselSolver/ASMTTime.cpp
|
|
OndselSolver/ASMTTranslationalMotion.cpp
|
|
OndselSolver/ASMTTranslationalJoint.cpp
|
|
OndselSolver/ASMTUniversalJoint.cpp
|
|
OndselSolver/AtPointConstraintIJ.cpp
|
|
OndselSolver/AtPointConstraintIqcJc.cpp
|
|
OndselSolver/AtPointConstraintIqcJqc.cpp
|
|
OndselSolver/AtPointConstraintIqctJqc.cpp
|
|
OndselSolver/AtPointJoint.cpp
|
|
OndselSolver/BasicIntegrator.cpp
|
|
OndselSolver/BasicQuasiIntegrator.cpp
|
|
OndselSolver/BasicUserFunction.cpp
|
|
OndselSolver/CADSystem.cpp
|
|
OndselSolver/CartesianFrame.cpp
|
|
OndselSolver/CompoundJoint.cpp
|
|
OndselSolver/Constant.cpp
|
|
OndselSolver/ConstantGravity.cpp
|
|
OndselSolver/ConstantVelocityJoint.cpp
|
|
OndselSolver/Constraint.cpp
|
|
OndselSolver/ConstraintIJ.cpp
|
|
OndselSolver/ConstVelConstraintIJ.cpp
|
|
OndselSolver/ConstVelConstraintIqcJc.cpp
|
|
OndselSolver/ConstVelConstraintIqcJqc.cpp
|
|
OndselSolver/Cosine.cpp
|
|
OndselSolver/CREATE.cpp
|
|
OndselSolver/CylindricalJoint.cpp
|
|
OndselSolver/CylSphJoint.cpp
|
|
OndselSolver/DifferentiatedGeneralSpline.cpp
|
|
OndselSolver/EndFrameqct2.cpp
|
|
OndselSolver/EulerAngles.cpp
|
|
OndselSolver/EulerAnglesDDot.cpp
|
|
OndselSolver/EulerAnglesDot.cpp
|
|
OndselSolver/Exponential.cpp
|
|
OndselSolver/ExternalSystem.cpp
|
|
OndselSolver/FunctionFromData.cpp
|
|
OndselSolver/FunctionXcParameter.cpp
|
|
OndselSolver/FunctionXY.cpp
|
|
OndselSolver/GeneralSpline.cpp
|
|
OndselSolver/Ln.cpp
|
|
OndselSolver/Log10.cpp
|
|
OndselSolver/LogN.cpp
|
|
OndselSolver/Negative.cpp
|
|
OndselSolver/PosVelAccData.cpp
|
|
OndselSolver/DiagonalMatrix.cpp
|
|
OndselSolver/DifferenceOperator.cpp
|
|
OndselSolver/DirectionCosineConstraintIJ.cpp
|
|
OndselSolver/DirectionCosineConstraintIqcJc.cpp
|
|
OndselSolver/DirectionCosineConstraintIqcJqc.cpp
|
|
OndselSolver/DirectionCosineConstraintIqctJqc.cpp
|
|
OndselSolver/DirectionCosineIecJec.cpp
|
|
OndselSolver/DirectionCosineIeqcJec.cpp
|
|
OndselSolver/DirectionCosineIeqcJeqc.cpp
|
|
OndselSolver/DirectionCosineIeqctJeqc.cpp
|
|
OndselSolver/DiscontinuityError.cpp
|
|
OndselSolver/DispCompIecJecIe.cpp
|
|
OndselSolver/DispCompIecJecKec.cpp
|
|
OndselSolver/DispCompIecJecKeqc.cpp
|
|
OndselSolver/DispCompIecJecO.cpp
|
|
OndselSolver/DispCompIeqcJecIe.cpp
|
|
OndselSolver/DispCompIeqcJecKeqc.cpp
|
|
OndselSolver/DispCompIeqcJecO.cpp
|
|
OndselSolver/DispCompIeqcJeqcIe.cpp
|
|
OndselSolver/DispCompIeqcJeqcKeqc.cpp
|
|
OndselSolver/DispCompIeqcJeqcKeqct.cpp
|
|
OndselSolver/DispCompIeqcJeqcO.cpp
|
|
OndselSolver/DispCompIeqctJeqcIe.cpp
|
|
OndselSolver/DispCompIeqctJeqcKeqct.cpp
|
|
OndselSolver/DispCompIeqctJeqcO.cpp
|
|
OndselSolver/DistanceConstraintIJ.cpp
|
|
OndselSolver/DistanceConstraintIqcJc.cpp
|
|
OndselSolver/DistanceConstraintIqcJqc.cpp
|
|
OndselSolver/DistanceConstraintIqctJqc.cpp
|
|
OndselSolver/DistancexyConstraintIJ.cpp
|
|
OndselSolver/DistancexyConstraintIqcJc.cpp
|
|
OndselSolver/DistancexyConstraintIqcJqc.cpp
|
|
OndselSolver/DistIecJec.cpp
|
|
OndselSolver/DistIeqcJec.cpp
|
|
OndselSolver/DistIeqcJeqc.cpp
|
|
OndselSolver/DistIeqctJeqc.cpp
|
|
OndselSolver/DistxyIecJec.cpp
|
|
OndselSolver/DistxyIeqcJec.cpp
|
|
OndselSolver/DistxyIeqcJeqc.cpp
|
|
OndselSolver/DistxyIeqctJeqc.cpp
|
|
OndselSolver/EndFramec.cpp
|
|
OndselSolver/EndFrameqc.cpp
|
|
OndselSolver/EndFrameqct.cpp
|
|
OndselSolver/EulerAngleszxz.cpp
|
|
OndselSolver/EulerAngleszxzDDot.cpp
|
|
OndselSolver/EulerAngleszxzDot.cpp
|
|
OndselSolver/EulerArray.cpp
|
|
OndselSolver/EulerConstraint.cpp
|
|
OndselSolver/EulerParameters.cpp
|
|
OndselSolver/EulerParametersDDot.cpp
|
|
OndselSolver/EulerParametersDot.cpp
|
|
OndselSolver/ExpressionX.cpp
|
|
OndselSolver/FixedJoint.cpp
|
|
OndselSolver/ForceTorqueData.cpp
|
|
OndselSolver/ForceTorqueItem.cpp
|
|
OndselSolver/FullColumn.cpp
|
|
OndselSolver/FullMatrix.cpp
|
|
OndselSolver/FullMotion.cpp
|
|
OndselSolver/FullRow.cpp
|
|
OndselSolver/Function.cpp
|
|
OndselSolver/FunctionWithManyArgs.cpp
|
|
OndselSolver/FunctionX.cpp
|
|
OndselSolver/GearConstraintIJ.cpp
|
|
OndselSolver/GearConstraintIqcJc.cpp
|
|
OndselSolver/GearConstraintIqcJqc.cpp
|
|
OndselSolver/GearJoint.cpp
|
|
OndselSolver/GEFullMat.cpp
|
|
OndselSolver/GEFullMatFullPv.cpp
|
|
OndselSolver/GEFullMatParPv.cpp
|
|
OndselSolver/GESpMat.cpp
|
|
OndselSolver/GESpMatFullPv.cpp
|
|
OndselSolver/GESpMatFullPvPosIC.cpp
|
|
OndselSolver/GESpMatParPv.cpp
|
|
OndselSolver/GESpMatParPvMarko.cpp
|
|
OndselSolver/GESpMatParPvMarkoFast.cpp
|
|
OndselSolver/GESpMatParPvPrecise.cpp
|
|
OndselSolver/ICKineIntegrator.cpp
|
|
OndselSolver/IndependentVariable.cpp
|
|
OndselSolver/InLineJoint.cpp
|
|
OndselSolver/InPlaneJoint.cpp
|
|
OndselSolver/Integrator.cpp
|
|
OndselSolver/IntegratorInterface.cpp
|
|
OndselSolver/Item.cpp
|
|
OndselSolver/Joint.cpp
|
|
OndselSolver/KineIntegrator.cpp
|
|
OndselSolver/KinematicIeJe.cpp
|
|
OndselSolver/LDUFullMatParPv.cpp
|
|
OndselSolver/LDUSpMat.cpp
|
|
OndselSolver/LDUSpMatParPv.cpp
|
|
OndselSolver/LDUSpMatParPvMarko.cpp
|
|
OndselSolver/LDUSpMatParPvPrecise.cpp
|
|
OndselSolver/LinearMultiStepMethod.cpp
|
|
OndselSolver/LineInPlaneJoint.cpp
|
|
OndselSolver/MarkerFrame.cpp
|
|
OndselSolver/MatrixDecomposition.cpp
|
|
OndselSolver/MatrixGaussElimination.cpp
|
|
OndselSolver/MatrixLDU.cpp
|
|
OndselSolver/MatrixSolver.cpp
|
|
OndselSolver/MaximumIterationError.cpp
|
|
OndselSolver/MbdMath.cpp
|
|
OndselSolver/NewtonRaphson.cpp
|
|
OndselSolver/NewtonRaphsonError.cpp
|
|
OndselSolver/NoRotationJoint.cpp
|
|
OndselSolver/NotKinematicError.cpp
|
|
OndselSolver/Numeric.cpp
|
|
OndselSolver/OrbitAnglezIecJec.cpp
|
|
OndselSolver/OrbitAnglezIeqcJec.cpp
|
|
OndselSolver/OrbitAnglezIeqcJeqc.cpp
|
|
OndselSolver/Orientation.cpp
|
|
OndselSolver/ParallelAxesJoint.cpp
|
|
OndselSolver/Part.cpp
|
|
OndselSolver/PartFrame.cpp
|
|
OndselSolver/PerpendicularJoint.cpp
|
|
OndselSolver/PlanarJoint.cpp
|
|
OndselSolver/PointInLineJoint.cpp
|
|
OndselSolver/PointInPlaneJoint.cpp
|
|
OndselSolver/PosICKineNewtonRaphson.cpp
|
|
OndselSolver/PosICNewtonRaphson.cpp
|
|
OndselSolver/PosKineNewtonRaphson.cpp
|
|
OndselSolver/PosNewtonRaphson.cpp
|
|
OndselSolver/Power.cpp
|
|
OndselSolver/PrescribedMotion.cpp
|
|
OndselSolver/Product.cpp
|
|
OndselSolver/QuasiIntegrator.cpp
|
|
OndselSolver/RackPinConstraintIJ.cpp
|
|
OndselSolver/RackPinConstraintIqcJc.cpp
|
|
OndselSolver/RackPinConstraintIqcJqc.cpp
|
|
OndselSolver/RackPinJoint.cpp
|
|
OndselSolver/Reciprocal.cpp
|
|
OndselSolver/RedundantConstraint.cpp
|
|
OndselSolver/RevCylJoint.cpp
|
|
OndselSolver/RevoluteJoint.cpp
|
|
OndselSolver/RowTypeMatrix.cpp
|
|
OndselSolver/ScalarNewtonRaphson.cpp
|
|
OndselSolver/ScrewConstraintIJ.cpp
|
|
OndselSolver/ScrewConstraintIqcJc.cpp
|
|
OndselSolver/ScrewConstraintIqcJqc.cpp
|
|
OndselSolver/ScrewJoint.cpp
|
|
OndselSolver/SimulationStoppingError.cpp
|
|
OndselSolver/Sine.cpp
|
|
OndselSolver/SingularMatrixError.cpp
|
|
OndselSolver/Solver.cpp
|
|
OndselSolver/SparseColumn.cpp
|
|
OndselSolver/SparseMatrix.cpp
|
|
OndselSolver/SparseRow.cpp
|
|
OndselSolver/SparseVector.cpp
|
|
OndselSolver/SphericalJoint.cpp
|
|
OndselSolver/SphSphJoint.cpp
|
|
OndselSolver/StableBackwardDifference.cpp
|
|
OndselSolver/LDUFullMat.cpp
|
|
OndselSolver/StateData.cpp
|
|
OndselSolver/Sum.cpp
|
|
OndselSolver/Symbolic.cpp
|
|
OndselSolver/SymbolicParser.cpp
|
|
OndselSolver/SyntaxError.cpp
|
|
OndselSolver/System.cpp
|
|
OndselSolver/SystemNewtonRaphson.cpp
|
|
OndselSolver/SystemSolver.cpp
|
|
OndselSolver/Time.cpp
|
|
OndselSolver/TooManyTriesError.cpp
|
|
OndselSolver/TooSmallStepSizeError.cpp
|
|
OndselSolver/Translation.cpp
|
|
OndselSolver/TranslationalJoint.cpp
|
|
OndselSolver/TranslationConstraintIJ.cpp
|
|
OndselSolver/TranslationConstraintIqcJc.cpp
|
|
OndselSolver/TranslationConstraintIqcJqc.cpp
|
|
OndselSolver/TranslationConstraintIqctJqc.cpp
|
|
OndselSolver/Units.cpp
|
|
OndselSolver/UniversalJoint.cpp
|
|
OndselSolver/UserFunction.cpp
|
|
OndselSolver/Variable.cpp
|
|
OndselSolver/FullVector.cpp
|
|
OndselSolver/VectorNewtonRaphson.cpp
|
|
OndselSolver/VelICKineSolver.cpp
|
|
OndselSolver/VelICSolver.cpp
|
|
OndselSolver/VelKineSolver.cpp
|
|
OndselSolver/VelSolver.cpp
|
|
OndselSolver/ZRotation.cpp
|
|
OndselSolver/ZTranslation.cpp
|
|
OndselSolver/ASMTAssembly.cpp
|
|
)
|
|
|
|
add_executable(ondsel-solver OndselSolver/OndselSolver.cpp)
|
|
|
|
add_library(OndselSolver
|
|
STATIC ${ONDSEL_EXPORT}
|
|
)
|
|
|
|
add_subdirectory(OndselSolver)
|
|
|
|
set_target_properties(OndselSolver
|
|
PROPERTIES VERSION ${PROJECT_VERSION}
|
|
SOVERSION 1
|
|
)
|
|
|
|
configure_file(OndselSolver.pc.in ${CMAKE_BINARY_DIR}/OndselSolver.pc @ONLY)
|
|
install(TARGETS OndselSolver
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
|
install(FILES ${CMAKE_BINARY_DIR}/OndselSolver.pc
|
|
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pkgconfig)
|