set(ITKOptimizers_SRCS
    itkNonLinearOptimizer.cxx
    itkMultipleValuedCostFunction.cxx
    itkSingleValuedCostFunction.cxx
    itkConjugateGradientOptimizer.cxx
    itkRegularStepGradientDescentOptimizer.cxx
    itkLBFGSOptimizer.cxx
    itkExhaustiveOptimizer.cxx
    itkLevenbergMarquardtOptimizer.cxx
    itkSingleValuedNonLinearVnlOptimizer.cxx
    itkQuaternionRigidTransformGradientDescentOptimizer.cxx
    itkSPSAOptimizer.cxx
    itkSingleValuedVnlCostFunctionAdaptor.cxx
    itkMultipleValuedNonLinearVnlOptimizer.cxx
    itkPowellOptimizer.cxx
    itkVersorTransformOptimizer.cxx
    itkOnePlusOneEvolutionaryOptimizer.cxx
    itkMultipleValuedNonLinearOptimizer.cxx
    itkLBFGSBOptimizer.cxx
    itkCumulativeGaussianOptimizer.cxx
    itkAmoebaOptimizer.cxx
    itkCumulativeGaussianCostFunction.cxx
    itkOptimizer.cxx
    itkFRPROptimizer.cxx
    itkGradientDescentOptimizer.cxx
    itkSingleValuedNonLinearOptimizer.cxx
    itkRegularStepGradientDescentBaseOptimizer.cxx
    itkMultipleValuedVnlCostFunctionAdaptor.cxx
    itkParticleSwarmOptimizerBase.cxx
    itkParticleSwarmOptimizer.cxx
    itkInitializationBiasedParticleSwarmOptimizer.cxx)

itk_module_add_library(ITKOptimizers ${ITKOptimizers_SRCS})
target_link_libraries(ITKOptimizers LINK_PUBLIC ${ITKTransform_LIBRARIES})
