cmake_minimum_required(VERSION 3.8) project(j7s-optimization) add_compile_options(-Wall -Wextra -Wpedantic) # find dependencies find_package(ament_cmake REQUIRED) find_package(ament_cmake_ros REQUIRED) find_package(rclcpp REQUIRED) add_library(simplex_solver src/CostFunction.cpp src/SimplexSolver.cpp) target_compile_features(simplex_solver PUBLIC cxx_std_17) # Require C++17 target_include_directories(simplex_solver PUBLIC $ $) add_executable(main src/main.cpp) target_compile_features(main PUBLIC cxx_std_17) # Require C++17 target_link_libraries(main simplex_solver) target_include_directories(main PUBLIC $ $) ament_target_dependencies(main rclcpp) install( DIRECTORY include/ DESTINATION include ) install( TARGETS simplex_solver EXPORT export_${PROJECT_NAME} ARCHIVE DESTINATION lib/${PROJECT_NAME} LIBRARY DESTINATION lib/${PROJECT_NAME} RUNTIME DESTINATION bin/${PROJECT_NAME} ) install( TARGETS main DESTINATION lib/${PROJECT_NAME}) ament_export_include_directories( include ) ament_export_libraries( optimizer ) ament_export_targets( export_${PROJECT_NAME} ) ament_package()