From 19fb0f3face92a217fce522bac46cee9f0a3eef1 Mon Sep 17 00:00:00 2001 From: FoxMoss Date: Mon, 18 May 2026 19:19:28 -0500 Subject: [PATCH] Add cmake support --- CMakeLists.txt | 6 +++++ pathplannerlib/CMakeLists.txt | 44 +++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 pathplannerlib/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..011393a5 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,6 @@ +cmake_minimum_required(VERSION 4.0) +set(CMAKE_CXX_STANDARD 20) + +project(PathPlanner) + +add_subdirectory(pathplannerlib) diff --git a/pathplannerlib/CMakeLists.txt b/pathplannerlib/CMakeLists.txt new file mode 100644 index 00000000..0d36c15d --- /dev/null +++ b/pathplannerlib/CMakeLists.txt @@ -0,0 +1,44 @@ +add_library(pathplanner + src/main/native/cpp/pathplanner/lib/events/EventScheduler.cpp + src/main/native/cpp/pathplanner/lib/controllers/PPHolonomicDriveController.cpp + src/main/native/cpp/pathplanner/lib/pathfinding/Pathfinding.cpp + src/main/native/cpp/pathplanner/lib/pathfinding/LocalADStar.cpp + src/main/native/cpp/pathplanner/lib/commands/FollowPathCommand.cpp + src/main/native/cpp/pathplanner/lib/commands/PathfindingCommand.cpp + src/main/native/cpp/pathplanner/lib/commands/PathPlannerAuto.cpp + src/main/native/cpp/pathplanner/lib/trajectory/PathPlannerTrajectory.cpp + src/main/native/cpp/pathplanner/lib/trajectory/PathPlannerTrajectoryState.cpp + src/main/native/cpp/pathplanner/lib/util/swerve/SwerveSetpointGenerator.cpp + src/main/native/cpp/pathplanner/lib/util/GeometryUtil.cpp + src/main/native/cpp/pathplanner/lib/util/PathPlannerLogging.cpp + src/main/native/cpp/pathplanner/lib/util/PPLibTelemetry.cpp + src/main/native/cpp/pathplanner/lib/util/FlippingUtil.cpp + src/main/native/cpp/pathplanner/lib/path/IdealStartingState.cpp + src/main/native/cpp/pathplanner/lib/path/GoalEndState.cpp + src/main/native/cpp/pathplanner/lib/path/Waypoint.cpp + src/main/native/cpp/pathplanner/lib/path/PathPlannerPath.cpp + src/main/native/cpp/pathplanner/lib/path/RotationTarget.cpp + src/main/native/cpp/pathplanner/lib/path/PathConstraints.cpp + src/main/native/cpp/pathplanner/lib/path/EventMarker.cpp + src/main/native/cpp/pathplanner/lib/path/ConstraintsZone.cpp + src/main/native/cpp/pathplanner/lib/auto/NamedCommands.cpp + src/main/native/cpp/pathplanner/lib/auto/CommandUtil.cpp + src/main/native/cpp/pathplanner/lib/auto/AutoBuilder.cpp + src/main/native/cpp/pathplanner/lib/config/RobotConfig.cpp +) + + +add_compile_options(-Wno-array-bounds) + +set(FETCHCONTENT_QUIET FALSE) +set(WITH_GUI OFF) +set(WITH_TESTS OFF) +set(WITH_WPILIB ON) +include(FetchContent) +FetchContent_Declare(wpilib + URL https://github.com/wpilibsuite/allwpilib/archive/refs/tags/v2026.2.1.tar.gz +) +FetchContent_MakeAvailable(wpilib) + +target_link_libraries(pathplanner wpilibc wpilibNewCommands) +target_include_directories(pathplanner PUBLIC src/main/native/include/)