# Set SOURCES variable
set(SOURCES
    solvers/gp3p.cc
    solvers/gp4ps.cc
    solvers/p1p2ll.cc
    solvers/p2p1ll.cc
    solvers/p2p2pl.cc
    solvers/p3ll.cc
    solvers/p3p.cc
    solvers/p3p_lambdatwist.cc
    solvers/p4pf.cc
    solvers/p35pf.cc
    solvers/p5pf.cc
    solvers/p5pfr.cc
    solvers/p3p1llf.cc
    solvers/p2p2llf.cc
    solvers/p1p3llf.cc
    solvers/p4llf.cc
    solvers/p5lp_radial.cc
    solvers/p6lp.cc
    solvers/ugp2p.cc
    solvers/ugp3ps.cc
    solvers/up1p2pl.cc
    solvers/up2p.cc
    solvers/up1p1ll.cc
    solvers/up4pl.cc
    solvers/ugp4pl.cc
    solvers/relpose_upright_3pt.cc
    solvers/relpose_upright_planar_2pt.cc
    solvers/relpose_upright_planar_3pt.cc
    solvers/relpose_8pt.cc
    solvers/relpose_5pt.cc
    solvers/relpose_monodepth_3pt.cc
    solvers/relpose_7pt.cc
    solvers/relpose_6pt_focal.cc
    solvers/relpose_6pt_onesided_focal.cc
    solvers/relpose_k2Fk1_10pt.cc
    solvers/relpose_kFk_9pt.cc
    solvers/relpose_monodepth_3pt_shared_focal.cc
    solvers/relpose_monodepth_3pt_varying_focal.cc
    solvers/gen_relpose_upright_4pt.cc
    solvers/gen_relpose_5p1pt.cc
    solvers/gen_relpose_6pt.cc
    solvers/homography_4pt.cc
    misc/qep.cc
    misc/univariate.cc
    misc/essential.cc
    misc/re3q3.cc
    misc/camera_models.cc
    misc/decompositions.cc
    robust.cc
    robust/ransac.cc
    robust/robust_loss.cc
    robust/bundle.cc
    robust/utils.cc
    robust/sampling.cc
    robust/recalibrator.cc
    robust/estimators/absolute_pose.cc
    robust/estimators/relative_pose.cc
    robust/estimators/hybrid_pose.cc
    robust/estimators/homography.cc
    robust/optim/lm_impl.cc
    robust/hybrid_ransac.cc
    robust/hybrid_estimators/hybrid_point_line_absolute_pose.cc
    robust/hybrid_estimators/hybrid_point_line_focal_absolute_pose.cc
)

# Set HEADERS_PUBLIC variable
set(HEADERS_PUBLIC
    alignment.h
    solvers/gp3p.h
    solvers/gp4ps.h
    solvers/p1p2ll.h
    solvers/p2p1ll.h
    solvers/p2p2pl.h
    solvers/p3ll.h
    solvers/p3p.h
    solvers/p3p_lambdatwist.h
    solvers/p4pf.h
    solvers/p35pf.h
    solvers/p5pf.h
    solvers/p5pfr.h
    solvers/pnplf_impl.h
    solvers/p3p1llf.h
    solvers/p2p2llf.h
    solvers/p1p3llf.h
    solvers/p4llf.h
    solvers/p5lp_radial.h
    solvers/p6lp.h
    solvers/ugp2p.h
    solvers/ugp3ps.h
    solvers/up1p2pl.h
    solvers/up2p.h
    solvers/up1p1ll.h
    solvers/up4pl.h
    solvers/ugp4pl.h
    solvers/relpose_upright_3pt.h
    solvers/relpose_upright_planar_2pt.h
    solvers/relpose_upright_planar_3pt.h
    solvers/relpose_8pt.h
    solvers/relpose_5pt.h
    solvers/relpose_monodepth_3pt.h
    solvers/relpose_7pt.h
    solvers/relpose_6pt_focal.h
    solvers/relpose_6pt_onesided_focal.h
    solvers/relpose_k2Fk1_10pt.h
    solvers/relpose_kFk_9pt.h
    solvers/relpose_monodepth_3pt_shared_focal.h
    solvers/relpose_monodepth_3pt_varying_focal.h
    solvers/gen_relpose_upright_4pt.h
    solvers/gen_relpose_5p1pt.h
    solvers/gen_relpose_6pt.h
    solvers/homography_4pt.h
    misc/quaternion.h
    misc/camera_models.h
    misc/qep.h
    misc/univariate.h
    misc/sturm.h
    misc/essential.h
    misc/re3q3.h
    misc/decompositions.h
    robust.h
    types.h
    camera_pose.h
    alignment.h
    robust/ransac.h
    robust/ransac_impl.h
    robust/bundle.h
    robust/utils.h
    robust/sampling.h
    robust/estimators/absolute_pose.h
    robust/estimators/relative_pose.h
    robust/estimators/hybrid_pose.h
    robust/estimators/homography.h
    robust/hybrid_ransac.h
    robust/hybrid_ransac_impl.h
    robust/hybrid_estimators/hybrid_point_line_absolute_pose.h
    robust/hybrid_estimators/hybrid_point_line_focal_absolute_pose.h
)

# Set HEADERS_PRIVATE variable
set(HEADERS_PRIVATE )

# library configuration
include(${PROJECT_SOURCE_DIR}/cmake/LibraryConfig.cmake)

# Eigen
target_link_libraries(${LIBRARY_NAME} Eigen3::Eigen)
