From 6c687ef528366b2464fda71b953756e168a1d29f Mon Sep 17 00:00:00 2001 From: xh Date: Thu, 10 Jul 2025 18:15:16 +0800 Subject: [PATCH 1/8] clean thetastar without any dependencies on xml logger. --- ASearch.pro | 48 --- asearch.cpp | 45 --- bfs.cpp | 31 -- bfs.h | 14 - dijkstra.cpp | 9 - dijkstra.h | 12 - examples/config.xml | 13 + examples/example_log.xml | 95 +++--- ilogger.h | 26 -- jp_search.cpp | 290 ---------------- jp_search.h | 20 -- map.cpp | 321 ------------------ mission.cpp | 125 ------- CMakeLists.txt => src/CMakeLists.txt | 17 +- src/asearch.cpp | 72 ++++ astar.cpp => src/astar.cpp | 0 astar.h => src/astar.h | 0 config.cpp => src/config.cpp | 99 +----- config.h => src/config.h | 0 .../environmentoptions.cpp | 0 .../environmentoptions.h | 0 gl_const.h => src/gl_const.h | 8 - isearch.cpp => src/isearch.cpp | 6 +- isearch.h => src/isearch.h | 5 +- src/map.cpp | 87 +++++ map.h => src/map.h | 5 +- src/mission.cpp | 90 +++++ mission.h => src/mission.h | 11 +- node.h => src/node.h | 0 path_smoothing.cpp => src/path_smoothing.cpp | 0 path_smoothing.h => src/path_smoothing.h | 0 searchresult.h => src/searchresult.h | 0 theta.cpp => src/theta.cpp | 0 theta.h => src/theta.h | 0 tinyxml2.cpp => src/tinyxml2.cpp | 0 tinyxml2.h => src/tinyxml2.h | 0 xmllogger.cpp | 277 --------------- xmllogger.h | 35 -- 38 files changed, 328 insertions(+), 1433 deletions(-) delete mode 100644 ASearch.pro delete mode 100644 asearch.cpp delete mode 100644 bfs.cpp delete mode 100644 bfs.h delete mode 100644 dijkstra.cpp delete mode 100644 dijkstra.h create mode 100644 examples/config.xml delete mode 100644 ilogger.h delete mode 100644 jp_search.cpp delete mode 100644 jp_search.h delete mode 100644 map.cpp delete mode 100644 mission.cpp rename CMakeLists.txt => src/CMakeLists.txt (69%) create mode 100644 src/asearch.cpp rename astar.cpp => src/astar.cpp (100%) rename astar.h => src/astar.h (100%) rename config.cpp => src/config.cpp (68%) rename config.h => src/config.h (100%) rename environmentoptions.cpp => src/environmentoptions.cpp (100%) rename environmentoptions.h => src/environmentoptions.h (100%) rename gl_const.h => src/gl_const.h (93%) rename isearch.cpp => src/isearch.cpp (96%) rename isearch.h => src/isearch.h (91%) create mode 100644 src/map.cpp rename map.h => src/map.h (79%) create mode 100644 src/mission.cpp rename mission.h => src/mission.h (77%) rename node.h => src/node.h (100%) rename path_smoothing.cpp => src/path_smoothing.cpp (100%) rename path_smoothing.h => src/path_smoothing.h (100%) rename searchresult.h => src/searchresult.h (100%) rename theta.cpp => src/theta.cpp (100%) rename theta.h => src/theta.h (100%) rename tinyxml2.cpp => src/tinyxml2.cpp (100%) rename tinyxml2.h => src/tinyxml2.h (100%) delete mode 100644 xmllogger.cpp delete mode 100644 xmllogger.h diff --git a/ASearch.pro b/ASearch.pro deleted file mode 100644 index da136e2..0000000 --- a/ASearch.pro +++ /dev/null @@ -1,48 +0,0 @@ -#------------------------------------------------- -# -# Project created by QtCreator 2011-02-26T12:08:02 -# -#------------------------------------------------- - -TARGET = ASearch -CONFIG += console -CONFIG -= app_bundle -TEMPLATE = app -QMAKE_CXXFLAGS += -std=c++11 -O2 -Wall -Wextra - -win32 { -QMAKE_LFLAGS += -static -static-libgcc -static-libstdc++ -} - -SOURCES += \ - tinyxml2.cpp \ - xmllogger.cpp \ - isearch.cpp \ - mission.cpp \ - map.cpp \ - dijkstra.cpp \ - config.cpp \ - bfs.cpp \ - astar.cpp \ - asearch.cpp \ - jp_search.cpp \ - theta.cpp \ - environmentoptions.cpp - -HEADERS += \ - tinyxml2.h \ - node.h \ - gl_const.h \ - xmllogger.h \ - isearch.h \ - mission.h \ - map.h \ - ilogger.h \ - dijkstra.h \ - config.h \ - bfs.h \ - astar.h \ - searchresult.h \ - jp_search.h \ - theta.h \ - environmentoptions.h diff --git a/asearch.cpp b/asearch.cpp deleted file mode 100644 index 8b6490a..0000000 --- a/asearch.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include "mission.h" - -int main(int argc, char* argv[]) -{ - if(argc < 2) { - std::cout<<"Error! Pathfinding task file (XML) is not specified!"<::iterator iter=open[newNode.i].begin(); - - while(iter != open[newNode.i].end() && newNode.j != iter->j) - ++iter; - - if(iter != open[newNode.i].end()) { - if(iter->g > newNode.g) { - open[newNode.i].erase(iter); - openSize--; - } - else - return; - } - openSize++; - open[newNode.i].push_back(newNode); - return; -} diff --git a/bfs.h b/bfs.h deleted file mode 100644 index 6a5643b..0000000 --- a/bfs.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef BFS_H -#define BFS_H -#include "isearch.h" - -class BFS : public ISearch -{ - public: - BFS(); - - void addOpen(Node newNode); - double computeHFromCellToCell(int start_i, int start_j, int fin_i, int fin_j, const EnvironmentOptions &options); -}; - -#endif diff --git a/dijkstra.cpp b/dijkstra.cpp deleted file mode 100644 index 62d329e..0000000 --- a/dijkstra.cpp +++ /dev/null @@ -1,9 +0,0 @@ -#include "dijkstra.h" - -Dijkstra::Dijkstra() : Astar(0, CN_SP_BT_GMAX) {} - -double Dijkstra::computeHFromCellToCell(int start_i, int start_j, int fin_i, int fin_j, const EnvironmentOptions &options) -{ - return 0; -} - diff --git a/dijkstra.h b/dijkstra.h deleted file mode 100644 index 0e04d44..0000000 --- a/dijkstra.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef DIJKSTRA_H -#define DIJKSTRA_H -#include "astar.h" - -class Dijkstra : public Astar -{ - public: - Dijkstra(); - - double computeHFromCellToCell(int start_i, int start_j, int fin_i, int fin_j, const EnvironmentOptions &options); -}; -#endif diff --git a/examples/config.xml b/examples/config.xml new file mode 100644 index 0000000..021df8b --- /dev/null +++ b/examples/config.xml @@ -0,0 +1,13 @@ + + + + theta + euclid + g-max + 1 + true + false + false + true + + diff --git a/examples/example_log.xml b/examples/example_log.xml index 813db7e..78d915c 100644 --- a/examples/example_log.xml +++ b/examples/example_log.xml @@ -38,21 +38,22 @@ astar - diagonal + euclid g-max 1 true false false + true 1 - - + + - D:\GitHub\build-ASearch-Desktop_Qt_5_3_MinGW_32bit-Release\release\example.xml - + ../../examples/example.xml + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 @@ -60,20 +61,20 @@ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 * * * * * * * * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 * 1 1 1 1 1 1 0 * 0 0 0 0 1 1 1 1 1 1 1 0 0 - 0 0 0 * 1 1 1 1 1 1 0 0 * 0 0 0 1 1 1 1 1 1 1 0 0 - 0 0 0 * 1 1 1 1 1 1 0 0 * 0 0 0 1 1 1 1 1 1 1 0 0 + 0 0 0 * 1 1 1 1 1 1 0 * 0 0 0 0 1 1 1 1 1 1 1 0 0 + 0 0 0 * 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 * 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 * 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 * 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 * 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 * 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 * 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 * 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 * 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 @@ -81,41 +82,39 @@ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + -
-
-
-
-
-
+
+
+
+
diff --git a/ilogger.h b/ilogger.h deleted file mode 100644 index a9f58d7..0000000 --- a/ilogger.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef ILOGGER_H -#define ILOGGER_H -#include "map.h" -#include "node.h" -#include -#include - -class ILogger -{ - public: - ILogger(std::string loglevel) {this->loglevel = loglevel;} - virtual bool getLog(const char* FileName, const std::string* LogParams) = 0; - virtual void saveLog() = 0; - virtual void writeToLogMap(const Map& map, const std::list& path) = 0; - virtual void writeToLogOpenClose(const std::vector>& open, const std::unordered_map& close, bool last) = 0; - virtual void writeToLogPath(const std::list& path) = 0; - virtual void writeToLogHPpath(const std::list& path) = 0; - virtual void writeToLogNotFound() = 0; - virtual void writeToLogSummary(unsigned int numberofsteps, unsigned int nodescreated, float length, double time, double cellSize) = 0; - virtual ~ILogger() {}; - protected: - std::string loglevel; -}; - -#endif - diff --git a/jp_search.cpp b/jp_search.cpp deleted file mode 100644 index 8e295f9..0000000 --- a/jp_search.cpp +++ /dev/null @@ -1,290 +0,0 @@ -#include "jp_search.h" - -JP_Search::~JP_Search() -{ -} - -void JP_Search::findJP(int move_i, int move_j, Node curNode, const Map &map, std::list &successors, const EnvironmentOptions &options) -{ - bool findOK = false; - while(!findOK) { - if(map.CellOnGrid(curNode.i + move_i, curNode.j + move_j)) { - if(!options.cutcorners) { - if(move_i != 0 && move_j != 0) - if(!map.CellIsTraversable(curNode.i, curNode.j + move_j) || !map.CellIsTraversable(curNode.i + move_i, curNode.j)) - return; - } - else if(!options.allowsqueeze) { - if(move_i != 0 && move_j != 0) - if(!map.CellIsTraversable(curNode.i, curNode.j + move_j) && !map.CellIsTraversable(curNode.i + move_i, curNode.j)) - return; - } - if(map.CellIsTraversable(curNode.i + move_i, curNode.j + move_j)) { - curNode.i += move_i; - curNode.j += move_j; - if(move_i == 0 || move_j == 0) - curNode.g += 1; - else - curNode.g += sqrt(2); - } - else - return; - } - else - return; - if(map.goal_i == curNode.i && map.goal_j == curNode.j) - findOK = true; - if(options.allowdiagonal) { //check whether diagonal moves is allowed - if(options.cutcorners) { - if(move_i == 0) { //straight move along j - if(map.CellOnGrid(curNode.i + 1, curNode.j + move_j)) - if(map.CellIsTraversable(curNode.i + 1, curNode.j + move_j) && map.CellIsObstacle(curNode.i + 1, curNode.j)) - findOK = true; - if(map.CellOnGrid(curNode.i - 1,curNode.j + move_j)) - if(map.CellIsTraversable(curNode.i - 1, curNode.j + move_j) && map.CellIsObstacle(curNode.i - 1, curNode.j)) - findOK = true; - } - else if(move_j == 0) { //straight move along i - if(map.CellOnGrid(curNode.i + move_i, curNode.j + 1)) - if(map.CellIsTraversable(curNode.i + move_i, curNode.j + 1) && map.CellIsObstacle(curNode.i, curNode.j + 1)) - findOK = true; - if(map.CellOnGrid(curNode.i + move_i, curNode.j - 1)) - if(map.CellIsTraversable(curNode.i + move_i, curNode.j - 1) && map.CellIsObstacle(curNode.i, curNode.j - 1)) - findOK = true; - } - else { //diagonal move - if(map.CellOnGrid(curNode.i - move_i, curNode.j + move_j)) - if(map.CellIsObstacle(curNode.i - move_i, curNode.j) && map.CellIsTraversable(curNode.i - move_i, curNode.j + move_j)) - findOK = true; - if(!findOK && map.CellOnGrid(curNode.i + move_i, curNode.j - move_j)) - if(map.CellIsObstacle(curNode.i, curNode.j - move_j) && map.CellIsTraversable(curNode.i + move_i, curNode.j - move_j)) - findOK = true; - if(!findOK) - if(findNeighbors(move_i, 0, curNode, map, options)) - findOK = true; - if(!findOK) - if(findNeighbors(0, move_j, curNode, map, options)) - findOK = true; - } - } - else - { - if(move_i == 0) { //straight move along j - if(map.CellOnGrid(curNode.i + 1, curNode.j)) - if(map.CellIsTraversable(curNode.i + 1, curNode.j) && map.CellIsObstacle(curNode.i + 1, curNode.j - move_j))//check forced neighbor - findOK = true; - if(map.CellOnGrid(curNode.i - 1,curNode.j)) - if(map.CellIsTraversable(curNode.i - 1, curNode.j) && map.CellIsObstacle(curNode.i - 1, curNode.j - move_j)) - findOK = true; - } - else if(move_j == 0) { //straight move along i - if(map.CellOnGrid(curNode.i, curNode.j + 1)) - if(map.CellIsTraversable(curNode.i, curNode.j + 1) && map.CellIsObstacle(curNode.i - move_i, curNode.j + 1)) - findOK = true; - if(map.CellOnGrid(curNode.i, curNode.j - 1)) - if(map.CellIsTraversable(curNode.i, curNode.j - 1) && map.CellIsObstacle(curNode.i - move_i, curNode.j - 1)) - findOK = true; - } - else { //diagonal move - if(findNeighbors(move_i, 0, curNode, map, options))//looking for forced neighbor along i - findOK = true; - if(!findOK) - if(findNeighbors(0, move_j, curNode, map, options))//looking for forced neighbor along j - findOK = true; - } - } - } - else { //only straight moves is allowed - if(!findOK) - if(findNeighbors(move_j, move_i, curNode, map, options)) - findOK = true; - if(!findOK) - if(findNeighbors(-move_j, -move_i, curNode, map, options)) - findOK = true; - } - } - if(close.find(curNode.i * map.width + curNode.j) == close.end()) - successors.push_front(curNode); - return; -} - -bool JP_Search::findNeighbors(int move_i, int move_j, Node curNode, const Map &map, const EnvironmentOptions &options) -{ - while(map.CellOnGrid(curNode.i, curNode.j) && map.CellIsTraversable(curNode.i, curNode.j)) { - if(map.goal_i == curNode.i && map.goal_j == curNode.j)//goal location is found - return true; - if(options.cutcorners) { - if(move_i == 0 && map.CellOnGrid(curNode.i, curNode.j+move_j)) { - if(map.CellOnGrid(curNode.i + 1, curNode.j)) - if(map.CellIsTraversable(curNode.i + 1, curNode.j+move_j) && map.CellIsObstacle(curNode.i + 1, curNode.j)) - return true; - if(map.CellOnGrid(curNode.i - 1,curNode.j)) - if(map.CellIsTraversable(curNode.i - 1, curNode.j+move_j) && map.CellIsObstacle(curNode.i - 1, curNode.j)) - return true; - } - if(move_j == 0 && map.CellOnGrid(curNode.i + move_i, curNode.j)) { - if(map.CellOnGrid(curNode.i, curNode.j + 1)) - if(map.CellIsTraversable(curNode.i + move_i, curNode.j + 1) && map.CellIsObstacle(curNode.i, curNode.j + 1)) - return true; - if(map.CellOnGrid(curNode.i, curNode.j - 1)) - if(map.CellIsTraversable(curNode.i + move_i, curNode.j - 1) && map.CellIsObstacle(curNode.i, curNode.j - 1)) - return true; - } - } - else { - if(move_i == 0 && map.CellOnGrid(curNode.i, curNode.j - move_j)) { - if(map.CellOnGrid(curNode.i + 1, curNode.j)) - if(map.CellIsTraversable(curNode.i + 1, curNode.j) && map.CellIsObstacle(curNode.i + 1, curNode.j - move_j)) - return true; - if(map.CellOnGrid(curNode.i - 1,curNode.j)) - if(map.CellIsTraversable(curNode.i - 1, curNode.j) && map.CellIsObstacle(curNode.i - 1, curNode.j - move_j)) - return true; - } - if(move_j == 0 && map.CellOnGrid(curNode.i - move_i, curNode.j)) { - if(map.CellOnGrid(curNode.i, curNode.j + 1)) - if(map.CellIsTraversable(curNode.i, curNode.j + 1) && map.CellIsObstacle(curNode.i - move_i, curNode.j + 1)) - return true; - if(map.CellOnGrid(curNode.i, curNode.j - 1)) - if(map.CellIsTraversable(curNode.i, curNode.j - 1) && map.CellIsObstacle(curNode.i - move_i, curNode.j - 1)) - return true; - } - } - curNode.i += move_i; - curNode.j += move_j; - } - return false; -} - - - -int JP_Search::findDirection(int current_i, int parent_i) -{ - if(current_i < parent_i) - return -1; - else if(current_i > parent_i) - return 1; - else - return 0; -} - -std::list JP_Search::findSuccessors(Node curNode, const Map &map, const EnvironmentOptions &options) -{ - int move_i = 0, move_j = 0; - std::list successors; - - if(options.allowdiagonal) { - if(curNode.i == map.start_i && curNode.j == map.start_j)//if curNode is the start location, then look for jump points in all directions - for(int n = -1; n <= 1; n++) - for(int m = -1; m <= 1; m++) - if(n != 0 || m != 0) - findJP(n, m, curNode, map, successors, options); - if(curNode.i != map.start_i || curNode.j != map.start_j) { - move_i = findDirection(curNode.i, curNode.parent->i); - move_j = findDirection(curNode.j, curNode.parent->j); - findJP(move_i, move_j, curNode, map, successors, options);//continue to look for jump points in the same direction - - if(move_i != 0 && move_j != 0) { //if curNoode is a diagonal jump point - if(map.CellIsObstacle(curNode.i - move_i, curNode.j)) - findJP(-move_i, move_j, curNode, map, successors, options); - if(map.CellIsObstacle(curNode.i, curNode.j - move_j)) - findJP(move_i, -move_j, curNode, map, successors, options); - findJP(move_i, 0, curNode, map, successors, options);//look for jump point in straight direction along i - findJP(0, move_j, curNode, map, successors, options);//the same check along j - } - - if(options.cutcorners) { //original JPS, when cutcorners is allowed - if(move_i == 0) { - if(map.CellOnGrid(curNode.i - move_j, curNode.j)) - if(map.CellIsObstacle(curNode.i - move_j, curNode.j)) - findJP(-move_j, move_j, curNode, map, successors, options); - if(map.CellOnGrid(curNode.i+move_j, curNode.j)) - if(map.CellIsObstacle(curNode.i + move_j, curNode.j)) - findJP(move_j, move_j, curNode, map, successors, options); - } - else if(move_j == 0) { - if(map.CellOnGrid(curNode.i, curNode.j - move_i)) - if(map.CellIsObstacle(curNode.i, curNode.j - move_i)) - findJP(move_i, -move_i, curNode, map, successors, options); - if(map.CellOnGrid(curNode.i, curNode.j + move_i)) - if(map.CellIsObstacle(curNode.i, curNode.j + move_i)) - findJP(move_i, move_i, curNode, map, successors, options); - } - } - else { //cutcorners disallowed - if(move_i == 0) { - if(map.CellOnGrid(curNode.i - move_j, curNode.j)) - if(map.CellIsObstacle(curNode.i - move_j, curNode.j - move_j)) { - findJP(-move_j, move_j, curNode, map, successors, options); - findJP(-move_j, 0, curNode, map, successors, options); - } - if(map.CellOnGrid(curNode.i + move_j, curNode.j)) - if(map.CellIsObstacle(curNode.i + move_j, curNode.j - move_j)) { - findJP(move_j, 0, curNode, map, successors, options); - findJP(move_j, move_j, curNode, map, successors, options); - } - } - else if(move_j == 0) { - if(map.CellOnGrid(curNode.i, curNode.j-move_i)) - if(map.CellIsObstacle(curNode.i - move_i, curNode.j - move_i)) { - findJP(0, -move_i, curNode, map, successors, options);//additional check - findJP(move_i, -move_i, curNode, map, successors, options); - } - if(map.CellOnGrid(curNode.i, curNode.j + move_i)) - if(map.CellIsObstacle(curNode.i - move_i, curNode.j + move_i)) { - findJP(0, move_i, curNode, map, successors, options);//additional check - findJP(move_i, move_i, curNode, map, successors, options); - } - } - } - } - } - else { //only straight moves as allowed - if(curNode.i == map.start_i && curNode.j == map.start_j) - for(int n = -1; n <= 1; n++) - for(int m = -1; m <= 1; m++) - if((n != 0 && m == 0) || (n == 0 && m != 0)) - findJP(n, m, curNode, map, successors, options); - if(curNode.i != map.start_i || curNode.j != map.start_j) { - move_i = findDirection(curNode.i, curNode.parent->i); - move_j = findDirection(curNode.j, curNode.parent->j); - - findJP(move_i, move_j, curNode, map, successors, options); - findJP(move_j, move_i, curNode, map, successors, options); - findJP(-move_j, -move_i, curNode, map, successors, options); - } - } - return successors; -} - -void JP_Search::makePrimaryPath(Node curNode) -{ - Node current = curNode; - while(current.parent) { - hppath.push_front(current); - current = *current.parent; - } - hppath.push_front(current); -} - -void JP_Search::makeSecondaryPath() -{ - Node pathNode = *hppath.begin(); - std::list::iterator iter = hppath.begin(); - iter++; - Node nextNode = *iter; - Node inpath; - lppath.push_back(pathNode); - while(iter != hppath.end()) { - int steps = std::max(std::abs(pathNode.i - nextNode.i), std::abs(pathNode.j - nextNode.j)); - int step_i = (pathNode.i < nextNode.i) ? 1 : ((pathNode.i > nextNode.i) ? -1 : 0); - int step_j = (pathNode.j < nextNode.j) ? 1 : ((pathNode.j > nextNode.j) ? -1 : 0); - for (int k = 0; k <= steps; k++) { - inpath.i = pathNode.i + k*step_i; - inpath.j = pathNode.j + k*step_j; - lppath.push_back(inpath); - } - pathNode = nextNode; - iter++; - nextNode = *iter; - } -} diff --git a/jp_search.h b/jp_search.h deleted file mode 100644 index 6f1f79a..0000000 --- a/jp_search.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef JP_SEARCH_H -#define JP_SEARCH_H -#include "astar.h" - -class JP_Search:public Astar -{ -public: - JP_Search(float hweight, bool breakingties):Astar(hweight, breakingties){} - ~JP_Search(); - -private: - bool findNeighbors(int move_i, int move_j, Node curNode, const Map &map, const EnvironmentOptions &options);//checks forced neighbors - void findJP(int move_i, int move_j, Node curNode, const Map &map, std::list &successors, const EnvironmentOptions &options);//searches jump points - int findDirection(int current_i, int parent_i);//determines the direction of motion - std::list findSuccessors(Node curNode, const Map &map, const EnvironmentOptions &options); - void makePrimaryPath(Node curNode); - void makeSecondaryPath(); -}; - -#endif // JP_SEARCH_H diff --git a/map.cpp b/map.cpp deleted file mode 100644 index 634d6a8..0000000 --- a/map.cpp +++ /dev/null @@ -1,321 +0,0 @@ -#include "map.h" -#include "tinyxml2.h" - -Map::Map() -{ - height = -1; - width = -1; - start_i = -1; - start_j = -1; - goal_i = -1; - goal_j = -1; - Grid = nullptr; - cellSize = 1; -} - -Map::~Map() -{ - if (Grid) { - for (int i = 0; i < height; ++i) - delete[] Grid[i]; - delete[] Grid; - } -} - -bool Map::CellIsTraversable(int i, int j) const -{ - return (Grid[i][j] == CN_GC_NOOBS); -} - -bool Map::CellIsObstacle(int i, int j) const -{ - return (Grid[i][j] != CN_GC_NOOBS); -} - -bool Map::CellOnGrid(int i, int j) const -{ - return (i < height && i >= 0 && j < width && j >= 0); -} - -bool Map::getMap(const char *FileName) -{ - int rowiter = 0, grid_i = 0, grid_j = 0; - - tinyxml2::XMLElement *root = 0, *map = 0, *element = 0, *mapnode; - - std::string value; - std::stringstream stream; - - bool hasGridMem = false, hasGrid = false, hasHeight = false, hasWidth = false, hasSTX = false, hasSTY = false, hasFINX = false, hasFINY = false, hasCellSize = false; - - tinyxml2::XMLDocument doc; - - // Load XML File - if (doc.LoadFile(FileName) != tinyxml2::XMLError::XML_SUCCESS) { - std::cout << "Error opening XML file!" << std::endl; - return false; - } - - // Get ROOT element - root = doc.FirstChildElement(CNS_TAG_ROOT); - if (!root) { - std::cout << "Error! No '" << CNS_TAG_ROOT << "' tag found in XML file!" << std::endl; - return false; - } - - // Get MAP element - map = root->FirstChildElement(CNS_TAG_MAP); - if (!map) { - std::cout << "Error! No '" << CNS_TAG_MAP << "' tag found in XML file!" << std::endl; - return false; - } - - for (mapnode = map->FirstChildElement(); mapnode; mapnode = mapnode->NextSiblingElement()) { - element = mapnode->ToElement(); - value = mapnode->Value(); - std::transform(value.begin(), value.end(), value.begin(), ::tolower); - - stream.str(""); - stream.clear(); - - if(value != CNS_TAG_GRID) - stream << element->GetText(); - - if (!hasGridMem && hasHeight && hasWidth) { - Grid = new int *[height]; - for (int i = 0; i < height; ++i) - Grid[i] = new int[width]; - hasGridMem = true; - } - - if (value == CNS_TAG_HEIGHT) { - if (hasHeight) { - std::cout << "Warning! Duplicate '" << CNS_TAG_HEIGHT << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_HEIGHT << "' =" << height << "will be used." - << std::endl; - } - else { - if (!((stream >> height) && (height > 0))) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_HEIGHT - << "' tag encountered (or could not convert to integer)." << std::endl; - std::cout << "Value of '" << CNS_TAG_HEIGHT << "' tag should be an integer >=0" << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_HEIGHT - << "' tag will be encountered later..." << std::endl; - } - else - hasHeight = true; - } - } - else if (value == CNS_TAG_WIDTH) { - if (hasWidth) { - std::cout << "Warning! Duplicate '" << CNS_TAG_WIDTH << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_WIDTH << "' =" << width << "will be used." << std::endl; - } - else { - if (!((stream >> width) && (width > 0))) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_WIDTH - << "' tag encountered (or could not convert to integer)." << std::endl; - std::cout << "Value of '" << CNS_TAG_WIDTH << "' tag should be an integer AND >0" << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_WIDTH - << "' tag will be encountered later..." << std::endl; - - } - else - hasWidth = true; - } - } - else if (value == CNS_TAG_CELLSIZE) { - if (hasCellSize) { - std::cout << "Warning! Duplicate '" << CNS_TAG_CELLSIZE << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_CELLSIZE << "' =" << cellSize << "will be used." - << std::endl; - } - else { - if (!((stream >> cellSize) && (cellSize > 0))) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_CELLSIZE - << "' tag encountered (or could not convert to double)." << std::endl; - std::cout << "Value of '" << CNS_TAG_CELLSIZE - << "' tag should be double AND >0. By default it is defined to '1'" << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_CELLSIZE - << "' tag will be encountered later..." << std::endl; - } - else - hasCellSize = true; - } - } - else if (value == CNS_TAG_STX) { - if (!hasWidth) { - std::cout << "Error! '" << CNS_TAG_STX << "' tag encountered before '" << CNS_TAG_WIDTH << "' tag." - << std::endl; - return false; - } - - if (hasSTX) { - std::cout << "Warning! Duplicate '" << CNS_TAG_STX << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_STX << "' =" << start_j << "will be used." << std::endl; - } - else { - if (!(stream >> start_j && start_j >= 0 && start_j < width)) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_STX - << "' tag encountered (or could not convert to integer)" << std::endl; - std::cout << "Value of '" << CNS_TAG_STX << "' tag should be an integer AND >=0 AND < '" - << CNS_TAG_WIDTH << "' value, which is " << width << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_STX - << "' tag will be encountered later..." << std::endl; - } - else - hasSTX = true; - } - } - else if (value == CNS_TAG_STY) { - if (!hasHeight) { - std::cout << "Error! '" << CNS_TAG_STY << "' tag encountered before '" << CNS_TAG_HEIGHT << "' tag." - << std::endl; - return false; - } - - if (hasSTY) { - std::cout << "Warning! Duplicate '" << CNS_TAG_STY << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_STY << "' =" << start_i << "will be used." << std::endl; - } - else { - if (!(stream >> start_i && start_i >= 0 && start_i < height)) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_STY - << "' tag encountered (or could not convert to integer)" << std::endl; - std::cout << "Value of '" << CNS_TAG_STY << "' tag should be an integer AND >=0 AND < '" - << CNS_TAG_HEIGHT << "' value, which is " << height << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_STY - << "' tag will be encountered later..." << std::endl; - } - else - hasSTY = true; - } - } - else if (value == CNS_TAG_FINX) { - if (!hasWidth) { - std::cout << "Error! '" << CNS_TAG_FINX << "' tag encountered before '" << CNS_TAG_WIDTH << "' tag." - << std::endl; - return false; - } - - if (hasFINX) { - std::cout << "Warning! Duplicate '" << CNS_TAG_FINX << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_FINX << "' =" << goal_j << "will be used." << std::endl; - } - else { - if (!(stream >> goal_j && goal_j >= 0 && goal_j < width)) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_FINX - << "' tag encountered (or could not convert to integer)" << std::endl; - std::cout << "Value of '" << CNS_TAG_FINX << "' tag should be an integer AND >=0 AND < '" - << CNS_TAG_WIDTH << "' value, which is " << width << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_FINX - << "' tag will be encountered later..." << std::endl; - } - else - hasFINX = true; - } - } - else if (value == CNS_TAG_FINY) { - if (!hasHeight) { - std::cout << "Error! '" << CNS_TAG_FINY << "' tag encountered before '" << CNS_TAG_HEIGHT << "' tag." - << std::endl; - return false; - } - - if (hasFINY) { - std::cout << "Warning! Duplicate '" << CNS_TAG_FINY << "' encountered." << std::endl; - std::cout << "Only first value of '" << CNS_TAG_FINY << "' =" << goal_i << "will be used." << std::endl; - } - else { - if (!(stream >> goal_i && goal_i >= 0 && goal_i < height)) { - std::cout << "Warning! Invalid value of '" << CNS_TAG_FINY - << "' tag encountered (or could not convert to integer)" << std::endl; - std::cout << "Value of '" << CNS_TAG_FINY << "' tag should be an integer AND >=0 AND < '" - << CNS_TAG_HEIGHT << "' value, which is " << height << std::endl; - std::cout << "Continue reading XML and hope correct value of '" << CNS_TAG_FINY - << "' tag will be encountered later..." << std::endl; - } - else - hasFINY = true; - } - } - else if (value == CNS_TAG_GRID) { - hasGrid = true; - if (!(hasHeight && hasWidth)) { - std::cout << "Error! No '" << CNS_TAG_WIDTH << "' tag or '" << CNS_TAG_HEIGHT << "' tag before '" - << CNS_TAG_GRID << "'tag encountered!" << std::endl; - return false; - } - element = mapnode->FirstChildElement(); - while (grid_i < height) { - if (!element) { - std::cout << "Error! Not enough '" << CNS_TAG_ROW << "' tags inside '" << CNS_TAG_GRID << "' tag." - << std::endl; - std::cout << "Number of '" << CNS_TAG_ROW - << "' tags should be equal (or greater) than the value of '" << CNS_TAG_HEIGHT - << "' tag which is " << height << std::endl; - return false; - } - std::string str = element->GetText(); - std::vector elems; - std::stringstream ss(str); - std::string item; - while (std::getline(ss, item, ' ')) - elems.push_back(item); - rowiter = grid_j = 0; - int val; - if (elems.size() > 0) - for (grid_j = 0; grid_j < width; ++grid_j) { - if (grid_j == elems.size()) - break; - stream.str(""); - stream.clear(); - stream << elems[grid_j]; - stream >> val; - Grid[grid_i][grid_j] = val; - } - - if (grid_j != width) { - std::cout << "Invalid value on " << CNS_TAG_GRID << " in the " << grid_i + 1 << " " << CNS_TAG_ROW - << std::endl; - return false; - } - ++grid_i; - - element = element->NextSiblingElement(); - } - } - } - //some additional checks - if (!hasGrid) { - std::cout << "Error! There is no tag 'grid' in xml-file!\n"; - return false; - } - if (!(hasFINX && hasFINY && hasSTX && hasSTY)) - return false; - - if (Grid[start_i][start_j] != CN_GC_NOOBS) { - std::cout << "Error! Start cell is not traversable (cell's value is" << Grid[start_i][start_j] << ")!" - << std::endl; - return false; - } - - if (Grid[goal_i][goal_j] != CN_GC_NOOBS) { - std::cout << "Error! Goal cell is not traversable (cell's value is" << Grid[goal_i][goal_j] << ")!" - << std::endl; - return false; - } - - return true; -} - -int Map::getValue(int i, int j) const -{ - if (i < 0 || i >= height) - return -1; - - if (j < 0 || j >= width) - return -1; - - return Grid[i][j]; -} diff --git a/mission.cpp b/mission.cpp deleted file mode 100644 index d3e10eb..0000000 --- a/mission.cpp +++ /dev/null @@ -1,125 +0,0 @@ -#include "mission.h" -#include "astar.h" -#include "bfs.h" -#include "dijkstra.h" -#include "theta.h" -#include "xmllogger.h" -#include "gl_const.h" - -Mission::Mission() -{ - logger = nullptr; - search = nullptr; - fileName = nullptr; -} - -Mission::Mission(const char *FileName) -{ - fileName = FileName; - logger = nullptr; - search = nullptr; -} - -Mission::~Mission() -{ - if (logger) - delete logger; - if (search) - delete search; -} - -bool Mission::getMap() -{ - return map.getMap(fileName); -} - -bool Mission::getConfig() -{ - return config.getConfig(fileName); -} - -bool Mission::createLog() -{ - if (logger != NULL) delete logger; - logger = new XmlLogger(config.LogParams[CN_LP_LEVEL]); - return logger->getLog(fileName, config.LogParams); -} - -void Mission::createEnvironmentOptions() -{ - if (config.SearchParams[CN_SP_ST] == CN_SP_ST_BFS || config.SearchParams[CN_SP_ST] == CN_SP_ST_DIJK) - options = EnvironmentOptions(config.SearchParams[CN_SP_AS], config.SearchParams[CN_SP_AD], - config.SearchParams[CN_SP_CC]); - else - options = EnvironmentOptions(config.SearchParams[CN_SP_AS], config.SearchParams[CN_SP_AD], - config.SearchParams[CN_SP_CC], config.SearchParams[CN_SP_MT]); -} - -void Mission::createSearch() -{ - if (search) - delete search; - if (config.SearchParams[CN_SP_ST] == CN_SP_ST_BFS) - search = new BFS(); - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_DIJK) - search = new Dijkstra(); - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_ASTAR) - search = new Astar(config.SearchParams[CN_SP_HW], config.SearchParams[CN_SP_BT]); - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_JP_SEARCH) - search = new JP_Search(config.SearchParams[CN_SP_HW], config.SearchParams[CN_SP_BT]); - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_TH) - search = new Theta(config.SearchParams[CN_SP_HW], config.SearchParams[CN_SP_BT]); -} - -void Mission::startSearch() -{ - - sr = search->startSearch(logger, map, options); - if (config.SearchParams[CN_SP_PS]) - { - smooth_search_result(sr, map, options.cutcorners); - } -} - -void Mission::printSearchResultsToConsole() -{ - std::cout << "Path "; - if (!sr.pathfound) - std::cout << "NOT "; - std::cout << "found!" << std::endl; - std::cout << "numberofsteps=" << sr.numberofsteps << std::endl; - std::cout << "nodescreated=" << sr.nodescreated << std::endl; - if (sr.pathfound) { - std::cout << "pathlength=" << sr.pathlength << std::endl; - std::cout << "pathlength_scaled=" << sr.pathlength * map.cellSize << std::endl; - } - std::cout << "time=" << sr.time << std::endl; -} - -void Mission::saveSearchResultsToLog() -{ - logger->writeToLogSummary(sr.numberofsteps, sr.nodescreated, sr.pathlength, sr.time, map.cellSize); - if (sr.pathfound) { - logger->writeToLogPath(*sr.lppath); - logger->writeToLogHPpath(*sr.hppath); - logger->writeToLogMap(map, *sr.lppath); - } else - logger->writeToLogNotFound(); - logger->saveLog(); -} - -const char *Mission::getAlgorithmName() -{ - if (config.SearchParams[CN_SP_ST] == CN_SP_ST_ASTAR) - return CNS_SP_ST_ASTAR; - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_DIJK) - return CNS_SP_ST_DIJK; - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_BFS) - return CNS_SP_ST_BFS; - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_JP_SEARCH) - return CNS_SP_ST_JP_SEARCH; - else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_TH) - return CNS_SP_ST_TH; - else - return ""; -} diff --git a/CMakeLists.txt b/src/CMakeLists.txt similarity index 69% rename from CMakeLists.txt rename to src/CMakeLists.txt index f9148e1..147b57d 100644 --- a/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,37 +1,28 @@ cmake_minimum_required(VERSION 2.8) -project(AStar-JPS-ThetaStar) +project(AStar-ThetaStar) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O2 -Wall -Wextra") set(SOURCE_FILES asearch.cpp - bfs.cpp config.h environmentoptions.cpp - ilogger.h - jp_search.cpp mission.cpp searchresult.h - xmllogger.cpp astar.cpp - bfs.h - dijkstra.cpp environmentoptions.h isearch.cpp - jp_search.h map.cpp mission.h theta.cpp - xmllogger.h astar.h config.cpp - dijkstra.h gl_const.h isearch.h map.h node.h theta.h - tinyxml2.cpp - tinyxml2.h path_smoothing.h path_smoothing.cpp + tinyxml2.h + tinyxml2.cpp ) -add_executable(AStar-JPS-ThetaStar ${SOURCE_FILES}) \ No newline at end of file +add_executable(AStar-ThetaStar ${SOURCE_FILES}) \ No newline at end of file diff --git a/src/asearch.cpp b/src/asearch.cpp new file mode 100644 index 0000000..41c6966 --- /dev/null +++ b/src/asearch.cpp @@ -0,0 +1,72 @@ +#include "mission.h" + +int main(int argc, char* argv[]) +{ + if(argc < 2) { + std::cout<<"Error! Pathfinding task file (XML) is not specified!"<> mapGrid = { + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, + {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, + {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, + {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} + }; + int cellSize = 24; + int startX = 12; + int startY = 20; + int finishX = 12; + int finishY = 7; + + if(!mission.getMap(startX, startY, finishX, finishY, cellSize, mapGrid)) { + std::cout<<"Incorrect map! Program halted!"<GetText(); std::transform(value.begin(), value.end(), value.begin(), ::tolower); - if (value == CNS_SP_ST_BFS) { - N = 8; - SearchParams = new double[N]; - SearchParams[CN_SP_ST] = CN_SP_ST_BFS; - } - else if (value == CNS_SP_ST_DIJK) { - N = 8; - SearchParams = new double[N]; - SearchParams[CN_SP_ST] = CN_SP_ST_DIJK; - } - else if (value == CNS_SP_ST_ASTAR || value == CNS_SP_ST_JP_SEARCH || value == CNS_SP_ST_TH) { + if (value == CNS_SP_ST_ASTAR || value == CNS_SP_ST_TH) { N = 8; SearchParams = new double[N]; SearchParams[CN_SP_ST] = CN_SP_ST_ASTAR; - if (value == CNS_SP_ST_JP_SEARCH) - SearchParams[CN_SP_ST] = CN_SP_ST_JP_SEARCH; - else if (value == CNS_SP_ST_TH) + if (value == CNS_SP_ST_TH) SearchParams[CN_SP_ST] = CN_SP_ST_TH; element = algorithm->FirstChildElement(CNS_TAG_HW); if (!element) { @@ -113,7 +101,7 @@ bool Config::getConfig(const char *FileName) } } - + element = algorithm->FirstChildElement(CNS_TAG_BT); if (!element) { std::cout << "Warning! No '" << CNS_TAG_BT << "' tag found in XML file" << std::endl; @@ -135,8 +123,8 @@ bool Config::getConfig(const char *FileName) else { std::cout << "Error! Value of '" << CNS_TAG_ST << "' tag (algorithm name) is not correctly specified." << std::endl; - std::cout << "Supported algorithm's names are: '" << CNS_SP_ST_BFS << "', '" << CNS_SP_ST_DIJK << "', '" - << CNS_SP_ST_ASTAR << "', '" << CNS_SP_ST_TH << "', '" << CNS_SP_ST_JP_SEARCH << "'." << std::endl; + std::cout << "Supported algorithm's names are: '" << + CNS_SP_ST_ASTAR << "', '" << CNS_SP_ST_TH << "'." << std::endl; return false; } @@ -224,7 +212,7 @@ bool Config::getConfig(const char *FileName) } } } - + element = algorithm->FirstChildElement(CNS_TAG_PS); if (!element) { @@ -242,7 +230,7 @@ bool Config::getConfig(const char *FileName) stream >> check; stream.clear(); stream.str(""); - + if (check != "1" && check != "true" && check != "0" && check != "false") { std::cout << "Warning! Value of '" << CNS_TAG_PS << "' is not correctly specified." << std::endl; std::cout << "Value of '" << CNS_TAG_PS << "' was defined to default - false " << std::endl; @@ -254,79 +242,6 @@ bool Config::getConfig(const char *FileName) SearchParams[CN_SP_PS] = 0; } } - - - options = root->FirstChildElement(CNS_TAG_OPT); - LogParams = new std::string[3]; - LogParams[CN_LP_PATH] = ""; - LogParams[CN_LP_NAME] = ""; - - if (!options) { - std::cout << "Warning! No '" << CNS_TAG_OPT << "' tag found in XML file." << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGLVL << "' tag was defined to 'short log' (1)." << std::endl; - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_SHORT_WORD; - } - else { - element = options->FirstChildElement(CNS_TAG_LOGLVL); - if (!element) { - std::cout << "Warning! No '" << CNS_TAG_LOGLVL << "' tag found in XML file." << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGLVL << "' tag was defined to 'short log' (1)." << std::endl; - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_SHORT_WORD; - } - else { - stream << element->GetText(); - stream >> value; - stream.str(""); - stream.clear(); - //std::transform(value.begin(), value.end(), value.begin(), ::tolower); - if (value == CN_LP_LEVEL_NOPE_WORD || value == CN_LP_LEVEL_NOPE_VALUE) - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_NOPE_WORD; - else if (value == CN_LP_LEVEL_TINY_WORD || value == CN_LP_LEVEL_TINY_VALUE) - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_TINY_WORD; - else if (value == CN_LP_LEVEL_SHORT_WORD || value == CN_LP_LEVEL_SHORT_VALUE) - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_SHORT_WORD; - else if (value == CN_LP_LEVEL_MEDIUM_WORD || value == CN_LP_LEVEL_MEDIUM_VALUE) - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_MEDIUM_WORD; - else if (value == CN_LP_LEVEL_FULL_WORD || value == CN_LP_LEVEL_FULL_VALUE) - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_FULL_WORD; - else { - std::cout << "'" << CNS_TAG_LOGLVL << "' is not correctly specified" << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGLVL << "' tag was defined to 'short log' (1)." << std::endl; - LogParams[CN_LP_LEVEL] = CN_LP_LEVEL_SHORT_WORD; - } - std::cout << "LogLevel: " << LogParams[CN_LP_LEVEL] << std::endl; - } - - element = options->FirstChildElement(CNS_TAG_LOGPATH); - if (!element) { - std::cout << "Warning! No '" << CNS_TAG_LOGPATH << "' tag found in XML file." << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGPATH << "' tag was defined to 'current directory'." << std::endl; - } - else if (!element->GetText()) { - std::cout << "Warning! Value of '" << CNS_TAG_LOGPATH << "' tag is missing!" << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGPATH << "' tag was defined to 'current directory'." << std::endl; - } - else { - LogParams[CN_LP_PATH] = element->GetText(); - } - - - element = options->FirstChildElement(CNS_TAG_LOGFN); - if (!element) { - std::cout << "Warning! No '" << CNS_TAG_LOGFN << "' tag found in XML file!" << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGFN - << "' tag was defined to default (original filename +'_log' + original file extension." - << std::endl; - } - else if (!element->GetText()) { - std::cout << "Warning! Value of '" << CNS_TAG_LOGFN << "' tag is missing." << std::endl; - std::cout << "Value of '" << CNS_TAG_LOGFN - << "' tag was defined to default (original filename +'_log' + original file extension." - << std::endl; - } - else - LogParams[CN_LP_NAME] = element->GetText(); - } return true; } diff --git a/config.h b/src/config.h similarity index 100% rename from config.h rename to src/config.h diff --git a/environmentoptions.cpp b/src/environmentoptions.cpp similarity index 100% rename from environmentoptions.cpp rename to src/environmentoptions.cpp diff --git a/environmentoptions.h b/src/environmentoptions.h similarity index 100% rename from environmentoptions.h rename to src/environmentoptions.h diff --git a/gl_const.h b/src/gl_const.h similarity index 93% rename from gl_const.h rename to src/gl_const.h index 1e06293..0391114 100644 --- a/gl_const.h +++ b/src/gl_const.h @@ -67,17 +67,10 @@ //Search Parameters #define CN_SP_ST 0 - - #define CNS_SP_ST_BFS "bfs" - #define CNS_SP_ST_DIJK "dijkstra" #define CNS_SP_ST_ASTAR "astar" - #define CNS_SP_ST_JP_SEARCH "jp_search" #define CNS_SP_ST_TH "theta" - #define CN_SP_ST_BFS 0 - #define CN_SP_ST_DIJK 1 #define CN_SP_ST_ASTAR 2 - #define CN_SP_ST_JP_SEARCH 3 #define CN_SP_ST_TH 4 #define CN_SP_AD 1 //AllowDiagonal @@ -137,4 +130,3 @@ #define CNS_OTHER_MATRIXSEPARATOR ' ' #endif - diff --git a/isearch.cpp b/src/isearch.cpp similarity index 96% rename from isearch.cpp rename to src/isearch.cpp index dfcf2bc..4ce290b 100644 --- a/isearch.cpp +++ b/src/isearch.cpp @@ -22,7 +22,7 @@ bool ISearch::stopCriterion() return false; } -SearchResult ISearch::startSearch(ILogger *Logger, const Map &map, const EnvironmentOptions &options) +SearchResult ISearch::startSearch(const Map &map, const EnvironmentOptions &options) { std::chrono::time_point start, end; start = std::chrono::system_clock::now(); @@ -58,9 +58,7 @@ SearchResult ISearch::startSearch(ILogger *Logger, const Map &map, const Environ addOpen(*it); it++; } - Logger->writeToLogOpenClose(open, close, false); } - Logger->writeToLogOpenClose(open, close, true); sresult.pathfound = false; sresult.nodescreated = closeSize + openSize; sresult.numberofsteps = closeSize; @@ -74,7 +72,7 @@ SearchResult ISearch::startSearch(ILogger *Logger, const Map &map, const Environ sresult.time = static_cast(std::chrono::duration_cast(end - start).count()) / 1000000000; if (pathfound) makeSecondaryPath(); - + sresult.hppath = &hppath; //Here is a constant pointer sresult.lppath = &lppath; return sresult; diff --git a/isearch.h b/src/isearch.h similarity index 91% rename from isearch.h rename to src/isearch.h index b342704..27c08e5 100644 --- a/isearch.h +++ b/src/isearch.h @@ -1,11 +1,12 @@ #ifndef ISEARCH_H #define ISEARCH_H -#include "ilogger.h" + #include "searchresult.h" #include "environmentoptions.h" #include #include #include +#include "map.h" class ISearch { @@ -13,7 +14,7 @@ class ISearch ISearch(); virtual ~ISearch(void); - SearchResult startSearch(ILogger *Logger, const Map &Map, const EnvironmentOptions &options); + SearchResult startSearch(const Map &Map, const EnvironmentOptions &options); protected: Node findMin(); diff --git a/src/map.cpp b/src/map.cpp new file mode 100644 index 0000000..1b8f8fd --- /dev/null +++ b/src/map.cpp @@ -0,0 +1,87 @@ +#include "map.h" + +Map::Map() +{ + height = -1; + width = -1; + start_i = -1; + start_j = -1; + goal_i = -1; + goal_j = -1; + Grid = nullptr; + cellSize = 1; +} + +Map::~Map() +{ + if (Grid) { + for (int i = 0; i < height; ++i) + delete[] Grid[i]; + delete[] Grid; + } +} + +bool Map::CellIsTraversable(int i, int j) const +{ + return (Grid[i][j] == CN_GC_NOOBS); +} + +bool Map::CellIsObstacle(int i, int j) const +{ + return (Grid[i][j] != CN_GC_NOOBS); +} + +bool Map::CellOnGrid(int i, int j) const +{ + return (i < height && i >= 0 && j < width && j >= 0); +} + +bool Map::getMap(const std::vector>& map, int startx, int starty, int finishx, int finishy, int cell_size) +{ + if (map.empty() || map[0].empty()) { + std::cout << "Error! Empty map provided!" << std::endl; + return false; + } + + height = map.size(); + width = map[0].size(); + + Grid = new int *[height]; + for (int i = 0; i < height; ++i) { + Grid[i] = new int[width]; + for (int j = 0; j < width; ++j) { + Grid[i][j] = map[i][j]; + } + } + + start_i = starty; + start_j = startx; + goal_i = finishy; + goal_j = finishx; + cellSize = cell_size; + + if (Grid[start_i][start_j] != CN_GC_NOOBS) { + std::cout << "Error! Start cell is not traversable (cell's value is" << Grid[start_i][start_j] << ")!" + << std::endl; + return false; + } + + if (Grid[goal_i][goal_j] != CN_GC_NOOBS) { + std::cout << "Error! Goal cell is not traversable (cell's value is" << Grid[goal_i][goal_j] << ")!" + << std::endl; + return false; + } + + return true; +} + +int Map::getValue(int i, int j) const +{ + if (i < 0 || i >= height) + return -1; + + if (j < 0 || j >= width) + return -1; + + return Grid[i][j]; +} diff --git a/map.h b/src/map.h similarity index 79% rename from map.h rename to src/map.h index c25c869..788e77a 100644 --- a/map.h +++ b/src/map.h @@ -5,7 +5,7 @@ #include #include #include -#include +#include class Map { public: @@ -13,7 +13,7 @@ class Map Map(const Map& orig); ~Map(); - bool getMap(const char *FileName); + bool getMap(const std::vector>& map, int startx, int starty, int finishx, int finishy, int cell_size); bool CellIsTraversable (int i, int j) const; bool CellOnGrid (int i, int j) const; bool CellIsObstacle(int i, int j) const; @@ -27,4 +27,3 @@ class Map }; #endif - diff --git a/src/mission.cpp b/src/mission.cpp new file mode 100644 index 0000000..148875f --- /dev/null +++ b/src/mission.cpp @@ -0,0 +1,90 @@ +#include "mission.h" +#include "astar.h" +#include "theta.h" +#include "gl_const.h" + +Mission::Mission() +{ + search = nullptr; + fileName = nullptr; +} + +Mission::Mission(const char *FileName) +{ + fileName = FileName; + search = nullptr; +} + +Mission::~Mission() +{ + if (search) + delete search; +} + +bool Mission::getMap(int startX, int startY, int endX, int endY, int cellSize, std::vector> &mapData) +{ + return map.getMap(mapData, startX, startY, endX, endY, cellSize); +} + +bool Mission::getConfig() +{ + return config.getConfig(fileName); +} + + +void Mission::createEnvironmentOptions() +{ + options = EnvironmentOptions(config.SearchParams[CN_SP_AS], config.SearchParams[CN_SP_AD], + config.SearchParams[CN_SP_CC], config.SearchParams[CN_SP_MT]); +} + +void Mission::createSearch() +{ + if (search) + delete search; + if (config.SearchParams[CN_SP_ST] == CN_SP_ST_ASTAR) + { + std::cout << "Using A* search algorithm." << std::endl; + search = new Astar(config.SearchParams[CN_SP_HW], config.SearchParams[CN_SP_BT]); + } + else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_TH) + { + std::cout << "Using Theta* search algorithm." << std::endl; + search = new Theta(config.SearchParams[CN_SP_HW], config.SearchParams[CN_SP_BT]); + } +} + +void Mission::startSearch() +{ + sr = search->startSearch(map, options); + if (config.SearchParams[CN_SP_PS]) + { + smooth_search_result(sr, map, options.cutcorners); + } +} + +void Mission::printSearchResultsToConsole() +{ + std::cout << "Path "; + if (!sr.pathfound) + std::cout << "NOT "; + std::cout << "found!" << std::endl; + std::cout << "numberofsteps=" << sr.numberofsteps << std::endl; + std::cout << "nodescreated=" << sr.nodescreated << std::endl; + if (sr.pathfound) { + std::cout << "pathlength=" << sr.pathlength << std::endl; + std::cout << "pathlength_scaled=" << sr.pathlength * map.cellSize << std::endl; + } + std::cout << "time=" << sr.time << std::endl; +} + + +const char *Mission::getAlgorithmName() +{ + if (config.SearchParams[CN_SP_ST] == CN_SP_ST_ASTAR) + return CNS_SP_ST_ASTAR; + else if (config.SearchParams[CN_SP_ST] == CN_SP_ST_TH) + return CNS_SP_ST_TH; + else + return ""; +} diff --git a/mission.h b/src/mission.h similarity index 77% rename from mission.h rename to src/mission.h index 0f76cca..d275821 100644 --- a/mission.h +++ b/src/mission.h @@ -4,15 +4,10 @@ #include "map.h" #include "config.h" #include "isearch.h" -#include "ilogger.h" #include "searchresult.h" #include "environmentoptions.h" -#include "jp_search.h" #include "astar.h" -#include "bfs.h" -#include "dijkstra.h" #include "theta.h" -#include "xmllogger.h" #include "path_smoothing.h" class Mission @@ -22,14 +17,12 @@ class Mission Mission (const char* fileName); ~Mission(); - bool getMap(); + bool getMap(int startX, int startY, int endX, int endY, int cellSize, std::vector> &mapData); bool getConfig(); - bool createLog(); void createSearch(); void createEnvironmentOptions(); void startSearch(); void printSearchResultsToConsole(); - void saveSearchResultsToLog(); private: const char* getAlgorithmName(); @@ -38,10 +31,8 @@ class Mission Config config; EnvironmentOptions options; ISearch* search; - ILogger* logger; const char* fileName; SearchResult sr; }; #endif - diff --git a/node.h b/src/node.h similarity index 100% rename from node.h rename to src/node.h diff --git a/path_smoothing.cpp b/src/path_smoothing.cpp similarity index 100% rename from path_smoothing.cpp rename to src/path_smoothing.cpp diff --git a/path_smoothing.h b/src/path_smoothing.h similarity index 100% rename from path_smoothing.h rename to src/path_smoothing.h diff --git a/searchresult.h b/src/searchresult.h similarity index 100% rename from searchresult.h rename to src/searchresult.h diff --git a/theta.cpp b/src/theta.cpp similarity index 100% rename from theta.cpp rename to src/theta.cpp diff --git a/theta.h b/src/theta.h similarity index 100% rename from theta.h rename to src/theta.h diff --git a/tinyxml2.cpp b/src/tinyxml2.cpp similarity index 100% rename from tinyxml2.cpp rename to src/tinyxml2.cpp diff --git a/tinyxml2.h b/src/tinyxml2.h similarity index 100% rename from tinyxml2.h rename to src/tinyxml2.h diff --git a/xmllogger.cpp b/xmllogger.cpp deleted file mode 100644 index c44bcc7..0000000 --- a/xmllogger.cpp +++ /dev/null @@ -1,277 +0,0 @@ -#include "xmllogger.h" - -using tinyxml2::XMLElement; -using tinyxml2::XMLNode; - -bool XmlLogger::getLog(const char *FileName, const std::string *LogParams) -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD) return true; - - if (doc.LoadFile(FileName) != tinyxml2::XMLError::XML_SUCCESS) { - std::cout << "Error opening input XML file" << std::endl; - return false; - } - - if (LogParams[CN_LP_PATH] == "" && LogParams[CN_LP_NAME] == "") { - std::string str; - str.append(FileName); - size_t found = str.find_last_of("."); - if (found != std::string::npos) - str.insert(found, "_log"); - else - str.append("_log"); - LogFileName.append(str); - } else if (LogParams[CN_LP_PATH] == "") { - LogFileName.append(FileName); - std::string::iterator it = LogFileName.end(); - while (*it != '\\') - it--; - ++it; - LogFileName.erase(it, LogFileName.end()); - LogFileName.append(LogParams[CN_LP_NAME]); - } else if (LogParams[CN_LP_NAME] == "") { - LogFileName.append(LogParams[CN_LP_PATH]); - if (*(--LogParams[CN_LP_PATH].end()) != '\\') LogFileName.append("\\"); - std::string lfn; - lfn.append(FileName); - size_t found = lfn.find_last_of("\\"); - std::string str = lfn.substr(found); - found = str.find_last_of("."); - if (found != std::string::npos) - str.insert(found, "_log"); - else - str.append("_log"); - LogFileName.append(str); - } else { - LogFileName.append(LogParams[CN_LP_PATH]); - if (*(--LogParams[CN_LP_PATH].end()) != '\\') LogFileName.append("\\"); - LogFileName.append(LogParams[CN_LP_NAME]); - } - - XMLElement *log, *root = doc.FirstChildElement(CNS_TAG_ROOT); - - if (!root) { - std::cout << "No '" << CNS_TAG_ROOT << "' element found in XML file" << std::endl; - std::cout << "Can not create log" << std::endl; - return false; - } - - root->InsertEndChild(doc.NewElement(CNS_TAG_LOG)); - - root = (root->LastChild())->ToElement(); - - if (loglevel != CN_LP_LEVEL_NOPE_WORD) { - log = doc.NewElement(CNS_TAG_MAPFN); - log->LinkEndChild(doc.NewText(FileName)); - root->InsertEndChild(log); - - root->InsertEndChild(doc.NewElement(CNS_TAG_SUM)); - - root->InsertEndChild(doc.NewElement(CNS_TAG_PATH)); - - root->InsertEndChild(doc.NewElement(CNS_TAG_LPLEVEL)); - - root->InsertEndChild(doc.NewElement(CNS_TAG_HPLEVEL)); - } - - if (loglevel == CN_LP_LEVEL_FULL_WORD || loglevel == CN_LP_LEVEL_MEDIUM_WORD) - root->InsertEndChild(doc.NewElement(CNS_TAG_LOWLEVEL)); - - return true; -} - -void XmlLogger::saveLog() -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD) - return; - doc.SaveFile(LogFileName.c_str()); -} - -void XmlLogger::writeToLogMap(const Map &map, const std::list &path) -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD || loglevel == CN_LP_LEVEL_TINY_WORD) - return; - - XMLElement *mapTag = doc.FirstChildElement(CNS_TAG_ROOT); - mapTag = mapTag->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_PATH); - - int iterate = 0; - bool inPath; - std::string str; - for (int i = 0; i < map.height; ++i) { - XMLElement *element = doc.NewElement(CNS_TAG_ROW); - element->SetAttribute(CNS_TAG_ATTR_NUM, iterate); - - for (int j = 0; j < map.width; ++j) { - inPath = false; - for(std::list::const_iterator it = path.begin(); it != path.end(); it++) - if(it->i == i && it->j == j) { - inPath = true; - break; - } - if (!inPath) - str += std::to_string(map.getValue(i,j)); - else - str += CNS_OTHER_PATHSELECTION; - str += CNS_OTHER_MATRIXSEPARATOR; - } - - element->InsertEndChild(doc.NewText(str.c_str())); - mapTag->InsertEndChild(element); - str.clear(); - iterate++; - } -} - -void XmlLogger::writeToLogOpenClose(const std::vector > &open, const std::unordered_map &close, bool last) -{ - if (loglevel != CN_LP_LEVEL_FULL_WORD && !(loglevel == CN_LP_LEVEL_MEDIUM_WORD && last)) - return; - - XMLElement *element = doc.NewElement(CNS_TAG_STEP); - XMLElement *child = 0; - XMLElement *lowlevel = doc.FirstChildElement(CNS_TAG_ROOT); - lowlevel = lowlevel->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_LOWLEVEL); - - int iterate = 0; - for (child = lowlevel->FirstChildElement(); child != nullptr; child = child->NextSiblingElement()) - iterate++; - - element->SetAttribute(CNS_TAG_ATTR_NUM, iterate); - lowlevel->InsertEndChild(element); - lowlevel = lowlevel->LastChildElement(); - - lowlevel->InsertEndChild(doc.NewElement(CNS_TAG_OPEN)); - child = lowlevel->LastChildElement(); - - Node min; - min.F = -1; - int exc = 0; - for (int i = 0; i < open.size(); ++i) { - if (open[i].size() > 0) { - if (open[i].begin()->F <= min.F || min.F == -1) { - if (open[i].begin()->F == min.F && open[i].begin()->g > min.g) { - min = *open[i].begin(); - exc = i; - } else if (open[i].begin()->F < min.F || min.F == -1) { - min = *open[i].begin(); - exc = i; - } - } - } - } - if (min.F != -1) { - element = doc.NewElement(CNS_TAG_POINT); - element->SetAttribute(CNS_TAG_ATTR_X, min.j); - element->SetAttribute(CNS_TAG_ATTR_Y, min.i); - element->SetAttribute(CNS_TAG_ATTR_F, min.F); - element->SetAttribute(CNS_TAG_ATTR_G, min.g); - if (min.g > 0) { - element->SetAttribute(CNS_TAG_ATTR_PARX, min.parent->j); - element->SetAttribute(CNS_TAG_ATTR_PARY, min.parent->i); - } - child->InsertEndChild(element); - } - for (int i = 0; i < open.size(); ++i) { - if (open[i].size() > 0) { - for (auto it = open[i].begin(); it != open[i].end(); ++it) { - if (it != open[exc].begin()) { - element = doc.NewElement(CNS_TAG_POINT); - element->SetAttribute(CNS_TAG_ATTR_X, it->j); - element->SetAttribute(CNS_TAG_ATTR_Y, it->i); - element->SetAttribute(CNS_TAG_ATTR_F, it->F); - element->SetAttribute(CNS_TAG_ATTR_G, it->g); - if (it->g > 0) { - element->SetAttribute(CNS_TAG_ATTR_PARX, it->parent->j); - element->SetAttribute(CNS_TAG_ATTR_PARY, it->parent->i); - } - child->InsertEndChild(element); - } - child->InsertEndChild(element); - } - } - } - - lowlevel->InsertEndChild(doc.NewElement(CNS_TAG_CLOSE)); - child = lowlevel->LastChildElement(); - - for (auto it = close.begin(); it != close.end(); ++it) { - element = doc.NewElement(CNS_TAG_POINT); - element->SetAttribute(CNS_TAG_ATTR_X, it->second.j); - element->SetAttribute(CNS_TAG_ATTR_Y, it->second.i); - element->SetAttribute(CNS_TAG_ATTR_F, it->second.F); - element->SetAttribute(CNS_TAG_ATTR_G, it->second.g); - if (it->second.g > 0) { - element->SetAttribute(CNS_TAG_ATTR_PARX, it->second.parent->j); - element->SetAttribute(CNS_TAG_ATTR_PARY, it->second.parent->i); - } - child->InsertEndChild(element); - } -} - -void XmlLogger::writeToLogPath(const std::list &path) -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD || loglevel == CN_LP_LEVEL_TINY_WORD || path.empty()) - return; - int iterate = 0; - XMLElement *lplevel = doc.FirstChildElement(CNS_TAG_ROOT); - lplevel = lplevel->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_LPLEVEL); - - for (std::list::const_iterator it = path.begin(); it != path.end(); it++) { - XMLElement *element = doc.NewElement(CNS_TAG_POINT); - element->SetAttribute(CNS_TAG_ATTR_X, it->j); - element->SetAttribute(CNS_TAG_ATTR_Y, it->i); - element->SetAttribute(CNS_TAG_ATTR_NUM, iterate); - lplevel->InsertEndChild(element); - iterate++; - } -} - -void XmlLogger::writeToLogHPpath(const std::list &hppath) -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD || loglevel == CN_LP_LEVEL_TINY_WORD || hppath.empty()) - return; - int partnumber = 0; - XMLElement *hplevel = doc.FirstChildElement(CNS_TAG_ROOT); - hplevel = hplevel->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_HPLEVEL); - std::list::const_iterator iter = hppath.begin(); - std::list::const_iterator it = hppath.begin(); - - while (iter != --hppath.end()) { - XMLElement *part = doc.NewElement(CNS_TAG_SECTION); - part->SetAttribute(CNS_TAG_ATTR_NUM, partnumber); - part->SetAttribute(CNS_TAG_ATTR_STX, it->j); - part->SetAttribute(CNS_TAG_ATTR_STY, it->i); - ++iter; - part->SetAttribute(CNS_TAG_ATTR_FINX, iter->j); - part->SetAttribute(CNS_TAG_ATTR_FINY, iter->i); - part->SetAttribute(CNS_TAG_ATTR_LENGTH, iter->g - it->g); - hplevel->LinkEndChild(part); - ++it; - ++partnumber; - } -} - -void XmlLogger::writeToLogSummary(unsigned int numberofsteps, unsigned int nodescreated, float length, double time, double cellSize) -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD) - return; - - XMLElement *summary = doc.FirstChildElement(CNS_TAG_ROOT); - summary = summary->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_SUM); - XMLElement *element = summary->ToElement(); - element->SetAttribute(CNS_TAG_ATTR_NUMOFSTEPS, numberofsteps); - element->SetAttribute(CNS_TAG_ATTR_NODESCREATED, nodescreated); - element->SetAttribute(CNS_TAG_ATTR_LENGTH, length); - element->SetAttribute(CNS_TAG_ATTR_LENGTH_SCALED, length*cellSize); - element->SetAttribute(CNS_TAG_ATTR_TIME, std::to_string(time).c_str()); -} - -void XmlLogger::writeToLogNotFound() -{ - if (loglevel == CN_LP_LEVEL_NOPE_WORD) - return; - - XMLElement *node = doc.FirstChildElement(CNS_TAG_ROOT)->FirstChildElement(CNS_TAG_LOG)->FirstChildElement(CNS_TAG_PATH); - node->InsertEndChild(doc.NewText("Path NOT found!")); -} diff --git a/xmllogger.h b/xmllogger.h deleted file mode 100644 index e0f758b..0000000 --- a/xmllogger.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef XMLLOGGER_H -#define XMLLOGGER_H -#include "tinyxml2.h" -#include "ilogger.h" - -class XmlLogger : public ILogger { - -public: - XmlLogger(std::string loglevel):ILogger(loglevel){} - - virtual ~XmlLogger() {}; - - bool getLog(const char *FileName, const std::string *LogParams); - - void saveLog(); - - void writeToLogMap(const Map &Map, const std::list &path); - - void writeToLogOpenClose(const std::vector> &open, const std::unordered_map &close, bool last); - - void writeToLogPath(const std::list &path); - - void writeToLogHPpath(const std::list &hppath); - - void writeToLogNotFound(); - - void writeToLogSummary(unsigned int numberofsteps, unsigned int nodescreated, float length, double time, double cellSize); - -private: - std::string LogFileName; - tinyxml2::XMLDocument doc; -}; - -#endif - From 3f5d6776ed48f393e1064855b35a1c1e24541f7a Mon Sep 17 00:00:00 2001 From: xh Date: Thu, 10 Jul 2025 18:29:37 +0800 Subject: [PATCH 2/8] new folder --- CMakeLists-StaticBuild.txt | 35 --------------------------- {src => include}/astar.h | 0 {src => include}/config.h | 0 {src => include}/environmentoptions.h | 0 {src => include}/gl_const.h | 0 {src => include}/isearch.h | 0 {src => include}/map.h | 0 {src => include}/mission.h | 0 {src => include}/node.h | 0 {src => include}/path_smoothing.h | 0 {src => include}/searchresult.h | 0 {src => include}/theta.h | 0 {src => include}/tinyxml2.h | 0 13 files changed, 35 deletions(-) delete mode 100644 CMakeLists-StaticBuild.txt rename {src => include}/astar.h (100%) rename {src => include}/config.h (100%) rename {src => include}/environmentoptions.h (100%) rename {src => include}/gl_const.h (100%) rename {src => include}/isearch.h (100%) rename {src => include}/map.h (100%) rename {src => include}/mission.h (100%) rename {src => include}/node.h (100%) rename {src => include}/path_smoothing.h (100%) rename {src => include}/searchresult.h (100%) rename {src => include}/theta.h (100%) rename {src => include}/tinyxml2.h (100%) diff --git a/CMakeLists-StaticBuild.txt b/CMakeLists-StaticBuild.txt deleted file mode 100644 index 3684e13..0000000 --- a/CMakeLists-StaticBuild.txt +++ /dev/null @@ -1,35 +0,0 @@ -cmake_minimum_required(VERSION 2.8) -project(AStar-JPS-ThetaStar) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O2 -Wall -Wextra -static -static-libgcc -static-libstdc++") -set(SOURCE_FILES - asearch.cpp - bfs.cpp - config.h - environmentoptions.cpp - ilogger.h - jp_search.cpp - mission.cpp - searchresult.h - xmllogger.cpp - astar.cpp - bfs.h - dijkstra.cpp - environmentoptions.h - isearch.cpp - jp_search.h - map.cpp - mission.h - theta.cpp - xmllogger.h - astar.h - config.cpp - dijkstra.h - gl_const.h - isearch.h - map.h - node.h - theta.h - tinyxml2.cpp - tinyxml2.h - ) -add_executable(AStar-JPS-ThetaStar ${SOURCE_FILES}) \ No newline at end of file diff --git a/src/astar.h b/include/astar.h similarity index 100% rename from src/astar.h rename to include/astar.h diff --git a/src/config.h b/include/config.h similarity index 100% rename from src/config.h rename to include/config.h diff --git a/src/environmentoptions.h b/include/environmentoptions.h similarity index 100% rename from src/environmentoptions.h rename to include/environmentoptions.h diff --git a/src/gl_const.h b/include/gl_const.h similarity index 100% rename from src/gl_const.h rename to include/gl_const.h diff --git a/src/isearch.h b/include/isearch.h similarity index 100% rename from src/isearch.h rename to include/isearch.h diff --git a/src/map.h b/include/map.h similarity index 100% rename from src/map.h rename to include/map.h diff --git a/src/mission.h b/include/mission.h similarity index 100% rename from src/mission.h rename to include/mission.h diff --git a/src/node.h b/include/node.h similarity index 100% rename from src/node.h rename to include/node.h diff --git a/src/path_smoothing.h b/include/path_smoothing.h similarity index 100% rename from src/path_smoothing.h rename to include/path_smoothing.h diff --git a/src/searchresult.h b/include/searchresult.h similarity index 100% rename from src/searchresult.h rename to include/searchresult.h diff --git a/src/theta.h b/include/theta.h similarity index 100% rename from src/theta.h rename to include/theta.h diff --git a/src/tinyxml2.h b/include/tinyxml2.h similarity index 100% rename from src/tinyxml2.h rename to include/tinyxml2.h From 323abd3bf2c8cd07270659c4bcd43463960a7927 Mon Sep 17 00:00:00 2001 From: xh Date: Thu, 10 Jul 2025 20:08:56 +0800 Subject: [PATCH 3/8] add wrapper --- include/config.h | 24 +++++++++- include/gl_const.h | 67 ---------------------------- include/mission.h | 3 ++ include/wrapper.h | 4 ++ src/config.cpp | 106 ++++++++++++++++++++++++++++++++++++++++++++- src/mission.cpp | 32 ++++++++++++++ src/wrapper.cpp | 100 ++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 265 insertions(+), 71 deletions(-) create mode 100644 include/wrapper.h create mode 100644 src/wrapper.cpp diff --git a/include/config.h b/include/config.h index 5f2b75d..5d873c1 100644 --- a/include/config.h +++ b/include/config.h @@ -2,6 +2,7 @@ #define CONFIG_H #include + class Config { public: @@ -10,12 +11,31 @@ class Config ~Config(); bool getConfig(const char *FileName); + // Set all search parameters directly (see gl_const.h for details) + // st: search type (CN_SP_ST_ASTAR or CN_SP_ST_TH) + // hw: heuristic weight (>=1) + // mt: metric type (CN_SP_MT_DIAG, CN_SP_MT_MANH, CN_SP_MT_EUCL, CN_SP_MT_CHEB) + // bt: breaking ties (CN_SP_BT_GMIN or CN_SP_BT_GMAX) + // ad: allow diagonal (0 or 1) + // cc: cut corners (0 or 1) + // asq: allow squeeze (0 or 1) + // ps: post smoothing (0 or 1) + void setConfig(int st, double hw, int mt, int bt, int ad, int cc, int asq, int ps); + + // Set parameters by tag name (as in gl_const.h) and value (string or double) + // Returns true if the tag is recognized and value is set, false otherwise + bool setParamByTag(const std::string& tag, const std::string& value); + bool setParamByTag(const std::string& tag, double value); + + // Reset all parameters to default values (A* with Euclidean, all options off) + void setDefaultConfigAstar(); + void setDefaultConfigTheta(); + + public: double* SearchParams; - std::string* LogParams; unsigned int N; }; #endif - diff --git a/include/gl_const.h b/include/gl_const.h index 0391114..ea883b4 100644 --- a/include/gl_const.h +++ b/include/gl_const.h @@ -7,17 +7,6 @@ //XML tags #define CNS_TAG_ROOT "root" - #define CNS_TAG_MAP "map" - #define CNS_TAG_CELLSIZE "cellsize" - #define CNS_TAG_WIDTH "width" - #define CNS_TAG_HEIGHT "height" - #define CNS_TAG_STX "startx" - #define CNS_TAG_STY "starty" - #define CNS_TAG_FINX "finishx" - #define CNS_TAG_FINY "finishy" - #define CNS_TAG_GRID "grid" - #define CNS_TAG_ROW "row" - #define CNS_TAG_ALG "algorithm" #define CNS_TAG_ST "searchtype" #define CNS_TAG_HW "hweight" @@ -28,42 +17,6 @@ #define CNS_TAG_CC "cutcorners" #define CNS_TAG_PS "postsmoothing" - #define CNS_TAG_OPT "options" - #define CNS_TAG_LOGLVL "loglevel" - #define CNS_TAG_LOGPATH "logpath" - #define CNS_TAG_LOGFN "logfilename" - - #define CNS_TAG_LOG "log" - #define CNS_TAG_MAPFN "mapfilename" - #define CNS_TAG_SUM "summary" - #define CNS_TAG_PATH "path" - #define CNS_TAG_LPLEVEL "lplevel" - #define CNS_TAG_HPLEVEL "hplevel" - #define CNS_TAG_SECTION "section" - #define CNS_TAG_LOWLEVEL "lowlevel" - #define CNS_TAG_STEP "step" - #define CNS_TAG_OPEN "open" - #define CNS_TAG_POINT "node" - #define CNS_TAG_CLOSE "close" - -//XML tags' attributes - #define CNS_TAG_ATTR_NUMOFSTEPS "numberofsteps" - #define CNS_TAG_ATTR_NODESCREATED "nodescreated" - #define CNS_TAG_ATTR_LENGTH "length" - #define CNS_TAG_ATTR_LENGTH_SCALED "length_scaled" - #define CNS_TAG_ATTR_TIME "time" - #define CNS_TAG_ATTR_X "x" - #define CNS_TAG_ATTR_Y "y" - #define CNS_TAG_ATTR_NUM "number" - #define CNS_TAG_ATTR_F "F" - #define CNS_TAG_ATTR_G "g" - #define CNS_TAG_ATTR_PARX "parent_x" - #define CNS_TAG_ATTR_PARY "parent_y" - #define CNS_TAG_ATTR_STX "start.x" - #define CNS_TAG_ATTR_STY "start.y" - #define CNS_TAG_ATTR_FINX "finish.x" - #define CNS_TAG_ATTR_FINY "finish.y" - //Search Parameters #define CN_SP_ST 0 @@ -103,30 +56,10 @@ #define CN_SP_PS 7 //PostSmoothing - //Log Configuration - #define CN_LP_LEVEL 0 - - #define CN_LP_LEVEL_NOPE_VALUE "0" - #define CN_LP_LEVEL_NOPE_WORD "nope" - #define CN_LP_LEVEL_TINY_VALUE "0.5" - #define CN_LP_LEVEL_TINY_WORD "tiny" - #define CN_LP_LEVEL_SHORT_VALUE "1" - #define CN_LP_LEVEL_SHORT_WORD "short" - #define CN_LP_LEVEL_MEDIUM_VALUE "1.5" - #define CN_LP_LEVEL_MEDIUM_WORD "medium" - #define CN_LP_LEVEL_FULL_VALUE "2" - #define CN_LP_LEVEL_FULL_WORD "full" - - #define CN_LP_PATH 1 - #define CN_LP_NAME 2 //Grid Cell #define CN_GC_NOOBS 0 #define CN_GC_OBS 1 -//Other - #define CNS_OTHER_PATHSELECTION "*" - #define CNS_OTHER_MATRIXSEPARATOR ' ' - #endif diff --git a/include/mission.h b/include/mission.h index d275821..30ea0f0 100644 --- a/include/mission.h +++ b/include/mission.h @@ -23,6 +23,9 @@ class Mission void createEnvironmentOptions(); void startSearch(); void printSearchResultsToConsole(); + bool setDefaultConfig(bool use_theta); + void getPath(std::vector> &path); + bool getPathValid(); private: const char* getAlgorithmName(); diff --git a/include/wrapper.h b/include/wrapper.h new file mode 100644 index 0000000..a7af7c2 --- /dev/null +++ b/include/wrapper.h @@ -0,0 +1,4 @@ +#pragma once +#include + +int plan_2d(std::vector &origin, std::vector &dim, std::vector &map, std::vector &start, std::vector &goal, float resolution, std::vector > &path, double &time_spent, bool use_theta); diff --git a/src/config.cpp b/src/config.cpp index 860ae38..43bfb78 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -8,16 +8,118 @@ Config::Config() { - LogParams = nullptr; SearchParams = nullptr; } + Config::~Config() { if (SearchParams) delete[] SearchParams; - if (LogParams) delete[] LogParams; } +// Set configuration parameters directly, instead of reading from XML +void Config::setConfig(int st, double hw, int mt, int bt, int ad, int cc, int asq, int ps) +{ + if (SearchParams) delete[] SearchParams; + N = 8; + SearchParams = new double[N]; + SearchParams[CN_SP_ST] = st; + SearchParams[CN_SP_HW] = hw; + SearchParams[CN_SP_MT] = mt; + SearchParams[CN_SP_BT] = bt; + SearchParams[CN_SP_AD] = ad; + SearchParams[CN_SP_CC] = cc; + SearchParams[CN_SP_AS] = asq; + SearchParams[CN_SP_PS] = ps; +} + +// Set a parameter by tag name (as in gl_const.h) and string value (for bools and enums) +bool Config::setParamByTag(const std::string& tag, const std::string& value) +{ + if (!SearchParams) setDefaults(); + std::string v = value; + std::transform(v.begin(), v.end(), v.begin(), ::tolower); + if (tag == CNS_TAG_ST) { + if (v == CNS_SP_ST_ASTAR) { SearchParams[CN_SP_ST] = CN_SP_ST_ASTAR; return true; } + if (v == CNS_SP_ST_TH) { SearchParams[CN_SP_ST] = CN_SP_ST_TH; return true; } + return false; + } + if (tag == CNS_TAG_MT) { + if (v == CNS_SP_MT_DIAG) { SearchParams[CN_SP_MT] = CN_SP_MT_DIAG; return true; } + if (v == CNS_SP_MT_MANH) { SearchParams[CN_SP_MT] = CN_SP_MT_MANH; return true; } + if (v == CNS_SP_MT_EUCL) { SearchParams[CN_SP_MT] = CN_SP_MT_EUCL; return true; } + if (v == CNS_SP_MT_CHEB) { SearchParams[CN_SP_MT] = CN_SP_MT_CHEB; return true; } + return false; + } + if (tag == CNS_TAG_BT) { + if (v == CNS_SP_BT_GMIN) { SearchParams[CN_SP_BT] = CN_SP_BT_GMIN; return true; } + if (v == CNS_SP_BT_GMAX) { SearchParams[CN_SP_BT] = CN_SP_BT_GMAX; return true; } + return false; + } + if (tag == CNS_TAG_AD || tag == CNS_TAG_CC || tag == CNS_TAG_AS || tag == CNS_TAG_PS) { + if (v == "1" || v == "true") { + if (tag == CNS_TAG_AD) SearchParams[CN_SP_AD] = 1; + if (tag == CNS_TAG_CC) SearchParams[CN_SP_CC] = 1; + if (tag == CNS_TAG_AS) SearchParams[CN_SP_AS] = 1; + if (tag == CNS_TAG_PS) SearchParams[CN_SP_PS] = 1; + return true; + } + if (v == "0" || v == "false") { + if (tag == CNS_TAG_AD) SearchParams[CN_SP_AD] = 0; + if (tag == CNS_TAG_CC) SearchParams[CN_SP_CC] = 0; + if (tag == CNS_TAG_AS) SearchParams[CN_SP_AS] = 0; + if (tag == CNS_TAG_PS) SearchParams[CN_SP_PS] = 0; + return true; + } + return false; + } + return false; +} + +// Set a parameter by tag name and double value (for numeric params) +bool Config::setParamByTag(const std::string& tag, double value) +{ + if (!SearchParams) setDefaults(); + if (tag == CNS_TAG_HW) { + if (value < 1) value = 1; + SearchParams[CN_SP_HW] = value; + return true; + } + return false; +} + +// Set all parameters to default values (A* with Euclidean, all options off) +void Config::setDefaultConfigAstar() +{ + if (SearchParams) delete[] SearchParams; + N = 8; + SearchParams = new double[N]; + SearchParams[CN_SP_ST] = CN_SP_ST_ASTAR; + SearchParams[CN_SP_HW] = 1; + SearchParams[CN_SP_MT] = CN_SP_MT_EUCL; + SearchParams[CN_SP_BT] = CN_SP_BT_GMAX; + SearchParams[CN_SP_AD] = 1; + SearchParams[CN_SP_CC] = 0; + SearchParams[CN_SP_AS] = 0; + SearchParams[CN_SP_PS] = 0; +} + +void Config::setDefaultConfigTheta() +{ + if (SearchParams) delete[] SearchParams; + N = 8; + SearchParams = new double[N]; + SearchParams[CN_SP_ST] = CN_SP_ST_TH; + SearchParams[CN_SP_HW] = 1; + SearchParams[CN_SP_MT] = CN_SP_MT_EUCL; // Theta* requires Euclidean metric + SearchParams[CN_SP_BT] = CN_SP_BT_GMAX; + SearchParams[CN_SP_AD] = 1; + SearchParams[CN_SP_CC] = 0; + SearchParams[CN_SP_AS] = 0; + SearchParams[CN_SP_PS] = 0; +} + + bool Config::getConfig(const char *FileName) { std::string value; diff --git a/src/mission.cpp b/src/mission.cpp index 148875f..701189f 100644 --- a/src/mission.cpp +++ b/src/mission.cpp @@ -31,6 +31,14 @@ bool Mission::getConfig() return config.getConfig(fileName); } +bool Mission::setDefaultConfig(bool use_theta) +{ + if (use_theta) + config.setDefaultConfigTheta(); + else + config.setDefaultConfigAstar(); + return true; +} void Mission::createEnvironmentOptions() { @@ -63,6 +71,30 @@ void Mission::startSearch() } } +void Mission::getPath(std::vector> &path) +{ + path.clear(); + if (sr.pathfound) { + std::list &srpath = *sr.lppath; + for (std::list::const_iterator it = srpath.begin(); it != srpath.end(); it++) { + std::vector point; + point.push_back(it->j); + point.push_back(it->i); + path.push_back(point); + } + // we also need to insert the end point + std::vector endPoint; + endPoint.push_back(sr.end.j); + endPoint.push_back(sr.end.i); + path.push_back(endPoint); + } +} + +bool Mission::getPathValid() +{ + return sr.pathfound; +} + void Mission::printSearchResultsToConsole() { std::cout << "Path "; diff --git a/src/wrapper.cpp b/src/wrapper.cpp new file mode 100644 index 0000000..515486b --- /dev/null +++ b/src/wrapper.cpp @@ -0,0 +1,100 @@ +#include "mission.h" +#include +#include "wrapper.h" + +using namespace JPS; + +class Timer { + typedef std::chrono::high_resolution_clock high_resolution_clock; + typedef std::chrono::milliseconds milliseconds; + public: + explicit Timer(bool run = false) + { + if (run) + Reset(); + } + void Reset() + { + _start = high_resolution_clock::now(); + } + milliseconds Elapsed() const + { + return std::chrono::duration_cast(high_resolution_clock::now() - _start); + } + private: + high_resolution_clock::time_point _start; +}; + +int plan_2d(std::vector &origin, std::vector &dim, std::vector &map, std::vector &start, std::vector &goal, float resolution, std::vector > &path, double &time_spent, bool use_theta) +{ + std::vector> map_grid; + int height = dim[0]; + int width = dim[1]; + map_grid.resize(height); + for (int i = 0; i < height; ++i) + { + map_grid[i].resize(width); + for (int j = 0; j < width; ++j) + { + map_grid[i][j] = map[i * width + j]; + } + } + int start_x = static_cast((start[0] - origin[0]) / resolution); + int start_y = static_cast((start[1] - origin[1]) / resolution); + int goal_x = static_cast((goal[0] - origin[0]) / resolution); + int goal_y = static_cast((goal[1] - origin[1]) / resolution); + + if (start_x < 0 || start_x >= width || start_y < 0 || start_y >= height || + goal_x < 0 || goal_x >= width || goal_y < 0 || goal_y >= height) + { + return -1; // Invalid start or goal position + } + + Mission mission; + int cellSize = 1; + if (!mission.getMap(start_x, start_y, goal_x, goal_y, cellSize, map_grid)) + { + return -1; // Failed to get the map + } + + if (use_theta) + { + Timer time_theta(true); + mission.setDefaultConfig(true); // Set default configuration for Theta* + mission.createEnvironmentOptions(); + mission.createSearch(); + mission.startSearch(); + double dt_theta = time_theta.Elapsed().count(); + std::vector> path_int; + mission.getPath(path_int); // Get the path from the mission + path.clear(); + for (const auto &pt : path_int) + { + double x = origin[0] + pt[0] * resolution; + double y = origin[1] + pt[1] * resolution; + path.push_back({x, y}); + } + time_spent = dt_theta; + return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid + } + else{ + Timer time_astar(true); + mission.setDefaultConfig(false); // Set default configuration for A* + mission.createEnvironmentOptions(); + mission.createSearch(); + mission.startSearch(); + double dt_astar = time_astar.Elapsed().count(); + std::vector> path_int; + mission.getPath(path_int); // Get the path from the mission + path.clear(); + for (const auto &pt : path_int) + { + double x = origin[0] + pt[0] * resolution; + double y = origin[1] + pt[1] * resolution; + path.push_back({x, y}); + } + time_spent = dt_astar; + return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid + } + return 0; +} \ No newline at end of file From 151abf11f21aa9349f96a1d7220934c3b950a509 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Thu, 10 Jul 2025 12:43:40 +0000 Subject: [PATCH 4/8] Add Python wrapper for A* and Theta* planning This commit introduces a Python wrapper for the existing C++ path planning functionality. Key changes: - Modified `src/CMakeLists.txt` to build a shared library Python module using pybind11. - Created `src/python_bindings.cpp` to define the Python module interface for the `plan_2d` function. - The `plan_2d` function in `wrapper.cpp` is exposed to Python, returning status, path, and time spent. - Added `example.py` to demonstrate usage of the Python wrapper. - Updated `README.md` with instructions for building and running the Python wrapper. - Fixed various build issues encountered during integration, including: - Correctly finding pybind11 installed via pip. - Resolving undefined symbols by ensuring all necessary source files (e.g., `mission.cpp`, `config.cpp`) are compiled and linked. - Correcting errors in C++ source files (`config.cpp`, `wrapper.cpp`, `mission.cpp`) that prevented compilation or correct execution. --- README.md | 111 +++ build/CMakeCache.txt | 418 +++++++++ build/CMakeFiles/3.28.3/CMakeCCompiler.cmake | 74 ++ .../CMakeFiles/3.28.3/CMakeCXXCompiler.cmake | 85 ++ .../3.28.3/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 15968 bytes .../3.28.3/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 15992 bytes build/CMakeFiles/3.28.3/CMakeSystem.cmake | 15 + .../3.28.3/CompilerIdC/CMakeCCompilerId.c | 880 ++++++++++++++++++ build/CMakeFiles/3.28.3/CompilerIdC/a.out | Bin 0 -> 16088 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 869 +++++++++++++++++ build/CMakeFiles/3.28.3/CompilerIdCXX/a.out | Bin 0 -> 16096 bytes build/CMakeFiles/CMakeConfigureLog.yaml | 565 +++++++++++ .../CMakeDirectoryInformation.cmake | 16 + build/CMakeFiles/Makefile.cmake | 146 +++ build/CMakeFiles/Makefile2 | 111 +++ build/CMakeFiles/TargetDirectories.txt | 3 + build/CMakeFiles/cmake.check_cache | 1 + .../planner_cpp.dir/DependInfo.cmake | 34 + .../CMakeFiles/planner_cpp.dir/asearch.cpp.o | Bin 0 -> 14248 bytes .../planner_cpp.dir/asearch.cpp.o.d | 189 ++++ build/CMakeFiles/planner_cpp.dir/astar.cpp.o | Bin 0 -> 5104 bytes .../CMakeFiles/planner_cpp.dir/astar.cpp.o.d | 188 ++++ build/CMakeFiles/planner_cpp.dir/build.make | 285 ++++++ .../planner_cpp.dir/cmake_clean.cmake | 33 + .../planner_cpp.dir/compiler_depend.make | 2 + .../planner_cpp.dir/compiler_depend.ts | 2 + build/CMakeFiles/planner_cpp.dir/config.cpp.o | Bin 0 -> 34320 bytes .../CMakeFiles/planner_cpp.dir/config.cpp.o.d | 187 ++++ build/CMakeFiles/planner_cpp.dir/depend.make | 2 + .../planner_cpp.dir/environmentoptions.cpp.o | Bin 0 -> 1488 bytes .../environmentoptions.cpp.o.d | 3 + build/CMakeFiles/planner_cpp.dir/flags.make | 9 + .../CMakeFiles/planner_cpp.dir/isearch.cpp.o | Bin 0 -> 17600 bytes .../planner_cpp.dir/isearch.cpp.o.d | 195 ++++ build/CMakeFiles/planner_cpp.dir/link.txt | 1 + build/CMakeFiles/planner_cpp.dir/map.cpp.o | Bin 0 -> 5320 bytes build/CMakeFiles/planner_cpp.dir/map.cpp.o.d | 164 ++++ .../CMakeFiles/planner_cpp.dir/mission.cpp.o | Bin 0 -> 16648 bytes .../planner_cpp.dir/mission.cpp.o.d | 190 ++++ .../planner_cpp.dir/path_smoothing.cpp.o | Bin 0 -> 6224 bytes .../planner_cpp.dir/path_smoothing.cpp.o.d | 189 ++++ .../CMakeFiles/planner_cpp.dir/progress.make | 13 + .../planner_cpp.dir/python_bindings.cpp.o | Bin 0 -> 307752 bytes .../planner_cpp.dir/python_bindings.cpp.o.d | 398 ++++++++ build/CMakeFiles/planner_cpp.dir/theta.cpp.o | Bin 0 -> 7408 bytes .../CMakeFiles/planner_cpp.dir/theta.cpp.o.d | 189 ++++ .../CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o | Bin 0 -> 122448 bytes .../planner_cpp.dir/tinyxml2.cpp.o.d | 84 ++ .../CMakeFiles/planner_cpp.dir/wrapper.cpp.o | Bin 0 -> 11392 bytes .../planner_cpp.dir/wrapper.cpp.o.d | 196 ++++ build/CMakeFiles/progress.marks | 1 + build/Makefile | 477 ++++++++++ build/cmake_install.cmake | 54 ++ ...lanner_cpp.cpython-312-x86_64-linux-gnu.so | Bin 0 -> 370584 bytes example.py | 118 +++ src/CMakeLists.txt | 110 ++- src/config.cpp | 4 +- src/mission.cpp | 12 +- src/python_bindings.cpp | 58 ++ src/wrapper.cpp | 2 +- 60 files changed, 6659 insertions(+), 24 deletions(-) create mode 100644 build/CMakeCache.txt create mode 100644 build/CMakeFiles/3.28.3/CMakeCCompiler.cmake create mode 100644 build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake create mode 100755 build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin create mode 100755 build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin create mode 100644 build/CMakeFiles/3.28.3/CMakeSystem.cmake create mode 100644 build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c create mode 100755 build/CMakeFiles/3.28.3/CompilerIdC/a.out create mode 100644 build/CMakeFiles/3.28.3/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100755 build/CMakeFiles/3.28.3/CompilerIdCXX/a.out create mode 100644 build/CMakeFiles/CMakeConfigureLog.yaml create mode 100644 build/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 build/CMakeFiles/Makefile.cmake create mode 100644 build/CMakeFiles/Makefile2 create mode 100644 build/CMakeFiles/TargetDirectories.txt create mode 100644 build/CMakeFiles/cmake.check_cache create mode 100644 build/CMakeFiles/planner_cpp.dir/DependInfo.cmake create mode 100644 build/CMakeFiles/planner_cpp.dir/asearch.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/astar.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/astar.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/build.make create mode 100644 build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake create mode 100644 build/CMakeFiles/planner_cpp.dir/compiler_depend.make create mode 100644 build/CMakeFiles/planner_cpp.dir/compiler_depend.ts create mode 100644 build/CMakeFiles/planner_cpp.dir/config.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/config.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/depend.make create mode 100644 build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/flags.make create mode 100644 build/CMakeFiles/planner_cpp.dir/isearch.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/isearch.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/link.txt create mode 100644 build/CMakeFiles/planner_cpp.dir/map.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/map.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/mission.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/progress.make create mode 100644 build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/theta.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d create mode 100644 build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o create mode 100644 build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d create mode 100644 build/CMakeFiles/progress.marks create mode 100644 build/Makefile create mode 100644 build/cmake_install.cmake create mode 100755 build/planner_cpp.cpython-312-x86_64-linux-gnu.so create mode 100644 example.py create mode 100644 src/python_bindings.cpp diff --git a/README.md b/README.md index ae04534..a9e508c 100644 --- a/README.md +++ b/README.md @@ -53,3 +53,114 @@ Input file should contain: * "2" or "full" - *1*-log plus OPEN and CLOSE lists are written into the log-file after each step of the algorithm. Can make log-files really huge. * **\** - defines the directory where the log-file should be written. If not specified directory of the input file is used. * **\** - defines the name of log-file. If not specified the name of the log file is: "input file name"+"_log"+input file extension. + +Python Wrapper +============== +This project also includes a Python wrapper allowing you to use the A* and Theta* path planning functionalities from Python. + +Prerequisites +------------- +- **CMake** (version 3.1 or higher recommended) +- A C++ compiler that supports C++11 (e.g., GCC, Clang, MSVC) +- **Python** (version 3.6 or higher recommended) +- **pybind11**: This will be used for creating the Python bindings. You can install it via pip: + ```bash + pip install pybind11 + ``` +- **setuptools** (usually comes with Python/pip): + ```bash + pip install setuptools + ``` + +Building the Python Module +-------------------------- +The Python module `planner_cpp` is built using CMake. + +1. **Navigate to the project root directory** (the one containing this README). +2. **Create a build directory and navigate into it:** + ```bash + mkdir build + cd build + ``` +3. **Run CMake to configure the project:** + * On Linux/macOS: + ```bash + cmake ../src + ``` + * On Windows (if using Visual Studio, you might need to specify a generator, e.g., `cmake ../src -G "Visual Studio 16 2019" -A x64`). Simpler for command line (like MinGW): + ```bash + cmake ../src + ``` + This command tells CMake to look for the `CMakeLists.txt` in the `../src` directory. +4. **Compile the project:** + * On Linux/macOS: + ```bash + make + ``` + * On Windows (with MSVC): + ```bash + cmake --build . --config Release + ``` + (Or open the generated solution file in Visual Studio and build). + If using MinGW makefiles: + ```bash + mingw32-make + ``` + + After a successful build, you should find the Python module file (e.g., `planner_cpp.cpython-38-x86_64-linux-gnu.so` on Linux, `planner_cpp.cp38-win_amd64.pyd` on Windows) inside the `build` directory (or a subdirectory like `build/Release` depending on your CMake generator and build type). + +Running the Example +------------------- +An example Python script `example.py` is provided in the root directory. + +1. **Ensure the Python module is built** as described above. +2. **Run the example script from the project root directory:** + ```bash + python example.py + ``` + The `example.py` script attempts to locate the compiled module in common build directory locations (e.g., `build/`, `build/Release/`). + + If you encounter an `ImportError`, ensure that: + * The module (e.g., `planner_cpp...so` or `planner_cpp...pyd`) exists in your build directory. + * The build directory is in your `PYTHONPATH` environment variable, or you are running the script in a way that Python can find the module (the script tries to add the build directory to `sys.path` automatically, but this might not cover all build configurations). For example, you can copy the `.so`/`.pyd` file from the build directory to the project root directory next to `example.py`. + +Using the Wrapper in Your Own Python Code +----------------------------------------- +1. Make sure the compiled `planner_cpp` module is in your Python path. +2. Import the module and use the `plan_2d` function: + +```python +import planner_cpp # Or ensure the .so/.pyd file is in your PYTHONPATH + +origin = [0.0, 0.0] +dim = [100, 100] # height, width +# Map data: flat list, row-major, 0=free, 1=obstacle +map_data = [0] * (dim[0] * dim[1]) +# Populate map_data with obstacles as needed, e.g.: +# map_data[row * dim[1] + col] = 1 + +start_coords = [0.5, 0.5] # meters +goal_coords = [9.5, 9.5] # meters +map_resolution = 0.1 # meters/cell +use_theta_star = False # False for A*, True for Theta* + +status, path, time_ms = planner_cpp.plan_2d( + origin, + dim, + map_data, + start_coords, + goal_coords, + map_resolution, + use_theta_star +) + +if status == 0: + print(f"Path found: {path}") + print(f"Time taken: {time_ms} ms") +else: + print("Failed to find path.") + +``` +The `map_data` list should contain integers that can be safely converted to `signed char` by the C++ backend (typically values like 0 for free, 1 for obstacle). +The path is returned as a list of `[x, y]` coordinate pairs in meters. +Time spent is returned in milliseconds. diff --git a/build/CMakeCache.txt b/build/CMakeCache.txt new file mode 100644 index 0000000..8bb3c4f --- /dev/null +++ b/build/CMakeCache.txt @@ -0,0 +1,418 @@ +# This is the CMakeCache file. +# For build in directory: /app/build +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Value Computed by CMake +AStar-ThetaStar_BINARY_DIR:STATIC=/app/build + +//Value Computed by CMake +AStar-ThetaStar_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +AStar-ThetaStar_SOURCE_DIR:STATIC=/app/src + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-13 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-13 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-13 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-13 + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Value Computed by CMake. +CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/app/build/CMakeFiles/pkgRedirects + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=AStar-ThetaStar + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//Path to a program. +CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Overwrite cached values read from Python library (classic search). +// Turn off if cross-compiling and manually setting these values. +PYBIND11_PYTHONLIBS_OVERWRITE:BOOL=ON + +//Python version to use for compiling modules +PYBIND11_PYTHON_VERSION:STRING= + +//Path to a program. +PYTHON_EXECUTABLE:FILEPATH=/home/jules/.pyenv/shims/python + +//Path to a library. +PYTHON_LIBRARY:FILEPATH=/home/jules/.pyenv/versions/3.12.11/lib/libpython3.12.so + +//The directory containing a CMake configuration file for pybind11. +pybind11_DIR:PATH=/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11 + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/app/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=28 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_AR +CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB +CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/app/src +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.28 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_TAPI +CMAKE_TAPI-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Details about finding PYTHON +FIND_PACKAGE_MESSAGE_DETAILS_PYTHON:INTERNAL=/home/jules/.pyenv/shims/python3.12.11 +//Details about finding PythonInterp +FIND_PACKAGE_MESSAGE_DETAILS_PythonInterp:INTERNAL=[/home/jules/.pyenv/shims/python][v3.12.11(3.7)] +//Test HAS_FLTO +HAS_FLTO:INTERNAL=1 +//ADVANCED property for variable: PYTHON_EXECUTABLE +PYTHON_EXECUTABLE-ADVANCED:INTERNAL=1 +PYTHON_INCLUDE_DIRS:INTERNAL=/home/jules/.pyenv/versions/3.12.11/include/python3.12 +PYTHON_IS_DEBUG:INTERNAL=0 +PYTHON_LIBRARIES:INTERNAL=/home/jules/.pyenv/versions/3.12.11/lib/libpython3.12.so +//ADVANCED property for variable: PYTHON_LIBRARY +PYTHON_LIBRARY-ADVANCED:INTERNAL=1 +PYTHON_MODULE_DEBUG_POSTFIX:INTERNAL= +PYTHON_MODULE_EXTENSION:INTERNAL=.cpython-312-x86_64-linux-gnu.so +PYTHON_MODULE_PREFIX:INTERNAL= +PYTHON_VERSION:INTERNAL=3.12.11 +PYTHON_VERSION_MAJOR:INTERNAL=3 +PYTHON_VERSION_MINOR:INTERNAL=12 +Python_ADDITIONAL_VERSIONS:INTERNAL=3.12;3.11;3.10;3.9;3.8;3.7 +//linker supports push/pop state +_CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE +_PYBIND11_CROSSCOMPILING:INTERNAL=OFF +_Python:INTERNAL=PYTHON +//Directories where pybind11 and possibly Python headers are located +pybind11_INCLUDE_DIRS:INTERNAL=/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include;/home/jules/.pyenv/versions/3.12.11/include/python3.12 diff --git a/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake b/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake new file mode 100644 index 0000000..3766fe1 --- /dev/null +++ b/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake @@ -0,0 +1,74 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "13.3.0") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "c_std_23") + +set(CMAKE_C_PLATFORM_ID "Linux") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU") +set(CMAKE_C_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-13") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-13") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND") +set(CMAKE_COMPILER_IS_GNUCC 1) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) +set(CMAKE_C_LINKER_DEPFILE_SUPPORTED TRUE) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "ELF") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake b/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..8dbc9d3 --- /dev/null +++ b/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake @@ -0,0 +1,85 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "13.3.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-13") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-13") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) +set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED TRUE) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/13;/usr/include/x86_64-linux-gnu/c++/13;/usr/include/c++/13/backward;/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin b/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin new file mode 100755 index 0000000000000000000000000000000000000000..87f287194a15f3106a57cf4ff4b57eba7b928fa6 GIT binary patch literal 15968 zcmeHOeT)@X6~FH-3yXZbM+>?F!lqludsjp&cYT^ffv|^f=RcwL^vW;lA6?mR=?>Udz z;caWGF`CSInK}3T?)lw&=ggh=?z}m3IN8%3jYI@Xo%oQI%msUn#8iDkDX3L)E;>^;5MBowd5u`8p;syxdQie6M2)=J#F(dQSPME1vG+#c2~rF!&VH-2z%?3$5y_0o6tMfN`Rr{|s5#?c4IjU4nr!S;BH zu#J79560uzonMcvvFF@|*nHR)!`6{};o`^VcfR<8^A8?6YyTp*aO*=09{ce5a!dN9 zOXu$0yYimHUq1A7WBpU$I;&v&x74V`^P<(jbF<)Iodv%O@VI!Jh$o=nlLJsjTqJxT z6pu^1Q8WhdTLFI;Y(Yr_pw(#S5a3HN%9>(e%u$A5y9J_`po#Myi3)KNbX+vvG){~& z`mbN296w3^254+w(-g3baABG-qXx~QXStr4vz$C2gJYICgY6E^cH=y;BxCGJftYhz#E@BUpXR=I07Dc zUMQTRwA_K|Stp((?0cX8B23??__6ec?@9W8N@Th|1{(=wZYZoh~d^pb$#HW2Y_lQlS2w{A>>_scTGLHVF;fy?l%H~G^uB?3&_OaCof&P`X&ww=)Tiqq3z420N z;_SzaiQgMX|1h<4Ai1%;@pn?j1%<_qPk<+TLxW! z1k2F%{K{l(^$~PDLmK=Y>AyLRYW;O%V#;{-FWZf0r|XQ!bH>^0-co2_Ej7?knN;Iq zK92XuHmnw<+xHkpw?(mNOuXzZG>&hZ3&w@@l}hD826oTYUxT~u$bR5f`$zsC4?-mt z_5g3g(>`>U-X_uX)RUzkgq7 zNNZnDYG9xzX(s!+Qtf@_W^vyh|gS3UanLQfIbEK80g1A8=xPa zs#H#aM!{#QD3SYiiO5(yvSQ)9hLiB%2l17#9RQAeme(~;J~>(g7(T#S2eC=hbl@9p}i&n;sbALLMgN*)1abQOd`AJK3DC zw}NcG^;u3f=k4MB5(?Mgjw9TfO1q8f zUnQHzMa}=`6z7Nkn=Nww&e|{KnjmbX!eTmw zX}=i$&g1X$85O$+U2mgafW&Y3x6SmdVF5tVD-8|lgW^WAx#{K1K};W~P+OjRVDJnc(To zaP921?y);Np${i(yX_q*7@SObzwsBMnRbRTh2638H&taF&&%2~YT;<1)9zjEz4Bj2 z6Vl;vfH?MI!5p#j8OW+PyYA|1?@e_A3NK!mNrMPR*Din{0U!UcMCy*7{*Lw@v%kB0 zcXGfSXzzgkGKD-0@CzjPCwv+6|Lv51^@72ydHpkAJ*W;8)BJ^A9M5@H8novsJ;Eg? z53eJP3O!%&Y<)Oi(nsCGsO@^=J}6ys;H4QSLlB(8CY)^2eZ(q`2t6~Nhc1+c7Z_yC zCv3Oq6!J3+6Y5+$Yav1CI8}r`npHb}xBvyu9)rC+ow{3)??LGH2+gpO4Di`fd^Ob+ zgUiskm2(DRIQSZc4sS&W9p-orrtXaE=S>>8K7vaXzT=bx-*@Bn5mifHE~9=oY`BJD z{%r4cp)U%rZ z&+9tY{Cm#hXFt~W10UCnZ1cL2bu;x896t}>1QhU4na}H3)@5?!{)5N=5Y*!_aeei7 zmVR$}{Z7qP!^`&90(^~ltOGyW!REyy0e&+PSicef+W~%p2&^-K6Bcami2$G1J*@fu z2Hd3Z^kVxo6tD}9ztE_L^ykQAMKGJq(kI&;b07Dn%^ZK#80lkGt$o-8S^I1xndi#h-hBljxK{M)ODDlp%#t8>rio1g~2MFYd@81Kz_JpBEK_gg%6A6;C)8zqqS YfyTLCRf}uq+WaN>!veA}KnR%PpD9X5TL1t6 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin b/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin new file mode 100755 index 0000000000000000000000000000000000000000..81abc267065a2e02b3405c31c62b55b5985377fd GIT binary patch literal 15992 zcmeHOYit}>6~4Q65{Ee1ZJJP%gl1A2I!a zYmO(z1ix(*Prq&?H>~}<5#srEH}P0wA1M1?c2fUJf4hlyR*`OmU%%Uh1#9ka5AbAM zsQt|pALhN(-$KVBO7Uk+;T4>2N@Tj;;L}O6!NI#Sj7cmbA#iJ6h z6LmiPPQdShuV3~6pj7a41n@gBx{AxdSfgN+SBe$o-@A88REXoCqoQu!I9HJUraN52 zPm;aRb(k@OdfqW?N6#2m7LdU)Lm#rTM%p@R3T(#t(<=1Dz%D&y+UBs8cT9U=S64ch zH3y7j+7!B(G8_ZAs9bMQ8P4Rg1ux~&7C``k!xJYr}-#Pw$Q7BH+ z^!vy7b#hn}bBT;|{n`!}$2pF3lI6Mw_nsFwJvg6($eHrse9RG__Tbz%;(-Ja2qF+f zAc#N^fgl1w1peP6@W;sAuWKhKYqZmgez92y?K4FuTzWw}`NNvaa@R{+9|yR!@d?;Q z*2e_emo`2FwV}xRZXxSUuOud}d`z48wRZA1Q@aP^O~s}kYiG7U4-QJJ^I-a?AvLo8 zA?XkB#{kjJEINm(ecD+KU4IbE(Dl;N^~m}YXn2`4*jv(mYZBF_8Es-pd-e}Iv}dQQ zw9s?fl^JIhIM_%IYD(ALaWNmqdty5_i^6^TwUgV!Skxw7c51cL+ZRLS=B84qbTb8; z=NA19uDU~qfLrb#`M-Mr8nLh+coUzR)Fukoe-yus!#o|I)V`>lS$!3*3nJgCjz*p- zhT^vgU4^^(61H5b4o5EeTYgokW%ciUo^Btyj9trPR6Z)$bs#|mf(Qf=2qF+fAc#N^ zfgl1w1cC?z5eOm>MBpEf06yP&BT4l2^l!_<^Q+vDo*H%RgN<#6y!L&G{+{GEXIwY! zoS8akCpz_=eepzhUx$!(lAj!ROg(4ABd>$KiGhLMxE}B8PIUBvg={yH)U{p5$#z~_x{MT2Wn1;9c$X()pD?pnS$Y(vjz5l9e$AOb-If(Qf=2qF+fAc#N^fgl1w1pYT7!1;Kb zf5*9X@}dWZSj)qt{JiBm?L!zco|JVf`se(!;z} z6pad)?}su??Qe0b;%U;$NY{~GO_~+w{uL>|kJ7=#ZgR}yC=!8lX4&7}gtOgWOYV3f zP7<1-x(ezSc73L#HEFCQ<={|&+20-mpIe+&xPFP|@rpOW@>3ZDOrKM93O<)J@MxQOvcT>YZ-GZ(|!Zvn5ASAI+SnV+}*0^pVM z&0i;be|#3h?K!mf=bJABT$w){u@UflD&S(@pzSoNImi@;yKTB-3=07APGM+B9Tc<4 z=(>~92QeKzk2&Z$eK?&<8fiV{H+kl&bS;rn1 zL$;AI^;98~83&4|rh}z3$Fysgam4I8aG(o%vC^j9(V0*OM@NPJk=~|OD?60aJ@+CJ zZFbSwJB)hL8pf1(%YY1gXm6J+PkY*OoV4jNX_FQZ6&PI4-i}@J?xYTR_P8UskNKQF zVq{a8o!|Z8zK&gqE2Ioe`8ie8C z>liA$T_IGM`WcwfmCmkz8pCxHobvD+=ZgP5I9@kVv$W+h>UY2w*EY;w=zTA=Md9^~ zTN9!c3SPedy)V2^?iIWr?-l$%_44`uoVDULhO(dkA;A6&Ya<>%uLoIc#OL*(fBXit z<64mUyk2Cz8-ojiW5go!d7WnghD#9U^ZJuDuQ$O&3c2H|xF1Tm_G3P;_gM4sj#04Ye}y2dXjY`_2eHv58w9m`IwBKf^CV0oRaxUBc^G zeoxYG&vn)}fE)4fdHp=y03Zn4xwY9kwybj~Bd+6dOUO<7we9pOFw-wjCmHGAf M#{yF8BlxP~@1wCoegFUf literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/3.28.3/CMakeSystem.cmake b/build/CMakeFiles/3.28.3/CMakeSystem.cmake new file mode 100644 index 0000000..f047d2e --- /dev/null +++ b/build/CMakeFiles/3.28.3/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-6.8.0") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "6.8.0") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-6.8.0") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "6.8.0") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c b/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 0000000..0a0ec9b --- /dev/null +++ b/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,880 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif +#if defined(__CLASSIC_C__) +/* cv-qualifiers did not exist in K&R C */ +# define const +# define volatile +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif __STDC_VERSION__ > 201710L +# define C_VERSION "23" +#elif __STDC_VERSION__ >= 201710L +# define C_VERSION "17" +#elif __STDC_VERSION__ >= 201000L +# define C_VERSION "11" +#elif __STDC_VERSION__ >= 199901L +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/build/CMakeFiles/3.28.3/CompilerIdC/a.out b/build/CMakeFiles/3.28.3/CompilerIdC/a.out new file mode 100755 index 0000000000000000000000000000000000000000..ecc315e71b4e62a6558ef29ebb804b7c2bdf9e59 GIT binary patch literal 16088 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 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out b/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out new file mode 100755 index 0000000000000000000000000000000000000000..c8ced32cf082708045baa23211fbf858c298928d GIT binary patch literal 16096 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 ASpWb4 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/CMakeConfigureLog.yaml b/build/CMakeFiles/CMakeConfigureLog.yaml new file mode 100644 index 0000000..67502e6 --- /dev/null +++ b/build/CMakeFiles/CMakeConfigureLog.yaml @@ -0,0 +1,565 @@ + +--- +events: + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:233 (message)" + - "CMakeLists.txt:2 (project)" + message: | + The system is: Linux - 6.8.0 - x86_64 + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. + Compiler: /usr/bin/cc + Build flags: + Id flags: + + The output was: + 0 + + + Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + + The C compiler identification is GNU, found in: + /app/build/CMakeFiles/3.28.3/CompilerIdC/a.out + + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. + Compiler: /usr/bin/c++ + Build flags: + Id flags: + + The output was: + 0 + + + Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + + The CXX compiler identification is GNU, found in: + /app/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out + + - + kind: "try_compile-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + checks: + - "Detecting C compiler ABI info" + directories: + source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7" + binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7" + cmakeVariables: + CMAKE_C_FLAGS: "" + buildResult: + variable: "CMAKE_C_ABI_COMPILED" + cached: true + stdout: | + Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' + + Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_c51be/fast + /usr/bin/gmake -f CMakeFiles/cmTC_c51be.dir/build.make CMakeFiles/cmTC_c51be.dir/build + gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' + Building C object CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o + /usr/bin/cc -v -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c + Using built-in specs. + COLLECT_GCC=/usr/bin/cc + OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa + OFFLOAD_TARGET_DEFAULT=1 + Target: x86_64-linux-gnu + Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 + Thread model: posix + Supported LTO compression algorithms: zlib zstd + gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/' + /usr/libexec/gcc/x86_64-linux-gnu/13/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_c51be.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccPWDDPE.s + GNU C17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu) + compiled by GNU C version 13.3.0, GMP version 6.3.0, MPFR version 4.2.1, MPC version 1.3.1, isl version isl-0.26-GMP + + GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 + ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include" + #include "..." search starts here: + #include <...> search starts here: + /usr/lib/gcc/x86_64-linux-gnu/13/include + /usr/local/include + /usr/include/x86_64-linux-gnu + /usr/include + End of search list. + Compiler executable checksum: 38987c28e967c64056a6454abdef726e + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/' + as -v --64 -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o /tmp/ccPWDDPE.s + GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42 + COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ + LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.' + Linking C executable cmTC_c51be + /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c51be.dir/link.txt --verbose=1 + /usr/bin/cc -v -rdynamic CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -o cmTC_c51be + Using built-in specs. + COLLECT_GCC=/usr/bin/cc + COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper + OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa + OFFLOAD_TARGET_DEFAULT=1 + Target: x86_64-linux-gnu + Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 + Thread model: posix + Supported LTO compression algorithms: zlib zstd + gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) + COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ + LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ + COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.' + /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/ccT9hQOM.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c51be /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o + COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.' + gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' + + exitCode: 0 + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:127 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed C implicit include dir info: rv=done + found start of include info + found start of implicit include info + add: [/usr/lib/gcc/x86_64-linux-gnu/13/include] + add: [/usr/local/include] + add: [/usr/include/x86_64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/13/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/13/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] + + + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:159 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed C implicit link information: + link line regex: [^( *|.*[/\\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] + ignore line: [Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7'] + ignore line: [] + ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_c51be/fast] + ignore line: [/usr/bin/gmake -f CMakeFiles/cmTC_c51be.dir/build.make CMakeFiles/cmTC_c51be.dir/build] + ignore line: [gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7'] + ignore line: [Building C object CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/'] + ignore line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_c51be.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccPWDDPE.s] + ignore line: [GNU C17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 13.3.0 GMP version 6.3.0 MPFR version 4.2.1 MPC version 1.3.1 isl version isl-0.26-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/13/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/x86_64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [Compiler executable checksum: 38987c28e967c64056a6454abdef726e] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/'] + ignore line: [ as -v --64 -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o /tmp/ccPWDDPE.s] + ignore line: [GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42] + ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.'] + ignore line: [Linking C executable cmTC_c51be] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c51be.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -o cmTC_c51be ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] + ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.'] + link line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/ccT9hQOM.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c51be /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/libexec/gcc/x86_64-linux-gnu/13/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccT9hQOM.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_c51be] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] + arg [CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [-lc] ==> lib [c] + arg [-lgcc] ==> lib [gcc] + arg [--push-state] ==> ignore + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--pop-state] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13] ==> [/usr/lib/gcc/x86_64-linux-gnu/13] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> [/usr/lib] + implicit libs: [gcc;gcc_s;c;gcc;gcc_s] + implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + + - + kind: "try_compile-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + checks: + - "Detecting CXX compiler ABI info" + directories: + source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC" + binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC" + cmakeVariables: + CMAKE_CXX_FLAGS: "" + buildResult: + variable: "CMAKE_CXX_ABI_COMPILED" + cached: true + stdout: | + Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' + + Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_b3c36/fast + /usr/bin/gmake -f CMakeFiles/cmTC_b3c36.dir/build.make CMakeFiles/cmTC_b3c36.dir/build + gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' + Building CXX object CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o + /usr/bin/c++ -v -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp + Using built-in specs. + COLLECT_GCC=/usr/bin/c++ + OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa + OFFLOAD_TARGET_DEFAULT=1 + Target: x86_64-linux-gnu + Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 + Thread model: posix + Supported LTO compression algorithms: zlib zstd + gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/' + /usr/libexec/gcc/x86_64-linux-gnu/13/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_b3c36.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccqwdKMm.s + GNU C++17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu) + compiled by GNU C version 13.3.0, GMP version 6.3.0, MPFR version 4.2.1, MPC version 1.3.1, isl version isl-0.26-GMP + + GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 + ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/13" + ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed" + ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include" + #include "..." search starts here: + #include <...> search starts here: + /usr/include/c++/13 + /usr/include/x86_64-linux-gnu/c++/13 + /usr/include/c++/13/backward + /usr/lib/gcc/x86_64-linux-gnu/13/include + /usr/local/include + /usr/include/x86_64-linux-gnu + /usr/include + End of search list. + Compiler executable checksum: c81c05345ce537099dafd5580045814a + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/' + as -v --64 -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccqwdKMm.s + GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42 + COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ + LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ + COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.' + Linking CXX executable cmTC_b3c36 + /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b3c36.dir/link.txt --verbose=1 + /usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_b3c36 + Using built-in specs. + COLLECT_GCC=/usr/bin/c++ + COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper + OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa + OFFLOAD_TARGET_DEFAULT=1 + Target: x86_64-linux-gnu + Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 + Thread model: posix + Supported LTO compression algorithms: zlib zstd + gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) + COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ + LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ + COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.' + /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/cctKEum9.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_b3c36 /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o + COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.' + gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' + + exitCode: 0 + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:127 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed CXX implicit include dir info: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/13] + add: [/usr/include/x86_64-linux-gnu/c++/13] + add: [/usr/include/c++/13/backward] + add: [/usr/lib/gcc/x86_64-linux-gnu/13/include] + add: [/usr/local/include] + add: [/usr/include/x86_64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/13] ==> [/usr/include/c++/13] + collapse include dir [/usr/include/x86_64-linux-gnu/c++/13] ==> [/usr/include/x86_64-linux-gnu/c++/13] + collapse include dir [/usr/include/c++/13/backward] ==> [/usr/include/c++/13/backward] + collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/13/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/13/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/13;/usr/include/x86_64-linux-gnu/c++/13;/usr/include/c++/13/backward;/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] + + + - + kind: "message-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:159 (message)" + - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed CXX implicit link information: + link line regex: [^( *|.*[/\\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] + ignore line: [Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC'] + ignore line: [] + ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_b3c36/fast] + ignore line: [/usr/bin/gmake -f CMakeFiles/cmTC_b3c36.dir/build.make CMakeFiles/cmTC_b3c36.dir/build] + ignore line: [gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC'] + ignore line: [Building CXX object CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/'] + ignore line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_b3c36.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccqwdKMm.s] + ignore line: [GNU C++17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 13.3.0 GMP version 6.3.0 MPFR version 4.2.1 MPC version 1.3.1 isl version isl-0.26-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/13"] + ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/13] + ignore line: [ /usr/include/x86_64-linux-gnu/c++/13] + ignore line: [ /usr/include/c++/13/backward] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/13/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/x86_64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [Compiler executable checksum: c81c05345ce537099dafd5580045814a] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/'] + ignore line: [ as -v --64 -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccqwdKMm.s] + ignore line: [GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42] + ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_b3c36] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b3c36.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_b3c36 ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] + ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.'] + link line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/cctKEum9.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_b3c36 /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/libexec/gcc/x86_64-linux-gnu/13/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/cctKEum9.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_b3c36] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] + arg [CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13] ==> [/usr/lib/gcc/x86_64-linux-gnu/13] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + + - + kind: "try_compile-v1" + backtrace: + - "/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake:101 (try_compile)" + - "/usr/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake:18 (cmake_check_source_compiles)" + - "/usr/share/cmake-3.28/Modules/CheckCXXCompilerFlag.cmake:34 (cmake_check_compiler_flag)" + - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:323 (check_cxx_compiler_flag)" + - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:368 (_pybind11_return_if_cxx_and_linker_flags_work)" + - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:435 (_pybind11_generate_lto)" + - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Config.cmake:250 (include)" + - "CMakeLists.txt:29 (find_package)" + checks: + - "Performing Test HAS_FLTO" + directories: + source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a" + binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a" + cmakeVariables: + CMAKE_CXX_FLAGS: " -O2 -Wall -Wextra" + CMAKE_MODULE_PATH: "" + buildResult: + variable: "HAS_FLTO" + cached: true + stdout: | + Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' + + Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_a9f29/fast + /usr/bin/gmake -f CMakeFiles/cmTC_a9f29.dir/build.make CMakeFiles/cmTC_a9f29.dir/build + gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' + Building CXX object CMakeFiles/cmTC_a9f29.dir/src.cxx.o + /usr/bin/c++ -DHAS_FLTO -O2 -Wall -Wextra -flto -fno-fat-lto-objects -o CMakeFiles/cmTC_a9f29.dir/src.cxx.o -c /app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a/src.cxx + Linking CXX executable cmTC_a9f29 + /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a9f29.dir/link.txt --verbose=1 + /usr/bin/c++ -O2 -Wall -Wextra -rdynamic CMakeFiles/cmTC_a9f29.dir/src.cxx.o -o cmTC_a9f29 -flto + gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' + + exitCode: 0 +... diff --git a/build/CMakeFiles/CMakeDirectoryInformation.cmake b/build/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..e925417 --- /dev/null +++ b/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.28 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/app/src") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/app/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/build/CMakeFiles/Makefile.cmake b/build/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..7d93ff0 --- /dev/null +++ b/build/CMakeFiles/Makefile.cmake @@ -0,0 +1,146 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.28 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "CMakeFiles/3.28.3/CMakeCCompiler.cmake" + "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.28.3/CMakeSystem.cmake" + "/app/src/CMakeLists.txt" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Config.cmake" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11ConfigVersion.cmake" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Targets.cmake" + "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Tools.cmake" + "/usr/share/cmake-3.28/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.28/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.28/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.28/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.28/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" + "/usr/share/cmake-3.28/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.28/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.28/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.28/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.28/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.28/Modules/CMakeParseArguments.cmake" + "/usr/share/cmake-3.28/Modules/CMakeParseImplicitIncludeInfo.cmake" + "/usr/share/cmake-3.28/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.28/Modules/CMakeParseLibraryArchitecture.cmake" + "/usr/share/cmake-3.28/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.28/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.28/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.28/Modules/CheckCXXCompilerFlag.cmake" + "/usr/share/cmake-3.28/Modules/CheckCXXSourceCompiles.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/CrayClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/LCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/NVHPC-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/OrangeC-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Tasking-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/XLClang-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + "/usr/share/cmake-3.28/Modules/FindPackageMessage.cmake" + "/usr/share/cmake-3.28/Modules/FindPythonInterp.cmake" + "/usr/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake" + "/usr/share/cmake-3.28/Modules/Internal/CheckFlagCommonConfig.cmake" + "/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake" + "/usr/share/cmake-3.28/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux-Initialize.cmake" + "/usr/share/cmake-3.28/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.28/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.28.3/CMakeSystem.cmake" + "CMakeFiles/3.28.3/CMakeCCompiler.cmake" + "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.28.3/CMakeCCompiler.cmake" + "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/planner_cpp.dir/DependInfo.cmake" + ) diff --git a/build/CMakeFiles/Makefile2 b/build/CMakeFiles/Makefile2 new file mode 100644 index 0000000..abb8744 --- /dev/null +++ b/build/CMakeFiles/Makefile2 @@ -0,0 +1,111 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.28 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /app/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /app/build + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/planner_cpp.dir/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/planner_cpp.dir/clean +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/planner_cpp.dir + +# All Build rule for target. +CMakeFiles/planner_cpp.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/app/build/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10,11,12,13 "Built target planner_cpp" +.PHONY : CMakeFiles/planner_cpp.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/planner_cpp.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/planner_cpp.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 0 +.PHONY : CMakeFiles/planner_cpp.dir/rule + +# Convenience name for target. +planner_cpp: CMakeFiles/planner_cpp.dir/rule +.PHONY : planner_cpp + +# clean rule for target. +CMakeFiles/planner_cpp.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/clean +.PHONY : CMakeFiles/planner_cpp.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system diff --git a/build/CMakeFiles/TargetDirectories.txt b/build/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..19db454 --- /dev/null +++ b/build/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,3 @@ +/app/build/CMakeFiles/planner_cpp.dir +/app/build/CMakeFiles/edit_cache.dir +/app/build/CMakeFiles/rebuild_cache.dir diff --git a/build/CMakeFiles/cmake.check_cache b/build/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/build/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake b/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake new file mode 100644 index 0000000..c13c978 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake @@ -0,0 +1,34 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/app/src/asearch.cpp" "CMakeFiles/planner_cpp.dir/asearch.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/asearch.cpp.o.d" + "/app/src/astar.cpp" "CMakeFiles/planner_cpp.dir/astar.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/astar.cpp.o.d" + "/app/src/config.cpp" "CMakeFiles/planner_cpp.dir/config.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/config.cpp.o.d" + "/app/src/environmentoptions.cpp" "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d" + "/app/src/isearch.cpp" "CMakeFiles/planner_cpp.dir/isearch.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/isearch.cpp.o.d" + "/app/src/map.cpp" "CMakeFiles/planner_cpp.dir/map.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/map.cpp.o.d" + "/app/src/mission.cpp" "CMakeFiles/planner_cpp.dir/mission.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/mission.cpp.o.d" + "/app/src/path_smoothing.cpp" "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d" + "/app/src/python_bindings.cpp" "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d" + "/app/src/theta.cpp" "CMakeFiles/planner_cpp.dir/theta.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/theta.cpp.o.d" + "/app/src/tinyxml2.cpp" "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d" + "/app/src/wrapper.cpp" "CMakeFiles/planner_cpp.dir/wrapper.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o b/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..23752013ff7149098cea640b001c4dbdb408de23 GIT binary patch literal 14248 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 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d new file mode 100644 index 0000000..6c3f1ee --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d @@ -0,0 +1,189 @@ +CMakeFiles/planner_cpp.dir/asearch.cpp.o: /app/src/asearch.cpp \ + /usr/include/stdc-predef.h /app/src/../include/mission.h \ + /app/src/../include/map.h /usr/include/c++/13/iostream \ + /usr/include/c++/13/bits/requires_hosted.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/c++/13/ostream /usr/include/c++/13/ios \ + /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ + /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ + /usr/include/c++/13/cwchar /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/bits/exception_ptr.h \ + /usr/include/c++/13/bits/exception_defines.h \ + /usr/include/c++/13/bits/cxxabi_init_exception.h \ + /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ + /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ + /usr/include/c++/13/type_traits \ + /usr/include/c++/13/bits/nested_exception.h \ + /usr/include/c++/13/bits/char_traits.h \ + /usr/include/c++/13/bits/localefwd.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ + /usr/include/c++/13/clocale /usr/include/locale.h \ + /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ + /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/timex.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/x86_64-linux-gnu/bits/setjmp.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ + /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ + /usr/include/c++/13/bits/allocator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ + /usr/include/c++/13/bits/new_allocator.h \ + /usr/include/c++/13/bits/functexcept.h \ + /usr/include/c++/13/bits/cpp_type_traits.h \ + /usr/include/c++/13/bits/ostream_insert.h \ + /usr/include/c++/13/bits/cxxabi_forced.h \ + /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/13/bits/concept_check.h \ + /usr/include/c++/13/debug/assertions.h \ + /usr/include/c++/13/bits/stl_iterator_base_types.h \ + /usr/include/c++/13/bits/stl_iterator.h \ + /usr/include/c++/13/ext/type_traits.h \ + /usr/include/c++/13/bits/ptr_traits.h \ + /usr/include/c++/13/bits/stl_function.h \ + /usr/include/c++/13/backward/binders.h \ + /usr/include/c++/13/ext/numeric_traits.h \ + /usr/include/c++/13/bits/stl_algobase.h \ + /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ + /usr/include/c++/13/debug/debug.h \ + /usr/include/c++/13/bits/predefined_ops.h \ + /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ + /usr/include/c++/13/bits/range_access.h \ + /usr/include/c++/13/initializer_list \ + /usr/include/c++/13/bits/basic_string.h \ + /usr/include/c++/13/ext/alloc_traits.h \ + /usr/include/c++/13/bits/alloc_traits.h \ + /usr/include/c++/13/bits/stl_construct.h \ + /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ + /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ + /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ + /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/13/bits/charconv.h \ + /usr/include/c++/13/bits/functional_hash.h \ + /usr/include/c++/13/bits/basic_string.tcc \ + /usr/include/c++/13/bits/locale_classes.tcc \ + /usr/include/c++/13/system_error \ + /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ + /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ + /usr/include/c++/13/bits/streambuf.tcc \ + /usr/include/c++/13/bits/basic_ios.h \ + /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ + /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ + /usr/include/c++/13/bits/streambuf_iterator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ + /usr/include/c++/13/bits/locale_facets.tcc \ + /usr/include/c++/13/bits/basic_ios.tcc \ + /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ + /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ + /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ + /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ + /usr/include/c++/13/bits/algorithmfwd.h \ + /usr/include/c++/13/bits/stl_heap.h \ + /usr/include/c++/13/bits/uniform_int_dist.h \ + /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ + /usr/include/c++/13/bits/stl_uninitialized.h \ + /usr/include/c++/13/bits/stl_vector.h \ + /usr/include/c++/13/bits/stl_bvector.h \ + /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ + /app/src/../include/isearch.h /app/src/../include/searchresult.h \ + /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ + /usr/include/c++/13/bits/allocated_ptr.h \ + /usr/include/c++/13/ext/aligned_buffer.h \ + /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ + /app/src/../include/environmentoptions.h \ + /usr/include/c++/13/unordered_map \ + /usr/include/c++/13/bits/unordered_map.h \ + /usr/include/c++/13/bits/hashtable.h \ + /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ + /usr/include/c++/13/bits/uses_allocator.h \ + /usr/include/c++/13/bits/enable_special_members.h \ + /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ + /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ + /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ + /app/src/../include/astar.h /app/src/../include/theta.h \ + /app/src/../include/path_smoothing.h diff --git a/build/CMakeFiles/planner_cpp.dir/astar.cpp.o b/build/CMakeFiles/planner_cpp.dir/astar.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..99796b1267163d720f4c35108e42d98f812be180 GIT binary patch literal 5104 zcmcgwU2GIp6u#RcRD{kJ4VM2x8bc8#yW1jvMqAo#x1qL`El@?XPIsqtrQKa;X0hc# zOp1n;#E|%)Plh)id;k+;h(5T0F_uJwKByQIOf(UViKQqQG{N)D+|#`sc0+=RCz(0t ze)s&{GxwgE-6PSS&Zo<9>InJ?h4T9_&2VG@2q~ z?bK9MJ5}rmoF(0}!bA z1n05B0yn=o{^Y!uqpRa3Sh&33Ro>iYJBBrD^1lk7?>I92_Q~syi>~(e?G5Yq4COOU zz9HPKH|wEIkL2B9Nb#$CO8M3oRlVAXVi9`Kk59NsMgG!O5z4Z4F@GgC`j-h`OA(m( z`TSZz|0dzC3B9L1ED}%m zdTpj-bMz36;!Y%-&f19~!!{G6=^@LoCKBmP+QDS+mhQM|Sjmxa*fMR?={GDh<3w9} zvnewkO6=a%{DhI)y(_#mnmLrVvY9cO?aMjoY{o7HibRsxv0UCUW1UuZtlbUWmRXwEyL+dDxOa!P20{|_Rh@|BOLY=?^Jva72Z5% z95nl_^cX$ae#03l6K4xl;$||NNwL!0$KPx_*<8Doc1(*NE|o@Hl3Nd*30?7@TOQ4) zeG8gL7kWSAizU8+Fnq%>{v*jC=%d>(&gajs&)+xD$7#KjKKB*BegoNpfTL@%A7CJ) zi?hyW4eu5Z@TIQg-FP1OG6h%lIR{Lu`YZ$Iz5+k^o?~i|0`TPw5?`<2>f0xz;42jU ztqRWXT|li0zDmkqF$KR@!TS{)?;xfIDPTYFyB|=Cf@6+}{R6`@V0uOhz}@dQIUZMV z%uUO&(Cvva#~32+SRNl?$udU`-7&`P?IE77i;_E1z$AB-vXk8D*jdtcwhEoPEBda`Gg-&f=^Jblb^PQ(IX;ld z>p3f%Gc9L=vOq=5k;JfNjG00|U}f_;F64jXc(1Damc6w~fzJc>F!mEabLN%od7toi zB<#@}*p7K6d)`lKe4JmlV_wNVMY%o2JA;J(sJ-aj%@B88c1Nq^Ngu&bIYk_G%9R_ zJLUg6*_Vr-lksCT4?=wWdho}8hcLvi^5x$m$NWAe6_;dLcql$530SqyzEzHSpRfVP z=kbRml*|82nf&qW*q;4W@g%lmd^rJl#(woH z5@=vW$vJO^BQn0+jQ>mLDhM5=Z?}bB@pT$9nv+VRBN&=XIdZ l!Pak&ZRYPi1c_s^q3-iJM?97A?kZ CMakeFiles/planner_cpp.dir/asearch.cpp.i + +CMakeFiles/planner_cpp.dir/asearch.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/asearch.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/asearch.cpp -o CMakeFiles/planner_cpp.dir/asearch.cpp.s + +CMakeFiles/planner_cpp.dir/config.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/config.cpp.o: /app/src/config.cpp +CMakeFiles/planner_cpp.dir/config.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/planner_cpp.dir/config.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/config.cpp.o -MF CMakeFiles/planner_cpp.dir/config.cpp.o.d -o CMakeFiles/planner_cpp.dir/config.cpp.o -c /app/src/config.cpp + +CMakeFiles/planner_cpp.dir/config.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/config.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/config.cpp > CMakeFiles/planner_cpp.dir/config.cpp.i + +CMakeFiles/planner_cpp.dir/config.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/config.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/config.cpp -o CMakeFiles/planner_cpp.dir/config.cpp.s + +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: /app/src/environmentoptions.cpp +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -MF CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d -o CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -c /app/src/environmentoptions.cpp + +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/environmentoptions.cpp > CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i + +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/environmentoptions.cpp -o CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s + +CMakeFiles/planner_cpp.dir/mission.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/mission.cpp.o: /app/src/mission.cpp +CMakeFiles/planner_cpp.dir/mission.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/planner_cpp.dir/mission.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/mission.cpp.o -MF CMakeFiles/planner_cpp.dir/mission.cpp.o.d -o CMakeFiles/planner_cpp.dir/mission.cpp.o -c /app/src/mission.cpp + +CMakeFiles/planner_cpp.dir/mission.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/mission.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/mission.cpp > CMakeFiles/planner_cpp.dir/mission.cpp.i + +CMakeFiles/planner_cpp.dir/mission.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/mission.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/mission.cpp -o CMakeFiles/planner_cpp.dir/mission.cpp.s + +CMakeFiles/planner_cpp.dir/astar.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/astar.cpp.o: /app/src/astar.cpp +CMakeFiles/planner_cpp.dir/astar.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/planner_cpp.dir/astar.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/astar.cpp.o -MF CMakeFiles/planner_cpp.dir/astar.cpp.o.d -o CMakeFiles/planner_cpp.dir/astar.cpp.o -c /app/src/astar.cpp + +CMakeFiles/planner_cpp.dir/astar.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/astar.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/astar.cpp > CMakeFiles/planner_cpp.dir/astar.cpp.i + +CMakeFiles/planner_cpp.dir/astar.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/astar.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/astar.cpp -o CMakeFiles/planner_cpp.dir/astar.cpp.s + +CMakeFiles/planner_cpp.dir/isearch.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/isearch.cpp.o: /app/src/isearch.cpp +CMakeFiles/planner_cpp.dir/isearch.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/planner_cpp.dir/isearch.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/isearch.cpp.o -MF CMakeFiles/planner_cpp.dir/isearch.cpp.o.d -o CMakeFiles/planner_cpp.dir/isearch.cpp.o -c /app/src/isearch.cpp + +CMakeFiles/planner_cpp.dir/isearch.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/isearch.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/isearch.cpp > CMakeFiles/planner_cpp.dir/isearch.cpp.i + +CMakeFiles/planner_cpp.dir/isearch.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/isearch.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/isearch.cpp -o CMakeFiles/planner_cpp.dir/isearch.cpp.s + +CMakeFiles/planner_cpp.dir/map.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/map.cpp.o: /app/src/map.cpp +CMakeFiles/planner_cpp.dir/map.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/planner_cpp.dir/map.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/map.cpp.o -MF CMakeFiles/planner_cpp.dir/map.cpp.o.d -o CMakeFiles/planner_cpp.dir/map.cpp.o -c /app/src/map.cpp + +CMakeFiles/planner_cpp.dir/map.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/map.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/map.cpp > CMakeFiles/planner_cpp.dir/map.cpp.i + +CMakeFiles/planner_cpp.dir/map.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/map.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/map.cpp -o CMakeFiles/planner_cpp.dir/map.cpp.s + +CMakeFiles/planner_cpp.dir/theta.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/theta.cpp.o: /app/src/theta.cpp +CMakeFiles/planner_cpp.dir/theta.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/planner_cpp.dir/theta.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/theta.cpp.o -MF CMakeFiles/planner_cpp.dir/theta.cpp.o.d -o CMakeFiles/planner_cpp.dir/theta.cpp.o -c /app/src/theta.cpp + +CMakeFiles/planner_cpp.dir/theta.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/theta.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/theta.cpp > CMakeFiles/planner_cpp.dir/theta.cpp.i + +CMakeFiles/planner_cpp.dir/theta.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/theta.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/theta.cpp -o CMakeFiles/planner_cpp.dir/theta.cpp.s + +CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: /app/src/path_smoothing.cpp +CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -MF CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d -o CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -c /app/src/path_smoothing.cpp + +CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/path_smoothing.cpp > CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i + +CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/path_smoothing.cpp -o CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s + +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: /app/src/tinyxml2.cpp +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -MF CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d -o CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -c /app/src/tinyxml2.cpp + +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/tinyxml2.cpp > CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i + +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/tinyxml2.cpp -o CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s + +CMakeFiles/planner_cpp.dir/wrapper.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/wrapper.cpp.o: /app/src/wrapper.cpp +CMakeFiles/planner_cpp.dir/wrapper.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/planner_cpp.dir/wrapper.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/wrapper.cpp.o -MF CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d -o CMakeFiles/planner_cpp.dir/wrapper.cpp.o -c /app/src/wrapper.cpp + +CMakeFiles/planner_cpp.dir/wrapper.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/wrapper.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/wrapper.cpp > CMakeFiles/planner_cpp.dir/wrapper.cpp.i + +CMakeFiles/planner_cpp.dir/wrapper.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/wrapper.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/wrapper.cpp -o CMakeFiles/planner_cpp.dir/wrapper.cpp.s + +CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: CMakeFiles/planner_cpp.dir/flags.make +CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: /app/src/python_bindings.cpp +CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building CXX object CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -MF CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d -o CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -c /app/src/python_bindings.cpp + +CMakeFiles/planner_cpp.dir/python_bindings.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/python_bindings.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/python_bindings.cpp > CMakeFiles/planner_cpp.dir/python_bindings.cpp.i + +CMakeFiles/planner_cpp.dir/python_bindings.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/python_bindings.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/python_bindings.cpp -o CMakeFiles/planner_cpp.dir/python_bindings.cpp.s + +# Object files for target planner_cpp +planner_cpp_OBJECTS = \ +"CMakeFiles/planner_cpp.dir/asearch.cpp.o" \ +"CMakeFiles/planner_cpp.dir/config.cpp.o" \ +"CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" \ +"CMakeFiles/planner_cpp.dir/mission.cpp.o" \ +"CMakeFiles/planner_cpp.dir/astar.cpp.o" \ +"CMakeFiles/planner_cpp.dir/isearch.cpp.o" \ +"CMakeFiles/planner_cpp.dir/map.cpp.o" \ +"CMakeFiles/planner_cpp.dir/theta.cpp.o" \ +"CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" \ +"CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" \ +"CMakeFiles/planner_cpp.dir/wrapper.cpp.o" \ +"CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" + +# External object files for target planner_cpp +planner_cpp_EXTERNAL_OBJECTS = + +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/asearch.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/config.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/mission.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/astar.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/isearch.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/map.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/theta.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/wrapper.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/python_bindings.cpp.o +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/build.make +planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Linking CXX shared library planner_cpp.cpython-312-x86_64-linux-gnu.so" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/planner_cpp.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/planner_cpp.dir/build: planner_cpp.cpython-312-x86_64-linux-gnu.so +.PHONY : CMakeFiles/planner_cpp.dir/build + +CMakeFiles/planner_cpp.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/planner_cpp.dir/cmake_clean.cmake +.PHONY : CMakeFiles/planner_cpp.dir/clean + +CMakeFiles/planner_cpp.dir/depend: + cd /app/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /app/src /app/src /app/build /app/build /app/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : CMakeFiles/planner_cpp.dir/depend diff --git a/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake b/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake new file mode 100644 index 0000000..1518797 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake @@ -0,0 +1,33 @@ +file(REMOVE_RECURSE + "CMakeFiles/planner_cpp.dir/asearch.cpp.o" + "CMakeFiles/planner_cpp.dir/asearch.cpp.o.d" + "CMakeFiles/planner_cpp.dir/astar.cpp.o" + "CMakeFiles/planner_cpp.dir/astar.cpp.o.d" + "CMakeFiles/planner_cpp.dir/config.cpp.o" + "CMakeFiles/planner_cpp.dir/config.cpp.o.d" + "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" + "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d" + "CMakeFiles/planner_cpp.dir/isearch.cpp.o" + "CMakeFiles/planner_cpp.dir/isearch.cpp.o.d" + "CMakeFiles/planner_cpp.dir/map.cpp.o" + "CMakeFiles/planner_cpp.dir/map.cpp.o.d" + "CMakeFiles/planner_cpp.dir/mission.cpp.o" + "CMakeFiles/planner_cpp.dir/mission.cpp.o.d" + "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" + "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d" + "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" + "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d" + "CMakeFiles/planner_cpp.dir/theta.cpp.o" + "CMakeFiles/planner_cpp.dir/theta.cpp.o.d" + "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" + "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d" + "CMakeFiles/planner_cpp.dir/wrapper.cpp.o" + "CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d" + "planner_cpp.cpython-312-x86_64-linux-gnu.so" + "planner_cpp.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/planner_cpp.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build/CMakeFiles/planner_cpp.dir/compiler_depend.make b/build/CMakeFiles/planner_cpp.dir/compiler_depend.make new file mode 100644 index 0000000..b2ca249 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty compiler generated dependencies file for planner_cpp. +# This may be replaced when dependencies are built. diff --git a/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts b/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts new file mode 100644 index 0000000..09f8c01 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for planner_cpp. diff --git a/build/CMakeFiles/planner_cpp.dir/config.cpp.o b/build/CMakeFiles/planner_cpp.dir/config.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..900466f04ca50b4052ec14fbd02f14a584234f94 GIT binary patch literal 34320 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 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d new file mode 100644 index 0000000..3521143 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d @@ -0,0 +1,3 @@ +CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: \ + /app/src/environmentoptions.cpp /usr/include/stdc-predef.h \ + /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h diff --git a/build/CMakeFiles/planner_cpp.dir/flags.make b/build/CMakeFiles/planner_cpp.dir/flags.make new file mode 100644 index 0000000..fe26479 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/flags.make @@ -0,0 +1,9 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.28 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -Dplanner_cpp_EXPORTS + +CXX_INCLUDES = -I/app/src/../include -isystem /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include -isystem /home/jules/.pyenv/versions/3.12.11/include/python3.12 + +CXX_FLAGS = -O2 -Wall -Wextra -std=gnu++11 -fPIC diff --git a/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o b/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..dc644cd14905596f711efee1909d4fea2629270b GIT binary patch literal 17600 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 Qn3_g?~O_lhteL=JgXx5=En&`qg z&-cc+j~HoiB)@a+@BF#vo_p?nPhL>s!;K9M0;2}uF`+hMs32UGYI4{S!$ODf1;=(< zO(lFJJ@6^9n-NJ$Gi7pRqYi>zPW;a z11CM7tRnc=&Ry3kwJEV4k&}@Vk>hdwX5`p$T%M2E!(L*G#bbU?v>5e!qs6$tjSQ?v zOL3?@DSkxkBVZ6B1Mf;p0|@Q8O7`526+a_yy!L99$jW*XS^2b)NWWMqp7a!3$PZ!N zWaZX=so<1qdH*HkN@#<;^%?HL#zv=8M8)0~D-O#_p*)`~#q@a(8Mq^T7j0wquuN9| z(s*duzwVeu?0HYD=Su8h1 z28KNgYq7;E4a&e{3+K@=DP>@(@PuV1BU0uPh)?>xaeV^O@wX4y9XEjgE-9r~BGQgw zZ&JEd9<Z_!YSaIqDG*x?}gy3_sE3Mt;&xF%g(``~q!MK7A%okdJP)Q%;J z=_fj%8?VBgc5lgv`eq|QnG~oSNM3gYhd5Jzpy$h zL!Zv?BsLs4{s7d@&jsw03Ph)b{>8P5VwzcVm#j=pTXXW1HZ4z^*_qUYF|kY7vkOhB zLBi5ZOV*8aT2AHUOxBVuQ=2i&oHm{|Dr9X$8vpSj~vbApr zBSS-9le>MZ7^3Je(zPmRN?A=3Q$Ik=LcKG35jT|~IK&{J&HNg+5 zqsoMaZyyyJX4@NfwzYUm&}-=P6{>5Y9I+skcT}Ll{r|6$~^WHihY&x3E&r~{0uhFu-N`WSq>;m&d;uGD^xLUbjg2@W+u0f(cSNtyUxOU!i1TdO+$*L&;Rv{+che~t;vTzc z7Jvu2b+HV70QkLJ9aw*zuYZAA#{!`JAkSPu0QC)WI*+!T(SPf3FUXrQa&g);jou zb?_m;u|6ew!EBxjxJ(23^t7Npaj55UZMyHYVF6Q)9!yw$Glp(u%~&F+#!?9_mQoaW zCc0HcNg)OFYfWmQ@OaMB^t5r8E{M9rnGrKJLGjO96PPEXO$q8q{P18Tt{xs9PAJFJW0AqQ zqJl1A_3GKY~h4e|yRN=LivT{%vVyj87UBD*)4&gUkpHRH=1>QNuB*4f#HszD-~&M8_*s=*#*K)X1sy?f6sAihloSHGtsA(f}+M2}Kox=A+>zu$hE0&JkAJBHrt@1B? zuLC`ShY$$gb=cPoKM(zng!p~%WB5CD@b6<_poih-gCDd1F~yN#4h;V(#WDVuIQ$xi z<3}2^zs})!$1wau4#)Qp!<*^3!hG5|+{fX3o_>mBIJ~7ht1sTb`j|IA4xGvPOeBP*oQ`oWXT15@ry3JOvgWS;qTM&uU$BMpZHztqGm#r!!ajz?+St3 z+?1t_1Gmg7pJbA0q_u!$%vwTVLbEg>FrLc^4iNY+*JZ%WqBX_~1>h#;hy5^QK?C_r zI`x#1p4&9ha~2rr*{LZb19QUHvJrr9(MR!Oe2R`wXYv8~)}Dsj2^}$*F{vg^ZORY= zr_F4BnyvW%@6h5WstGt?k}@Zz>qHUO$1}Sdw9Y#jEYtbf zeavw8`j1loZe~FFZt9O`pC^_-;~FSYcKZ|RKgBzP%<9Md^VHwHf4`#s?7NwTaV=B8 zHbm1fGhke-3T&Tn|L~q<^D}%2FwEs%`0-Sx^D}# z{}Cve%-j8w`tumdZrfJ@!##G_Wu5xVpyP?<&9JvYz?g1-A1(Z-YeKjGTi}aRh2h7O zkJkS>1+o74S03|c_1|i4beW_L!QP{|KX@eF{^vjdQD78O9>bS=!a9Ov%Y%72aK M|Ho>W&8OS{-~KzxSpWb4 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d new file mode 100644 index 0000000..1d4aca6 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d @@ -0,0 +1,164 @@ +CMakeFiles/planner_cpp.dir/map.cpp.o: /app/src/map.cpp \ + /usr/include/stdc-predef.h /app/src/../include/map.h \ + /usr/include/c++/13/iostream /usr/include/c++/13/bits/requires_hosted.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/c++/13/ostream /usr/include/c++/13/ios \ + /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ + /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ + /usr/include/c++/13/cwchar /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/bits/exception_ptr.h \ + /usr/include/c++/13/bits/exception_defines.h \ + /usr/include/c++/13/bits/cxxabi_init_exception.h \ + /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ + /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ + /usr/include/c++/13/type_traits \ + /usr/include/c++/13/bits/nested_exception.h \ + /usr/include/c++/13/bits/char_traits.h \ + /usr/include/c++/13/bits/localefwd.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ + /usr/include/c++/13/clocale /usr/include/locale.h \ + /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ + /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/timex.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/x86_64-linux-gnu/bits/setjmp.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ + /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ + /usr/include/c++/13/bits/allocator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ + /usr/include/c++/13/bits/new_allocator.h \ + /usr/include/c++/13/bits/functexcept.h \ + /usr/include/c++/13/bits/cpp_type_traits.h \ + /usr/include/c++/13/bits/ostream_insert.h \ + /usr/include/c++/13/bits/cxxabi_forced.h \ + /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/13/bits/concept_check.h \ + /usr/include/c++/13/debug/assertions.h \ + /usr/include/c++/13/bits/stl_iterator_base_types.h \ + /usr/include/c++/13/bits/stl_iterator.h \ + /usr/include/c++/13/ext/type_traits.h \ + /usr/include/c++/13/bits/ptr_traits.h \ + /usr/include/c++/13/bits/stl_function.h \ + /usr/include/c++/13/backward/binders.h \ + /usr/include/c++/13/ext/numeric_traits.h \ + /usr/include/c++/13/bits/stl_algobase.h \ + /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ + /usr/include/c++/13/debug/debug.h \ + /usr/include/c++/13/bits/predefined_ops.h \ + /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ + /usr/include/c++/13/bits/range_access.h \ + /usr/include/c++/13/initializer_list \ + /usr/include/c++/13/bits/basic_string.h \ + /usr/include/c++/13/ext/alloc_traits.h \ + /usr/include/c++/13/bits/alloc_traits.h \ + /usr/include/c++/13/bits/stl_construct.h \ + /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ + /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ + /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ + /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/13/bits/charconv.h \ + /usr/include/c++/13/bits/functional_hash.h \ + /usr/include/c++/13/bits/basic_string.tcc \ + /usr/include/c++/13/bits/locale_classes.tcc \ + /usr/include/c++/13/system_error \ + /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ + /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ + /usr/include/c++/13/bits/streambuf.tcc \ + /usr/include/c++/13/bits/basic_ios.h \ + /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ + /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ + /usr/include/c++/13/bits/streambuf_iterator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ + /usr/include/c++/13/bits/locale_facets.tcc \ + /usr/include/c++/13/bits/basic_ios.tcc \ + /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ + /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ + /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ + /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ + /usr/include/c++/13/bits/algorithmfwd.h \ + /usr/include/c++/13/bits/stl_heap.h \ + /usr/include/c++/13/bits/uniform_int_dist.h \ + /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ + /usr/include/c++/13/bits/stl_uninitialized.h \ + /usr/include/c++/13/bits/stl_vector.h \ + /usr/include/c++/13/bits/stl_bvector.h \ + /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/mission.cpp.o b/build/CMakeFiles/planner_cpp.dir/mission.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..055bb6c4dca6974656711ec0477ca4c6cdbfd8b6 GIT binary patch literal 16648 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 literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d new file mode 100644 index 0000000..422e25c --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d @@ -0,0 +1,190 @@ +CMakeFiles/planner_cpp.dir/mission.cpp.o: /app/src/mission.cpp \ + /usr/include/stdc-predef.h /app/src/../include/mission.h \ + /app/src/../include/map.h /usr/include/c++/13/iostream \ + /usr/include/c++/13/bits/requires_hosted.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/c++/13/ostream /usr/include/c++/13/ios \ + /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ + /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ + /usr/include/c++/13/cwchar /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/bits/exception_ptr.h \ + /usr/include/c++/13/bits/exception_defines.h \ + /usr/include/c++/13/bits/cxxabi_init_exception.h \ + /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ + /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ + /usr/include/c++/13/type_traits \ + /usr/include/c++/13/bits/nested_exception.h \ + /usr/include/c++/13/bits/char_traits.h \ + /usr/include/c++/13/bits/localefwd.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ + /usr/include/c++/13/clocale /usr/include/locale.h \ + /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ + /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/timex.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/x86_64-linux-gnu/bits/setjmp.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ + /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ + /usr/include/c++/13/bits/allocator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ + /usr/include/c++/13/bits/new_allocator.h \ + /usr/include/c++/13/bits/functexcept.h \ + /usr/include/c++/13/bits/cpp_type_traits.h \ + /usr/include/c++/13/bits/ostream_insert.h \ + /usr/include/c++/13/bits/cxxabi_forced.h \ + /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/13/bits/concept_check.h \ + /usr/include/c++/13/debug/assertions.h \ + /usr/include/c++/13/bits/stl_iterator_base_types.h \ + /usr/include/c++/13/bits/stl_iterator.h \ + /usr/include/c++/13/ext/type_traits.h \ + /usr/include/c++/13/bits/ptr_traits.h \ + /usr/include/c++/13/bits/stl_function.h \ + /usr/include/c++/13/backward/binders.h \ + /usr/include/c++/13/ext/numeric_traits.h \ + /usr/include/c++/13/bits/stl_algobase.h \ + /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ + /usr/include/c++/13/debug/debug.h \ + /usr/include/c++/13/bits/predefined_ops.h \ + /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ + /usr/include/c++/13/bits/range_access.h \ + /usr/include/c++/13/initializer_list \ + /usr/include/c++/13/bits/basic_string.h \ + /usr/include/c++/13/ext/alloc_traits.h \ + /usr/include/c++/13/bits/alloc_traits.h \ + /usr/include/c++/13/bits/stl_construct.h \ + /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ + /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ + /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ + /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/13/bits/charconv.h \ + /usr/include/c++/13/bits/functional_hash.h \ + /usr/include/c++/13/bits/basic_string.tcc \ + /usr/include/c++/13/bits/locale_classes.tcc \ + /usr/include/c++/13/system_error \ + /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ + /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ + /usr/include/c++/13/bits/streambuf.tcc \ + /usr/include/c++/13/bits/basic_ios.h \ + /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ + /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ + /usr/include/c++/13/bits/streambuf_iterator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ + /usr/include/c++/13/bits/locale_facets.tcc \ + /usr/include/c++/13/bits/basic_ios.tcc \ + /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ + /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ + /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ + /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ + /usr/include/c++/13/bits/algorithmfwd.h \ + /usr/include/c++/13/bits/stl_heap.h \ + /usr/include/c++/13/bits/uniform_int_dist.h \ + /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ + /usr/include/c++/13/bits/stl_uninitialized.h \ + /usr/include/c++/13/bits/stl_vector.h \ + /usr/include/c++/13/bits/stl_bvector.h \ + /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ + /app/src/../include/isearch.h /app/src/../include/searchresult.h \ + /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ + /usr/include/c++/13/bits/allocated_ptr.h \ + /usr/include/c++/13/ext/aligned_buffer.h \ + /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ + /app/src/../include/environmentoptions.h \ + /usr/include/c++/13/unordered_map \ + /usr/include/c++/13/bits/unordered_map.h \ + /usr/include/c++/13/bits/hashtable.h \ + /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ + /usr/include/c++/13/bits/uses_allocator.h \ + /usr/include/c++/13/bits/enable_special_members.h \ + /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ + /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ + /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ + /app/src/../include/astar.h /app/src/../include/theta.h \ + /app/src/../include/path_smoothing.h /app/src/../include/astar.h \ + /app/src/../include/theta.h /app/src/../include/gl_const.h diff --git a/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o b/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..8f642e5c2f22f63f8ca20a2db6bb1bb4d41fad26 GIT binary patch literal 6224 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

5N$d!n}0>(2m|l6*r$rbMje< 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 TR=X<6U*PsnGA*T_a`}G&sRwq- literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d new file mode 100644 index 0000000..103f10e --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d @@ -0,0 +1,189 @@ +CMakeFiles/planner_cpp.dir/theta.cpp.o: /app/src/theta.cpp \ + /usr/include/stdc-predef.h /app/src/../include/theta.h \ + /app/src/../include/astar.h /app/src/../include/isearch.h \ + /app/src/../include/searchresult.h /usr/include/c++/13/list \ + /usr/include/c++/13/bits/requires_hosted.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/c++/13/bits/stl_algobase.h \ + /usr/include/c++/13/bits/functexcept.h \ + /usr/include/c++/13/bits/exception_defines.h \ + /usr/include/c++/13/bits/cpp_type_traits.h \ + /usr/include/c++/13/ext/type_traits.h \ + /usr/include/c++/13/ext/numeric_traits.h \ + /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/type_traits \ + /usr/include/c++/13/bits/move.h /usr/include/c++/13/bits/utility.h \ + /usr/include/c++/13/bits/stl_iterator_base_types.h \ + /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/13/bits/concept_check.h \ + /usr/include/c++/13/debug/assertions.h \ + /usr/include/c++/13/bits/stl_iterator.h \ + /usr/include/c++/13/bits/ptr_traits.h /usr/include/c++/13/debug/debug.h \ + /usr/include/c++/13/bits/predefined_ops.h \ + /usr/include/c++/13/bits/allocator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ + /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ + /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/bits/memoryfwd.h \ + /usr/include/c++/13/bits/range_access.h \ + /usr/include/c++/13/initializer_list /usr/include/c++/13/bits/stl_list.h \ + /usr/include/c++/13/ext/alloc_traits.h \ + /usr/include/c++/13/bits/alloc_traits.h \ + /usr/include/c++/13/bits/stl_construct.h \ + /usr/include/c++/13/bits/allocated_ptr.h \ + /usr/include/c++/13/ext/aligned_buffer.h \ + /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ + /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h \ + /usr/include/c++/13/unordered_map \ + /usr/include/c++/13/bits/unordered_map.h \ + /usr/include/c++/13/bits/hashtable.h \ + /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ + /usr/include/c++/13/bits/uses_allocator.h \ + /usr/include/c++/13/bits/invoke.h \ + /usr/include/c++/13/bits/functional_hash.h \ + /usr/include/c++/13/bits/hash_bytes.h \ + /usr/include/c++/13/bits/enable_special_members.h \ + /usr/include/c++/13/bits/stl_function.h \ + /usr/include/c++/13/backward/binders.h \ + /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ + /usr/include/math.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ + /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/stdlib.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /app/src/../include/map.h \ + /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ + /usr/include/c++/13/ios /usr/include/c++/13/iosfwd \ + /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ + /usr/include/c++/13/cwchar /usr/include/wchar.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/13/exception /usr/include/c++/13/bits/exception_ptr.h \ + /usr/include/c++/13/bits/cxxabi_init_exception.h \ + /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ + /usr/include/c++/13/bits/char_traits.h \ + /usr/include/c++/13/bits/localefwd.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ + /usr/include/c++/13/clocale /usr/include/locale.h \ + /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ + /usr/include/ctype.h /usr/include/c++/13/bits/ios_base.h \ + /usr/include/c++/13/ext/atomicity.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/x86_64-linux-gnu/bits/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/timex.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/x86_64-linux-gnu/bits/setjmp.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ + /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ + /usr/include/c++/13/bits/ostream_insert.h \ + /usr/include/c++/13/bits/cxxabi_forced.h \ + /usr/include/c++/13/bits/refwrap.h \ + /usr/include/c++/13/bits/basic_string.h \ + /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ + /usr/include/c++/13/cstdio /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ + /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/13/bits/charconv.h \ + /usr/include/c++/13/bits/basic_string.tcc \ + /usr/include/c++/13/bits/locale_classes.tcc \ + /usr/include/c++/13/system_error \ + /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ + /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ + /usr/include/c++/13/bits/streambuf.tcc \ + /usr/include/c++/13/bits/basic_ios.h \ + /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ + /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ + /usr/include/c++/13/bits/streambuf_iterator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ + /usr/include/c++/13/bits/locale_facets.tcc \ + /usr/include/c++/13/bits/basic_ios.tcc \ + /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ + /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ + /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ + /usr/include/c++/13/bits/stl_algo.h \ + /usr/include/c++/13/bits/algorithmfwd.h \ + /usr/include/c++/13/bits/stl_heap.h \ + /usr/include/c++/13/bits/uniform_int_dist.h \ + /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ + /usr/include/c++/13/bits/stl_uninitialized.h \ + /usr/include/c++/13/bits/stl_vector.h \ + /usr/include/c++/13/bits/stl_bvector.h \ + /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o b/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..85027b64c9dcdf9c32d6baa039c6428a1d87b18f GIT binary patch literal 122448 zcmeEv3w%`7wfD&bjewb`Sg}$K7%Eo93=c^ZH6a-|BLN}=!6FS1f}{kJl8In_5S^e* z$0)6~pKWc+?X|tO^xj8wGJ#w6L9RHg|9jEAKAFW`x!Z|i)IOklB z@08jk=g-P{g`At^yi(4qpgP*70!>!^<#2=9Oqxl^>5_-Tb!Se>)*-w_c%W(*ME@nA94PZTt6k}y*NKD z*U!lLS)8Af>*wYCXPjS<>lfwRgY!#r-7DvpaehUvU&Z+~x!#BKU*!6AoZpb^H*tPT zuHVM_9l73*^Sg5W9?tK}^@r#eCQ@#>#Hs5?2ZkNCNC-}bJsuFKGID_oCP(BKO=2n zL#A*t8MMwibu3P)<0sPUIHqr}t>3e0_4}1q zzd3IF1NWeI8$ubFdKYfdz=qbBi=z<;Spyk0~0QdQt4b}^VZ z1y?mWFSv=ziWb1gDi>CMW;@&GylCPbDg-6CD555@9U_mZ4sH1qtIbV9Y`RCatgxIHhPmxHu5Inns893nVBQubE+b2W))V7fJl zKF++pyZuoYb`QCpV!%ySmlV}NC=wReBRYPWlgNWU#!T2qd$q|RP93M@*+4*Fs^BedUO?w$V*I zQMuvNlF*jrXtW(d`bum*_^f>vHGQR8ENp#u>@k$*e{CNDn%L=;JM&A5!3AX#gWmsK z#`X}}vcfW3`v>CF`+%_%kW(YV)>%IGU+eqaF7DE9sCvJfG?(k&b`xbjzR%)`QuL7& z|F-iGr{mn$-~wYg+dJ0f+}r+c$GY5~wZF0R5Qxy7r+cXFzb^Gb@(s&R$83t-m`cmx1`_`?Qu!{x)RAy&R_|e1e-*7=6S#sG@ z_mq5Q8Cw5sPTt{e_vLl3>gzkyan_u)D;Is(al5X}O>A?!*7UjCUOXiJ^ttf|J2uSf za~qBfZ5j4>@AozmJ;tC*&gF{}oHbJu@9xUYN7kCIsd*~X%)G?5XxCcBr*eba*ZXa; z+g-Wj#wbtkZ^{04QRz<4dEm|_q{j=kH*z#&Z-x+RJu!Ba+f@aPdTnRycv>#J{PXBv za2=D^#x8NY*5z(J3(T3X3%mJcH1UAj<@SZPR`f+r{^R5mW2fIknhW>!9vgqL)Q$J# zgzmV%YuJ}^9(8keg|_B^;+U@1Jrx}v9(Ku}!ri^eFuI=^&)mdI7$uqYd0o|~IhhED&0>B48NC~6y%%nNOq>)e(b`)$X2hqpi2aYfGH*o8zw z{dF*RbG&jV+0z+$08$WL?P^nDa0(=Msp8<}cIU7mN>Y z|2Hts?fnkf1HPXa`>fj)$*Ji&4g8!)82z}qq+mwF6$Q~`JL-!OxhC-*HzCG?p;J08 zKRf5FP$!jMiM|w#KTuQ||8P+ILvFIUq<}>283SdT`rAPxc~sB&05{fj#Y&D3ce`D6 zCBqSO)Fj?shSEOiqVFD0#p67j&RiVX0qpTaw*k~Oi5Ea!lX%70X#)tOIXilO`XSp> zXiLN~4iPHbP+ij3b1M>}4G)V);xw4dd0owC=Z3aa7YsF2SAvQeZZz`p_?mdPM*Lgi z9mv}7y1Q!|gzvkDIw3{54q_cYUaLGvdXD|j2~V^xGFgB!NGV4XZ!W;{_epx6r1oO} z+wiu?#{!9P98bLw`gC_nexYYVrVwgjz_hAIu)mESWPNy;OT6xOO(gNd-K@{}{+!TF z-Q;~T`Evvl1E;5W^-Y8a?BI%0I%ffCEmo2bvmqaA%m(51A`!+dejZud4F(0?V9-7hq8BAzq`red#-VhtfdA86(cTPsA~X$nF(w+mjwswZ)OxI6w{PHY7E3#zg47wsRX8Y5=raUUMA z#7*R}$@Kol^bpVf%!qG>pn~)X5$LGB>duhJb0;Y49m5 zELzr;Mn@FwmOl{t#69T2>k!zAC5Uw*hNpU&ioTkef5qRKf9>Cy|NQ@Q{+Jr0H+HQX zPPX0oXl%GBeMK?#c-ERtuuTk&7 zB(!Wnip86F*7P6a(7G{=I@FYw#FPr6Lk-4{_#Giwe!@(KVC0$PvttJOBX}FlTm4D> z{)gwkk`*z;j85W@uH;r+G)A>H{4S4g$$15C`2_{-Q^+&0H?%W&GmN4T12AC z#gwYT-Bne~4lD75n^;jK7Hir++zoe7jg#saCzbOx8 zRiR9jvC!kte|aFbMH=V2q6jABih$nw3PMoScS=F~5;HP#rOU4@YM&B~UtUrR8-L7A z{3cezRu#oaRl6)2TD60!v>W`lG0((&$oE7vaZw3mT)_(rG|nvuchiXH^*5^z8V98h z`^G5xH%lix*F`rgrTU|LY?N&vrcu^J!XaGaU&6ydX-W6Rkh!{_XLDX=LDsQRvCoN8$&^m4P3lABi7J zl2+e?mX92bco;KLX2+06o{8=GZ%udOy9!eLdwf^1{?5x(X2ecnv?c=yb<#})G7^8h z#^RKb602V2dt=5_?Bo%F!NQtkW2>87(b{{IZ-O(DOG_%;z@mK88N^sp)cQ$ z*m@EMrSX@bfZG+=@v;CA?KEdX!dkSH1Q%$oel|Y$%}8xb-UWI3U+x(G3GvpZ~?t1QCvfv za4;|S<;NpVjxH;dXhB4TxG6OZtVEab*BkrIKM(nPx0-r&e0Wl*b0Go$&c&qo?Wh>P zvxHL7jEU!Ma2tLUp+m9#<|Yk^Kerj|UbTa`z%5E!rL52W;(I%wPVS%L|SlyQ-GMxEw@Ht$en_jh#PMV!bVz z_>J5o@$R+Z7Dn>gyO9IS|Fi;yrTgg{)!KbYB;1GP_enDn=fFjc!2-Qn*s}3J$NPiZ z537uKmJlO&6uWAF=@z>*jj7<#aD!K1@v3ifXnh=XSOhz_{fZgM`$}%Z3eSx7eeh(s zh$at>COR3bL?7A=DBhh@35YH$&q5(Mhi;%gL`B|-Z#fvSaOZ@+-bY`#e^G9dCwkS6 z3V^iwHY0KIqRPay(w?z!necOV{$Bo8?C5*)L2Jh@jFszY-7!VFx4>m!(p_0V@{*hZ z2_ZzjC#4AH3A+}nVxEN8;fog!T5df_7H`dLo7gwm~3aSkncMKIpjr%>UtxFMvQS+4IER9Q-)VO6h8}-o@@tlCO zG%(c1W;U51sIMDKLtL7gd_@z766^g+nUy=IEzjvW^Mk&=pFI(>tDFrtmD~z8KY5?l zYq407*j|&^|Aza6t|>Vr$0nqOuIJ4USc}|EUBgZ6#;pWcFO=)J+n&a)=11s`ND+%L zqv3XD=q7(ou?$7P{d%)RLNfH@C_Nw!|5UQ%{I?{g^n-NW4b6AU@HqNGsZVW3+4i zUSu-s4EPRvY;^|_1bf`b_88r@zEi(4Ut+zQUVTgl;eCWzb$gy80`L?iC^T=Kj72i$bghFiF@o-<&*urt8ie}ud3 zSvZg12Yi9oa(f^L9D?6+mR&UQJIZRE0Wl@DQWKCf==lP*TvitsY&r5F>l$oFb-Pkp zjkrjwk^exe9oT=My{!MB_PP!Edj9R*gHjs%s&o%J0Hui+O;s9;o~ksLl%+f>;ZkRkgK72n_#!Za)Id?g#PFK}hbh!=aVr$(&`$)n>bb~>z;;-=je}ea4E4_`p zKXs;_exd5&Yf6uo6%HA>512E(pG{mb&7irRVkR4EoqmS0Z-_pnj_lgWzs<3HI8h+{;re zGpv_q;QxB)i2Td~zaA>Wtw3`0{sMwxpJ6{&CVjsVIs(n+X~fpRAa8_;%5G!)xxt+~j3t!TTW@?;kP)UQ#wp&g2`AZ_$lJX!lg&VO-#W3{DHV2C0#%MvtmOGP6s}DU_L0N|7Ox3Wb<9n0bGufFsuH!EtJzakc+YF zN9=#$SLUhv$8fGKuA6l1KISSr$M0H)yU28tb=qFzFS;(X!BeI?&9wf7du$!>7Ea%u z-rw8xFmuZujnQ()yt6X++PU4YY3Z2e(oD zgoz4n@O0k6N+K1<2~Ng0<3D1~1YevLr_CH!9+Kd*v{gKQC%_!Ot=e@@1<}XvBZPOY zL<(5%39w9FO^LfA#f&5?#z?F0ij*<3D^kJd#1+`j62bl1$e8wz$GlV}`f8^o<6W5)X`eV*h8|~_%XgYBt zQF`lfh!Z!vUA49DpiL0VP0Zem2)Dfl^Pf#Nf~LrzCcz5q*@KRXy z6X=2Zmwx`hnB5BBh&Vt!Ef}C;uTm8P)NYLT+Tw_~{V~3M%-ggo9Ng-YJ_33o_3sMP zO=eJWGTA0 z7ykYt>mw33l0CUyH?pb{H&Ux|=QccG!rjE9D{j`m;=7rn&fjhF(`=)9LqpTfs^!kE zs%DVkw3bitjda4XD}I}~z~Xy+vs~_q-)+G}yqK8nijTpG4irx<1cW-0L2lel2uNvG z0#cmlKov`ofYWAkqIFWy1hJuSRPV$B7{iSf^c9t+6Dmz7l!245+KfwXj!gQO{;ziZ z!3*3$GSj4^+3e%tIwV;p?)oI$S#e%nLD#2qJkBdCX3I}JJ{eGsd)4-Ch+rBuv2c-j zgeUx{0WgaQ^xytFEzP94(~?@(t*A-f%gxty>H}0wbl%g^bJubQmd;B#j6bJIF!m(L zBzX1)GYP)hOoF$y{|Q~#PJ+>Usq#H}+=)7fcXii(7@-fRjBOx2T!55x%3pRwt{O!i&F12>x~M@@n&Scy7UCw@eg?l}fB zRbzHAwD%dmf17c|?2u~o`!@Fc@08LOwBmL@jW}gyJn)IUeS3V@Ug-Tm+|E=Vu1V}= z1CspMeBJwHdHy1^{gCx(`=Rd`I`H2N9k{^If&V;o5FF<_I@W&peh%!1Oxx6AAok;} zf!XE#6sHeX#_8i?T?6cgdrGSPEI0N;jNtr1DE5PO^IC7+d^Xn2x3S;1>t5vYLEKY_ z2J+`C1GF2n`1K=}W*~OM{XAedX2r|e4Y3ltAy?6Jf^Rp$cn zi5)glG|>BkUmqS%GPm~_6vN@d2J{!}Gl0Qo;J@)1xPZ^Ve`<3&!)M@sj%{;ZZzrDt zQxCMcIQX5B#L>RCK;-UNqD6AhL zar&_b&zn$)47?MVtOwmu`bp){QrhUe02DqI;M=4n2-3@#7*II&`HB@hr`Po0N zyn*i5IH(Hhh`{V;@b2N~KmX0`PmO=T`1zmlkBOVfbpB59kDI)*$iz&2v5+i)`{R|_H(xsj zgQiJK^RJcjYP!~~r8SpG;sKhRKaLR+J6sd**L3}erj}T+D@d$qwkrhosr70^m`J6? zp2NA@TLSVj$IA!`Vj4uv5h(>1=fH3v_wKZxbl%ZAG%b8wL+I>YdNbVnI>pe*W(ooHtW94}+su1;2!h9AVN zXX{{;#2K&#wqPOXy#2oPOv_KuRG7T-9G|Ips?yzl2Mzu{lOdK#?^k?(qT^BCXFlJ> ztt|LKY{f~r$K}!kOL*R$UP9q^;W1OJ5MgIKKYI!NbXeztc~4BcGj+a1mEmLcD)DELhFwusp324D?_2jQO8iMhJ^;) zg6xjrQJ&@T{kfq|TJE4~mbv9MB^9xm5M!n-3`L+`TpFgpHRb!g-R0h9>``=EcZ^*= zvNH9=Fj`PO!3}$rpNi5WuEIwuRm7Dt3#2`t#H@ysxz&=>nrZvqaR6BX;YYU~0cs}b z83dHd98MwaVPwpPFXqyy;MzqTkm4$+CM;0&JO-(ln#>J~;9iw&{S>znC~OXO9s_k^ zlpRe*$N-YJ(c)8ROKnqSqQ%}-D>uECvjQ_3dS1D6|KE@+oGb$ zE3gylMHl-pXjOD;0Vr6HusuX8%Fd$6g$0$#m8D+2m>zEefB|n~7G?_4iznr)av;Dt zv7h4q>FvWhF3UNmy%6t_SPt!=Yggs={wtLmNk&Rh@K)wQ+_>Q0^(y*Aeb|54-LY7t zk0yROcTQ-_ShN_aAyR>M;*8MKaa`ayDvCW8s@_{7?GeeT zlXz(&&I__w+UE#1Nzn+N5$l@LN3T*yyzSoXp8Pt!UnCJ{iuj8;@I2e#H~K>BpCC6} zzNh_JbN3|9!EM@VF4h^aF=73KbT8l$kzNZxODJxGS+GbZc_krDfMZcUEfcsYYo1umQOKM37Sc237tTq|zbf)1tR6e-B_%g0KIsdp80zZP9hvT61B;K(lVj zSkJTAkgUJg(Hx2QLz?s*f$tOGU`;ypKW)Fk{TDnynVTnW1ID}j{ptQ8xvtssBkcd^ z#YVK@$W6{_P6?XI!rkj140Y1#I@==rNaA^fIWz{-t0PM3>?W_>fD^qM#=QKc{MrtD zkBvfXCps{(-PU15O=HhCd1-;0jBf%~)3vmu*e&NHnmkljYhUgqrxKZB*hS+ZK^e>(LAH0|U7UE@d1Z7NyMo?Fv(2Mwd< z#+mHy`qpM3yZC_#vI#tIPbV4A!#18)<3(%)kCXc82=ARgm;N@2d-=<4yhMI~bTl~( z(O-{QhObFpO-hA;{5Us<^LTce_j7@Q-PVHeqYJmvDx-g|m)BFw^M9}s^As0(H(QWB z$M++G-Gr>+x6L~(Y?LTx$zvZ8jK=@k7aNB$F2v6l(1UO0Nec|H7{j)bCfvk&(h%Z3 zR(7;}2P`1*nmE|4vlT}7kt^?H*&oQ8a#^jLL`?TSY{zE13 zwmlkZy`6in#O6_8FuSs2a)}e0?#4gpi><8bT8Z7qrUbONd1DXm=xObtke&Hsq*_&o zYTKuhDTuAoe9jxX*aA%btC|&&(UVup!~?z8n0!VF;u#Zr+^%82#`fmE-qEaY3>By( z{2@jLG^?AOd<2FpGcZv=3sIh=!GM|^hxUtdBU`Z?h5HBW`k9{@3KTzjaiZ|MEtTJ9 zDq04wAiv#6GxE_Wq~)XMcC38V?{Qf9h*U;n#qW5Q4{1ieRDSIX!0RbufTm8ro2pa| zy|Pk!z8mn{J%R5hdw$%|H_>aYF~{!8bg1O?V5&g zZd#Gsb?tCcRoBnx#h*Z~tWI?Aoc1T&P+9ZmUDI9%|Gu5m-p<)D?;X50ga%fOc+gLfo#kde@N zpPXr0P2UUTOj1Gmj#F{Q2;{B*@pu!we{|K$Jmh2IUP}}A`8C)rfR(PAlI3`^_-q0LIXoKm`yU(+DZ0?T!_0S4~MVb$!@|Y2?%~B(#1kIN|wDs(}s3`CWWw zeT7yBirK}^NbC*2jc0n~g+O65p@dOtQRqcro^YNhMmQF#EB{kx#Yw5_CgSd85iSyZ zOTMc;2fR@ReDg7QKbp98^ByH*Y*ny@jrIYQp(#%=i4?qQfn`@>3qMXv6SSCuX9ok% zE6{8XYe8|gJ=}IW(!YJp)j&p=6jAce;+=3-3{#{1J(a zRhLB+l9xrWuy8#+_KlUany#~vWS*m`q1UED)XMk{qo_#vpW9!OZ9o`jt1;)ma?zfi zk;t2|Kk^AmA;8<=+|y#NLZ+3{1VOiue@C?*uIgFGZFcDF$oOr%BgscWWp!({O|$6hRZatJC!Bz|&O zuGmD+YVg7f_<7@XcccT<4S`{3RAbh_Wp7w4jJ6TikAxaN4RuYv^LG39TFfmmop zPbRa{6!4$)8d5gx#Bcdl9UgPugA$dmGdDHE-O&WzE^2n6!in{JXKN^&7;)j?j2p$u z&++6xq&&P?_3v3hc^`*gztEQV{@cpix*N)7|I~l$nf-MK-+HG1(RfR~uKf@!U%(IS zL{K4C7&dRNOOHRqf0{RNcrSt*&NksTtZ2r|3(u-rzV4zLdVvz|w#-PBoSvv^PO?ix zpuS-jY8Iiz%s=CTCC9T#6LD>4VsZARIq;bHw364C0N3(E8H>QHA)z>%?|s zFmW?^?6G(>2s6_TWV9Z8Y6LrIuYU)wJp76{OQI)dNF5z-oMgRLmcP>8+q1`u7kP_U z&r%}_`|nqc|NeK71pPP9KjaPCcoz}eH{GJ5_yv0_>??wfp!p?Ue~s5evqNid#;b^L zFG-NBG8=&d{xwEh%!Eu^W4jn8wp1ICm{||bm@AoNdex{;Y@cW%*UHXQCM(7c!4t%N zk5*zHvN0$>_J7hXu(#$UdF23OHpSySBy&lT&gW=~hTU`4j?CL**g0DMq#u55DwUhE zzCnW;7B2Wb)1fV^mW%YL$j-z|=8G?LhWDZP`#lD_{{kD7)JE6?ZZQey!!K`u`&kaM zIMw5M{`!wA4>ueJ{63I_QE2LTdGPN8IjFMy!X*Cu?=DYv?@LU;25o)u+LPG7a@SE& zg}FN{orL>0`MLJTI_@QR;I#kT3rD?v&k^a&H`Dyv8SrmcevPA1_VC{QDdXQ%Jo-H1 z(N%D0JPuW}iV=@q1SDYp(p^m z7`~6rW2^byh(LLGu>sG9`KC^O35}^o(iD9-#BSpe{Nk8blo@+zuOTWL2M~4u}zZrgTZusrQufvZ@)JS(&GU%5X!Lwq<@w{vodeEp! zyEUUusa|pcRu1V-7HX&}H<+p`H^K&9!$Q=MMAOfIq|_@o{_u;5#1MJ*K|8IRikp7LoHBChI3vIcUhGniZeZPCT{bu%WkwXn($JX+AODh(B z@e?|0mRki8eZ1xJ9R2<7*1s`-?cbPx?cbK)Ti;_p$d4?xET=tic&;2z6eg;cC#zcN zd4sCfv#Qo!nU|rFmOa?ogAYoMzJq>V_n(8hU>Y7AbL1ouG zOm$Z*>M2L?#jeyyg#TnOe;56xy-I{O`33d6IFo+y`~~ZmAHbNi)I5FBS+W<>VtqB+ z^A~uzme%tW4m@dH;UA&ru&3w0n|}A9w%nBVH8um*FP@iU{St?Svfm8{dS0%xWUW^5 zxu_(bZ~5P>-?^FWw>FD@H$%TE&k^%;LwLcPRx14f%|Aw`XL~m5IS26%>~@cSQw3+`-RW&V7B@+r=N%;Su1dTTyOlOn8I$d$Ukfw`^^bq@$5X%k=qG*u znVb9>&r%SsAK~4W^XDMuJ@>1q zruNOipR6f49iv!qhn9WcKN%G4%5IWtpG0@VUeYFo+R@wFahvRSPy+Ud(Jf9}Q~dCq z8JF2b_TJ#h^iO%93iQMO#rmOONx7vA`x>n!d;aS0YCr#!2PWB1fBz`@!J7yj^%=4p z%OAJqY{`2qpWyuC@KutB%o^o5*XMjc2RjET>3EZL*!W`|XZE07%!WbZLW2Gy(<^F> z6B;-@`zS2DntZX(UM$tc5PGP;cz5aZEp#9{Kequao2?aJojOBz?VHMOiddsKLA=_qFn zh=||(88!8D=2lfj=FH*inX~FE>*{7lr_8O3FfecSteMk%tiJBTT9Xi&J$u&d`l->H zNd3%Nb@fwc&7E1zIaI>zNM&_Be^)7yn#hdE%)0s+(K$0J>#AIpR9iWFP87unNrseE z;Y?A{YOsq=y^wO&RZh#0t1dFXE(6Sp&xFsKK@w(2sg6|DRL;i2*Q}WtQs>T`K6BPQ zof4T*TX$i7^{lG70fx5n5$MP0Bb^^3Rh2VYzg4qlUJ#jGSMOB?Ek)Nztd2OJYj24; zi&wTfi(6aToaUHwaZJ`5WG$9g49)M|7~{tOV1F<)sTR%OHV))J76MIHtnkr;O8KM5 zpp16fBf+@lVV8T;R+afoX^!aRv}>O}T#B+TXliSUwXDvb$ETkJ z@|i758?)0=VX5?Wjca2ArDu7nT2_+Evgh&nhbNGZ8ylJzuU;I3)5)GkD?#O_`p;dp zVpYqUe)1~%aiFh^#a1^hX^&;qf}$t>k>Nei^Jo`jvrfk+8OQqb=;NXCX6keaI(OhjpQi8XAnNqX3ljWM>k<4 zFCFx#2^~3~pY7zVEy_7==%EE0v6+DKjNlZzi{9E4q$0i$>6(V^++t%Vw+vUdxXsq6-? z?5SM#n?kGWQy?7zt4@57JR<}Ack$^3KnYw>d-JjtqHk%8>WA40-R%katfY zuM63q6Ko!}H`?Wf+$n{_ug{xOSlpFArEtu3gDMM4uQ{Z$uq=M)w8GlY4K6GLP+2$z z1R$Kkt>)rwFvP2roCl8j{{mi@{}=MwExhLZjdGFC8%E9&$2|HMDJ+WT=1v=2SWrzb z#G&*F2S~3wKzgj7^b+vDNz&_ZZOTU%T0FS0Xlh}BJ7g}ONsjx3ZZ^@?ker`~nCA_t zEG%$_1Nwuc&+*dH@CA-jjPLs;?OH!=DKfi5D)E2X5T+S%2qijBe>4>XpjmnV8mh~N zbed+C2Wgak+X2#dA0Yk3e$q)-1>*3=;@aqZIjPDU19LuKTf-ydpd>rc(82$GM2; zsggLh(LeSLkqo|}+W3Y=xmUwEMADo?WC#dQNYH113Abw*6 zvt>}+I9b!d<`=+v39rk5mjZ7V{7zg`oh3d%bH($as$6vV;wrXoxG8vB;5*t$qOCg!+Kz*uy?ubRr0XYymY-Na+3u+*_bd(}Gkm+?%;5iZ3M7+>RuR2Np{{(dkI_Bx!XG-FY% z@DLHWKQ0xFZJhglou`YAe$sB~C++Tj(jM<8ZC{o&f``(}3vpQ4+5ZXFNC|A0u-kZE zP2s+r+^NbkiMHk-Xx9quvQ)k^GV#4tXfIBsotcStkI*)x(w>)z_OAn^C3_x2!7Ywc z=^wY@GHyc`U#lf;9*sGEEQ9#7D?dW>OW4gdup7)Ts|y!llrIAih!vyAOJl)C;l)Ej z;iCAV*Bo-)psxJu^KQuHv3awkliy196PKs>lP84kLXVEeKlqb1o)4O){0Y@@=ut%M zIOo$pxVPLYgaEK>u75vi)si;L=A${3?t3$)t!>oOlc`GSuUKD4ayMrN_;@RX}64f({ar)7W*>WCt}ttSgv8R*cOb3NS0Db z<5@85rz;op#p@^z_UB-^3(af}R%aHErVptJ&cTS+<-+R^GT!vFE>(@0*Bu!h2j)Q3 zCw2=j<2Pzk{6-nlUzGGO;#$o;AUDRu^Nb@$U=tbg8Sk3Z%`tF^1b?3sIje<(B7A=PV5WqT3c>Ye|5S=cx9>+`QiH{{YtM+JkFas(V{2T2_P3u zdsw!Yg`R#XO!;Yl9q=GzE29pBBa>{DG+)v`NklweVBUeXDQfqar13hnKVD>$qa&k^ zFbAi0@9swqvirS~&i&7~dBj4ZAUHs<;(j$$7JnBapBY=Yf6!b9$~4Y$#*kWG$R@u@ z{3|5S5-*P*A7J>fOEp7?w)r4vZx-6XIL`4wknawmU79Kb#|J^$eL}k^m6qd!Ank~c z6A{*M=pXBj>y}1KZR!f`j)B=02H^}r0OtJErZ)+%Y_@f$q-V0NJ(BicVdEo?ql#y@ z@yU`Nl!NLpU(&`CgD9=dMq&Rmhs=cCTm)#Xq+d(v+y|grS(6XMOfw5B+M%v!TFm5P z3@=Mxs^|IO6T*Ls@YnZZa;JE{0qbn$8j}F_6Sbg!Q^wBAa%HT@)JOe$2GxZdbMmTk zAY!^K>_dye)0Hu6G_HC4K_=~_$%d{Y#o_p2HXG7q*5;j(tw`eagz(x<3?cvZG)~Ey zDAo$Ep?e-!cf8h&R7k`66?|nBK~%~rDUG)!Jc-l&06rj|H?y#Grq{zGLmF*oXJ0b^ zBjma6AoGxG>y|u|sh;d-FM)-bHU9f#%=^4;M_vobJ2@AYNIs8U*~R;m`PP}(hR9kjZzHTS25Yu&<*oKF|7tt@N}u8LOjxNx2D*-E_8W?i{a zFSg+IRE$r#m!ZWl@_Mlatv!#4^1`9Hzi8&NPYADkkqOHb-o41&uY2}CZODA@Ix?iy z4w+`$A8~@IB(M2F9=%?P*pPfXOr~doLSs)q1bb5k+1a`^sv!1u6k z^!>oJ!U`Hn(jCvVA=Jv`G_i7_Z)9SPwgl|=OBoR=ipMtC8ujVo3wWq^(Tk|>7mp+Y zjNSB)ZNRsq^JP*^#%OJU^3;8VJR2m>$_(Yq&Qi{OA0f{^$@AINa?pX|`F4>&*N5z` zWE2tm`(3EL?LO@9#Tii9eT}F zM<7(JH1VI%2I4ecOA6B7d=Rudgmzh~3>^Oj`R)_iC8@OB^g-GYqzD`b zqNO%+h4ul;0DDNg&j)*mAA(&VV=$TZZu8X)p)sga@^Vx07P z-7je~ac$a{V|`fA46oIu3|Uw>e7ad9p^)g*(M0SxXVSl=g++5ACCOMKW6gB*g?viW z_Odq@cb~|%Ud^{X)1P4d*U|d$HTmr4(N?(4nKCd@AV+mA4{`oBUWm)jc zv*1@`!LQ7MugijWWWle>f?u5lkEh|Z4413yc7dYEb2`;G|1!^6?|)HOdCoQJn}3;S zcI^0oT;(|%(l7$@oJ1D<3t8}F7W}#_cvlwu`YiYjS@4Zn@GoV-Z_0vyB@2FY7W`{j z@LRIr-^_w<%7TA83w~=B{JUB3+p^%_&w}5c1^Twi@B-XE6rDqk>wKg^7&Yd&UvaG zE&ek2I2qdgFM?b7EdASzAMVL%@%IHUvVcA3(Zx?3gf%J0Ai>E`>tnFsa?8|93JE^U zL(Ii6!DYGCOFdR_nYMfQ34+^pvkA71SHV{+j4rD>&Z|Q}{N)gCpTC!Gj~oLxKlKlE)YiE6(O}ALHZF@FUr= z1g#T$tr?$?Mt=e06VvcDjGvK)e}(Z$Y4{z$N2&S3p+d2TaeuyG@mCrDtjEXVAvmN_ zYQA9cag6(|Yw`Jv`||~hU&{EZH2z;_+@CL4`g<5}O{1s1-=oxg!P3*fHA>AFEPfK> z{(QmWQO131E0B^dX561ISo|8s{rQ5$f55muU$FSE827E#;(d(!^975KgjtJ3hx z7{A)X2g}tD8IOCojU#%2ADLmkaKd2*UnDs`Cg+)gcLeaO1m6_E?-sl}fcFZ%S8zK| zIUWL!Qu7omzsvY~p>`ZQ?yX|{8V?6sKEB5IwH|Ky>|lI@hg&``F`n>n%jaVlz(+Y> z@NmoLT*i|gZuu-_{5lV}d~RUepQl(pKVkfOkKXcmigACQV)+a~!;Nw_di4Cv4Zeke zr^O(^CuPCU&Vrwp1wTIvz8d%_=S!YE{M-({-OTt+Y4}#gzvAKiJPp1*%eX%(*zxeN z!!y^b2>2++pEp_hiH!U6CW|j%oT6)USo|vBWd9Ws+0{w=nNxGPujEcD-D{JS2# z<+F?Vyy@YV&x={;2Zu=h+dO*9=TzV$oqZl|`OL^d-@^F!J$lQB_M?t;UiWazXLA<% zUon2WM{oJO&iH?%;lt2~qnyoY_!*44y?I|n$`i{@u^ zRGO2sRPc&i11u7JJ@8EOUnlgNgnpaQ-x`ne_QZHf=?Dc_h;er3!%5q%Zw5FUcv2iF;;IwhM9WV39v2q6v0a|zR_XnYk+6c z=S4!lC_o<<#{&4%?3^ zfRA+c8xa3D$<_QU^j8bsDtxRwn*`q^c)jp>OmL^r02UvNz>Mr?Q2>t!-W|YcPbBvj z_)9wMy!>01kKlDC+3B`?1TPo-&w|@V!&g2IKSuaVV~!Vmg5Zk;KSS^tS@30oZxVXT ze;x2qYW)pg`M4PuBc1o;o3H=PS?C{R{63G~>i-$wq@Qjn7hn14!^KGFuO9s-xjJrm zW_sGcNPPANB`7W2nan;e$^ z5ePU*&LI6*!50PiPZzvH@KM6=GQl?s-Xi#S1TThPq{GgjekJ%O!LKsOj`MLNPbvHg z9T%CCbDH2A1&<2;X~Fjf@M|m|^kX_KJ?-tI`gR2HKMTG`@K2a*&amSQeGs1__`U#r zEDQc!!Hdw3>9G7C&w}TU5IqRJxC3Xj;N)-Uuy|DPTEXuz$xeshMPeZQ>VClsG zrF%P%3cg5i+rA_)>1|^GA1`=!0B;a{UjYA-;Ki^&c6u0SMZAk|E1uyunRgG%*lC2@a_OU3Jb0zPbu1y zj#JIasRcgL$xZ8b%~|NbCio)Z!_T~c*TaH$f6_3n5&rKBUL*tTg@S*w*vQi=`1yj* z5qwVoUoUv64D7Rn{!YO=1fMPVGlK6G-10wiq$#)JWJ5St=qm-^B=`iu8wKAh_(g(m zw0tBGws^PY6Tn{)+&RTCu=K~mz^Gjo1@LKtcL(s8;KkB_)gsT$g0}|n`z;^ArwILv zf)|};fT@BXexk@DxaB`l@Xdm|Lcc(8XRHC51^=qxt%6S%d`lMmF~Pfq-i{ZvUx)Ow zSMaY3pW`tg65esT0r(jTT%ITRqOifgDD+nfZYLc4ECbSR2R_o_U6M?>N$4NULjR87 z9TGV3a}LNea7(%MdmQ{q2Hp6nv@Rj|gsG>a=t}Sj!CZ)eB(LhJF@d}wWSx_>g{&HJ1PvFrGG*2&4NqwILD#?Q@Q&D zzt&`P<_O+VX@D()cM4u19fkIQ)A3{A5-J%${_ha_?rH<@-fdjIVfjxr_;#Tm13yCY z)J`+NBEc65zBzz@MergwmHrokw+b$5bzZT21gE{vbPRz%qH;F}@RJ2El@4nA-88{# z1()!}xe_?dTMbt~j{UCCw+j7GA$Ume4#Dl6v$ug~(r4Z&M$U~jhQU_hGg|Q483wRD zb`J1Nd@js_*Jr^Sv*0VT;H!a?J{Qe2^3;o*U(G`Qtt|L=g-^He;r-L#^$Wp^WZ?R> z@P8u?n*?tZ{BVq0RBn+tZ0lFU zf_DV)xq|N#e3|gMRPaTgF~AbRzajXZ0KQG|3NhFRguYksqD2Pq^iyi&tPtGNPZzvs zaVq^)mR|6gCfWI(;2Q;(;m3JK@I8Xl9#T4v#`s-iE>r%G08V-{!L9t?5WGSf#Mbu_;3Li3fS7|!pPUyMzhAievh@MaB3i zg`amJ1fNhw)!{xGndmz-?YH5f^`E`iDHo(&u6T9qFxx z%Cj<{I-c=89{mWpI*0LJdAQ~C8O9$=!#~gX<7xO;82^oj%QVKhlkwkrxUI{hjQ`HV zZMm;9{`)k1@C2&YA3XdMa&-#hfAnz6r-t#TJlxi|nen|IZt1UM{233o{QsTtXFc4~ zKg{^^9&YJhWBkt^Zt05h{n% zeld8sbY|lk`&RYZ=?w!Rw=b1HF!>}f=Xcg0m^3^AwEFe)1IR+M+c(Zc_LyhT8^YZ5Na4BERXjjiZ0#>EA^9cLx2NME}a@Upf5?8)_yGGkusdgePz+ z=L>VjFy|b{^yAHcrX0^SSf1W#M03>>BbTHkro6eI-n`#G1-;w9e+v5bfqp6I_XW}j!YMzH zkd{ogO?@k40{yT=d0mUO!qocNUU5cU3wO@UsmN|SdS-%fXud(vyRgNvBA!O$M4w)k!A{*2nYxw#oVtmKr1_*~`o>Ls}$z zb^4?7Sp|OTBiw(zg1-!sk=$pleg`C|313$%r?h&IDwUPkFo;sDIlw9lmCq`5&_QuzqMO={gdv(6R^rIKqC%^E%hvIGovpxKlu z9!wT7rU7P28!pPCvBs5inm*rnpmAlw)YXkJmQ=5p#x7hsr!iKydU3;w#-)a%Z>=fB zG!PA_Y$7~x*+ezavS|PtNYO-hz>_P;A6vetJG4bK~OGT(70g{a7e-^l7sQ$5l8W z73(t-Rli;^)t61HnKh-drheAcsdFOu;kC*s_^G=T)oNbV6kO3Dg`I>>oZZ;g7z-GUP2}2F&l|hCaoO1V`is}D zt#8GTLbj~J%0leY`b$bvjN8i;tZ`s2k=|;l1gZK=O-r-9KytQPBEVj~cvai7#?^@A zY=Go-AS?M980#=MM@-bvn*E0F42K=6)_N11tp`W>UCC1wZ zr>SjmbL;ZO87aeMRV~fUi(A_o=PhrFHMa50{}N>3tJEx*g3XOJHIJhadJ29ka8Bdu zCN#|F%@627tU2RSy$^*-lp{QT&1x{GJawzv8&mb|5l!%jrqb_|W~Q1n8!HD>X3Zd# z)h@{>A601;eoHilUsN1F4zsPgsb!IsSP5yuu+$bqWI-cU{j$YP&6)F0oYoktT8=wV`A3(+*yqO~E)s@B!`y}4yF zZu(x?YDCCC%j9aj45Tlibjz&2a+e)|(b5B?H}{hs#m_EMlTgK)+FBaMjjwNOYgoK$ zSw?|q`Z;%1Thqm>5ady|&t@dU)R1gO+M2WL zd8vzvR-s^ndYmzVNz#pjmKmzXnYAcAZz4<8qbjj8zjc|?HwCQRTrGo%7c6c@ zcge6!K(63`^C~}Z<^fw~(+86+FcCSJtZFiHz-+!>6djep!C?2;SnyaZftIhHF8U&dtgfyHdIy1o0?&YGLuacC_F)tt;T|9>MX`Km<-;jU6}+( z8%DewX#)rZqt?w32T&d!1JXJRX9$jhmOL#&)7Fro7@eHzgmp?_3}tr%;IFB(@%9@vHO8I5Egu+!Qb{roRID{=vVo5Qshm^p zWi6rbLIpypq?0gcWH!=Ny72h(+Z$J3ijiK17-pKS_Te(7w$X}Y;dmu$mWj52GbRW< z2NPN8ConyQIzrAvURH9$o&z4C=a45W{Ta;OL_d-tHU0_cXB-si-&2*o=395ljT*G8 zCho6&0;H)SU%w)xhGPAarUncBk{*N(QbS5@*V+1>jt4b;hM`4zNY=Q}*Sroov)?pN z^^Cgk@c5}stCprUtuh?)6CzJ}3Y|>tGLweKp);kB2fLKw8=hqQQc8|skJ33Na8#Z` z9_&z>d_47}6zX7q($o`8$4H@P)5ucS3Ec5g$b;Qav7dx_A;)Y%|EXxgk?8*sal&t z2`Ro+(+BjWli*!5u~G`u)WLm1{kT+nb5m}G9^g)8S|N7RL0Ux1emgj2KlnoQo}|=T z*y*7cnGKA&YEufhOmFVTNIarIXpo6dASB2{5(ot{kpx13OeER6r6+D6I!I}_44b!7 zbsL=S9;A*_3JYxe3KT@OlZ^#`Qz3e-1U78vfc^9+TBC`qUfr@f0{SwF8~6(hdCvIy z)W)`^mJ-YdHl|U%JTGI5??1!bRcqi=>Ty4zePv@x{*<6+B5#ND{A?R-ic6JGllNbw zl94mnJsth*xJwl*Fwr}>(!?DMJd-vgb&u0mbjq%Z^g%`EPajoMQqzVNof;m`#u2Tq zYvCDMip8WVC?#9CzLAWI@|X>zDj3m(<;*_gJXMp)_C{l<2*~QQEWoE|#h6cE!7qiP ztfpo0(!gdzXIWcg;|gcl#f`BB2MaFE&CW8c`z&>EM+h~_UT4J&UUgXuc2_#f8k$?$ z0v4|8B_g8h@m5N&8?lMXzCW6%_*)?}*uSO2^1wjo?8eOL4WEZ1FIlElS$~PW9g%i# zLyMHU+cZ@r3G_O>iGmB4&J; zxlfZ_dY>jksFJ3L?Cly3lePjuX2#ak`eM_!nX)(PMB=SCyrLInrB2}=7zMMp3tR-s z@OF!56>nrT_4J>~-<@7FVNi`gB*1J)=> zZZkoKx;g$BKWRqe%38XON_aF2e!XmVO*+($+Mf3MeDjstI-gtIf=kcETYyOfQA zm!2hmn06io)tw@NN05yJZMy51gGZn^qy&4x-06urXNp5f?S8Cxaphpj8zx)ZS2xyQ z(zH5;jnedVmVLh>9;bFT;q%u%bI|**>Bz_DE_^KhJB8EJbQZVI3lqJ@7vuuK5yTr5 zPEWg8KC2b}V})O(*H`~nonUKh;UH3&*5X~&3mHL<+(-C(^GSn{)sI3n+n(U zT}%bypwo-^SUwMA!5`0pe`*kMp?85h4m|>G`Aig?+Uq5SPf_&q6h1@I(^Gtw&s~as zzQP|;I6cyA>2Ey*UvQAPui|6zzbbs6!si`|FF1()6?`oHT7_%+4+@Cd)ORkmur|9X?ZcBfoqSx*9eMP@e(f2Bx9@Vyd1`oj(93&?_s%`Oe6t3mRPf77X?e$kh zze>^TdbMYv?^gKxiq9_;A8pUSSM+^~{&_{O?fLaA^c6#q8As4QKO;ElVG%x74~>dm z*Y|owzgW?KISc*0ieBsasVwxz91f;9f^wcD_@^ihKGw>)L($XQS1tZX7W_GdKL=ix zzNC;!HRWnPr)R;d6|VVoDqQoqAq#%1!Zn}g6t4NamIcob`SNQ%gQs?gZf{i=;u?toxG;-=fKk9$Dic$cNP73h3j#_Rk-HUrEtyXTMD0~`2SSl+F!k*aLuPr z;bn@?C&u{lYd$j+uK6rfIK6|{>fthlYd+slxaM<*!p~HE9#**K^P$2upTd)U`6nwr zrzu?XsaLq>^Eri|rTBbN;hN83GDia_=iZh@+1_l`QM~)9k=u-T+_d)a2*#-IhDm>{hY7#xk%w!pI=h=Y(>9W z;hKK0!sjUZ4;8NI$DiiQQ>W->D_qlGrSQ3mev`sA{o@M1K+(Uca7};0SR)TL=O6H~ z?J`E;e^hw6;AC%4Dtt;7yhHKP@yRAdzfj5fpu*|5Z>&7|c;6o#RIc`i$0}U=u`?8| z=^q!I>Z|K@bSZInc$~chXIt)K!KqyB=RZ`q_VXu(iHng_k0X;6uKoOF3fFRORJg9! zZ3@@)I~2Y|>FqZPKSSZqDqPbah4<@O`E?xialuJ%jf&40h5rg^R&O;5e^}wo3jc+| zuM?c&qKg$iZalu=pmKNPWBI=*IJL`ECC|GGr(YYj^dFl5LL9+%+^ulkj&CYlx8u-> zJ|EqV^AxWA(h`MVtmL^|;d)%YR^hsRzohU6#pfFeKU?8r&hX{bad^4HwSF#8xVCd= zlF#SIxU~8_RpDAc)e6`8xnAK~KO@R~{@UJ76P(&z$GsJbUdz8s;adKpa-YAJf3m{0 z{B;V~@_$d^TK+o~zC!E&Out->e@@|g-hH{kS1LZ=RQRi4Y4!iK!rxN(%L>{H<>_Nj1fpWjrtw$Cx= z`uz2Lxm@8|&I=T-<#Z~1K3dLG6|Uv1R=Ae)dWCB_iz|Kpzs04s^D$ZQN`*hI=zl0U zwaYSv-=paD`eCoaFU|4G9XbV>aS)#-e5^c22u|aO=2NP0&F6axpQiZNR)GNy;-mG@ zsBq1vMd61lK5G>IBzRdlA62;K|3`)YMbW>m@aGhsSB)rJT=V&+!nK?~P`K{zP6SMGKn3jedhCo5dX zQS}O+sPu+iM|==}J-%PA@Tj8y7lmtiey?yHKfj@Ht+!!Q{c?4?oT_k5-<$>ij>5G( zuPFR^6lL``XqsQ{6{=nf1gHM>Sw$aH^v^1Mlft!}_bNUs6#e6hUh{EW5aA&GYd*&b zPVzM4W96Tq=rx~33fFutRk*%?_XUM(`mZZo`^mcm560WO6#dmopAReg-AaBpiZ3{* zzMB6m!HK_)!*^$)e?-yiINv>wxM$!mIPrfNAFI#ZS?C{ExbCNa%!2<#;XhUUbEe}9 z4yv!lkH~_L%z~FIyi@6Up5UJX|7#Wgw4&F3^+mzSt}epI>ft>_|Bk|stHBo>B){e} zO7I|`35s6xsZ#g`CFezo&q|bG-)8DIb9nbt);Tsj7R~4@NZ_!Mut*LKP(U&Ov ziwbuYuKBbmT;bZlArJ}!4@&BU2uT%I}6@HV#w+Psn zqy?h~9S5GEaIGI#;kw+V3V#OtY<*)2*M9ZES}r!NzyB@^-jfA?Hw%8u`G!CB_Z>=} z|CsHU`&FgSzbgD|3STzIr`Pz^3fKDlcZF+x{zBo}pTDK>SCyQH*O_w3ep(cMs^HX5 zZ&q^NqUc){{dcp_Kdb0Jr|4hGLjQ)MU#;lh&q9CrToBnH zg=;>SDqQoqOW|*$3|rp^6t4O7C|vU?xsaqZa_V)1aSGRbE>O7Uvqo^z|7Y>B^4zZI zZ&iBkRrG5V{p*Te+hN(KL4-osd3a8&Tvh=qrT(6hjrEoo;dO+d2y+%@}#X)jv{f`%% z^sp8mTW-6e*K%I1@PAWsKC1Bd6rZOQuIY0Yf(S>jUsNhw_tTjQ*L+$PuI=zY6|Vc~ zR)uRmdljzvocI}EPTjvs6|VWrR=DPKgTnWNrPcE-3fFwLDqQpFQ~0}z&(L~bPR(bm z!Zn{c3fK1VIl;*uE>-+*QMewDZdH7Ae|bpJ>;Ce57Wxs3eEGG#ouu$Pl)cSSc#8aj zll-5@$J4XIQ{)#s*nb~V^eOUZp&zl>;e+_3$glAKRPr|pPI6KRVC8I9ICUM1e@^ky zdX6jl%M|^6ivCAAKA%&TfCvZqr7a3STX2&9|0uj(;dd(h>x$0~lCizE|e1)2~*z zroUd{dcXZAj`GVbQF4|a?c;w@^@?V}7aZf$Ykek%XU6Y1-r!`<5qzwj>V1Lsy%rapIsTrsU7`4EApU#6@$X801swOso>S|2 zer;A|{(NV)<3yy6d^Ur_S*_=U{%`lzPs$VZnbY zem(OC7uWM(otN_CG#|cY{>wPhxjik!zis{tr@!T)g*d(*q}NKc5dV((FY)t$4+Ho4 z{>8-5qJ8PuC>(w1JC?%H_Y&a$pMB}rF7;zSw?X~5y&b@Dd(Q=q+j}15$Ngwe@qIY| zF{a&Y{>!-Y;kIc$@L`~d$IZhZ4>sjF*R#EtA3x8!*%N;?aO`Ky^9*e7E6MYdJ(TBX zuR@-@ryqRVORsHdq5T)<8}=La|ErN7$K}1se&*NAR#vdGRmEA6kPXfpJW30l3wil0Yl3#Ov z*%8)*@mMGFw|nv*=Hb|HmUj#{ z<#9q!0+(_L`SLss@vkJ$5B5-=AI8k%8?R>|Pn3T6F~q-;e)y>;&nDne>iHSOV?A;6 zJiCYTJhzAP{KAtb?!0}$ljjNGxc_bij{W)1G8m?9<8=!C6>!Wm;>q(MIM#nV@HDSe{yTto0bc_=1N=_l-M~KuJPZ8OzZO_J9s#cMS#pXC~;`FoB_AM_iJ%Ra!1TpJ-dha@C( zmH0srFLQv<+koRZUJo3{@%zA|jH7S=`WzL=OFOreT52Yg0{&|6Uu)Tmnr`sjQ~TGI z&~G@7lYtk(_ba?kjr0kHz8&Im91j7G<9IW09LFudU&%Pe-5>9Q?V82wRLX00oV*+A z>4kcvZwcjruYi8TaoiVp5#rbLIyE?sheEt~5qc+Z9LFMX9LFC4|9g(3Z-4weY;T&^ zsl?an`A+(fO2Kiw7WxgxaX;Wi5}Ae2KZa}e2FLMmh{tg}0=U#b=qBJejz0m89x zI0_uc(RZE`cO1V6^`~IF;*R5<+8@_JJz1zH?)j&@Cq^l79Pj0v)D(H0y7(V>of;g+ zRnY%9j<*8GarB+9z6kL+j!%Pc8?RI7_kkyYe+%-o1HTXAaU8!2@v|WQNr+Dae;DGs zfNubv0bT*#4g68yS>Wq{_X02TIyHG-r_e7#Jmc{Ad8)Z1?*&YTc;fO}8vB{Jyk~*^ zOne9Hlia?}v}c+BS-#)SEpdu}9j%xJ`R zdSn*FA813v+quBs0z3;`J~N_+3&5v9{A%C_0hePG)$=ysa;zgRpM}xG^jQNf#M{C( zdn3=?#O1RpdSoZWA7Vr8Ed`o|nsji^tH6%|z76<$fbRf49r#Q>h*19=3%m%t1Nc_p?*-n*2OY{I$3S{` z7Vu7p?*={t_#p7(fDZvDk2KHwDsVYAl57n4@sQ_b;3oi2^1+dEp9p+5@L9lnfu96? z4e<8?-w6Euz_$WF8Td}%9{|2TAFQcP`d{XLI1cy=5Z?uy;zv0CJm9B5{9@oA1YQK5 z2EGnBzgJzk;Pbzem{+F3AR$TUdZnH$^J$7#nM;32yqsM0srV$HbgWi9%ltFIX}{y?9Bcqi9%YW-4E%J%Wf=uN zTcBxo0jE4w&NG?&Rq7vOK27m}PmX3Oo@72>@ig;Z#k0&;DPCkgqhNiQZ|{# zQ|d1>?^Zm;Cu?gIFEN*SA$i7_?^5w8KDle>@t61_^972JFdtNWocUVC6MT|bQ9Q+b zv*Kyyql#ykCwM%i&IF%q&R0CcC!4*BXPK{3yu@7QqvWqL-=yNlnU5--E=Qk@+;mOUyHh%SrJ{#q)f!yg~6X=Gzp{$VoKMFR7=>e7fQ(KDq8vJj;A7@Hw!b zehWBxRFAR`ZdW{UwB-q&r&3Rz`EpoPwt0pXFEbxi ze2n@2ydOyY>0@l3wBlvv1;vB+*!T^KXPIwTyvkhmGx1GMw|S=Xej_~3yi4&a^TmoM zjG3G_Zi|@6*TY=O3 zx)A8+I3_#wQ?{AAwmiBlfl zO@al$>9OL8HqW5q73Q0PQy#t>{02DXDe*~tf{znY&lvOBil_NxUye5tUtzvZ#V7ei zz!t?z%y%gs@QZ^aABQA=mib)8tIUUh)Aq`1_+jAT_VSB>ZHiZ!C;50rv6N?;`A>`d zUVzk7OoupF0P*x#h51Uw$C+B$%l0SW#y?;1xDpBTDA8@LZ4=2G2;1thx zK?yi{RQY6TyW+(UnFr0%&To!LJ()8sU!Zt}c}ej^myO@7c%J!~;uYq<15Wk7%ccn? zz0?0Z;aJ=t^Y{ke))nO77~oM+=V zD?ZLVk!;K#{*kvqa~03bw{b&?7ca2ZF~t)- zHvVPB)67#x+Q+4y67w#_N0^@n{1hYQ)3IO`@HvL_bPMhTPVpyLyPyo5ypxOU178D9 z@${dTQQ&jT{To9X1iuDOvAkOcyMa^w@JCckGn3ClWqb3B=|S^(f#T_$y{RJ zE;DUmz_z`zHjwM<=_up|3qi-?o(mohZhnlHaYJD6BIzzkhcBq7_SX%L?Y_>;0v59%lk`=J$RFdJ0SWmrWRJ zyydrRA!YrimE~uA-J9DS=h)unAom70$N9F{5$WIL=3w_W*M3D?eu=o{rqIATf@+Dv zUxek6ZMDg*W9w{nwt}*S{<`Co?a#u)aG&@eLJ;X3o{-$AIT#&N9DGE<4wp zy1KqO@KeJlg}=)^XK+bj&iSNksJ)fAv(rq$e9xl7+2*Lldde;RUiYq7-tZ&L^b^Xn zK3vExowwxrobzDP6h8Aq13A+#a73wXS5s_fYF@4|f1qd4Rk_8O-BS(yBy@~wC_HL4 z6dSJ^`i1N0#ZYv_S|~JLDV;N7)e?qBEGCTA)zqFY8=f7TM)&wr&3>|o#x;U~1|XJz zwmFV~x;0LGxaG&6-k0kch_(r#L5%qDC(z>dFm-gS*jSqvH8|Y7sKMdpg~3-WTC^}XxG0w|EHo#feL3IG(K*8$r%x>u z29{j5qL7U9qfh$yK?&>r8I2npL~I@Z$ON z;Kcdt+|o>cf1i223J(Qgac0ek%^_s|hux7jabu=%+J;Yw{R6GD>1bC*cp`398=wA@ zuP;-0!ryu;O(uzSWeV$-*99%J>1bz0b>bMI?;HweW;pwckX1!HGd4{92sxYLomm@C zd|Hfk*r)Z=B3A0}wJ2I;4xfVJrLIX@=B8(>n7Kvb%B@d) zTMZzdfKwUHoHQpg151__a#4>a6GvZIKaw>bmOUK-@i^k)xko&S3^~1%p$@M;6M6=V zXA+))w3f6uq(VLN^wK(~KFCeHo%$tj#QgGhi2INWb?d`Ji)!>-Y!R+zWjJ$nN#@MD zr%yxkbSm6V_eIMKohQ^Lzqv=x&<*Zke8=pI48FW$;le8h2N&jZ1IzoD_4F+%T(|I= zRM4@ge<{816m%@>FXTGTIOl?6mlw=SHokwwvK1Zqfqo+@(AfYb&-E_6e4uA(F6g*o zpnpZ4-+z0BO~HI#d!QpnnwfmwNPmlYt6`IvOY76~#}>8ED@lJ_486RcjsBmAq35^N z8~j(t&}U67E$IJAb6>VwTHp5fhU!NB?J@K+yy$;N4E>q%MSf#V(2$G^q-BPuQ>Fdi=iKO=-0;3R~`Dh zV(7Ox^moV5k2v(7kD(uR=xI*KxJ&CB|1pRD3o-ON9Qu1==*J!UFUHXCcIel|&Zy$Iy2<^c!R7GY}`G4#C-Jss0!zme9r|KuI| zZ^qCMI`j|6&=*-R->aeXw?|^=*EsawjiDcM=pT)tU+>UA7DHcg=r_gC%eBU^{~nK_ z-{SCpB8FbB^@RS_82T~x=dV?U*J7dX6v(`l);E85IrKNh&`%D(lwf|V*=T5?`ByZp z_)6>ZpX$)x97CUS=x>RkpY70pJchp8p5C43x~`+>r1j}nJN)VTbfS~ir(f&vug1`?bND|QL%+e{|5OZp#oIT#8OwpMKQgPsc>jN$b=9#^F!b#}u8kKK)LI zKV8p8bkh3t^7p8?|Iu|dMJKIKAH3e|>}J9JZ)*&_{M{@1({(zw=1}v_Ain9sYFvN6|^^)63rrqd#3wRCLn% z^cjagJ*SIKTAyD2E*brwi=kia@P9srUjBX){ptFpQn$3e`Uf5UqcQaIch=}n*F6AEn`4Z> zT$cd1{{@FWX_zUi_IFEWHC)o{f0=wwnR$X+Y3T1jC^RjA+r)vC)$sRQK(9X*n^ifU zv{@X`*PN|~=a_-IND`quZD(t_H0B-g6cN^}~ zS0n0Idh{a^^c7K`*riWgX~YrqXL$6lqGSN-LP`bRwaN<{s?d-TsuYaF7fEo5%pj2=rgR}Pj)qU-9TG5$k`}qpwD+|8E}sSj74}_jdRH zc*Od%9(~YfJFZp#-{H|GS>LMvH+l3a*0-9!be$&G{+Etef1BAsUHWXq`p@;~^Q^y! zlEb3+pEHf#?1DksJP+WKnQMiE4C(y0WY*<)DCfU)T_{)mBTKCiuU$(-``_U4-{SD6 z?@ws|Z+iSw{n7k4di>L8H*Y_Ee?t5Ji^so|xBl~N8hgjw>g|8Y<3H^1r|(Z_|F;<6 z>i_YpttJ1Nve*AjM(-N`)H$|r8D|>*A&39z9{Co4;QIxxyQc} z(SMo8KkM+P?@ws|^&bDka$9Gs{=d)TKj`qM?@ws|=RE#-_CMd2QM=XiZ^YwYV*f5y z()gFny7vEz$A5(V=hd9;iuT{_@gHUXEbGbt%Vu5sA88KoG*k8K-&Da0Kf!uww13j* zUGsky|Da|U3(0@IS=avOd;F^r{m=IJ7ajgzb@<=p@z1QVg}2)N>plKk9R3>|{u@31 zV-fxD_xLCH3n1A44>d4 zpT57M=U=DCzZB7*t}E!8|83{dRs}&eytSXdSIoNhztrQO9JIn#^Y0@b|3QcU!w&!3 z*k7H#1oyMQKK|IP;*B!Rmpt_c*V&k3>Y?G9K7I^&>L2C$asGbWWYGQh1CM`-{b#iB zf6C*ZJimGTzT@!U$^P2sGWNeyb*%KCv~(RxTGz+l@f&R62e+vI&z|~=Tz`u7bo{07 z|LFdk=J8L^82qk-ZlR#?2qF|-~ZA6UE*JJuq!j!pN`qMsO}6-7k>;g z>$}-sz6V9yPv0NX{ui;o9=|d6|G3I4dKtgVS-+PmEdMbpl<(h28r^?)u>SQ*znb+r zUi>BBZL6dkUv<>~w4?sL z_IKAm60!e}X1(tJ9TDq4!suP|f80_37DxSaJ@v~4Xj;vmt3CC%(U;B4qQ_6h-#!`y zbp2IV{mBdL{ORIA+JBxg>!O#ucYEqjdHnVKdBRhFmq#!DQvai#`gd&(OR59XK*MHEP?EKU7rx>yRgwebDzv8H$K7ZErpT_=8`>)4e*MF6#{$Y<^{H0qi z_td}JQU5ka{cAn-kFftCV#KYk{|Qh15y8cH!^`|dvK7RhfQUC8f^#}B2O|!^6 zv-g_czj*5b?)lT^(d+sTFnZVg$#eZ(Y)t#_i)LN)QrF4sujfyS{STGGxz+u7rKkQ( z#QJld`iC9$zvQTY$Wwow{afw7PkZVwMXaB$hwSSAfZsU8{vUJH|0hrVm5BXM*W;#{ zs*gV-5$k`4(YxyJa@7B?j{47Ge?5Q3Bi6stQ-7jp%*-P5)ZVMlU%7v+r~ZQ5D|L#y}Cw|VN%u)bCOKlRi<>Zt#Bj{5)VsXy=W*Zc3$2Ds+WYL8y}&y*4_ zM;N_p{v^BY@e}9&PNNXL^veYv|8mjhPuiw-D|!JLkAJVj|Bpr_dhx&2<6kXW2dQ8D zL@)P?9{&paS2>W5zvE_I^x{A4@t=IN6}Iw!#N(g;i0yy$|C7W2_a6UDME`&D_@^#z z_TT03KlDKN{2Pks-)8i#`8V$H|8IvsT?d^i)yK~<_Ai^qaFOv7c9zG#a*5r3eEqrG zh(s^rf4#@Qc#Cx?ixIb?7resb-}O=JFMkI^^Y4F*Nc7^r-s7L-7rtdN;#Ty6@ALR4 z_=79-f7yscFaAIG_*WzP|JdU{nr+_xzdHOUy~REL*;RH6%eJZAO8o-<=J79I*6dFc zP4u$;Gd%wCqvoyrk2QMN{O?`d?7x@8KkM-?-)gt8mH#Ck|J3Ep{`CD*z5So|_@{5P z{)4uu-HKko?H>Q#S6F|38#sLbd2fgRF#D^wPl93gr@qC-X04N_rT#h!*Q%_qD4taJ zt5Uz>T}!M}f(xVlmwty>wqNGYiyr?Xzj2&VdA0v@9{=vEtiSX>`M=TO{|ELrO~W$6 z{@TwxU4)CYfA;9dSufkmvfB0wf74st`|s`+`dU7tckMqTy#3P8wEb^(Z2w8@pOS>q zuC^=FnxAobrA^I!DRue3edn^KKFWD}OT0}nQVbV$;A^YKs9cYjGa g_)EGCg1e5lt=y6yF6Qv<)R$J-$Q#V|;iC2b3r8Bf*8l(j literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d new file mode 100644 index 0000000..295b6d0 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d @@ -0,0 +1,84 @@ +CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: /app/src/tinyxml2.cpp \ + /usr/include/stdc-predef.h /app/src/../include/tinyxml2.h \ + /usr/include/c++/13/cctype \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/c++/13/climits \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/syslimits.h \ + /usr/include/limits.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/xopen_lim.h \ + /usr/include/x86_64-linux-gnu/bits/uio_lim.h /usr/include/c++/13/cstdio \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cstdlib \ + /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstring \ + /usr/include/string.h /usr/include/strings.h \ + /usr/include/x86_64-linux-gnu/bits/strings_fortified.h \ + /usr/include/x86_64-linux-gnu/bits/string_fortified.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ + /usr/include/c++/13/new /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/cstddef /usr/include/c++/13/cstdarg diff --git a/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o b/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..043272faa4f68f6838791711067606261bf226b2 GIT binary patch literal 11392 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 UvP_4bJ#xyInL=N+IA@jrUu&F7g8%>k literal 0 HcmV?d00001 diff --git a/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d new file mode 100644 index 0000000..8963585 --- /dev/null +++ b/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d @@ -0,0 +1,196 @@ +CMakeFiles/planner_cpp.dir/wrapper.cpp.o: /app/src/wrapper.cpp \ + /usr/include/stdc-predef.h /app/src/../include/mission.h \ + /app/src/../include/map.h /usr/include/c++/13/iostream \ + /usr/include/c++/13/bits/requires_hosted.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ + /usr/include/c++/13/ostream /usr/include/c++/13/ios \ + /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ + /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ + /usr/include/c++/13/cwchar /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ + /usr/include/c++/13/bits/exception_ptr.h \ + /usr/include/c++/13/bits/exception_defines.h \ + /usr/include/c++/13/bits/cxxabi_init_exception.h \ + /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ + /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ + /usr/include/c++/13/type_traits \ + /usr/include/c++/13/bits/nested_exception.h \ + /usr/include/c++/13/bits/char_traits.h \ + /usr/include/c++/13/bits/localefwd.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ + /usr/include/c++/13/clocale /usr/include/locale.h \ + /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ + /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/sched.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ + /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/timex.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/x86_64-linux-gnu/bits/setjmp.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ + /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ + /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ + /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ + /usr/include/c++/13/bits/allocator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ + /usr/include/c++/13/bits/new_allocator.h \ + /usr/include/c++/13/bits/functexcept.h \ + /usr/include/c++/13/bits/cpp_type_traits.h \ + /usr/include/c++/13/bits/ostream_insert.h \ + /usr/include/c++/13/bits/cxxabi_forced.h \ + /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/13/bits/concept_check.h \ + /usr/include/c++/13/debug/assertions.h \ + /usr/include/c++/13/bits/stl_iterator_base_types.h \ + /usr/include/c++/13/bits/stl_iterator.h \ + /usr/include/c++/13/ext/type_traits.h \ + /usr/include/c++/13/bits/ptr_traits.h \ + /usr/include/c++/13/bits/stl_function.h \ + /usr/include/c++/13/backward/binders.h \ + /usr/include/c++/13/ext/numeric_traits.h \ + /usr/include/c++/13/bits/stl_algobase.h \ + /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ + /usr/include/c++/13/debug/debug.h \ + /usr/include/c++/13/bits/predefined_ops.h \ + /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ + /usr/include/c++/13/bits/range_access.h \ + /usr/include/c++/13/initializer_list \ + /usr/include/c++/13/bits/basic_string.h \ + /usr/include/c++/13/ext/alloc_traits.h \ + /usr/include/c++/13/bits/alloc_traits.h \ + /usr/include/c++/13/bits/stl_construct.h \ + /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ + /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ + /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ + /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ + /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ + /usr/include/c++/13/bits/charconv.h \ + /usr/include/c++/13/bits/functional_hash.h \ + /usr/include/c++/13/bits/basic_string.tcc \ + /usr/include/c++/13/bits/locale_classes.tcc \ + /usr/include/c++/13/system_error \ + /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ + /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ + /usr/include/c++/13/bits/streambuf.tcc \ + /usr/include/c++/13/bits/basic_ios.h \ + /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ + /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ + /usr/include/c++/13/bits/streambuf_iterator.h \ + /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ + /usr/include/c++/13/bits/locale_facets.tcc \ + /usr/include/c++/13/bits/basic_ios.tcc \ + /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ + /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ + /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ + /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ + /usr/include/c++/13/bits/algorithmfwd.h \ + /usr/include/c++/13/bits/stl_heap.h \ + /usr/include/c++/13/bits/uniform_int_dist.h \ + /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ + /usr/include/c++/13/bits/stl_uninitialized.h \ + /usr/include/c++/13/bits/stl_vector.h \ + /usr/include/c++/13/bits/stl_bvector.h \ + /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ + /app/src/../include/isearch.h /app/src/../include/searchresult.h \ + /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ + /usr/include/c++/13/bits/allocated_ptr.h \ + /usr/include/c++/13/ext/aligned_buffer.h \ + /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ + /app/src/../include/environmentoptions.h \ + /usr/include/c++/13/unordered_map \ + /usr/include/c++/13/bits/unordered_map.h \ + /usr/include/c++/13/bits/hashtable.h \ + /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ + /usr/include/c++/13/bits/uses_allocator.h \ + /usr/include/c++/13/bits/enable_special_members.h \ + /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ + /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ + /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ + /app/src/../include/astar.h /app/src/../include/theta.h \ + /app/src/../include/path_smoothing.h /usr/include/c++/13/chrono \ + /usr/include/c++/13/bits/chrono.h /usr/include/c++/13/ratio \ + /usr/include/c++/13/cstdint \ + /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ + /usr/include/c++/13/limits /usr/include/c++/13/ctime \ + /usr/include/c++/13/bits/parse_numbers.h /app/src/../include/wrapper.h diff --git a/build/CMakeFiles/progress.marks b/build/CMakeFiles/progress.marks new file mode 100644 index 0000000..b1bd38b --- /dev/null +++ b/build/CMakeFiles/progress.marks @@ -0,0 +1 @@ +13 diff --git a/build/Makefile b/build/Makefile new file mode 100644 index 0000000..81cdd16 --- /dev/null +++ b/build/Makefile @@ -0,0 +1,477 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.28 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /app/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /app/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles /app/build//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named planner_cpp + +# Build rule for target. +planner_cpp: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 planner_cpp +.PHONY : planner_cpp + +# fast build rule for target. +planner_cpp/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/build +.PHONY : planner_cpp/fast + +asearch.o: asearch.cpp.o +.PHONY : asearch.o + +# target to build an object file +asearch.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.o +.PHONY : asearch.cpp.o + +asearch.i: asearch.cpp.i +.PHONY : asearch.i + +# target to preprocess a source file +asearch.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.i +.PHONY : asearch.cpp.i + +asearch.s: asearch.cpp.s +.PHONY : asearch.s + +# target to generate assembly for a file +asearch.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.s +.PHONY : asearch.cpp.s + +astar.o: astar.cpp.o +.PHONY : astar.o + +# target to build an object file +astar.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.o +.PHONY : astar.cpp.o + +astar.i: astar.cpp.i +.PHONY : astar.i + +# target to preprocess a source file +astar.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.i +.PHONY : astar.cpp.i + +astar.s: astar.cpp.s +.PHONY : astar.s + +# target to generate assembly for a file +astar.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.s +.PHONY : astar.cpp.s + +config.o: config.cpp.o +.PHONY : config.o + +# target to build an object file +config.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.o +.PHONY : config.cpp.o + +config.i: config.cpp.i +.PHONY : config.i + +# target to preprocess a source file +config.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.i +.PHONY : config.cpp.i + +config.s: config.cpp.s +.PHONY : config.s + +# target to generate assembly for a file +config.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.s +.PHONY : config.cpp.s + +environmentoptions.o: environmentoptions.cpp.o +.PHONY : environmentoptions.o + +# target to build an object file +environmentoptions.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o +.PHONY : environmentoptions.cpp.o + +environmentoptions.i: environmentoptions.cpp.i +.PHONY : environmentoptions.i + +# target to preprocess a source file +environmentoptions.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i +.PHONY : environmentoptions.cpp.i + +environmentoptions.s: environmentoptions.cpp.s +.PHONY : environmentoptions.s + +# target to generate assembly for a file +environmentoptions.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s +.PHONY : environmentoptions.cpp.s + +isearch.o: isearch.cpp.o +.PHONY : isearch.o + +# target to build an object file +isearch.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.o +.PHONY : isearch.cpp.o + +isearch.i: isearch.cpp.i +.PHONY : isearch.i + +# target to preprocess a source file +isearch.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.i +.PHONY : isearch.cpp.i + +isearch.s: isearch.cpp.s +.PHONY : isearch.s + +# target to generate assembly for a file +isearch.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.s +.PHONY : isearch.cpp.s + +map.o: map.cpp.o +.PHONY : map.o + +# target to build an object file +map.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.o +.PHONY : map.cpp.o + +map.i: map.cpp.i +.PHONY : map.i + +# target to preprocess a source file +map.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.i +.PHONY : map.cpp.i + +map.s: map.cpp.s +.PHONY : map.s + +# target to generate assembly for a file +map.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.s +.PHONY : map.cpp.s + +mission.o: mission.cpp.o +.PHONY : mission.o + +# target to build an object file +mission.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.o +.PHONY : mission.cpp.o + +mission.i: mission.cpp.i +.PHONY : mission.i + +# target to preprocess a source file +mission.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.i +.PHONY : mission.cpp.i + +mission.s: mission.cpp.s +.PHONY : mission.s + +# target to generate assembly for a file +mission.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.s +.PHONY : mission.cpp.s + +path_smoothing.o: path_smoothing.cpp.o +.PHONY : path_smoothing.o + +# target to build an object file +path_smoothing.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o +.PHONY : path_smoothing.cpp.o + +path_smoothing.i: path_smoothing.cpp.i +.PHONY : path_smoothing.i + +# target to preprocess a source file +path_smoothing.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i +.PHONY : path_smoothing.cpp.i + +path_smoothing.s: path_smoothing.cpp.s +.PHONY : path_smoothing.s + +# target to generate assembly for a file +path_smoothing.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s +.PHONY : path_smoothing.cpp.s + +python_bindings.o: python_bindings.cpp.o +.PHONY : python_bindings.o + +# target to build an object file +python_bindings.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.o +.PHONY : python_bindings.cpp.o + +python_bindings.i: python_bindings.cpp.i +.PHONY : python_bindings.i + +# target to preprocess a source file +python_bindings.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.i +.PHONY : python_bindings.cpp.i + +python_bindings.s: python_bindings.cpp.s +.PHONY : python_bindings.s + +# target to generate assembly for a file +python_bindings.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.s +.PHONY : python_bindings.cpp.s + +theta.o: theta.cpp.o +.PHONY : theta.o + +# target to build an object file +theta.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.o +.PHONY : theta.cpp.o + +theta.i: theta.cpp.i +.PHONY : theta.i + +# target to preprocess a source file +theta.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.i +.PHONY : theta.cpp.i + +theta.s: theta.cpp.s +.PHONY : theta.s + +# target to generate assembly for a file +theta.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.s +.PHONY : theta.cpp.s + +tinyxml2.o: tinyxml2.cpp.o +.PHONY : tinyxml2.o + +# target to build an object file +tinyxml2.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o +.PHONY : tinyxml2.cpp.o + +tinyxml2.i: tinyxml2.cpp.i +.PHONY : tinyxml2.i + +# target to preprocess a source file +tinyxml2.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i +.PHONY : tinyxml2.cpp.i + +tinyxml2.s: tinyxml2.cpp.s +.PHONY : tinyxml2.s + +# target to generate assembly for a file +tinyxml2.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s +.PHONY : tinyxml2.cpp.s + +wrapper.o: wrapper.cpp.o +.PHONY : wrapper.o + +# target to build an object file +wrapper.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.o +.PHONY : wrapper.cpp.o + +wrapper.i: wrapper.cpp.i +.PHONY : wrapper.i + +# target to preprocess a source file +wrapper.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.i +.PHONY : wrapper.cpp.i + +wrapper.s: wrapper.cpp.s +.PHONY : wrapper.s + +# target to generate assembly for a file +wrapper.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.s +.PHONY : wrapper.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... rebuild_cache" + @echo "... planner_cpp" + @echo "... asearch.o" + @echo "... asearch.i" + @echo "... asearch.s" + @echo "... astar.o" + @echo "... astar.i" + @echo "... astar.s" + @echo "... config.o" + @echo "... config.i" + @echo "... config.s" + @echo "... environmentoptions.o" + @echo "... environmentoptions.i" + @echo "... environmentoptions.s" + @echo "... isearch.o" + @echo "... isearch.i" + @echo "... isearch.s" + @echo "... map.o" + @echo "... map.i" + @echo "... map.s" + @echo "... mission.o" + @echo "... mission.i" + @echo "... mission.s" + @echo "... path_smoothing.o" + @echo "... path_smoothing.i" + @echo "... path_smoothing.s" + @echo "... python_bindings.o" + @echo "... python_bindings.i" + @echo "... python_bindings.s" + @echo "... theta.o" + @echo "... theta.i" + @echo "... theta.s" + @echo "... tinyxml2.o" + @echo "... tinyxml2.i" + @echo "... tinyxml2.s" + @echo "... wrapper.o" + @echo "... wrapper.i" + @echo "... wrapper.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system diff --git a/build/cmake_install.cmake b/build/cmake_install.cmake new file mode 100644 index 0000000..ab209a3 --- /dev/null +++ b/build/cmake_install.cmake @@ -0,0 +1,54 @@ +# Install script for directory: /app/src + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/app/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/build/planner_cpp.cpython-312-x86_64-linux-gnu.so b/build/planner_cpp.cpython-312-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..21a97aa74fdc9c808bd8cfa7a1e74cd1d68de43e GIT binary patch literal 370584 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

>xVY@39Gt~ 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 R4uASn{o->hs3B#y?tc_8_!R&E literal 0 HcmV?d00001 diff --git a/example.py b/example.py new file mode 100644 index 0000000..e48c288 --- /dev/null +++ b/example.py @@ -0,0 +1,118 @@ +import sys +import os + +# Add the build directory to the Python path so it can find planner_cpp. +# This assumes the script is run from the root of the project and the build +# directory is 'build' or 'build/Debug' or 'build/Release' etc. +# A more robust solution for distribution would be a proper setup.py install. + +# Try to find the module in common build directory locations +module_found = False +build_dir_candidates = [ + 'build', + 'build/Debug', + 'build/Release', + 'build/RelWithDebInfo', + 'build/MinSizeRel', + # For multi-config generators like Visual Studio, pybind11 often places + # the .pyd file in a subdirectory matching the configuration within the + # main Python extension directory (e.g., build/lib.win-amd64-3.8/Debug) + # This simple path addition might not be enough for all CMake generators/platforms. + # Users might need to set PYTHONPATH or copy the module manually. +] + +# Add current directory in case the module is placed there by some build systems +# or for manual placement. +sys.path.insert(0, os.path.abspath(".")) + + +for candidate_dir in build_dir_candidates: + # Construct path relative to this script's location (project root) + abs_candidate_dir = os.path.abspath(candidate_dir) + if os.path.isdir(abs_candidate_dir): + sys.path.insert(0, abs_candidate_dir) + # Also check common pybind11 output subdirectories (e.g., for Windows) + # Example: build/Debug/planner_cpp.pyd or build/planner_cpp.pyd + # pybind11 might also place it in a subfolder like 'Release' inside the build dir. + # This is a simplified search. + +try: + import planner_cpp + module_found = True +except ImportError as e: + print(f"Error importing planner_cpp: {e}") + print("Please ensure that planner_cpp module is built and either:") + print("1. The script is run from a directory where Python can find it (e.g., build directory after CMake).") + print("2. The build directory (e.g., 'build' or 'build/Release') is in your PYTHONPATH.") + print(f"Current sys.path: {sys.path}") + exit(1) + +def main(): + print("Successfully imported planner_cpp module.") + + # Example Usage + origin = [0.0, 0.0] # Map origin (meters) + dim = [10, 10] # Map dimensions [height, width] (cells) + resolution = 0.1 # Map resolution (meters/cell) + + # Create a simple map: 10x10 grid + # 0 = free, 1 = obstacle + # Flattened row-major order + map_data = [0] * (dim[0] * dim[1]) + + # Add some obstacles + # map_data[index] where index = row * width + col + # Example: place an obstacle at (row=1, col=2) -> 1 * 10 + 2 = 12 + if dim[0] > 1 and dim[1] > 2: map_data[1 * dim[1] + 2] = 1 + if dim[0] > 2 and dim[1] > 2: map_data[2 * dim[1] + 2] = 1 + if dim[0] > 3 and dim[1] > 2: map_data[3 * dim[1] + 2] = 1 + if dim[0] > 4 and dim[1] > 2: map_data[4 * dim[1] + 2] = 1 + if dim[0] > 5 and dim[1] > 2: map_data[5 * dim[1] + 2] = 1 # Wall + + # Start and Goal in meters + start_m = [0.05, 0.05] # Cell (0,0) + goal_m = [0.85, 0.85] # Cell (8,8) + + print(f"Map Origin: {origin}") + print(f"Map Dimensions (cells): {dim}") + print(f"Map Resolution: {resolution} m/cell") + print(f"Start (meters): {start_m}") + print(f"Goal (meters): {goal_m}") + # print(f"Map Data (first 20 elements): {map_data[:20]}...") # Uncomment to see part of the map + + # Plan using A* + print("\nPlanning with A*...") + use_theta_star_false = False + status_astar, path_astar, time_astar = planner_cpp.plan_2d( + origin, dim, map_data, start_m, goal_m, resolution, use_theta_star_false + ) + + if status_astar == 0: + print("A* Path Found Successfully!") + print(f" Path: {path_astar}") + print(f" Time spent: {time_astar:.4f} ms") + else: + print("A* Failed to find a path.") + print(f" Status code: {status_astar}") + print(f" Time spent: {time_astar:.4f} ms") + + + # Plan using Theta* + print("\nPlanning with Theta*...") + use_theta_star_true = True + status_theta, path_theta, time_theta = planner_cpp.plan_2d( + origin, dim, map_data, start_m, goal_m, resolution, use_theta_star_true + ) + + if status_theta == 0: + print("Theta* Path Found Successfully!") + print(f" Path: {path_theta}") + print(f" Time spent: {time_theta:.4f} ms") + else: + print("Theta* Failed to find a path.") + print(f" Status code: {status_theta}") + print(f" Time spent: {time_theta:.4f} ms") + + +if __name__ == "__main__": + main() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 147b57d..e3eb93f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,28 +1,106 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.1) # pybind11 prefers a slightly newer version, 2.8 might be too old. project(AStar-ThetaStar) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O2 -Wall -Wextra") +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD_REQUIRED True) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall -Wextra") + +# Find pybind11 - more robust method for pip-installed pybind11 +# First, ensure Python is found to get its executable. +find_package(PythonInterp REQUIRED) # Ensures PYTHON_EXECUTABLE is set + +execute_process( + COMMAND "${PYTHON_EXECUTABLE}" -c "import pybind11; print(pybind11.get_cmake_dir())" + OUTPUT_VARIABLE pybind11_cmake_dir + RESULT_VARIABLE pybind11_get_cmake_dir_result + OUTPUT_STRIP_TRAILING_WHITESPACE +) + +if(NOT pybind11_get_cmake_dir_result EQUAL 0) + message(FATAL_ERROR "Failed to execute Python to get pybind11 CMake directory. Ensure pybind11 is installed in the Python environment being used by CMake (PYTHON_EXECUTABLE=${PYTHON_EXECUTABLE}).") +endif() + +if(NOT EXISTS "${pybind11_cmake_dir}/pybind11Config.cmake" AND NOT EXISTS "${pybind11_cmake_dir}/pybind11-config.cmake") + message(WARNING "pybind11Config.cmake or pybind11-config.cmake not found in directory reported by pybind11.get_cmake_dir(): ${pybind11_cmake_dir}. Trying find_package directly, but it might fail.") + find_package(pybind11 REQUIRED) # Fallback to direct find_package +else() + # Add the found directory to CMAKE_PREFIX_PATH so find_package can use it + list(APPEND CMAKE_PREFIX_PATH "${pybind11_cmake_dir}") + message(STATUS "Found pybind11 CMake directory: ${pybind11_cmake_dir}. Added to CMAKE_PREFIX_PATH.") + find_package(pybind11 REQUIRED) +endif() + + set(SOURCE_FILES asearch.cpp - config.h + # config.h # Headers usually not listed directly + config.cpp # ensure config.cpp is also present environmentoptions.cpp - mission.cpp - searchresult.h + mission.cpp # Added mission.cpp + # mission.h # Headers usually not listed directly + # searchresult.h # Headers usually not listed directly astar.cpp - environmentoptions.h + # environmentoptions.h # Headers usually not listed directly isearch.cpp map.cpp - mission.h + # mission.h # Headers usually not listed directly (duplicate) theta.cpp - astar.h + # astar.h # Headers usually not listed directly config.cpp - gl_const.h - isearch.h - map.h - node.h - theta.h - path_smoothing.h + # gl_const.h # Headers usually not listed directly + # isearch.h # Headers usually not listed directly + # map.h # Headers usually not listed directly + # node.h # Headers usually not listed directly + # theta.h # Headers usually not listed directly + # path_smoothing.h # Headers usually not listed directly path_smoothing.cpp - tinyxml2.h + # tinyxml2.h # Headers usually not listed directly tinyxml2.cpp + wrapper.cpp # Added wrapper.cpp + python_bindings.cpp # Added python_bindings.cpp ) -add_executable(AStar-ThetaStar ${SOURCE_FILES}) \ No newline at end of file + +add_library(planner_cpp SHARED ${SOURCE_FILES}) + +# Link pybind11 +target_link_libraries(planner_cpp PRIVATE pybind11::module) + +# Ensure the library is placed in a location where Python can find it, +# or provide instructions to the user to add the build directory to PYTHONPATH. +# For simplicity, CMake will build it in the build directory. + +# Optional: Define a module name that Python expects, if different from target name. +# By default, pybind11 creates a module based on the target name. +# On Linux, it will be planner_cpp.so, on Windows planner_cpp.pyd. +# pybind11_add_module(planner_cpp_py ${SOURCE_FILES} src/python_bindings.cpp) # Example if using pybind11_add_module + +# Include directories (important for CMake to find headers) +target_include_directories(planner_cpp PUBLIC ../include) # Make headers in 'include' available +# pybind11::module should handle its own include directories when linked. + +# Get Python's extension suffix (e.g., .cpython-38-x86_64-linux-gnu.so or .pyd on Windows) +execute_process( + COMMAND "${PYTHON_EXECUTABLE}" -c "import sysconfig; suffix = sysconfig.get_config_var('EXT_SUFFIX'); print(suffix if suffix is not None else sysconfig.get_config_var('SO'))" + OUTPUT_VARIABLE PYTHON_EXT_SUFFIX + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE PYTHON_EXT_SUFFIX_RESULT +) + +if(NOT PYTHON_EXT_SUFFIX_RESULT EQUAL 0 OR NOT PYTHON_EXT_SUFFIX) + message(WARNING "Could not determine Python extension suffix automatically.") + if(WIN32) + set(PYTHON_EXT_SUFFIX ".pyd") + message(STATUS "Defaulting Python extension suffix to .pyd for Windows.") + else() + set(PYTHON_EXT_SUFFIX ".so") + message(STATUS "Defaulting Python extension suffix to .so for non-Windows.") + endif() +else() + message(STATUS "Determined Python extension suffix: ${PYTHON_EXT_SUFFIX}") +endif() + +# Set the output name and suffix for the Python module +set_target_properties(planner_cpp PROPERTIES + PREFIX "" # No 'lib' prefix for Python modules + LIBRARY_OUTPUT_NAME "planner_cpp" # Output name + SUFFIX "${PYTHON_EXT_SUFFIX}" # Suffix like .cpython-XYZ.so or .pyd +) \ No newline at end of file diff --git a/src/config.cpp b/src/config.cpp index 43bfb78..744fc56 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -36,7 +36,7 @@ void Config::setConfig(int st, double hw, int mt, int bt, int ad, int cc, int as // Set a parameter by tag name (as in gl_const.h) and string value (for bools and enums) bool Config::setParamByTag(const std::string& tag, const std::string& value) { - if (!SearchParams) setDefaults(); + if (!SearchParams) setDefaultConfigAstar(); // Initialize with A* defaults if not already initialized std::string v = value; std::transform(v.begin(), v.end(), v.begin(), ::tolower); if (tag == CNS_TAG_ST) { @@ -79,7 +79,7 @@ bool Config::setParamByTag(const std::string& tag, const std::string& value) // Set a parameter by tag name and double value (for numeric params) bool Config::setParamByTag(const std::string& tag, double value) { - if (!SearchParams) setDefaults(); + if (!SearchParams) setDefaultConfigAstar(); // Initialize with A* defaults if not already initialized if (tag == CNS_TAG_HW) { if (value < 1) value = 1; SearchParams[CN_SP_HW] = value; diff --git a/src/mission.cpp b/src/mission.cpp index 701189f..5ae108a 100644 --- a/src/mission.cpp +++ b/src/mission.cpp @@ -82,11 +82,13 @@ void Mission::getPath(std::vector> &path) point.push_back(it->i); path.push_back(point); } - // we also need to insert the end point - std::vector endPoint; - endPoint.push_back(sr.end.j); - endPoint.push_back(sr.end.i); - path.push_back(endPoint); + // The sr.lppath should already contain all nodes from start to goal. + // The following lines attempting to add sr.end are removed as SearchResult has no 'end' member + // and lppath is expected to be complete. + // std::vector endPoint; + // endPoint.push_back(sr.end.j); + // endPoint.push_back(sr.end.i); + // path.push_back(endPoint); } } diff --git a/src/python_bindings.cpp b/src/python_bindings.cpp new file mode 100644 index 0000000..da29a13 --- /dev/null +++ b/src/python_bindings.cpp @@ -0,0 +1,58 @@ +#include +#include // For automatic conversion of std::vector +#include "wrapper.h" // Contains the declaration of plan_2d +#include // For std::tuple + +namespace py = pybind11; + +PYBIND11_MODULE(planner_cpp, m) { + m.doc() = R"pbdoc( + Python module for A* and Theta* path planning + --------------------------------------------- + .. currentmodule:: planner_cpp + .. autosummary:: + :toctree: _generate + plan_2d + )pbdoc"; + + m.def("plan_2d", + [](std::vector &origin, std::vector &dim, std::vector &map_data, std::vector &start, std::vector &goal, float resolution, bool use_theta) { + std::vector> path; + double time_spent = 0.0; + int status = ::plan_2d(origin, dim, map_data, start, goal, resolution, path, time_spent, use_theta); + return std::make_tuple(status, path, time_spent); + }, + py::arg("origin"), + py::arg("dim"), + py::arg("map_data"), + py::arg("start"), + py::arg("goal"), + py::arg("resolution"), + py::arg("use_theta"), + R"pbdoc( + Plans a 2D path using A* or Theta* algorithm. + + Args: + origin (list[float]): Origin of the map [x, y] in meters. + dim (list[int]): Dimensions of the map [height, width] in grid cells. + map_data (list[int]): Map data as a flattened list (row-major). 0 for free, 1 for obstacle. + Note: C++ expects signed char, Python will pass integers. + start (list[float]): Start coordinates [x, y] in meters. + goal (list[float]): Goal coordinates [x, y] in meters. + resolution (float): Map resolution in meters/cell. + use_theta (bool): If true, uses Theta*; otherwise, uses A*. + + Returns: + tuple[int, list[list[float]], float]: A tuple containing: + - status (int): 0 if successful, -1 otherwise. + - path (list[list[float]]): The calculated path, a list of [x,y] coordinates. + - time_spent (float): The time spent in planning (in milliseconds). + )pbdoc" + ); + +#ifdef VERSION_INFO + m.attr("__version__") = VERSION_INFO; +#else + m.attr("__version__") = "dev"; +#endif +} diff --git a/src/wrapper.cpp b/src/wrapper.cpp index 515486b..e4a2ade 100644 --- a/src/wrapper.cpp +++ b/src/wrapper.cpp @@ -2,7 +2,7 @@ #include #include "wrapper.h" -using namespace JPS; +// using namespace JPS; // Removed as JPS namespace is not defined or used by plan_2d related components class Timer { typedef std::chrono::high_resolution_clock high_resolution_clock; From 837dba5d510657af3cf848b5e511d9c3eb64e05a Mon Sep 17 00:00:00 2001 From: xh Date: Fri, 11 Jul 2025 10:54:21 +0800 Subject: [PATCH 5/8] remove build temporary files. --- README.md | 53 +- build/CMakeCache.txt | 418 --------- build/CMakeFiles/3.28.3/CMakeCCompiler.cmake | 74 -- .../CMakeFiles/3.28.3/CMakeCXXCompiler.cmake | 85 -- .../3.28.3/CMakeDetermineCompilerABI_C.bin | Bin 15968 -> 0 bytes .../3.28.3/CMakeDetermineCompilerABI_CXX.bin | Bin 15992 -> 0 bytes build/CMakeFiles/3.28.3/CMakeSystem.cmake | 15 - .../3.28.3/CompilerIdC/CMakeCCompilerId.c | 880 ------------------ build/CMakeFiles/3.28.3/CompilerIdC/a.out | Bin 16088 -> 0 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 869 ----------------- build/CMakeFiles/3.28.3/CompilerIdCXX/a.out | Bin 16096 -> 0 bytes build/CMakeFiles/CMakeConfigureLog.yaml | 565 ----------- .../CMakeDirectoryInformation.cmake | 16 - build/CMakeFiles/Makefile.cmake | 146 --- build/CMakeFiles/Makefile2 | 111 --- build/CMakeFiles/TargetDirectories.txt | 3 - build/CMakeFiles/cmake.check_cache | 1 - .../planner_cpp.dir/DependInfo.cmake | 34 - .../CMakeFiles/planner_cpp.dir/asearch.cpp.o | Bin 14248 -> 0 bytes .../planner_cpp.dir/asearch.cpp.o.d | 189 ---- build/CMakeFiles/planner_cpp.dir/astar.cpp.o | Bin 5104 -> 0 bytes .../CMakeFiles/planner_cpp.dir/astar.cpp.o.d | 188 ---- build/CMakeFiles/planner_cpp.dir/build.make | 285 ------ .../planner_cpp.dir/cmake_clean.cmake | 33 - .../planner_cpp.dir/compiler_depend.make | 2 - .../planner_cpp.dir/compiler_depend.ts | 2 - build/CMakeFiles/planner_cpp.dir/config.cpp.o | Bin 34320 -> 0 bytes .../CMakeFiles/planner_cpp.dir/config.cpp.o.d | 187 ---- build/CMakeFiles/planner_cpp.dir/depend.make | 2 - .../planner_cpp.dir/environmentoptions.cpp.o | Bin 1488 -> 0 bytes .../environmentoptions.cpp.o.d | 3 - build/CMakeFiles/planner_cpp.dir/flags.make | 9 - .../CMakeFiles/planner_cpp.dir/isearch.cpp.o | Bin 17600 -> 0 bytes .../planner_cpp.dir/isearch.cpp.o.d | 195 ---- build/CMakeFiles/planner_cpp.dir/link.txt | 1 - build/CMakeFiles/planner_cpp.dir/map.cpp.o | Bin 5320 -> 0 bytes build/CMakeFiles/planner_cpp.dir/map.cpp.o.d | 164 ---- .../CMakeFiles/planner_cpp.dir/mission.cpp.o | Bin 16648 -> 0 bytes .../planner_cpp.dir/mission.cpp.o.d | 190 ---- .../planner_cpp.dir/path_smoothing.cpp.o | Bin 6224 -> 0 bytes .../planner_cpp.dir/path_smoothing.cpp.o.d | 189 ---- .../CMakeFiles/planner_cpp.dir/progress.make | 13 - .../planner_cpp.dir/python_bindings.cpp.o | Bin 307752 -> 0 bytes .../planner_cpp.dir/python_bindings.cpp.o.d | 398 -------- build/CMakeFiles/planner_cpp.dir/theta.cpp.o | Bin 7408 -> 0 bytes .../CMakeFiles/planner_cpp.dir/theta.cpp.o.d | 189 ---- .../CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o | Bin 122448 -> 0 bytes .../planner_cpp.dir/tinyxml2.cpp.o.d | 84 -- .../CMakeFiles/planner_cpp.dir/wrapper.cpp.o | Bin 11392 -> 0 bytes .../planner_cpp.dir/wrapper.cpp.o.d | 196 ---- build/CMakeFiles/progress.marks | 1 - build/Makefile | 477 ---------- build/cmake_install.cmake | 54 -- ...lanner_cpp.cpython-312-x86_64-linux-gnu.so | Bin 370584 -> 0 bytes src/CMakeLists.txt | 14 +- src/python_bindings.cpp | 4 +- src/wrapper.cpp | 2 + 57 files changed, 16 insertions(+), 6325 deletions(-) delete mode 100644 build/CMakeCache.txt delete mode 100644 build/CMakeFiles/3.28.3/CMakeCCompiler.cmake delete mode 100644 build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake delete mode 100755 build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin delete mode 100755 build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin delete mode 100644 build/CMakeFiles/3.28.3/CMakeSystem.cmake delete mode 100644 build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c delete mode 100755 build/CMakeFiles/3.28.3/CompilerIdC/a.out delete mode 100644 build/CMakeFiles/3.28.3/CompilerIdCXX/CMakeCXXCompilerId.cpp delete mode 100755 build/CMakeFiles/3.28.3/CompilerIdCXX/a.out delete mode 100644 build/CMakeFiles/CMakeConfigureLog.yaml delete mode 100644 build/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 build/CMakeFiles/Makefile.cmake delete mode 100644 build/CMakeFiles/Makefile2 delete mode 100644 build/CMakeFiles/TargetDirectories.txt delete mode 100644 build/CMakeFiles/cmake.check_cache delete mode 100644 build/CMakeFiles/planner_cpp.dir/DependInfo.cmake delete mode 100644 build/CMakeFiles/planner_cpp.dir/asearch.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/astar.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/astar.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/build.make delete mode 100644 build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake delete mode 100644 build/CMakeFiles/planner_cpp.dir/compiler_depend.make delete mode 100644 build/CMakeFiles/planner_cpp.dir/compiler_depend.ts delete mode 100644 build/CMakeFiles/planner_cpp.dir/config.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/config.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/depend.make delete mode 100644 build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/flags.make delete mode 100644 build/CMakeFiles/planner_cpp.dir/isearch.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/isearch.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/link.txt delete mode 100644 build/CMakeFiles/planner_cpp.dir/map.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/map.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/mission.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/progress.make delete mode 100644 build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/theta.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d delete mode 100644 build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o delete mode 100644 build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d delete mode 100644 build/CMakeFiles/progress.marks delete mode 100644 build/Makefile delete mode 100644 build/cmake_install.cmake delete mode 100755 build/planner_cpp.cpython-312-x86_64-linux-gnu.so diff --git a/README.md b/README.md index a9e508c..9f64bab 100644 --- a/README.md +++ b/README.md @@ -1,58 +1,15 @@ -# AStar-JPS-ThetaStar +# AStar-ThetaStar Basic algorithms for single-shot grid-based 2D path finding. Single-shot means that the algorithms are tailored to answering a single pathfinding query (as opposed to other pathfinders that are suited to solving sequences of alike queries, e.g. queries on the same map but with different start and goal locations). -Grid-based means that a (regular square) grid is an essential part of the input. We follow center-based assumption which implies that distinct agent's locations are tied to the centers of the traversable cells (not to the corners). +Grid-based means that a (regular square) grid is an essential part of the input. We follow center-based assumption which implies that distinct agent's locations are tied to the centers of the traversable cells (not to the corners). Description ========== This project contains implementations of the following algorithms: -- Breadth First Search -- Dijkstra's algorithm - A* - Theta* -- Jump Point Search (JPS) - -Build and Launch -================ -To build the project you can use QMake (part of QT toolchain) or CMake. Both .pro and CMakeLists files are available in the repo. -Please note that the code relies on C++11 standart. Make sure that your compiler supports it. -The project does not use any external libraries (except tinyXML which is linked at the source level) and is meant to be cross-platform. - -To launch the compiled file and get a result you need to pass a correct input XML-file (see below) as the first (command line) argument. This file encodes all the information about path finding instance (map, start, goal, algorithm's options etc.). - -If the input is correct you'll see the result in the console. Detailed XML log-file will also be created by default. If you choose not to create output XML you can alter the input XML following the instructions given below. - -Input and Output files -====================== -Both files are XML files of a specific structure. -Input file should contain: ->- Mandatory tag \. It describes the environment. - * **\** and **\** - mandatory tags that define size of the map. Origin is in the upper left corner. (0,0) - is upper left, (*width*-1, *height*-1) is lower right. - * **\** and **\** - mandatory tags that define horizontal (X) and vertical (Y) offset of the start location from the upper left corner. Legal values for *startx* are [0, .., *width*-1], for *starty* - [0, .., *height*-1]. - * **\** and **\** - mandatory tags that define horizontal (X) and vertical (Y) offset of the goal location. - * **\** - mandatory tag that describes the square grid constituting the map. It consists of **\** tags. Each **\** contains a sequence of "0" and "1" separated by blanks. "0" stands for traversable cell, "1" - for untraversable (actually any other figure but "0" can be used instead of "1"). - * **\** - optional tag that defines the size of one cell. One might add it to calculate scaled length of the path. - * **\**, **\<URL>**, **\<coordinates>**, etc - optional tags containing additional information on the map. ->- Mandatory tag <b>\<algorithm></b>. It describes the parameters of the algorithm. - * **\<searchtype>** - mandatory tag that defines which algorithm will be used for pathfinding. Possible values - "astar", "theta", "jp_search", "bfs", "dijkstra". - * **\<metrictype>** - defines the type of metric for heuristic function. Possible values - "euclid", "diagonal", "manhattan", "chebyshev". Default value is "euclid". Please note that the lenghs of the actual moves (not the heuristic to goal) are always counted with Euclid metrics, e.g. the length of the move between two cardinally adjacent cells is 1, the length of the move between two diagonally adjacent cells is sqrt(2) etc. - * **\<hweight>** - defines the weight of the heuristic function. Should be real number greater or equal 1. Default value is "1". - * **\<breakingties>** - defines the priority in OPEN list for nodes with equal f-values. Possible values - "g-min" (break ties in favor of the node with smaller g-value), "g-max" (break ties in favor of the node with greater g-value). Default value is "g-max". - * **\<allowdiagonal>** - boolean tag that allows/prohibits diagonal moves. Default value is "true". Setting it to "false" restricts the agent to make cardinal (horizonal, vertical) moves only. If Theta* algorithm is used only cardinal successors will be generated during expansion of the current node, but after resetting parent the resultant move will probably violate this restriction. - * **\<cutcorners>** - boolean tag that defines the possibilty to make diagonal moves when one adjacent cell is untraversable. The tag is ignored if diagonal moves are not allowed. Default value is "false". - * **\<allowsqueeze>** - boolean tag that defines the possibility to make diagonal moves when both adjacent cells are untraversable. The tag is ignored if cutting corners is not allowed. Default value is "false". - * **\<postsmoothing>** - boolean tag that allows to start the path smoothing procedure after pathfinding was ended. The tag is ignored if Theta* algorithm was chosen. Default value is "false". ->- Optional tag <b>\<options></b>. Options that are not related to search. - * **\<loglevel>** - defines the level of detalization of log-file. Default value is "1". Possible values: - * "0" or "none" - log-file is not created. - * "0.5" or "tiny" - All the input data is copied to the log-file plus short **\<summary>** is appended. **\<summary>** contains info of the path length, number of steps, elapsed time, etc. - * "1" or "short" - *0.5*-log plus **\<path>** is appended. It looks like **\<grid>** but cells forming the path are marked by "\*" instead of "0". The following tags are also appended: **\<hplevel>** and **\<lplevel>**. **\<lplevel>** is the sequence of coordinates of cells forming the path (in case Theta* planner is used, this sequence is formed at post-processing step by invoking sequantually line-of-sight procedure on path's segments). **\<hplevel>** is the sequence of sections forming the path (in case planner other from Theta* is used, sections are formed at post-processing step using naive procedure). - * "1.5" or "medium" - *1*-log plus the information (explicit enumeration) on last iteration's OPEN and CLOSE lists. - * "2" or "full" - *1*-log plus OPEN and CLOSE lists are written into the log-file after each step of the algorithm. Can make log-files really huge. - * **\<logpath>** - defines the directory where the log-file should be written. If not specified directory of the input file is used. - * **\<logname>** - defines the name of log-file. If not specified the name of the log file is: "input file name"+"_log"+input file extension. Python Wrapper ============== @@ -74,7 +31,7 @@ Prerequisites Building the Python Module -------------------------- -The Python module `planner_cpp` is built using CMake. +The Python module `ThetaStarPlanner` is built using CMake. 1. **Navigate to the project root directory** (the one containing this README). 2. **Create a build directory and navigate into it:** @@ -107,7 +64,7 @@ The Python module `planner_cpp` is built using CMake. mingw32-make ``` - After a successful build, you should find the Python module file (e.g., `planner_cpp.cpython-38-x86_64-linux-gnu.so` on Linux, `planner_cpp.cp38-win_amd64.pyd` on Windows) inside the `build` directory (or a subdirectory like `build/Release` depending on your CMake generator and build type). + After a successful build, you should find the Python module file (e.g., `ThetaStarPlanner.cpython-38-x86_64-linux-gnu.so` on Linux, `ThetaStarPlanner.cp38-win_amd64.pyd` on Windows) inside the `build` directory (or a subdirectory like `build/Release` depending on your CMake generator and build type). Running the Example ------------------- @@ -130,7 +87,7 @@ Using the Wrapper in Your Own Python Code 2. Import the module and use the `plan_2d` function: ```python -import planner_cpp # Or ensure the .so/.pyd file is in your PYTHONPATH +import ThetaStarPlanner # Or ensure the .so/.pyd file is in your PYTHONPATH origin = [0.0, 0.0] dim = [100, 100] # height, width diff --git a/build/CMakeCache.txt b/build/CMakeCache.txt deleted file mode 100644 index 8bb3c4f..0000000 --- a/build/CMakeCache.txt +++ /dev/null @@ -1,418 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /app/build -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Value Computed by CMake -AStar-ThetaStar_BINARY_DIR:STATIC=/app/build - -//Value Computed by CMake -AStar-ThetaStar_IS_TOP_LEVEL:STATIC=ON - -//Value Computed by CMake -AStar-ThetaStar_SOURCE_DIR:STATIC=/app/src - -//Path to a program. -CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//Choose the type of build, options are: None Debug Release RelWithDebInfo -// MinSizeRel ... -CMAKE_BUILD_TYPE:STRING= - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-13 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-13 - -//Flags used by the CXX compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the CXX compiler during DEBUG builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the CXX compiler during MINSIZEREL builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the CXX compiler during RELEASE builds. -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the CXX compiler during RELWITHDEBINFO builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//C compiler -CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-13 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-13 - -//Flags used by the C compiler during all build types. -CMAKE_C_FLAGS:STRING= - -//Flags used by the C compiler during DEBUG builds. -CMAKE_C_FLAGS_DEBUG:STRING=-g - -//Flags used by the C compiler during MINSIZEREL builds. -CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the C compiler during RELEASE builds. -CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the C compiler during RELWITHDEBINFO builds. -CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Path to a program. -CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND - -//Flags used by the linker during all build types. -CMAKE_EXE_LINKER_FLAGS:STRING= - -//Flags used by the linker during DEBUG builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during MINSIZEREL builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during RELEASE builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during RELWITHDEBINFO builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= - -//Value Computed by CMake. -CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/app/build/CMakeFiles/pkgRedirects - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake - -//Flags used by the linker during the creation of modules during -// all build types. -CMAKE_MODULE_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of modules during -// DEBUG builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of modules during -// MINSIZEREL builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of modules during -// RELEASE builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of modules during -// RELWITHDEBINFO builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_DESCRIPTION:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_HOMEPAGE_URL:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=AStar-ThetaStar - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Path to a program. -CMAKE_READELF:FILEPATH=/usr/bin/readelf - -//Flags used by the linker during the creation of shared libraries -// during all build types. -CMAKE_SHARED_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of shared libraries -// during DEBUG builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of shared libraries -// during MINSIZEREL builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELEASE builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELWITHDEBINFO builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries -// during all build types. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of static libraries -// during DEBUG builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of static libraries -// during MINSIZEREL builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELEASE builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELWITHDEBINFO builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//Path to a program. -CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -//Overwrite cached values read from Python library (classic search). -// Turn off if cross-compiling and manually setting these values. -PYBIND11_PYTHONLIBS_OVERWRITE:BOOL=ON - -//Python version to use for compiling modules -PYBIND11_PYTHON_VERSION:STRING= - -//Path to a program. -PYTHON_EXECUTABLE:FILEPATH=/home/jules/.pyenv/shims/python - -//Path to a library. -PYTHON_LIBRARY:FILEPATH=/home/jules/.pyenv/versions/3.12.11/lib/libpython3.12.so - -//The directory containing a CMake configuration file for pybind11. -pybind11_DIR:PATH=/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11 - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_ADDR2LINE -CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/app/build -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=28 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR -CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB -CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER -CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER_AR -CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB -CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS -CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG -CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL -CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE -CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO -CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_DLLTOOL -CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of external makefile project generator. -CMAKE_EXTRA_GENERATOR:INTERNAL= -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Generator instance identifier. -CMAKE_GENERATOR_INSTANCE:INTERNAL= -//Name of generator platform. -CMAKE_GENERATOR_PLATFORM:INTERNAL= -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Source directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/app/src -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//Platform information initialized -CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_READELF -CMAKE_READELF-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.28 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_TAPI -CMAKE_TAPI-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/usr/bin/uname -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 -//Details about finding PYTHON -FIND_PACKAGE_MESSAGE_DETAILS_PYTHON:INTERNAL=/home/jules/.pyenv/shims/python3.12.11 -//Details about finding PythonInterp -FIND_PACKAGE_MESSAGE_DETAILS_PythonInterp:INTERNAL=[/home/jules/.pyenv/shims/python][v3.12.11(3.7)] -//Test HAS_FLTO -HAS_FLTO:INTERNAL=1 -//ADVANCED property for variable: PYTHON_EXECUTABLE -PYTHON_EXECUTABLE-ADVANCED:INTERNAL=1 -PYTHON_INCLUDE_DIRS:INTERNAL=/home/jules/.pyenv/versions/3.12.11/include/python3.12 -PYTHON_IS_DEBUG:INTERNAL=0 -PYTHON_LIBRARIES:INTERNAL=/home/jules/.pyenv/versions/3.12.11/lib/libpython3.12.so -//ADVANCED property for variable: PYTHON_LIBRARY -PYTHON_LIBRARY-ADVANCED:INTERNAL=1 -PYTHON_MODULE_DEBUG_POSTFIX:INTERNAL= -PYTHON_MODULE_EXTENSION:INTERNAL=.cpython-312-x86_64-linux-gnu.so -PYTHON_MODULE_PREFIX:INTERNAL= -PYTHON_VERSION:INTERNAL=3.12.11 -PYTHON_VERSION_MAJOR:INTERNAL=3 -PYTHON_VERSION_MINOR:INTERNAL=12 -Python_ADDITIONAL_VERSIONS:INTERNAL=3.12;3.11;3.10;3.9;3.8;3.7 -//linker supports push/pop state -_CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE -_PYBIND11_CROSSCOMPILING:INTERNAL=OFF -_Python:INTERNAL=PYTHON -//Directories where pybind11 and possibly Python headers are located -pybind11_INCLUDE_DIRS:INTERNAL=/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include;/home/jules/.pyenv/versions/3.12.11/include/python3.12 diff --git a/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake b/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake deleted file mode 100644 index 3766fe1..0000000 --- a/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake +++ /dev/null @@ -1,74 +0,0 @@ -set(CMAKE_C_COMPILER "/usr/bin/cc") -set(CMAKE_C_COMPILER_ARG1 "") -set(CMAKE_C_COMPILER_ID "GNU") -set(CMAKE_C_COMPILER_VERSION "13.3.0") -set(CMAKE_C_COMPILER_VERSION_INTERNAL "") -set(CMAKE_C_COMPILER_WRAPPER "") -set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") -set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") -set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") -set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") -set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") -set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") -set(CMAKE_C17_COMPILE_FEATURES "c_std_17") -set(CMAKE_C23_COMPILE_FEATURES "c_std_23") - -set(CMAKE_C_PLATFORM_ID "Linux") -set(CMAKE_C_SIMULATE_ID "") -set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU") -set(CMAKE_C_SIMULATE_VERSION "") - - - - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-13") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-13") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_MT "") -set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND") -set(CMAKE_COMPILER_IS_GNUCC 1) -set(CMAKE_C_COMPILER_LOADED 1) -set(CMAKE_C_COMPILER_WORKS TRUE) -set(CMAKE_C_ABI_COMPILED TRUE) - -set(CMAKE_C_COMPILER_ENV_VAR "CC") - -set(CMAKE_C_COMPILER_ID_RUN 1) -set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) -set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) -set(CMAKE_C_LINKER_PREFERENCE 10) -set(CMAKE_C_LINKER_DEPFILE_SUPPORTED TRUE) - -# Save compiler ABI information. -set(CMAKE_C_SIZEOF_DATA_PTR "8") -set(CMAKE_C_COMPILER_ABI "ELF") -set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") -set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_C_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_C_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") -endif() - -if(CMAKE_C_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - -set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") -if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) - set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") -endif() - - - - - -set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") -set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s") -set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake b/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake deleted file mode 100644 index 8dbc9d3..0000000 --- a/build/CMakeFiles/3.28.3/CMakeCXXCompiler.cmake +++ /dev/null @@ -1,85 +0,0 @@ -set(CMAKE_CXX_COMPILER "/usr/bin/c++") -set(CMAKE_CXX_COMPILER_ARG1 "") -set(CMAKE_CXX_COMPILER_ID "GNU") -set(CMAKE_CXX_COMPILER_VERSION "13.3.0") -set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") -set(CMAKE_CXX_COMPILER_WRAPPER "") -set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") -set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") -set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") -set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") -set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") -set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") -set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") -set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") -set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") - -set(CMAKE_CXX_PLATFORM_ID "Linux") -set(CMAKE_CXX_SIMULATE_ID "") -set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU") -set(CMAKE_CXX_SIMULATE_VERSION "") - - - - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-13") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-13") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_MT "") -set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND") -set(CMAKE_COMPILER_IS_GNUCXX 1) -set(CMAKE_CXX_COMPILER_LOADED 1) -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_CXX_ABI_COMPILED TRUE) - -set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") - -set(CMAKE_CXX_COMPILER_ID_RUN 1) -set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m) -set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) - -foreach (lang C OBJC OBJCXX) - if (CMAKE_${lang}_COMPILER_ID_RUN) - foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) - list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) - endforeach() - endif() -endforeach() - -set(CMAKE_CXX_LINKER_PREFERENCE 30) -set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) -set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED TRUE) - -# Save compiler ABI information. -set(CMAKE_CXX_SIZEOF_DATA_PTR "8") -set(CMAKE_CXX_COMPILER_ABI "ELF") -set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") -set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_CXX_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_CXX_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") -endif() - -if(CMAKE_CXX_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - -set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") -if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) - set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") -endif() - - - - - -set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/13;/usr/include/x86_64-linux-gnu/c++/13;/usr/include/c++/13/backward;/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") -set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") -set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin b/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin deleted file mode 100755 index 87f287194a15f3106a57cf4ff4b57eba7b928fa6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15968 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 YfyTLCRf}uq+WaN>!veA}KnR%PpD9X5TL1t6 diff --git a/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin b/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_CXX.bin deleted file mode 100755 index 81abc267065a2e02b3405c31c62b55b5985377fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15992 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 M#{yF8BlxP~@1wCoegFUf diff --git a/build/CMakeFiles/3.28.3/CMakeSystem.cmake b/build/CMakeFiles/3.28.3/CMakeSystem.cmake deleted file mode 100644 index f047d2e..0000000 --- a/build/CMakeFiles/3.28.3/CMakeSystem.cmake +++ /dev/null @@ -1,15 +0,0 @@ -set(CMAKE_HOST_SYSTEM "Linux-6.8.0") -set(CMAKE_HOST_SYSTEM_NAME "Linux") -set(CMAKE_HOST_SYSTEM_VERSION "6.8.0") -set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") - - - -set(CMAKE_SYSTEM "Linux-6.8.0") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_SYSTEM_VERSION "6.8.0") -set(CMAKE_SYSTEM_PROCESSOR "x86_64") - -set(CMAKE_CROSSCOMPILING "FALSE") - -set(CMAKE_SYSTEM_LOADED 1) diff --git a/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c b/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c deleted file mode 100644 index 0a0ec9b..0000000 --- a/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c +++ /dev/null @@ -1,880 +0,0 @@ -#ifdef __cplusplus -# error "A C++ compiler has been selected for C." -#endif - -#if defined(__18CXX) -# define ID_VOID_MAIN -#endif -#if defined(__CLASSIC_C__) -/* cv-qualifiers did not exist in K&R C */ -# define const -# define volatile -#endif - -#if !defined(__has_include) -/* If the compiler does not have __has_include, pretend the answer is - always no. */ -# define __has_include(x) 0 -#endif - - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# if defined(__GNUC__) -# define SIMULATE_ID "GNU" -# endif - /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, - except that a few beta releases use the old format with V=2021. */ -# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# if defined(__INTEL_COMPILER_UPDATE) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) -# else -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# endif -# else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) - /* The third version component from --version is an update index, - but no macro is provided for it. */ -# define COMPILER_VERSION_PATCH DEC(0) -# endif -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) -# define COMPILER_ID "IntelLLVM" -#if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -#endif -#if defined(__GNUC__) -# define SIMULATE_ID "GNU" -#endif -/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and - * later. Look for 6 digit vs. 8 digit version number to decide encoding. - * VVVV is no smaller than the current year when a version is released. - */ -#if __INTEL_LLVM_COMPILER < 1000000L -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) -#else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) -#endif -#if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -#endif -#if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -#elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -#endif -#if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -#endif -#if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -#endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__WATCOMC__) -# define COMPILER_ID "OpenWatcom" - /* __WATCOMC__ = VVRP + 1100 */ -# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__SUNPRO_C) -# define COMPILER_ID "SunPro" -# if __SUNPRO_C >= 0x5100 - /* __SUNPRO_C = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# endif - -#elif defined(__HP_cc) -# define COMPILER_ID "HP" - /* __HP_cc = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) - -#elif defined(__DECC) -# define COMPILER_ID "Compaq" - /* __DECC_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) - -#elif defined(__IBMC__) && defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" - /* __IBMC__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) - -#elif defined(__open_xl__) && defined(__clang__) -# define COMPILER_ID "IBMClang" -# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) -# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) -# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) - - -#elif defined(__ibmxl__) && defined(__clang__) -# define COMPILER_ID "XLClang" -# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) -# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) -# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) - - -#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 -# define COMPILER_ID "XL" - /* __IBMC__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) - -#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 -# define COMPILER_ID "VisualAge" - /* __IBMC__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) - -#elif defined(__NVCOMPILER) -# define COMPILER_ID "NVHPC" -# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) -# if defined(__NVCOMPILER_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) && defined(__cray__) -# define COMPILER_ID "CrayClang" -# define COMPILER_VERSION_MAJOR DEC(__cray_major__) -# define COMPILER_VERSION_MINOR DEC(__cray_minor__) -# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__CLANG_FUJITSU) -# define COMPILER_ID "FujitsuClang" -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(__FUJITSU) -# define COMPILER_ID "Fujitsu" -# if defined(__FCC_version__) -# define COMPILER_VERSION __FCC_version__ -# elif defined(__FCC_major__) -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# endif -# if defined(__fcc_version) -# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) -# elif defined(__FCC_VERSION) -# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) -# endif - - -#elif defined(__ghs__) -# define COMPILER_ID "GHS" -/* __GHS_VERSION_NUMBER = VVVVRP */ -# ifdef __GHS_VERSION_NUMBER -# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) -# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) -# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) -# endif - -#elif defined(__TASKING__) -# define COMPILER_ID "Tasking" - # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) - # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) -# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) - -#elif defined(__ORANGEC__) -# define COMPILER_ID "OrangeC" -# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) -# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) - -#elif defined(__TINYC__) -# define COMPILER_ID "TinyCC" - -#elif defined(__BCC__) -# define COMPILER_ID "Bruce" - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__ARMCC_VERSION) && !defined(__clang__) -# define COMPILER_ID "ARMCC" -#if __ARMCC_VERSION >= 1000000 - /* __ARMCC_VERSION = VRRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#else - /* __ARMCC_VERSION = VRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#endif - - -#elif defined(__clang__) && defined(__apple_build_version__) -# define COMPILER_ID "AppleClang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) - -#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) -# define COMPILER_ID "ARMClang" - # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) -# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif - -#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) -# define COMPILER_ID "LCC" -# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) -# if defined(__LCC_MINOR__) -# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) -# endif -# if defined(__GNUC__) && defined(__GNUC_MINOR__) -# define SIMULATE_ID "GNU" -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif -# endif - -#elif defined(__GNUC__) -# define COMPILER_ID "GNU" -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# if defined(__GNUC_MINOR__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -#elif defined(_ADI_COMPILER) -# define COMPILER_ID "ADSP" -#if defined(__VERSIONNUM__) - /* __VERSIONNUM__ = 0xVVRRPPTT */ -# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) -# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) -# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) -# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) -#endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" -# if defined(__VER__) && defined(__ICCARM__) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) -# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) -# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) -# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) -# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# endif - -#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) -# define COMPILER_ID "SDCC" -# if defined(__SDCC_VERSION_MAJOR) -# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) -# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) -# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) -# else - /* SDCC = VRP */ -# define COMPILER_VERSION_MAJOR DEC(SDCC/100) -# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) -# define COMPILER_VERSION_PATCH DEC(SDCC % 10) -# endif - - -/* These compilers are either not known or too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; -#ifdef SIMULATE_ID -char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; -#endif - -#ifdef __QNXNTO__ -char const* qnxnto = "INFO" ":" "qnxnto[]"; -#endif - -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) -char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; -#endif - -#define STRINGIFY_HELPER(X) #X -#define STRINGIFY(X) STRINGIFY_HELPER(X) - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__MSYS__) -# define PLATFORM_ID "MSYS" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#elif defined(__WATCOMC__) -# if defined(__LINUX__) -# define PLATFORM_ID "Linux" - -# elif defined(__DOS__) -# define PLATFORM_ID "DOS" - -# elif defined(__OS2__) -# define PLATFORM_ID "OS2" - -# elif defined(__WINDOWS__) -# define PLATFORM_ID "Windows3x" - -# elif defined(__VXWORKS__) -# define PLATFORM_ID "VxWorks" - -# else /* unknown platform */ -# define PLATFORM_ID -# endif - -#elif defined(__INTEGRITY) -# if defined(INT_178B) -# define PLATFORM_ID "Integrity178" - -# else /* regular Integrity */ -# define PLATFORM_ID "Integrity" -# endif - -# elif defined(_ADI_COMPILER) -# define PLATFORM_ID "ADSP" - -#else /* unknown platform */ -# define PLATFORM_ID - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_ARM64EC) -# define ARCHITECTURE_ID "ARM64EC" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM64) -# define ARCHITECTURE_ID "ARM64" - -# elif defined(_M_ARM) -# if _M_ARM == 4 -# define ARCHITECTURE_ID "ARMV4I" -# elif _M_ARM == 5 -# define ARCHITECTURE_ID "ARMV5I" -# else -# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) -# endif - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__WATCOMC__) -# if defined(_M_I86) -# define ARCHITECTURE_ID "I86" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# if defined(__ICCARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__ICCRX__) -# define ARCHITECTURE_ID "RX" - -# elif defined(__ICCRH850__) -# define ARCHITECTURE_ID "RH850" - -# elif defined(__ICCRL78__) -# define ARCHITECTURE_ID "RL78" - -# elif defined(__ICCRISCV__) -# define ARCHITECTURE_ID "RISCV" - -# elif defined(__ICCAVR__) -# define ARCHITECTURE_ID "AVR" - -# elif defined(__ICC430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__ICCV850__) -# define ARCHITECTURE_ID "V850" - -# elif defined(__ICC8051__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__ICCSTM8__) -# define ARCHITECTURE_ID "STM8" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__ghs__) -# if defined(__PPC64__) -# define ARCHITECTURE_ID "PPC64" - -# elif defined(__ppc__) -# define ARCHITECTURE_ID "PPC" - -# elif defined(__ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__x86_64__) -# define ARCHITECTURE_ID "x64" - -# elif defined(__i386__) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__TI_COMPILER_VERSION__) -# if defined(__TI_ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__MSP430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__TMS320C28XX__) -# define ARCHITECTURE_ID "TMS320C28x" - -# elif defined(__TMS320C6X__) || defined(_TMS320C6X) -# define ARCHITECTURE_ID "TMS320C6x" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -# elif defined(__ADSPSHARC__) -# define ARCHITECTURE_ID "SHARC" - -# elif defined(__ADSPBLACKFIN__) -# define ARCHITECTURE_ID "Blackfin" - -#elif defined(__TASKING__) - -# if defined(__CTC__) || defined(__CPTC__) -# define ARCHITECTURE_ID "TriCore" - -# elif defined(__CMCS__) -# define ARCHITECTURE_ID "MCS" - -# elif defined(__CARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__CARC__) -# define ARCHITECTURE_ID "ARC" - -# elif defined(__C51__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__CPCP__) -# define ARCHITECTURE_ID "PCP" - -# else -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number. */ -#ifdef COMPILER_VERSION -char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; - -/* Construct a string literal encoding the version number components. */ -#elif defined(COMPILER_VERSION_MAJOR) -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct a string literal encoding the internal version number. */ -#ifdef COMPILER_VERSION_INTERNAL -char const info_version_internal[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', - 'i','n','t','e','r','n','a','l','[', - COMPILER_VERSION_INTERNAL,']','\0'}; -#elif defined(COMPILER_VERSION_INTERNAL_STR) -char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; -#endif - -/* Construct a string literal encoding the version number components. */ -#ifdef SIMULATE_VERSION_MAJOR -char const info_simulate_version[] = { - 'I', 'N', 'F', 'O', ':', - 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', - SIMULATE_VERSION_MAJOR, -# ifdef SIMULATE_VERSION_MINOR - '.', SIMULATE_VERSION_MINOR, -# ifdef SIMULATE_VERSION_PATCH - '.', SIMULATE_VERSION_PATCH, -# ifdef SIMULATE_VERSION_TWEAK - '.', SIMULATE_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -#if !defined(__STDC__) && !defined(__clang__) -# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) -# define C_VERSION "90" -# else -# define C_VERSION -# endif -#elif __STDC_VERSION__ > 201710L -# define C_VERSION "23" -#elif __STDC_VERSION__ >= 201710L -# define C_VERSION "17" -#elif __STDC_VERSION__ >= 201000L -# define C_VERSION "11" -#elif __STDC_VERSION__ >= 199901L -# define C_VERSION "99" -#else -# define C_VERSION "90" -#endif -const char* info_language_standard_default = - "INFO" ":" "standard_default[" C_VERSION "]"; - -const char* info_language_extensions_default = "INFO" ":" "extensions_default[" -#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ - defined(__TI_COMPILER_VERSION__)) && \ - !defined(__STRICT_ANSI__) - "ON" -#else - "OFF" -#endif -"]"; - -/*--------------------------------------------------------------------------*/ - -#ifdef ID_VOID_MAIN -void main() {} -#else -# if defined(__CLASSIC_C__) -int main(argc, argv) int argc; char *argv[]; -# else -int main(int argc, char* argv[]) -# endif -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; - require += info_arch[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif -#ifdef COMPILER_VERSION_INTERNAL - require += info_version_internal[argc]; -#endif -#ifdef SIMULATE_ID - require += info_simulate[argc]; -#endif -#ifdef SIMULATE_VERSION_MAJOR - require += info_simulate_version[argc]; -#endif -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) - require += info_cray[argc]; -#endif - require += info_language_standard_default[argc]; - require += info_language_extensions_default[argc]; - (void)argv; - return require; -} -#endif diff --git a/build/CMakeFiles/3.28.3/CompilerIdC/a.out b/build/CMakeFiles/3.28.3/CompilerIdC/a.out deleted file mode 100755 index ecc315e71b4e62a6558ef29ebb804b7c2bdf9e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16088 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 diff --git a/build/CMakeFiles/3.28.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/build/CMakeFiles/3.28.3/CompilerIdCXX/CMakeCXXCompilerId.cpp deleted file mode 100644 index 9c9c90e..0000000 --- a/build/CMakeFiles/3.28.3/CompilerIdCXX/CMakeCXXCompilerId.cpp +++ /dev/null @@ -1,869 +0,0 @@ -/* This source file must have a .cpp extension so that all C++ compilers - recognize the extension without flags. Borland does not know .cxx for - example. */ -#ifndef __cplusplus -# error "A C compiler has been selected for C++." -#endif - -#if !defined(__has_include) -/* If the compiler does not have __has_include, pretend the answer is - always no. */ -# define __has_include(x) 0 -#endif - - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__COMO__) -# define COMPILER_ID "Comeau" - /* __COMO_VERSION__ = VRR */ -# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) -# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) - -#elif defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# if defined(__GNUC__) -# define SIMULATE_ID "GNU" -# endif - /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, - except that a few beta releases use the old format with V=2021. */ -# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# if defined(__INTEL_COMPILER_UPDATE) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) -# else -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# endif -# else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) - /* The third version component from --version is an update index, - but no macro is provided for it. */ -# define COMPILER_VERSION_PATCH DEC(0) -# endif -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) -# define COMPILER_ID "IntelLLVM" -#if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -#endif -#if defined(__GNUC__) -# define SIMULATE_ID "GNU" -#endif -/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and - * later. Look for 6 digit vs. 8 digit version number to decide encoding. - * VVVV is no smaller than the current year when a version is released. - */ -#if __INTEL_LLVM_COMPILER < 1000000L -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) -#else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) -#endif -#if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -#endif -#if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -#elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -#endif -#if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -#endif -#if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -#endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__WATCOMC__) -# define COMPILER_ID "OpenWatcom" - /* __WATCOMC__ = VVRP + 1100 */ -# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__SUNPRO_CC) -# define COMPILER_ID "SunPro" -# if __SUNPRO_CC >= 0x5100 - /* __SUNPRO_CC = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# endif - -#elif defined(__HP_aCC) -# define COMPILER_ID "HP" - /* __HP_aCC = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) - -#elif defined(__DECCXX) -# define COMPILER_ID "Compaq" - /* __DECCXX_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) - -#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__open_xl__) && defined(__clang__) -# define COMPILER_ID "IBMClang" -# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) -# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) -# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) - - -#elif defined(__ibmxl__) && defined(__clang__) -# define COMPILER_ID "XLClang" -# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) -# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) -# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) - - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 -# define COMPILER_ID "XL" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 -# define COMPILER_ID "VisualAge" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__NVCOMPILER) -# define COMPILER_ID "NVHPC" -# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) -# if defined(__NVCOMPILER_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) && defined(__cray__) -# define COMPILER_ID "CrayClang" -# define COMPILER_VERSION_MAJOR DEC(__cray_major__) -# define COMPILER_VERSION_MINOR DEC(__cray_minor__) -# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__CLANG_FUJITSU) -# define COMPILER_ID "FujitsuClang" -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(__FUJITSU) -# define COMPILER_ID "Fujitsu" -# if defined(__FCC_version__) -# define COMPILER_VERSION __FCC_version__ -# elif defined(__FCC_major__) -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# endif -# if defined(__fcc_version) -# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) -# elif defined(__FCC_VERSION) -# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) -# endif - - -#elif defined(__ghs__) -# define COMPILER_ID "GHS" -/* __GHS_VERSION_NUMBER = VVVVRP */ -# ifdef __GHS_VERSION_NUMBER -# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) -# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) -# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) -# endif - -#elif defined(__TASKING__) -# define COMPILER_ID "Tasking" - # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) - # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) -# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) - -#elif defined(__ORANGEC__) -# define COMPILER_ID "OrangeC" -# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) -# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__ARMCC_VERSION) && !defined(__clang__) -# define COMPILER_ID "ARMCC" -#if __ARMCC_VERSION >= 1000000 - /* __ARMCC_VERSION = VRRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#else - /* __ARMCC_VERSION = VRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#endif - - -#elif defined(__clang__) && defined(__apple_build_version__) -# define COMPILER_ID "AppleClang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) - -#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) -# define COMPILER_ID "ARMClang" - # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) -# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif - -#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) -# define COMPILER_ID "LCC" -# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) -# if defined(__LCC_MINOR__) -# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) -# endif -# if defined(__GNUC__) && defined(__GNUC_MINOR__) -# define SIMULATE_ID "GNU" -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif -# endif - -#elif defined(__GNUC__) || defined(__GNUG__) -# define COMPILER_ID "GNU" -# if defined(__GNUC__) -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# else -# define COMPILER_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -#elif defined(_ADI_COMPILER) -# define COMPILER_ID "ADSP" -#if defined(__VERSIONNUM__) - /* __VERSIONNUM__ = 0xVVRRPPTT */ -# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) -# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) -# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) -# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) -#endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" -# if defined(__VER__) && defined(__ICCARM__) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) -# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) -# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) -# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) -# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# endif - - -/* These compilers are either not known or too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; -#ifdef SIMULATE_ID -char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; -#endif - -#ifdef __QNXNTO__ -char const* qnxnto = "INFO" ":" "qnxnto[]"; -#endif - -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) -char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; -#endif - -#define STRINGIFY_HELPER(X) #X -#define STRINGIFY(X) STRINGIFY_HELPER(X) - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__MSYS__) -# define PLATFORM_ID "MSYS" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#elif defined(__WATCOMC__) -# if defined(__LINUX__) -# define PLATFORM_ID "Linux" - -# elif defined(__DOS__) -# define PLATFORM_ID "DOS" - -# elif defined(__OS2__) -# define PLATFORM_ID "OS2" - -# elif defined(__WINDOWS__) -# define PLATFORM_ID "Windows3x" - -# elif defined(__VXWORKS__) -# define PLATFORM_ID "VxWorks" - -# else /* unknown platform */ -# define PLATFORM_ID -# endif - -#elif defined(__INTEGRITY) -# if defined(INT_178B) -# define PLATFORM_ID "Integrity178" - -# else /* regular Integrity */ -# define PLATFORM_ID "Integrity" -# endif - -# elif defined(_ADI_COMPILER) -# define PLATFORM_ID "ADSP" - -#else /* unknown platform */ -# define PLATFORM_ID - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_ARM64EC) -# define ARCHITECTURE_ID "ARM64EC" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM64) -# define ARCHITECTURE_ID "ARM64" - -# elif defined(_M_ARM) -# if _M_ARM == 4 -# define ARCHITECTURE_ID "ARMV4I" -# elif _M_ARM == 5 -# define ARCHITECTURE_ID "ARMV5I" -# else -# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) -# endif - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__WATCOMC__) -# if defined(_M_I86) -# define ARCHITECTURE_ID "I86" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# if defined(__ICCARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__ICCRX__) -# define ARCHITECTURE_ID "RX" - -# elif defined(__ICCRH850__) -# define ARCHITECTURE_ID "RH850" - -# elif defined(__ICCRL78__) -# define ARCHITECTURE_ID "RL78" - -# elif defined(__ICCRISCV__) -# define ARCHITECTURE_ID "RISCV" - -# elif defined(__ICCAVR__) -# define ARCHITECTURE_ID "AVR" - -# elif defined(__ICC430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__ICCV850__) -# define ARCHITECTURE_ID "V850" - -# elif defined(__ICC8051__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__ICCSTM8__) -# define ARCHITECTURE_ID "STM8" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__ghs__) -# if defined(__PPC64__) -# define ARCHITECTURE_ID "PPC64" - -# elif defined(__ppc__) -# define ARCHITECTURE_ID "PPC" - -# elif defined(__ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__x86_64__) -# define ARCHITECTURE_ID "x64" - -# elif defined(__i386__) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__TI_COMPILER_VERSION__) -# if defined(__TI_ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__MSP430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__TMS320C28XX__) -# define ARCHITECTURE_ID "TMS320C28x" - -# elif defined(__TMS320C6X__) || defined(_TMS320C6X) -# define ARCHITECTURE_ID "TMS320C6x" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -# elif defined(__ADSPSHARC__) -# define ARCHITECTURE_ID "SHARC" - -# elif defined(__ADSPBLACKFIN__) -# define ARCHITECTURE_ID "Blackfin" - -#elif defined(__TASKING__) - -# if defined(__CTC__) || defined(__CPTC__) -# define ARCHITECTURE_ID "TriCore" - -# elif defined(__CMCS__) -# define ARCHITECTURE_ID "MCS" - -# elif defined(__CARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__CARC__) -# define ARCHITECTURE_ID "ARC" - -# elif defined(__C51__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__CPCP__) -# define ARCHITECTURE_ID "PCP" - -# else -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number. */ -#ifdef COMPILER_VERSION -char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; - -/* Construct a string literal encoding the version number components. */ -#elif defined(COMPILER_VERSION_MAJOR) -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct a string literal encoding the internal version number. */ -#ifdef COMPILER_VERSION_INTERNAL -char const info_version_internal[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', - 'i','n','t','e','r','n','a','l','[', - COMPILER_VERSION_INTERNAL,']','\0'}; -#elif defined(COMPILER_VERSION_INTERNAL_STR) -char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; -#endif - -/* Construct a string literal encoding the version number components. */ -#ifdef SIMULATE_VERSION_MAJOR -char const info_simulate_version[] = { - 'I', 'N', 'F', 'O', ':', - 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', - SIMULATE_VERSION_MAJOR, -# ifdef SIMULATE_VERSION_MINOR - '.', SIMULATE_VERSION_MINOR, -# ifdef SIMULATE_VERSION_PATCH - '.', SIMULATE_VERSION_PATCH, -# ifdef SIMULATE_VERSION_TWEAK - '.', SIMULATE_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L -# if defined(__INTEL_CXX11_MODE__) -# if defined(__cpp_aggregate_nsdmi) -# define CXX_STD 201402L -# else -# define CXX_STD 201103L -# endif -# else -# define CXX_STD 199711L -# endif -#elif defined(_MSC_VER) && defined(_MSVC_LANG) -# define CXX_STD _MSVC_LANG -#else -# define CXX_STD __cplusplus -#endif - -const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if CXX_STD > 202002L - "23" -#elif CXX_STD > 201703L - "20" -#elif CXX_STD >= 201703L - "17" -#elif CXX_STD >= 201402L - "14" -#elif CXX_STD >= 201103L - "11" -#else - "98" -#endif -"]"; - -const char* info_language_extensions_default = "INFO" ":" "extensions_default[" -#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ - defined(__TI_COMPILER_VERSION__)) && \ - !defined(__STRICT_ANSI__) - "ON" -#else - "OFF" -#endif -"]"; - -/*--------------------------------------------------------------------------*/ - -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; - require += info_arch[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif -#ifdef COMPILER_VERSION_INTERNAL - require += info_version_internal[argc]; -#endif -#ifdef SIMULATE_ID - require += info_simulate[argc]; -#endif -#ifdef SIMULATE_VERSION_MAJOR - require += info_simulate_version[argc]; -#endif -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) - require += info_cray[argc]; -#endif - require += info_language_standard_default[argc]; - require += info_language_extensions_default[argc]; - (void)argv; - return require; -} diff --git a/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out b/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out deleted file mode 100755 index c8ced32cf082708045baa23211fbf858c298928d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16096 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 ASpWb4 diff --git a/build/CMakeFiles/CMakeConfigureLog.yaml b/build/CMakeFiles/CMakeConfigureLog.yaml deleted file mode 100644 index 67502e6..0000000 --- a/build/CMakeFiles/CMakeConfigureLog.yaml +++ /dev/null @@ -1,565 +0,0 @@ - ---- -events: - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:233 (message)" - - "CMakeLists.txt:2 (project)" - message: | - The system is: Linux - 6.8.0 - x86_64 - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)" - - "CMakeLists.txt:2 (project)" - message: | - Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. - Compiler: /usr/bin/cc - Build flags: - Id flags: - - The output was: - 0 - - - Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" - - The C compiler identification is GNU, found in: - /app/build/CMakeFiles/3.28.3/CompilerIdC/a.out - - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)" - - "CMakeLists.txt:2 (project)" - message: | - Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. - Compiler: /usr/bin/c++ - Build flags: - Id flags: - - The output was: - 0 - - - Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" - - The CXX compiler identification is GNU, found in: - /app/build/CMakeFiles/3.28.3/CompilerIdCXX/a.out - - - - kind: "try_compile-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - checks: - - "Detecting C compiler ABI info" - directories: - source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7" - binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7" - cmakeVariables: - CMAKE_C_FLAGS: "" - buildResult: - variable: "CMAKE_C_ABI_COMPILED" - cached: true - stdout: | - Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' - - Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_c51be/fast - /usr/bin/gmake -f CMakeFiles/cmTC_c51be.dir/build.make CMakeFiles/cmTC_c51be.dir/build - gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' - Building C object CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o - /usr/bin/cc -v -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c - Using built-in specs. - COLLECT_GCC=/usr/bin/cc - OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa - OFFLOAD_TARGET_DEFAULT=1 - Target: x86_64-linux-gnu - Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 - Thread model: posix - Supported LTO compression algorithms: zlib zstd - gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/' - /usr/libexec/gcc/x86_64-linux-gnu/13/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_c51be.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccPWDDPE.s - GNU C17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu) - compiled by GNU C version 13.3.0, GMP version 6.3.0, MPFR version 4.2.1, MPC version 1.3.1, isl version isl-0.26-GMP - - GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 - ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include" - #include "..." search starts here: - #include <...> search starts here: - /usr/lib/gcc/x86_64-linux-gnu/13/include - /usr/local/include - /usr/include/x86_64-linux-gnu - /usr/include - End of search list. - Compiler executable checksum: 38987c28e967c64056a6454abdef726e - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/' - as -v --64 -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o /tmp/ccPWDDPE.s - GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42 - COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ - LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.' - Linking C executable cmTC_c51be - /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c51be.dir/link.txt --verbose=1 - /usr/bin/cc -v -rdynamic CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -o cmTC_c51be - Using built-in specs. - COLLECT_GCC=/usr/bin/cc - COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper - OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa - OFFLOAD_TARGET_DEFAULT=1 - Target: x86_64-linux-gnu - Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 - Thread model: posix - Supported LTO compression algorithms: zlib zstd - gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) - COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ - LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ - COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.' - /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/ccT9hQOM.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c51be /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o - COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.' - gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7' - - exitCode: 0 - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:127 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - message: | - Parsed C implicit include dir info: rv=done - found start of include info - found start of implicit include info - add: [/usr/lib/gcc/x86_64-linux-gnu/13/include] - add: [/usr/local/include] - add: [/usr/include/x86_64-linux-gnu] - add: [/usr/include] - end of search list found - collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/13/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/13/include] - collapse include dir [/usr/local/include] ==> [/usr/local/include] - collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] - collapse include dir [/usr/include] ==> [/usr/include] - implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] - - - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:159 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - message: | - Parsed C implicit link information: - link line regex: [^( *|.*[/\\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] - ignore line: [Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7'] - ignore line: [] - ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_c51be/fast] - ignore line: [/usr/bin/gmake -f CMakeFiles/cmTC_c51be.dir/build.make CMakeFiles/cmTC_c51be.dir/build] - ignore line: [gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-1jUhj7'] - ignore line: [Building C object CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o] - ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/cc] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/'] - ignore line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_c51be.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccPWDDPE.s] - ignore line: [GNU C17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 13.3.0 GMP version 6.3.0 MPFR version 4.2.1 MPC version 1.3.1 isl version isl-0.26-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include"] - ignore line: [#include "..." search starts here:] - ignore line: [#include <...> search starts here:] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/13/include] - ignore line: [ /usr/local/include] - ignore line: [ /usr/include/x86_64-linux-gnu] - ignore line: [ /usr/include] - ignore line: [End of search list.] - ignore line: [Compiler executable checksum: 38987c28e967c64056a6454abdef726e] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/'] - ignore line: [ as -v --64 -o CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o /tmp/ccPWDDPE.s] - ignore line: [GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42] - ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.'] - ignore line: [Linking C executable cmTC_c51be] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c51be.dir/link.txt --verbose=1] - ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -o cmTC_c51be ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/cc] - ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] - ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_c51be' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_c51be.'] - link line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/ccT9hQOM.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c51be /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/libexec/gcc/x86_64-linux-gnu/13/collect2] ==> ignore - arg [-plugin] ==> ignore - arg [/usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so] ==> ignore - arg [-plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/ccT9hQOM.res] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-pie] ==> ignore - arg [-znow] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTC_c51be] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] - arg [CMakeFiles/cmTC_c51be.dir/CMakeCCompilerABI.c.o] ==> ignore - arg [-lgcc] ==> lib [gcc] - arg [--push-state] ==> ignore - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--pop-state] ==> ignore - arg [-lc] ==> lib [c] - arg [-lgcc] ==> lib [gcc] - arg [--push-state] ==> ignore - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--pop-state] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13] ==> [/usr/lib/gcc/x86_64-linux-gnu/13] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> [/usr/lib] - implicit libs: [gcc;gcc_s;c;gcc;gcc_s] - implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - - - - kind: "try_compile-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - checks: - - "Detecting CXX compiler ABI info" - directories: - source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC" - binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC" - cmakeVariables: - CMAKE_CXX_FLAGS: "" - buildResult: - variable: "CMAKE_CXX_ABI_COMPILED" - cached: true - stdout: | - Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' - - Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_b3c36/fast - /usr/bin/gmake -f CMakeFiles/cmTC_b3c36.dir/build.make CMakeFiles/cmTC_b3c36.dir/build - gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' - Building CXX object CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o - /usr/bin/c++ -v -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp - Using built-in specs. - COLLECT_GCC=/usr/bin/c++ - OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa - OFFLOAD_TARGET_DEFAULT=1 - Target: x86_64-linux-gnu - Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 - Thread model: posix - Supported LTO compression algorithms: zlib zstd - gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/' - /usr/libexec/gcc/x86_64-linux-gnu/13/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_b3c36.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccqwdKMm.s - GNU C++17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu) - compiled by GNU C version 13.3.0, GMP version 6.3.0, MPFR version 4.2.1, MPC version 1.3.1, isl version isl-0.26-GMP - - GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 - ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/13" - ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed" - ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include" - #include "..." search starts here: - #include <...> search starts here: - /usr/include/c++/13 - /usr/include/x86_64-linux-gnu/c++/13 - /usr/include/c++/13/backward - /usr/lib/gcc/x86_64-linux-gnu/13/include - /usr/local/include - /usr/include/x86_64-linux-gnu - /usr/include - End of search list. - Compiler executable checksum: c81c05345ce537099dafd5580045814a - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/' - as -v --64 -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccqwdKMm.s - GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42 - COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ - LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ - COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.' - Linking CXX executable cmTC_b3c36 - /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b3c36.dir/link.txt --verbose=1 - /usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_b3c36 - Using built-in specs. - COLLECT_GCC=/usr/bin/c++ - COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper - OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa - OFFLOAD_TARGET_DEFAULT=1 - Target: x86_64-linux-gnu - Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 - Thread model: posix - Supported LTO compression algorithms: zlib zstd - gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) - COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/ - LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/ - COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.' - /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/cctKEum9.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_b3c36 /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o - COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.' - gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC' - - exitCode: 0 - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:127 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - message: | - Parsed CXX implicit include dir info: rv=done - found start of include info - found start of implicit include info - add: [/usr/include/c++/13] - add: [/usr/include/x86_64-linux-gnu/c++/13] - add: [/usr/include/c++/13/backward] - add: [/usr/lib/gcc/x86_64-linux-gnu/13/include] - add: [/usr/local/include] - add: [/usr/include/x86_64-linux-gnu] - add: [/usr/include] - end of search list found - collapse include dir [/usr/include/c++/13] ==> [/usr/include/c++/13] - collapse include dir [/usr/include/x86_64-linux-gnu/c++/13] ==> [/usr/include/x86_64-linux-gnu/c++/13] - collapse include dir [/usr/include/c++/13/backward] ==> [/usr/include/c++/13/backward] - collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/13/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/13/include] - collapse include dir [/usr/local/include] ==> [/usr/local/include] - collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] - collapse include dir [/usr/include] ==> [/usr/include] - implicit include dirs: [/usr/include/c++/13;/usr/include/x86_64-linux-gnu/c++/13;/usr/include/c++/13/backward;/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] - - - - - kind: "message-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:159 (message)" - - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" - - "CMakeLists.txt:2 (project)" - message: | - Parsed CXX implicit link information: - link line regex: [^( *|.*[/\\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] - ignore line: [Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC'] - ignore line: [] - ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_b3c36/fast] - ignore line: [/usr/bin/gmake -f CMakeFiles/cmTC_b3c36.dir/build.make CMakeFiles/cmTC_b3c36.dir/build] - ignore line: [gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-K2tsUC'] - ignore line: [Building CXX object CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/'] - ignore line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_b3c36.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccqwdKMm.s] - ignore line: [GNU C++17 (Ubuntu 13.3.0-6ubuntu2~24.04) version 13.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 13.3.0 GMP version 6.3.0 MPFR version 4.2.1 MPC version 1.3.1 isl version isl-0.26-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/13"] - ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/include-fixed"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include"] - ignore line: [#include "..." search starts here:] - ignore line: [#include <...> search starts here:] - ignore line: [ /usr/include/c++/13] - ignore line: [ /usr/include/x86_64-linux-gnu/c++/13] - ignore line: [ /usr/include/c++/13/backward] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/13/include] - ignore line: [ /usr/local/include] - ignore line: [ /usr/include/x86_64-linux-gnu] - ignore line: [ /usr/include] - ignore line: [End of search list.] - ignore line: [Compiler executable checksum: c81c05345ce537099dafd5580045814a] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/'] - ignore line: [ as -v --64 -o CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccqwdKMm.s] - ignore line: [GNU assembler version 2.42 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.42] - ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.'] - ignore line: [Linking CXX executable cmTC_b3c36] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b3c36.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_b3c36 ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) ] - ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/13/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/13/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/13/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_b3c36' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b3c36.'] - link line: [ /usr/libexec/gcc/x86_64-linux-gnu/13/collect2 -plugin /usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper -plugin-opt=-fresolution=/tmp/cctKEum9.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_b3c36 /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/13 -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/13/../../.. CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/libexec/gcc/x86_64-linux-gnu/13/collect2] ==> ignore - arg [-plugin] ==> ignore - arg [/usr/libexec/gcc/x86_64-linux-gnu/13/liblto_plugin.so] ==> ignore - arg [-plugin-opt=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/cctKEum9.res] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [-plugin-opt=-pass-through=-lc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-pie] ==> ignore - arg [-znow] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTC_b3c36] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] - arg [CMakeFiles/cmTC_b3c36.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore - arg [-lstdc++] ==> lib [stdc++] - arg [-lm] ==> lib [m] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [-lc] ==> lib [c] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13] ==> [/usr/lib/gcc/x86_64-linux-gnu/13] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/13/../../..] ==> [/usr/lib] - implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] - implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/13/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - - - - kind: "try_compile-v1" - backtrace: - - "/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake:101 (try_compile)" - - "/usr/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake:18 (cmake_check_source_compiles)" - - "/usr/share/cmake-3.28/Modules/CheckCXXCompilerFlag.cmake:34 (cmake_check_compiler_flag)" - - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:323 (check_cxx_compiler_flag)" - - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:368 (_pybind11_return_if_cxx_and_linker_flags_work)" - - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake:435 (_pybind11_generate_lto)" - - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Config.cmake:250 (include)" - - "CMakeLists.txt:29 (find_package)" - checks: - - "Performing Test HAS_FLTO" - directories: - source: "/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a" - binary: "/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a" - cmakeVariables: - CMAKE_CXX_FLAGS: " -O2 -Wall -Wextra" - CMAKE_MODULE_PATH: "" - buildResult: - variable: "HAS_FLTO" - cached: true - stdout: | - Change Dir: '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' - - Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_a9f29/fast - /usr/bin/gmake -f CMakeFiles/cmTC_a9f29.dir/build.make CMakeFiles/cmTC_a9f29.dir/build - gmake[1]: Entering directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' - Building CXX object CMakeFiles/cmTC_a9f29.dir/src.cxx.o - /usr/bin/c++ -DHAS_FLTO -O2 -Wall -Wextra -flto -fno-fat-lto-objects -o CMakeFiles/cmTC_a9f29.dir/src.cxx.o -c /app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a/src.cxx - Linking CXX executable cmTC_a9f29 - /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a9f29.dir/link.txt --verbose=1 - /usr/bin/c++ -O2 -Wall -Wextra -rdynamic CMakeFiles/cmTC_a9f29.dir/src.cxx.o -o cmTC_a9f29 -flto - gmake[1]: Leaving directory '/app/build/CMakeFiles/CMakeScratch/TryCompile-FmPy1a' - - exitCode: 0 -... diff --git a/build/CMakeFiles/CMakeDirectoryInformation.cmake b/build/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index e925417..0000000 --- a/build/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/app/src") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/app/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/build/CMakeFiles/Makefile.cmake b/build/CMakeFiles/Makefile.cmake deleted file mode 100644 index 7d93ff0..0000000 --- a/build/CMakeFiles/Makefile.cmake +++ /dev/null @@ -1,146 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# The generator used is: -set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") - -# The top level Makefile was generated from the following files: -set(CMAKE_MAKEFILE_DEPENDS - "CMakeCache.txt" - "CMakeFiles/3.28.3/CMakeCCompiler.cmake" - "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" - "CMakeFiles/3.28.3/CMakeSystem.cmake" - "/app/src/CMakeLists.txt" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Config.cmake" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11ConfigVersion.cmake" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Targets.cmake" - "/home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/share/cmake/pybind11/pybind11Tools.cmake" - "/usr/share/cmake-3.28/Modules/CMakeCCompiler.cmake.in" - "/usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c" - "/usr/share/cmake-3.28/Modules/CMakeCInformation.cmake" - "/usr/share/cmake-3.28/Modules/CMakeCXXCompiler.cmake.in" - "/usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp" - "/usr/share/cmake-3.28/Modules/CMakeCXXInformation.cmake" - "/usr/share/cmake-3.28/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" - "/usr/share/cmake-3.28/Modules/CMakeCommonLanguageInclude.cmake" - "/usr/share/cmake-3.28/Modules/CMakeCompilerIdDetection.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompileFeatures.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake" - "/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake" - "/usr/share/cmake-3.28/Modules/CMakeFindBinUtils.cmake" - "/usr/share/cmake-3.28/Modules/CMakeGenericSystem.cmake" - "/usr/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake" - "/usr/share/cmake-3.28/Modules/CMakeLanguageInformation.cmake" - "/usr/share/cmake-3.28/Modules/CMakeParseArguments.cmake" - "/usr/share/cmake-3.28/Modules/CMakeParseImplicitIncludeInfo.cmake" - "/usr/share/cmake-3.28/Modules/CMakeParseImplicitLinkInfo.cmake" - "/usr/share/cmake-3.28/Modules/CMakeParseLibraryArchitecture.cmake" - "/usr/share/cmake-3.28/Modules/CMakeSystem.cmake.in" - "/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake" - "/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake" - "/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake" - "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake" - "/usr/share/cmake-3.28/Modules/CMakeTestCompilerCommon.cmake" - "/usr/share/cmake-3.28/Modules/CMakeUnixFindMake.cmake" - "/usr/share/cmake-3.28/Modules/CheckCXXCompilerFlag.cmake" - "/usr/share/cmake-3.28/Modules/CheckCXXSourceCompiles.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/ADSP-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/ARMCC-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/ARMClang-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/AppleClang-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Borland-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/CMakeCommonCompilerMacros.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Cray-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/CrayClang-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GHS-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU-C.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU-CXX.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU-FindBinUtils.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/GNU.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/HP-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IAR-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Intel-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/LCC-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/MSVC-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/NVHPC-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/OrangeC-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/PGI-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/PathScale-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/SCO-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/TI-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Tasking-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/Watcom-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/XL-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/XLClang-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/zOS-C-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" - "/usr/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" - "/usr/share/cmake-3.28/Modules/FindPackageMessage.cmake" - "/usr/share/cmake-3.28/Modules/FindPythonInterp.cmake" - "/usr/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake" - "/usr/share/cmake-3.28/Modules/Internal/CheckFlagCommonConfig.cmake" - "/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake" - "/usr/share/cmake-3.28/Modules/Internal/FeatureTesting.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux-Determine-CXX.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU-C.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU-CXX.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux-GNU.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux-Initialize.cmake" - "/usr/share/cmake-3.28/Modules/Platform/Linux.cmake" - "/usr/share/cmake-3.28/Modules/Platform/UnixPaths.cmake" - ) - -# The corresponding makefile is: -set(CMAKE_MAKEFILE_OUTPUTS - "Makefile" - "CMakeFiles/cmake.check_cache" - ) - -# Byproducts of CMake generate step: -set(CMAKE_MAKEFILE_PRODUCTS - "CMakeFiles/3.28.3/CMakeSystem.cmake" - "CMakeFiles/3.28.3/CMakeCCompiler.cmake" - "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" - "CMakeFiles/3.28.3/CMakeCCompiler.cmake" - "CMakeFiles/3.28.3/CMakeCXXCompiler.cmake" - "CMakeFiles/CMakeDirectoryInformation.cmake" - ) - -# Dependency information for all targets: -set(CMAKE_DEPEND_INFO_FILES - "CMakeFiles/planner_cpp.dir/DependInfo.cmake" - ) diff --git a/build/CMakeFiles/Makefile2 b/build/CMakeFiles/Makefile2 deleted file mode 100644 index abb8744..0000000 --- a/build/CMakeFiles/Makefile2 +++ /dev/null @@ -1,111 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /app/src - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /app/build - -#============================================================================= -# Directory level rules for the build root directory - -# The main recursive "all" target. -all: CMakeFiles/planner_cpp.dir/all -.PHONY : all - -# The main recursive "preinstall" target. -preinstall: -.PHONY : preinstall - -# The main recursive "clean" target. -clean: CMakeFiles/planner_cpp.dir/clean -.PHONY : clean - -#============================================================================= -# Target rules for target CMakeFiles/planner_cpp.dir - -# All Build rule for target. -CMakeFiles/planner_cpp.dir/all: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/depend - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/app/build/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10,11,12,13 "Built target planner_cpp" -.PHONY : CMakeFiles/planner_cpp.dir/all - -# Build rule for subdir invocation for target. -CMakeFiles/planner_cpp.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 13 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/planner_cpp.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 0 -.PHONY : CMakeFiles/planner_cpp.dir/rule - -# Convenience name for target. -planner_cpp: CMakeFiles/planner_cpp.dir/rule -.PHONY : planner_cpp - -# clean rule for target. -CMakeFiles/planner_cpp.dir/clean: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/clean -.PHONY : CMakeFiles/planner_cpp.dir/clean - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system diff --git a/build/CMakeFiles/TargetDirectories.txt b/build/CMakeFiles/TargetDirectories.txt deleted file mode 100644 index 19db454..0000000 --- a/build/CMakeFiles/TargetDirectories.txt +++ /dev/null @@ -1,3 +0,0 @@ -/app/build/CMakeFiles/planner_cpp.dir -/app/build/CMakeFiles/edit_cache.dir -/app/build/CMakeFiles/rebuild_cache.dir diff --git a/build/CMakeFiles/cmake.check_cache b/build/CMakeFiles/cmake.check_cache deleted file mode 100644 index 3dccd73..0000000 --- a/build/CMakeFiles/cmake.check_cache +++ /dev/null @@ -1 +0,0 @@ -# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake b/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake deleted file mode 100644 index c13c978..0000000 --- a/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake +++ /dev/null @@ -1,34 +0,0 @@ - -# Consider dependencies only in project. -set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) - -# The set of languages for which implicit dependencies are needed: -set(CMAKE_DEPENDS_LANGUAGES - ) - -# The set of dependency files which are needed: -set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/app/src/asearch.cpp" "CMakeFiles/planner_cpp.dir/asearch.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/asearch.cpp.o.d" - "/app/src/astar.cpp" "CMakeFiles/planner_cpp.dir/astar.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/astar.cpp.o.d" - "/app/src/config.cpp" "CMakeFiles/planner_cpp.dir/config.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/config.cpp.o.d" - "/app/src/environmentoptions.cpp" "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d" - "/app/src/isearch.cpp" "CMakeFiles/planner_cpp.dir/isearch.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/isearch.cpp.o.d" - "/app/src/map.cpp" "CMakeFiles/planner_cpp.dir/map.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/map.cpp.o.d" - "/app/src/mission.cpp" "CMakeFiles/planner_cpp.dir/mission.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/mission.cpp.o.d" - "/app/src/path_smoothing.cpp" "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d" - "/app/src/python_bindings.cpp" "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d" - "/app/src/theta.cpp" "CMakeFiles/planner_cpp.dir/theta.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/theta.cpp.o.d" - "/app/src/tinyxml2.cpp" "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d" - "/app/src/wrapper.cpp" "CMakeFiles/planner_cpp.dir/wrapper.cpp.o" "gcc" "CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d" - ) - -# Targets to which this target links which contain Fortran sources. -set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES - ) - -# Targets to which this target links which contain Fortran sources. -set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES - ) - -# Fortran module output directory. -set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o b/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o deleted file mode 100644 index 23752013ff7149098cea640b001c4dbdb408de23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14248 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 N>mltk8JLRfzW}D0rhEVZ diff --git a/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d deleted file mode 100644 index 6c3f1ee..0000000 --- a/build/CMakeFiles/planner_cpp.dir/asearch.cpp.o.d +++ /dev/null @@ -1,189 +0,0 @@ -CMakeFiles/planner_cpp.dir/asearch.cpp.o: /app/src/asearch.cpp \ - /usr/include/stdc-predef.h /app/src/../include/mission.h \ - /app/src/../include/map.h /usr/include/c++/13/iostream \ - /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/ostream /usr/include/c++/13/ios \ - /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ - /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ - /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ - /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ - /app/src/../include/isearch.h /app/src/../include/searchresult.h \ - /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /app/src/../include/astar.h /app/src/../include/theta.h \ - /app/src/../include/path_smoothing.h diff --git a/build/CMakeFiles/planner_cpp.dir/astar.cpp.o b/build/CMakeFiles/planner_cpp.dir/astar.cpp.o deleted file mode 100644 index 99796b1267163d720f4c35108e42d98f812be180..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5104 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 diff --git a/build/CMakeFiles/planner_cpp.dir/astar.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/astar.cpp.o.d deleted file mode 100644 index 7c210e0..0000000 --- a/build/CMakeFiles/planner_cpp.dir/astar.cpp.o.d +++ /dev/null @@ -1,188 +0,0 @@ -CMakeFiles/planner_cpp.dir/astar.cpp.o: /app/src/astar.cpp \ - /usr/include/stdc-predef.h /app/src/../include/astar.h \ - /app/src/../include/isearch.h /app/src/../include/searchresult.h \ - /usr/include/c++/13/list /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/move.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/bits/ptr_traits.h /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ - /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/stdlib.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h /app/src/../include/map.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/c++/13/bits/ios_base.h \ - /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/refwrap.h \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/c++/13/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ - /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ - /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/build.make b/build/CMakeFiles/planner_cpp.dir/build.make deleted file mode 100644 index dae3296..0000000 --- a/build/CMakeFiles/planner_cpp.dir/build.make +++ /dev/null @@ -1,285 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# Delete rule output on recipe failure. -.DELETE_ON_ERROR: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /app/src - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /app/build - -# Include any dependencies generated for this target. -include CMakeFiles/planner_cpp.dir/depend.make -# Include any dependencies generated by the compiler for this target. -include CMakeFiles/planner_cpp.dir/compiler_depend.make - -# Include the progress variables for this target. -include CMakeFiles/planner_cpp.dir/progress.make - -# Include the compile flags for this target's objects. -include CMakeFiles/planner_cpp.dir/flags.make - -CMakeFiles/planner_cpp.dir/asearch.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/asearch.cpp.o: /app/src/asearch.cpp -CMakeFiles/planner_cpp.dir/asearch.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/planner_cpp.dir/asearch.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/asearch.cpp.o -MF CMakeFiles/planner_cpp.dir/asearch.cpp.o.d -o CMakeFiles/planner_cpp.dir/asearch.cpp.o -c /app/src/asearch.cpp - -CMakeFiles/planner_cpp.dir/asearch.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/asearch.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/asearch.cpp > CMakeFiles/planner_cpp.dir/asearch.cpp.i - -CMakeFiles/planner_cpp.dir/asearch.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/asearch.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/asearch.cpp -o CMakeFiles/planner_cpp.dir/asearch.cpp.s - -CMakeFiles/planner_cpp.dir/config.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/config.cpp.o: /app/src/config.cpp -CMakeFiles/planner_cpp.dir/config.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/planner_cpp.dir/config.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/config.cpp.o -MF CMakeFiles/planner_cpp.dir/config.cpp.o.d -o CMakeFiles/planner_cpp.dir/config.cpp.o -c /app/src/config.cpp - -CMakeFiles/planner_cpp.dir/config.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/config.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/config.cpp > CMakeFiles/planner_cpp.dir/config.cpp.i - -CMakeFiles/planner_cpp.dir/config.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/config.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/config.cpp -o CMakeFiles/planner_cpp.dir/config.cpp.s - -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: /app/src/environmentoptions.cpp -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -MF CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d -o CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -c /app/src/environmentoptions.cpp - -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/environmentoptions.cpp > CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i - -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/environmentoptions.cpp -o CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s - -CMakeFiles/planner_cpp.dir/mission.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/mission.cpp.o: /app/src/mission.cpp -CMakeFiles/planner_cpp.dir/mission.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/planner_cpp.dir/mission.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/mission.cpp.o -MF CMakeFiles/planner_cpp.dir/mission.cpp.o.d -o CMakeFiles/planner_cpp.dir/mission.cpp.o -c /app/src/mission.cpp - -CMakeFiles/planner_cpp.dir/mission.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/mission.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/mission.cpp > CMakeFiles/planner_cpp.dir/mission.cpp.i - -CMakeFiles/planner_cpp.dir/mission.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/mission.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/mission.cpp -o CMakeFiles/planner_cpp.dir/mission.cpp.s - -CMakeFiles/planner_cpp.dir/astar.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/astar.cpp.o: /app/src/astar.cpp -CMakeFiles/planner_cpp.dir/astar.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/planner_cpp.dir/astar.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/astar.cpp.o -MF CMakeFiles/planner_cpp.dir/astar.cpp.o.d -o CMakeFiles/planner_cpp.dir/astar.cpp.o -c /app/src/astar.cpp - -CMakeFiles/planner_cpp.dir/astar.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/astar.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/astar.cpp > CMakeFiles/planner_cpp.dir/astar.cpp.i - -CMakeFiles/planner_cpp.dir/astar.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/astar.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/astar.cpp -o CMakeFiles/planner_cpp.dir/astar.cpp.s - -CMakeFiles/planner_cpp.dir/isearch.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/isearch.cpp.o: /app/src/isearch.cpp -CMakeFiles/planner_cpp.dir/isearch.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/planner_cpp.dir/isearch.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/isearch.cpp.o -MF CMakeFiles/planner_cpp.dir/isearch.cpp.o.d -o CMakeFiles/planner_cpp.dir/isearch.cpp.o -c /app/src/isearch.cpp - -CMakeFiles/planner_cpp.dir/isearch.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/isearch.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/isearch.cpp > CMakeFiles/planner_cpp.dir/isearch.cpp.i - -CMakeFiles/planner_cpp.dir/isearch.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/isearch.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/isearch.cpp -o CMakeFiles/planner_cpp.dir/isearch.cpp.s - -CMakeFiles/planner_cpp.dir/map.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/map.cpp.o: /app/src/map.cpp -CMakeFiles/planner_cpp.dir/map.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/planner_cpp.dir/map.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/map.cpp.o -MF CMakeFiles/planner_cpp.dir/map.cpp.o.d -o CMakeFiles/planner_cpp.dir/map.cpp.o -c /app/src/map.cpp - -CMakeFiles/planner_cpp.dir/map.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/map.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/map.cpp > CMakeFiles/planner_cpp.dir/map.cpp.i - -CMakeFiles/planner_cpp.dir/map.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/map.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/map.cpp -o CMakeFiles/planner_cpp.dir/map.cpp.s - -CMakeFiles/planner_cpp.dir/theta.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/theta.cpp.o: /app/src/theta.cpp -CMakeFiles/planner_cpp.dir/theta.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/planner_cpp.dir/theta.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/theta.cpp.o -MF CMakeFiles/planner_cpp.dir/theta.cpp.o.d -o CMakeFiles/planner_cpp.dir/theta.cpp.o -c /app/src/theta.cpp - -CMakeFiles/planner_cpp.dir/theta.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/theta.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/theta.cpp > CMakeFiles/planner_cpp.dir/theta.cpp.i - -CMakeFiles/planner_cpp.dir/theta.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/theta.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/theta.cpp -o CMakeFiles/planner_cpp.dir/theta.cpp.s - -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: /app/src/path_smoothing.cpp -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -MF CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d -o CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -c /app/src/path_smoothing.cpp - -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/path_smoothing.cpp > CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i - -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/path_smoothing.cpp -o CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s - -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: /app/src/tinyxml2.cpp -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -MF CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d -o CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -c /app/src/tinyxml2.cpp - -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/tinyxml2.cpp > CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i - -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/tinyxml2.cpp -o CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s - -CMakeFiles/planner_cpp.dir/wrapper.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/wrapper.cpp.o: /app/src/wrapper.cpp -CMakeFiles/planner_cpp.dir/wrapper.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/planner_cpp.dir/wrapper.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/wrapper.cpp.o -MF CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d -o CMakeFiles/planner_cpp.dir/wrapper.cpp.o -c /app/src/wrapper.cpp - -CMakeFiles/planner_cpp.dir/wrapper.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/wrapper.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/wrapper.cpp > CMakeFiles/planner_cpp.dir/wrapper.cpp.i - -CMakeFiles/planner_cpp.dir/wrapper.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/wrapper.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/wrapper.cpp -o CMakeFiles/planner_cpp.dir/wrapper.cpp.s - -CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: CMakeFiles/planner_cpp.dir/flags.make -CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: /app/src/python_bindings.cpp -CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: CMakeFiles/planner_cpp.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building CXX object CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -MF CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d -o CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -c /app/src/python_bindings.cpp - -CMakeFiles/planner_cpp.dir/python_bindings.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/planner_cpp.dir/python_bindings.cpp.i" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /app/src/python_bindings.cpp > CMakeFiles/planner_cpp.dir/python_bindings.cpp.i - -CMakeFiles/planner_cpp.dir/python_bindings.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/planner_cpp.dir/python_bindings.cpp.s" - /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /app/src/python_bindings.cpp -o CMakeFiles/planner_cpp.dir/python_bindings.cpp.s - -# Object files for target planner_cpp -planner_cpp_OBJECTS = \ -"CMakeFiles/planner_cpp.dir/asearch.cpp.o" \ -"CMakeFiles/planner_cpp.dir/config.cpp.o" \ -"CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" \ -"CMakeFiles/planner_cpp.dir/mission.cpp.o" \ -"CMakeFiles/planner_cpp.dir/astar.cpp.o" \ -"CMakeFiles/planner_cpp.dir/isearch.cpp.o" \ -"CMakeFiles/planner_cpp.dir/map.cpp.o" \ -"CMakeFiles/planner_cpp.dir/theta.cpp.o" \ -"CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" \ -"CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" \ -"CMakeFiles/planner_cpp.dir/wrapper.cpp.o" \ -"CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" - -# External object files for target planner_cpp -planner_cpp_EXTERNAL_OBJECTS = - -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/asearch.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/config.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/mission.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/astar.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/isearch.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/map.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/theta.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/wrapper.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/build.make -planner_cpp.cpython-312-x86_64-linux-gnu.so: CMakeFiles/planner_cpp.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/app/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Linking CXX shared library planner_cpp.cpython-312-x86_64-linux-gnu.so" - $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/planner_cpp.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -CMakeFiles/planner_cpp.dir/build: planner_cpp.cpython-312-x86_64-linux-gnu.so -.PHONY : CMakeFiles/planner_cpp.dir/build - -CMakeFiles/planner_cpp.dir/clean: - $(CMAKE_COMMAND) -P CMakeFiles/planner_cpp.dir/cmake_clean.cmake -.PHONY : CMakeFiles/planner_cpp.dir/clean - -CMakeFiles/planner_cpp.dir/depend: - cd /app/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /app/src /app/src /app/build /app/build /app/build/CMakeFiles/planner_cpp.dir/DependInfo.cmake "--color=$(COLOR)" -.PHONY : CMakeFiles/planner_cpp.dir/depend diff --git a/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake b/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake deleted file mode 100644 index 1518797..0000000 --- a/build/CMakeFiles/planner_cpp.dir/cmake_clean.cmake +++ /dev/null @@ -1,33 +0,0 @@ -file(REMOVE_RECURSE - "CMakeFiles/planner_cpp.dir/asearch.cpp.o" - "CMakeFiles/planner_cpp.dir/asearch.cpp.o.d" - "CMakeFiles/planner_cpp.dir/astar.cpp.o" - "CMakeFiles/planner_cpp.dir/astar.cpp.o.d" - "CMakeFiles/planner_cpp.dir/config.cpp.o" - "CMakeFiles/planner_cpp.dir/config.cpp.o.d" - "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o" - "CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d" - "CMakeFiles/planner_cpp.dir/isearch.cpp.o" - "CMakeFiles/planner_cpp.dir/isearch.cpp.o.d" - "CMakeFiles/planner_cpp.dir/map.cpp.o" - "CMakeFiles/planner_cpp.dir/map.cpp.o.d" - "CMakeFiles/planner_cpp.dir/mission.cpp.o" - "CMakeFiles/planner_cpp.dir/mission.cpp.o.d" - "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o" - "CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d" - "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o" - "CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d" - "CMakeFiles/planner_cpp.dir/theta.cpp.o" - "CMakeFiles/planner_cpp.dir/theta.cpp.o.d" - "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o" - "CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d" - "CMakeFiles/planner_cpp.dir/wrapper.cpp.o" - "CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d" - "planner_cpp.cpython-312-x86_64-linux-gnu.so" - "planner_cpp.pdb" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/planner_cpp.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/build/CMakeFiles/planner_cpp.dir/compiler_depend.make b/build/CMakeFiles/planner_cpp.dir/compiler_depend.make deleted file mode 100644 index b2ca249..0000000 --- a/build/CMakeFiles/planner_cpp.dir/compiler_depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty compiler generated dependencies file for planner_cpp. -# This may be replaced when dependencies are built. diff --git a/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts b/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts deleted file mode 100644 index 09f8c01..0000000 --- a/build/CMakeFiles/planner_cpp.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for planner_cpp. diff --git a/build/CMakeFiles/planner_cpp.dir/config.cpp.o b/build/CMakeFiles/planner_cpp.dir/config.cpp.o deleted file mode 100644 index 900466f04ca50b4052ec14fbd02f14a584234f94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34320 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 AoB#j- diff --git a/build/CMakeFiles/planner_cpp.dir/config.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/config.cpp.o.d deleted file mode 100644 index 79c82d1..0000000 --- a/build/CMakeFiles/planner_cpp.dir/config.cpp.o.d +++ /dev/null @@ -1,187 +0,0 @@ -CMakeFiles/planner_cpp.dir/config.cpp.o: /app/src/config.cpp \ - /usr/include/stdc-predef.h /app/src/../include/config.h \ - /usr/include/c++/13/string /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/bits/stringfwd.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/postypes.h /usr/include/c++/13/cwchar \ - /usr/include/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/type_traits /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ - /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/cctype /usr/include/ctype.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/bits/basic_string.tcc /app/src/../include/gl_const.h \ - /app/src/../include/tinyxml2.h /usr/include/c++/13/climits \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/limits.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/syslimits.h \ - /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ - /usr/include/x86_64-linux-gnu/bits/local_lim.h \ - /usr/include/linux/limits.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ - /usr/include/x86_64-linux-gnu/bits/xopen_lim.h \ - /usr/include/x86_64-linux-gnu/bits/uio_lim.h /usr/include/c++/13/cstring \ - /usr/include/string.h /usr/include/strings.h \ - /usr/include/x86_64-linux-gnu/bits/strings_fortified.h \ - /usr/include/x86_64-linux-gnu/bits/string_fortified.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/exception \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ - /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ - /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/math.h \ - /usr/include/c++/13/cmath /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h diff --git a/build/CMakeFiles/planner_cpp.dir/depend.make b/build/CMakeFiles/planner_cpp.dir/depend.make deleted file mode 100644 index 5ccf826..0000000 --- a/build/CMakeFiles/planner_cpp.dir/depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty dependencies file for planner_cpp. -# This may be replaced when dependencies are built. diff --git a/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o b/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o deleted file mode 100644 index f3e8bcf84ea6dccc0a7e8e2fe27e14f3ffaab935..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1488 zcmbVML2DC16n@*LNvnm{(u2^V>q!MWB-^wU53&%~T%;ADD1wyTxNU;X?y@_ntp~k$ zNH5|q5Rd%{9t#D%`d7r87kzIsFByiUhd!A3-uvGB-puSw@-cY&WXf@X&4EWSikJoX zH8t{m<@zuW*Wu5?t-s$%@v}k|`=`y)k7gMz7H)r1Rg`~xTJihuO8plz{hjg!G#ibF z?!Dcpm&l%5TNmr1y0+O<q4&Y7i)#J8rm;f_$0Cjy9L?=rz(vl9o5n%5JOFUsKL_V{ z(OH?V%znY`kY-iqZfYd1s{JL6lYqWK34Z?@m!BT<g=mc>gXcBt6ZmJEcM-{WKdJH^ zaEU}?9^&Mvlcz~HPGp+NPMQ>=m1VH^YP+@-jB-1JT*C{FCgy6F<h&q?qRu5!m4@N| z=+cd+0d!t6=3N!xB#M)+3?oFD53tRijE^OVH=ztcL`4Cjm3HZzAd*zZ0<V3okYVes zjt`Qa$nrFcb9n+Hj}Jo;xA*q*up9GYSH~5U(%qM>7QT)>i>Ehb+8qo?&+n6SIXf0o zt!Z~Ln8k5b{R7lePk!g<D&zGjZyK-9xPeLb&AP8<VEA@zfVm0|^G#6sH=58~HIF7b zt7)$>pq{q=To?Ho8EpMaOwj*>&jlK{bVL3wbI8*^S<k=Macip<`k-gJ-!(+KBU?{> f?Ykq%nbv=%z%We@nH%Vh)3^2h4~CTk$JYM`u;zw+ diff --git a/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d deleted file mode 100644 index 3521143..0000000 --- a/build/CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o.d +++ /dev/null @@ -1,3 +0,0 @@ -CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o: \ - /app/src/environmentoptions.cpp /usr/include/stdc-predef.h \ - /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h diff --git a/build/CMakeFiles/planner_cpp.dir/flags.make b/build/CMakeFiles/planner_cpp.dir/flags.make deleted file mode 100644 index fe26479..0000000 --- a/build/CMakeFiles/planner_cpp.dir/flags.make +++ /dev/null @@ -1,9 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# compile CXX with /usr/bin/c++ -CXX_DEFINES = -Dplanner_cpp_EXPORTS - -CXX_INCLUDES = -I/app/src/../include -isystem /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include -isystem /home/jules/.pyenv/versions/3.12.11/include/python3.12 - -CXX_FLAGS = -O2 -Wall -Wextra -std=gnu++11 -fPIC diff --git a/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o b/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o deleted file mode 100644 index dc644cd14905596f711efee1909d4fea2629270b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17600 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 Q<KIb_FDTneI!pck-xfcW-~a#s diff --git a/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o.d deleted file mode 100644 index 9fcfaf0..0000000 --- a/build/CMakeFiles/planner_cpp.dir/isearch.cpp.o.d +++ /dev/null @@ -1,195 +0,0 @@ -CMakeFiles/planner_cpp.dir/isearch.cpp.o: /app/src/isearch.cpp \ - /usr/include/stdc-predef.h /app/src/../include/isearch.h \ - /app/src/../include/searchresult.h /usr/include/c++/13/list \ - /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/move.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/bits/ptr_traits.h /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ - /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/stdlib.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h /app/src/../include/map.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/c++/13/bits/ios_base.h \ - /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/refwrap.h \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/c++/13/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ - /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ - /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc /usr/include/c++/13/math.h \ - /usr/include/c++/13/limits /usr/include/c++/13/chrono \ - /usr/include/c++/13/bits/chrono.h /usr/include/c++/13/ratio \ - /usr/include/c++/13/cstdint \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ - /usr/include/c++/13/ctime /usr/include/c++/13/bits/parse_numbers.h diff --git a/build/CMakeFiles/planner_cpp.dir/link.txt b/build/CMakeFiles/planner_cpp.dir/link.txt deleted file mode 100644 index 74cfb21..0000000 --- a/build/CMakeFiles/planner_cpp.dir/link.txt +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/c++ -fPIC -O2 -Wall -Wextra -shared -Wl,-soname,planner_cpp.cpython-312-x86_64-linux-gnu.so -o planner_cpp.cpython-312-x86_64-linux-gnu.so CMakeFiles/planner_cpp.dir/asearch.cpp.o CMakeFiles/planner_cpp.dir/config.cpp.o CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o CMakeFiles/planner_cpp.dir/mission.cpp.o CMakeFiles/planner_cpp.dir/astar.cpp.o CMakeFiles/planner_cpp.dir/isearch.cpp.o CMakeFiles/planner_cpp.dir/map.cpp.o CMakeFiles/planner_cpp.dir/theta.cpp.o CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o CMakeFiles/planner_cpp.dir/wrapper.cpp.o CMakeFiles/planner_cpp.dir/python_bindings.cpp.o diff --git a/build/CMakeFiles/planner_cpp.dir/map.cpp.o b/build/CMakeFiles/planner_cpp.dir/map.cpp.o deleted file mode 100644 index 90e216f70164e3745da73e2d3026aeb138d705eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5320 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 M|Ho>W&8OS{-~KzxSpWb4 diff --git a/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d deleted file mode 100644 index 1d4aca6..0000000 --- a/build/CMakeFiles/planner_cpp.dir/map.cpp.o.d +++ /dev/null @@ -1,164 +0,0 @@ -CMakeFiles/planner_cpp.dir/map.cpp.o: /app/src/map.cpp \ - /usr/include/stdc-predef.h /app/src/../include/map.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/ostream /usr/include/c++/13/ios \ - /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ - /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ - /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ - /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/mission.cpp.o b/build/CMakeFiles/planner_cpp.dir/mission.cpp.o deleted file mode 100644 index 055bb6c4dca6974656711ec0477ca4c6cdbfd8b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16648 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 diff --git a/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d deleted file mode 100644 index 422e25c..0000000 --- a/build/CMakeFiles/planner_cpp.dir/mission.cpp.o.d +++ /dev/null @@ -1,190 +0,0 @@ -CMakeFiles/planner_cpp.dir/mission.cpp.o: /app/src/mission.cpp \ - /usr/include/stdc-predef.h /app/src/../include/mission.h \ - /app/src/../include/map.h /usr/include/c++/13/iostream \ - /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/ostream /usr/include/c++/13/ios \ - /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ - /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ - /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ - /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ - /app/src/../include/isearch.h /app/src/../include/searchresult.h \ - /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /app/src/../include/astar.h /app/src/../include/theta.h \ - /app/src/../include/path_smoothing.h /app/src/../include/astar.h \ - /app/src/../include/theta.h /app/src/../include/gl_const.h diff --git a/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o b/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o deleted file mode 100644 index 8f642e5c2f22f63f8ca20a2db6bb1bb4d41fad26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6224 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 ULw#x_f6?3&*?rT{wmAR)19klaPyhe` diff --git a/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d deleted file mode 100644 index 49b1995..0000000 --- a/build/CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o.d +++ /dev/null @@ -1,189 +0,0 @@ -CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o: \ - /app/src/path_smoothing.cpp /usr/include/stdc-predef.h \ - /app/src/../include/path_smoothing.h /app/src/../include/searchresult.h \ - /usr/include/c++/13/list /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/move.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/bits/ptr_traits.h /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ - /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/theta.h /app/src/../include/astar.h \ - /app/src/../include/isearch.h /app/src/../include/environmentoptions.h \ - /app/src/../include/gl_const.h /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/stdlib.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h /app/src/../include/map.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/c++/13/bits/ios_base.h \ - /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/refwrap.h \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/c++/13/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ - /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ - /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/progress.make b/build/CMakeFiles/planner_cpp.dir/progress.make deleted file mode 100644 index 3c0c99c..0000000 --- a/build/CMakeFiles/planner_cpp.dir/progress.make +++ /dev/null @@ -1,13 +0,0 @@ -CMAKE_PROGRESS_1 = 1 -CMAKE_PROGRESS_2 = 2 -CMAKE_PROGRESS_3 = 3 -CMAKE_PROGRESS_4 = 4 -CMAKE_PROGRESS_5 = 5 -CMAKE_PROGRESS_6 = 6 -CMAKE_PROGRESS_7 = 7 -CMAKE_PROGRESS_8 = 8 -CMAKE_PROGRESS_9 = 9 -CMAKE_PROGRESS_10 = 10 -CMAKE_PROGRESS_11 = 11 -CMAKE_PROGRESS_12 = 12 -CMAKE_PROGRESS_13 = 13 diff --git a/build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o b/build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o deleted file mode 100644 index f770e170b331c0831646d232cdf979ad52e168ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 307752 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 F|36e~34;It diff --git a/build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d deleted file mode 100644 index e07733c..0000000 --- a/build/CMakeFiles/planner_cpp.dir/python_bindings.cpp.o.d +++ /dev/null @@ -1,398 +0,0 @@ -CMakeFiles/planner_cpp.dir/python_bindings.cpp.o: \ - /app/src/python_bindings.cpp /usr/include/stdc-predef.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/pybind11.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/class.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/attr.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/common.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/Python.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/patchlevel.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pyconfig.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pymacconfig.h \ - /usr/include/c++/13/stdlib.h /usr/include/c++/13/cstdlib \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/stdlib.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/stdio.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/errno.h \ - /usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \ - /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h /usr/include/string.h \ - /usr/include/strings.h \ - /usr/include/x86_64-linux-gnu/bits/strings_fortified.h \ - /usr/include/x86_64-linux-gnu/bits/string_fortified.h \ - /usr/include/unistd.h /usr/include/x86_64-linux-gnu/bits/posix_opt.h \ - /usr/include/x86_64-linux-gnu/bits/environments.h \ - /usr/include/x86_64-linux-gnu/bits/confname.h \ - /usr/include/x86_64-linux-gnu/bits/getopt_posix.h \ - /usr/include/x86_64-linux-gnu/bits/getopt_core.h \ - /usr/include/x86_64-linux-gnu/bits/unistd.h \ - /usr/include/x86_64-linux-gnu/bits/unistd-decl.h \ - /usr/include/x86_64-linux-gnu/bits/unistd_ext.h \ - /usr/include/linux/close_range.h /usr/include/assert.h \ - /usr/include/wchar.h /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pyport.h \ - /usr/include/inttypes.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/limits.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/syslimits.h \ - /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ - /usr/include/x86_64-linux-gnu/bits/local_lim.h \ - /usr/include/linux/limits.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ - /usr/include/x86_64-linux-gnu/bits/xopen_lim.h \ - /usr/include/x86_64-linux-gnu/bits/uio_lim.h /usr/include/c++/13/math.h \ - /usr/include/c++/13/cmath /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/ext/type_traits.h /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /usr/include/x86_64-linux-gnu/sys/time.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/sys/stat.h \ - /usr/include/x86_64-linux-gnu/bits/stat.h \ - /usr/include/x86_64-linux-gnu/bits/struct_stat.h \ - /usr/include/x86_64-linux-gnu/bits/statx.h /usr/include/linux/stat.h \ - /usr/include/linux/types.h /usr/include/x86_64-linux-gnu/asm/types.h \ - /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \ - /usr/include/x86_64-linux-gnu/asm/bitsperlong.h \ - /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \ - /usr/include/linux/stddef.h \ - /usr/include/x86_64-linux-gnu/asm/posix_types.h \ - /usr/include/x86_64-linux-gnu/asm/posix_types_64.h \ - /usr/include/asm-generic/posix_types.h \ - /usr/include/x86_64-linux-gnu/bits/statx-generic.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_statx_timestamp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_statx.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/exports.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pymacro.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pymath.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pymem.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pymem.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pytypedefs.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pybuffer.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/object.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pystats.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/object.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/objimpl.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/objimpl.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/typeslots.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pyhash.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pydebug.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/bytearrayobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/bytearrayobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/bytesobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/bytesobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/unicodeobject.h \ - /usr/include/ctype.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/unicodeobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/initconfig.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pystate.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pystate.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pyerrors.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pyerrors.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/longobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/longobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/longintrepr.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/boolobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/floatobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/floatobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/complexobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/complexobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/rangeobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/memoryobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/memoryobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/tupleobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/tupleobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/listobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/listobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/dictobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/dictobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/odictobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/enumobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/setobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/setobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/methodobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/methodobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/moduleobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/funcobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/classobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/fileobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/fileobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pycapsule.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/code.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pyframe.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pyframe.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/traceback.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/traceback.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/sliceobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/cellobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/iterobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/genobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/descrobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/descrobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/genericaliasobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/warnings.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/warnings.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/weakrefobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/weakrefobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/structseq.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/picklebufobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pytime.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/codecs.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pythread.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pythread.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/context.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/modsupport.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/modsupport.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/compile.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/compile.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pythonrun.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pythonrun.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pylifecycle.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pylifecycle.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/ceval.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/ceval.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/sysmodule.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/sysmodule.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/osmodule.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/intrcheck.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/import.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/import.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/abstract.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/abstract.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/bltinmodule.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pyctype.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pystrtod.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pystrcmp.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/fileutils.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/fileutils.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/pyfpe.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/tracemalloc.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/frameobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/cpython/frameobject.h \ - /home/jules/.pyenv/versions/3.12.11/include/python3.12/pythread.h \ - /usr/include/c++/13/cstddef /usr/include/c++/13/cstring \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/forward_list /usr/include/c++/13/bits/forward_list.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/bits/forward_list.tcc /usr/include/c++/13/memory \ - /usr/include/c++/13/bits/stl_tempbuf.h \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_raw_storage_iter.h \ - /usr/include/c++/13/bits/align.h /usr/include/c++/13/bit \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/unique_ptr.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/shared_ptr.h /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/c++/13/bits/shared_ptr_base.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/ext/concurrence.h \ - /usr/include/c++/13/bits/shared_ptr_atomic.h \ - /usr/include/c++/13/bits/atomic_base.h \ - /usr/include/c++/13/bits/atomic_lockfree_defines.h \ - /usr/include/c++/13/backward/auto_ptr.h /usr/include/c++/13/stdexcept \ - /usr/include/c++/13/string /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdio \ - /usr/include/c++/13/cerrno /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/basic_string.tcc /usr/include/c++/13/typeindex \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/unordered_set \ - /usr/include/c++/13/bits/unordered_set.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc /usr/include/c++/13/version \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/cast.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/descr.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/type_caster_base.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/pytypes.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/buffer_info.h \ - /usr/include/c++/13/iterator /usr/include/c++/13/bits/stream_iterator.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/c++/13/streambuf /usr/include/c++/13/bits/ios_base.h \ - /usr/include/c++/13/bits/locale_classes.h \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/bits/streambuf.tcc /usr/include/c++/13/utility \ - /usr/include/c++/13/bits/stl_relops.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/cpp_conduit.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/internals.h \ - /usr/include/c++/13/mutex /usr/include/c++/13/bits/chrono.h \ - /usr/include/c++/13/ratio /usr/include/c++/13/cstdint \ - /usr/include/c++/13/limits /usr/include/c++/13/ctime \ - /usr/include/c++/13/bits/parse_numbers.h \ - /usr/include/c++/13/bits/std_mutex.h \ - /usr/include/c++/13/bits/unique_lock.h /usr/include/c++/13/thread \ - /usr/include/c++/13/bits/std_thread.h \ - /usr/include/c++/13/bits/this_thread_sleep.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/typeid.h \ - /usr/include/c++/13/cxxabi.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cxxabi_tweaks.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/value_and_holder.h \ - /usr/include/c++/13/array /usr/include/c++/13/compare \ - /usr/include/c++/13/functional /usr/include/c++/13/bits/std_function.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/options.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/exception_translation.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/detail/init.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/gil.h \ - /usr/include/c++/13/cassert \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/gil_safe_call_once.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/typing.h \ - /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /home/jules/.pyenv/versions/3.12.11/lib/python3.12/site-packages/pybind11/include/pybind11/stl.h \ - /usr/include/c++/13/deque /usr/include/c++/13/bits/stl_deque.h \ - /usr/include/c++/13/bits/deque.tcc /usr/include/c++/13/list \ - /usr/include/c++/13/bits/stl_list.h /usr/include/c++/13/bits/list.tcc \ - /usr/include/c++/13/map /usr/include/c++/13/bits/stl_tree.h \ - /usr/include/c++/13/bits/stl_map.h \ - /usr/include/c++/13/bits/stl_multimap.h /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/set \ - /usr/include/c++/13/bits/stl_set.h \ - /usr/include/c++/13/bits/stl_multiset.h /usr/include/c++/13/valarray \ - /usr/include/c++/13/bits/valarray_array.h \ - /usr/include/c++/13/bits/valarray_array.tcc \ - /usr/include/c++/13/bits/valarray_before.h \ - /usr/include/c++/13/bits/slice_array.h \ - /usr/include/c++/13/bits/valarray_after.h \ - /usr/include/c++/13/bits/gslice.h \ - /usr/include/c++/13/bits/gslice_array.h \ - /usr/include/c++/13/bits/mask_array.h \ - /usr/include/c++/13/bits/indirect_array.h /app/src/../include/wrapper.h diff --git a/build/CMakeFiles/planner_cpp.dir/theta.cpp.o b/build/CMakeFiles/planner_cpp.dir/theta.cpp.o deleted file mode 100644 index c0e3597720f05c0685da8cc9a13bbcfc8d9a3b7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7408 zcmc&&eQaA-6@O0BHC>CJyJcO*GU~A>u&36<Y1+o91Ha_G^hNcWu%vCEEv}O|jn%|9 z{uu4lc7wRv9<JMne?Wqv4gmr*X-E^(CK%0@eu6g2#6Gl@wjj3E%i5Ke(Q0K4zjNQc z@tbEe1b=X(=X>w(o^$Rw=bn4+P43r2oiz@JB*-CsK`M;|DoMY%xzrD`Zcw^OYGAze z7?aFAeAn~-e6$PjU6McbzLB4Uo@9(qx(st}k@^$z;vBVXzSl6Xo~40dp5Dl&hkf>W zb%VOT%e<zpQ~TB#g+z0&G5$`Qkq;XO+nCT2#mLu&3WKgtVLMjPl*W*`Q*kksm*hk* zu=9p_R9@KQ!f>NoUfAz8@*T~Fxw@G#brm}MyT&_%4iffs1&+$Ox*C|1*A$nUU!th_ zO-h}Xuh;V1>&&y7_n2xPQZJv>WaEtas^-0-nupcPf5Pyr7I<DRJO!(?z*V`BKva%u zibBCb>!wx@yd&>FiH`rcyf`Q^7tD~dfEh9@zkA%sw<_icY(8rCHyB5Q9`H(No2iu- z8jXxI4-sav=J<1=Zk`r6yL%qYRWxtWaTp!9V@eI2&K@8i8jXCP;tA!46qk`lkO`r^ z2%L~}O|Xd&SJ62$Gc!B^yLa8eY`lo&$augr!uaB94CKXHX@*$$Jq}iQp7}QM5x?#S z*8@N;|1@$?cf2cnoctIcgO-mSg}N_VK9aXu;Ed&>?tRNK#aukB28!87ijB-DE1zJ` z?pr@%_9!@pXYCf-L6*`!?fKfZnVI5?_!*ucQJOC<VM>v-huSu7RyV1e)vv1IsR_zw zD-q2PC=WdbawAEx?YSiH4k`V^@}iKk<)ZA;lo4ak>zM&-UAE7m{FotoLyGI7yiil> zc{n@_0DpbRJRdT*(AFDfe>3eh7=s?h7s}r;EW6g!Lvsf<bfeoC*ZUn<A^Rii800tq zTiu3vO6a!bQc1t1Zv2qP@^)&%vYYw4K{a17f2*!1$L}@|tux>2HLubk)B-bdA%=K8 zO)(3+ywf;HK@Gf=?NZI>r=7?r$29U#&aJ?CGT$Z}-eT_LCNqDf{P$0mMOfqwDP&qz z^EK5xt9#$q%oCSiRb}Hj)q6r`Cr&k|bR0T8cU;chhy`#8<o%z9q*mB@m!$jup%oT< zG4PU{dx|jgO2`~i>UHz7Zk|L&x>fTC>O_Otr!-QAHcj6(Jb_GeJAOyUX_1lNsnnCr z++cZ6H+<8~i@Nt+q+gR(X!X$P3Opz0Hednt8#MDhOYD^Qu=)0^;35d>j<+C7IZfJs zqj}Gu-L;>yYi34KX8GSlE>ec$+$xT#>3yYo7<fT0)MGLA8T`QE8F|kw@LV-to_0|@ zHODzMa9++G!EAZFi~FIL$CvUx_b8Z9Jm7nSR;Zirf1OH$Zk|F^+$>fadQGZ%S~I7( z9670)CwXjC?;*{6bJpz7K|hYUdCKzg!tQ077bWq6ymvEfWTAZ?!`(M?al7oL4`yb} zQ@Zyug|xlU<VM>RIFj8*`9b?9*^Xf;9xMV|DFV;1%zHuJa{*RNqqsf*8A+EPe-Ym# zEUJNb4SHZ&-gg-jECB5g#LPzW(~W%5&C_5~ut#W?ATEs*02YerWvqU{Dyp&GWALT{ zdIQJgy~kjk?!Bg&Z;<VdslX=1E$2=G<$l^yXaU?L&&0MD6pv>9Wj2E6{z(x$uLmyQ z|3pV&!3v~cgLw>B3<623U6Bj-!B1L8=ng5KLhJ0M;K@xQ8^KciAyf@d9HhuSO`$11 z0bqhoLljs?K^v3EL3nMsJda$~OxO;e>v1TWrkCP8z~2u!`zs2n_q=9a#Z<lHa9~tv zl5<X|{BXL-dv3>iWT^Qz4!u@bg+q32*3mj^(ycm<=z;f2&U&9EcP(FceUp}8H3OD< z3Jq2zMC6&55pwF+S1F}~vyt9pJ4FXD2Mz8#j+Wza@c=?k{w!eziI`EmsMZ%#;AZ|V z;d>+2BaYjUQ^g)|SfN~mo`$_~Q{hLAfM=qxjbCsSy|gd_SSojf-UyW4AKq7R&ri}_ z?|tE-eCJVoXumv(@AyTz|JjT3mnJ_{f9c^vk0g{_Z2M!%!<4^RIjH4F70uXlE;HZA z>yi=Blwfu#UHMz^&<QC){Prn5hS}jZ%va@w^W}wj42>UZ<TYMiENSwSUDxHabzSBO z%`E13p-hTw%sh#^X0r>Em;sDQTo;@8y#+(DIfgk(mmO}ip6Q2{_l-m|5!m+spw%56 zpLcuK4P@h)tlPiLx6IePbVZg8TXwg!`kGt49A?(l;n#(aUZ$(pu9Hv*CJC#>N7P_7 zlH<O6B*%7_<JJXp>nD)pB-6y_#FMxYWA-{jyNKp=r)#_><g7>6z!xG6v>%H|ole*O zns#U7zFOVsF4VO<J$vV<&gKWN)17VOb2VqOc3X|J4T$RWv^(A4Y<IfanXXodf0q=2 z*fSZr3Z!dqt?G0?Sf@EX<8w4;Pt6~k9ssHk9RmLeCM8MT<S?^gHQ9g_xD6WF&_OnI zI+HcV^_6Te=GQuFFw^-F>(<bFpJLO77!i4`Mp}h7#IeT+E3+A1j?Y=`4A$t^f7ob^ zG*%~4SttE%rV>XjX39y}SB`rC++gDud%6NR`BP4`mzD4hRq(CAE9uX2+>Mrq<qg_# ze3kTn3pnWsq9tOvg!X6nD)G~kyb?}-d61qHl#3viM`%C5NBAT^04z^{(cdhU^sE9- z{H}Rm0*U?Z<9LwcY|k-IXXkc_PJ~5sdHX$vb7o+4mWX}=ywbYAuY$kE^ptX@-%=yJ zQH6h|3cd<)skH7ls^C(FYMyT}nUum`>CLqGV~KQlAd-%TM`Hu2NNPto7LR4_#pGJ6 zJZddEMyo^J?P@68-Pzfz_l5h^_K+S1Pv83GYC0215&O!n-e@E>IARIRiu*}?cGS#9 zL!&)5(7$plvMt&h9ZbZBU_ehKGs3vyUmqjM-b`CKJOra-qyFXLP%NDZ#}h+QX7tMN z-Qkf$Vw>L6+f4RwoBhj4V^1nJCiJzgg@}#8KN^ciyN7#YTSqc_40O+$Wp_uC1H{65 z{??A@=xA5EdjS3ojz+;$5^o!V6_NNLp?2KwPes$wOiv^gjc0VWChW3Q-?PTwrpND% zr4sQm%yuU;u|zx#oqfIh9zwUP)Lp;U-y9APZr>gmh~4XNK|dV}4~|CC>2PL8GKy^) zPUs}wHM<4a4eLgO6Jj@3MuvvElhL?k4Re9*SWC-bVl0`>M2*f=VvKz4OVBS5MipCU z)%sh9WAUNh?BHNDold0E?aN`Q-*2t*F%FlMEK6q+$&OSk6HOr)*mOw}=j=}OufvCD z7b9_AsZ!FZ6!=c`i3neSPvDOd2qOFw_ym3@&Jj^LKh*(&+xeZm?v(Sl*>F4mZM+_p z^XoR;&cDNk+wK3c4Y%_*kYW%ubnb;;hpXV%s^C8MFRqX3$yLGMsDj^4n*=Jir=D+Q zIsVxyc&rM3sS57mrMX;xcNIKS1%IRpey|FDt_ohuuY_`YerdyH#7XSeOE!F=4Zo3s z2_ik@y5Mgi5JWir&r;xo5mEZygiqWB+)RcGox~^RiC^5|gxmSWTas`)zu+NU+<T;l zyF#$!X1|s_f`=fF4Znr=scE+1pS0m^Hr#2$gEqW$ds^>Snj(8{;5^jy@IK+U@;)_g z-lt>Ck1|8(%}OM2Hyf4o2t3H~@AFpR;+^uxGF-e<=p8~N_{DpqrwkYG5y_X{F_wu8 zpv|PLc0}}2(b0%66WyMXd_xiZA>$iJrzKx1K?9%dV(~FXhN1@sniN+}#Yu6I_;5+k zZ6*2QiA>aoKRlMwb-0a>x5l%+WGa!2rZPLQFqsn_2@j_tV^PVsHI>LFEoc9S-=`r< z=cAm091uB4dro;y=YvSJ)#MF}jolg4C3(twAt%~u@_i%(qMA)a^7IxLa-wwuqpjs- z5<QEy@b(@1;Q=Pj8=q!5OS*yr;O!Y6lxBWU(E7wD;vvr7XMoZAoDDsTLR3U55KqI| znI-6v&i_{44_VS#LkVvqu|6;Fvoq!EcVULvUnbwr?H7Iu1;T$Z*3e<`E0cFou>^@c zp!m^N2zjA*7+9tClYISt%-c!G3oL?8rS<#y`WHAOtxxq#$cy!N1Ecku@!9DZU!V5J zPQ*(j+J|g?Ho<@X{vYoDcfe13R2Dwz3YT|teWDTei!uFON4Av9H}c~BurQPhl*|7d zIEx>j7mdL$ub*;&;zwsk$cy+@TAM@;@Pm7R8%DK*a=cuga-ux<0ZBo+%t1dWbF9oA TR=X<6U*PsnGA*T_a`}G&sRwq- diff --git a/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d deleted file mode 100644 index 103f10e..0000000 --- a/build/CMakeFiles/planner_cpp.dir/theta.cpp.o.d +++ /dev/null @@ -1,189 +0,0 @@ -CMakeFiles/planner_cpp.dir/theta.cpp.o: /app/src/theta.cpp \ - /usr/include/stdc-predef.h /app/src/../include/theta.h \ - /app/src/../include/astar.h /app/src/../include/isearch.h \ - /app/src/../include/searchresult.h /usr/include/c++/13/list \ - /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/move.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/bits/ptr_traits.h /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h /usr/include/c++/13/new \ - /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/memoryfwd.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h /app/src/../include/gl_const.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/stdlib.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h /app/src/../include/map.h \ - /usr/include/c++/13/iostream /usr/include/c++/13/ostream \ - /usr/include/c++/13/ios /usr/include/c++/13/iosfwd \ - /usr/include/c++/13/bits/stringfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/c++/13/bits/ios_base.h \ - /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/refwrap.h \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/c++/13/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /usr/include/c++/13/sstream \ - /usr/include/c++/13/bits/sstream.tcc /usr/include/c++/13/algorithm \ - /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc diff --git a/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o b/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o deleted file mode 100644 index 85027b64c9dcdf9c32d6baa039c6428a1d87b18f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122448 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 diff --git a/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d deleted file mode 100644 index 295b6d0..0000000 --- a/build/CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o.d +++ /dev/null @@ -1,84 +0,0 @@ -CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o: /app/src/tinyxml2.cpp \ - /usr/include/stdc-predef.h /app/src/../include/tinyxml2.h \ - /usr/include/c++/13/cctype \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/c++/13/climits \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/limits.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/syslimits.h \ - /usr/include/limits.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ - /usr/include/x86_64-linux-gnu/bits/local_lim.h \ - /usr/include/linux/limits.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ - /usr/include/x86_64-linux-gnu/bits/xopen_lim.h \ - /usr/include/x86_64-linux-gnu/bits/uio_lim.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstring \ - /usr/include/string.h /usr/include/strings.h \ - /usr/include/x86_64-linux-gnu/bits/strings_fortified.h \ - /usr/include/x86_64-linux-gnu/bits/string_fortified.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/cstddef /usr/include/c++/13/cstdarg diff --git a/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o b/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o deleted file mode 100644 index 043272faa4f68f6838791711067606261bf226b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11392 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 UvP_4bJ#xyInL=N+IA@jrUu&F7g8%>k diff --git a/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d b/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d deleted file mode 100644 index 8963585..0000000 --- a/build/CMakeFiles/planner_cpp.dir/wrapper.cpp.o.d +++ /dev/null @@ -1,196 +0,0 @@ -CMakeFiles/planner_cpp.dir/wrapper.cpp.o: /app/src/wrapper.cpp \ - /usr/include/stdc-predef.h /app/src/../include/mission.h \ - /app/src/../include/map.h /usr/include/c++/13/iostream \ - /usr/include/c++/13/bits/requires_hosted.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/cpu_defines.h \ - /usr/include/c++/13/ostream /usr/include/c++/13/ios \ - /usr/include/c++/13/iosfwd /usr/include/c++/13/bits/stringfwd.h \ - /usr/include/c++/13/bits/memoryfwd.h /usr/include/c++/13/bits/postypes.h \ - /usr/include/c++/13/cwchar /usr/include/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/types/wint_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/wchar2.h \ - /usr/include/c++/13/exception /usr/include/c++/13/bits/exception.h \ - /usr/include/c++/13/bits/exception_ptr.h \ - /usr/include/c++/13/bits/exception_defines.h \ - /usr/include/c++/13/bits/cxxabi_init_exception.h \ - /usr/include/c++/13/typeinfo /usr/include/c++/13/bits/hash_bytes.h \ - /usr/include/c++/13/new /usr/include/c++/13/bits/move.h \ - /usr/include/c++/13/type_traits \ - /usr/include/c++/13/bits/nested_exception.h \ - /usr/include/c++/13/bits/char_traits.h \ - /usr/include/c++/13/bits/localefwd.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++locale.h \ - /usr/include/c++/13/clocale /usr/include/locale.h \ - /usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/13/cctype \ - /usr/include/ctype.h /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/c++/13/bits/ios_base.h /usr/include/c++/13/ext/atomicity.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/sched.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \ - /usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \ - /usr/include/x86_64-linux-gnu/bits/time.h \ - /usr/include/x86_64-linux-gnu/bits/timex.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ - /usr/include/x86_64-linux-gnu/bits/setjmp.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \ - /usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/atomic_word.h \ - /usr/include/x86_64-linux-gnu/sys/single_threaded.h \ - /usr/include/c++/13/bits/locale_classes.h /usr/include/c++/13/string \ - /usr/include/c++/13/bits/allocator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/c++allocator.h \ - /usr/include/c++/13/bits/new_allocator.h \ - /usr/include/c++/13/bits/functexcept.h \ - /usr/include/c++/13/bits/cpp_type_traits.h \ - /usr/include/c++/13/bits/ostream_insert.h \ - /usr/include/c++/13/bits/cxxabi_forced.h \ - /usr/include/c++/13/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/13/bits/concept_check.h \ - /usr/include/c++/13/debug/assertions.h \ - /usr/include/c++/13/bits/stl_iterator_base_types.h \ - /usr/include/c++/13/bits/stl_iterator.h \ - /usr/include/c++/13/ext/type_traits.h \ - /usr/include/c++/13/bits/ptr_traits.h \ - /usr/include/c++/13/bits/stl_function.h \ - /usr/include/c++/13/backward/binders.h \ - /usr/include/c++/13/ext/numeric_traits.h \ - /usr/include/c++/13/bits/stl_algobase.h \ - /usr/include/c++/13/bits/stl_pair.h /usr/include/c++/13/bits/utility.h \ - /usr/include/c++/13/debug/debug.h \ - /usr/include/c++/13/bits/predefined_ops.h \ - /usr/include/c++/13/bits/refwrap.h /usr/include/c++/13/bits/invoke.h \ - /usr/include/c++/13/bits/range_access.h \ - /usr/include/c++/13/initializer_list \ - /usr/include/c++/13/bits/basic_string.h \ - /usr/include/c++/13/ext/alloc_traits.h \ - /usr/include/c++/13/bits/alloc_traits.h \ - /usr/include/c++/13/bits/stl_construct.h \ - /usr/include/c++/13/ext/string_conversions.h /usr/include/c++/13/cstdlib \ - /usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/select-decl.h /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/13/bits/std_abs.h /usr/include/c++/13/cstdio \ - /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/c++/13/cerrno \ - /usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \ - /usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \ - /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ - /usr/include/x86_64-linux-gnu/bits/types/error_t.h \ - /usr/include/c++/13/bits/charconv.h \ - /usr/include/c++/13/bits/functional_hash.h \ - /usr/include/c++/13/bits/basic_string.tcc \ - /usr/include/c++/13/bits/locale_classes.tcc \ - /usr/include/c++/13/system_error \ - /usr/include/x86_64-linux-gnu/c++/13/bits/error_constants.h \ - /usr/include/c++/13/stdexcept /usr/include/c++/13/streambuf \ - /usr/include/c++/13/bits/streambuf.tcc \ - /usr/include/c++/13/bits/basic_ios.h \ - /usr/include/c++/13/bits/locale_facets.h /usr/include/c++/13/cwctype \ - /usr/include/wctype.h /usr/include/x86_64-linux-gnu/bits/wctype-wchar.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_base.h \ - /usr/include/c++/13/bits/streambuf_iterator.h \ - /usr/include/x86_64-linux-gnu/c++/13/bits/ctype_inline.h \ - /usr/include/c++/13/bits/locale_facets.tcc \ - /usr/include/c++/13/bits/basic_ios.tcc \ - /usr/include/c++/13/bits/ostream.tcc /usr/include/c++/13/istream \ - /usr/include/c++/13/bits/istream.tcc /app/src/../include/gl_const.h \ - /usr/include/c++/13/sstream /usr/include/c++/13/bits/sstream.tcc \ - /usr/include/c++/13/algorithm /usr/include/c++/13/bits/stl_algo.h \ - /usr/include/c++/13/bits/algorithmfwd.h \ - /usr/include/c++/13/bits/stl_heap.h \ - /usr/include/c++/13/bits/uniform_int_dist.h \ - /usr/include/c++/13/bits/stl_tempbuf.h /usr/include/c++/13/vector \ - /usr/include/c++/13/bits/stl_uninitialized.h \ - /usr/include/c++/13/bits/stl_vector.h \ - /usr/include/c++/13/bits/stl_bvector.h \ - /usr/include/c++/13/bits/vector.tcc /app/src/../include/config.h \ - /app/src/../include/isearch.h /app/src/../include/searchresult.h \ - /usr/include/c++/13/list /usr/include/c++/13/bits/stl_list.h \ - /usr/include/c++/13/bits/allocated_ptr.h \ - /usr/include/c++/13/ext/aligned_buffer.h \ - /usr/include/c++/13/bits/list.tcc /app/src/../include/node.h \ - /app/src/../include/environmentoptions.h \ - /usr/include/c++/13/unordered_map \ - /usr/include/c++/13/bits/unordered_map.h \ - /usr/include/c++/13/bits/hashtable.h \ - /usr/include/c++/13/bits/hashtable_policy.h /usr/include/c++/13/tuple \ - /usr/include/c++/13/bits/uses_allocator.h \ - /usr/include/c++/13/bits/enable_special_members.h \ - /usr/include/c++/13/bits/erase_if.h /usr/include/c++/13/cmath \ - /usr/include/math.h /usr/include/x86_64-linux-gnu/bits/math-vector.h \ - /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ - /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ - /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ - /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ - /usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h \ - /usr/include/x86_64-linux-gnu/bits/iscanonical.h \ - /app/src/../include/astar.h /app/src/../include/theta.h \ - /app/src/../include/path_smoothing.h /usr/include/c++/13/chrono \ - /usr/include/c++/13/bits/chrono.h /usr/include/c++/13/ratio \ - /usr/include/c++/13/cstdint \ - /usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-least.h \ - /usr/include/c++/13/limits /usr/include/c++/13/ctime \ - /usr/include/c++/13/bits/parse_numbers.h /app/src/../include/wrapper.h diff --git a/build/CMakeFiles/progress.marks b/build/CMakeFiles/progress.marks deleted file mode 100644 index b1bd38b..0000000 --- a/build/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -13 diff --git a/build/Makefile b/build/Makefile deleted file mode 100644 index 81cdd16..0000000 --- a/build/Makefile +++ /dev/null @@ -1,477 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.28 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# Allow only one "make -f Makefile2" at a time, but pass parallelism. -.NOTPARALLEL: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /app/src - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /app/build - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "No interactive CMake dialog available..." - /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles /app/build//CMakeFiles/progress.marks - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all - $(CMAKE_COMMAND) -E cmake_progress_start /app/build/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -#============================================================================= -# Target rules for targets named planner_cpp - -# Build rule for target. -planner_cpp: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 planner_cpp -.PHONY : planner_cpp - -# fast build rule for target. -planner_cpp/fast: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/build -.PHONY : planner_cpp/fast - -asearch.o: asearch.cpp.o -.PHONY : asearch.o - -# target to build an object file -asearch.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.o -.PHONY : asearch.cpp.o - -asearch.i: asearch.cpp.i -.PHONY : asearch.i - -# target to preprocess a source file -asearch.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.i -.PHONY : asearch.cpp.i - -asearch.s: asearch.cpp.s -.PHONY : asearch.s - -# target to generate assembly for a file -asearch.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/asearch.cpp.s -.PHONY : asearch.cpp.s - -astar.o: astar.cpp.o -.PHONY : astar.o - -# target to build an object file -astar.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.o -.PHONY : astar.cpp.o - -astar.i: astar.cpp.i -.PHONY : astar.i - -# target to preprocess a source file -astar.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.i -.PHONY : astar.cpp.i - -astar.s: astar.cpp.s -.PHONY : astar.s - -# target to generate assembly for a file -astar.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/astar.cpp.s -.PHONY : astar.cpp.s - -config.o: config.cpp.o -.PHONY : config.o - -# target to build an object file -config.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.o -.PHONY : config.cpp.o - -config.i: config.cpp.i -.PHONY : config.i - -# target to preprocess a source file -config.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.i -.PHONY : config.cpp.i - -config.s: config.cpp.s -.PHONY : config.s - -# target to generate assembly for a file -config.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/config.cpp.s -.PHONY : config.cpp.s - -environmentoptions.o: environmentoptions.cpp.o -.PHONY : environmentoptions.o - -# target to build an object file -environmentoptions.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.o -.PHONY : environmentoptions.cpp.o - -environmentoptions.i: environmentoptions.cpp.i -.PHONY : environmentoptions.i - -# target to preprocess a source file -environmentoptions.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.i -.PHONY : environmentoptions.cpp.i - -environmentoptions.s: environmentoptions.cpp.s -.PHONY : environmentoptions.s - -# target to generate assembly for a file -environmentoptions.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/environmentoptions.cpp.s -.PHONY : environmentoptions.cpp.s - -isearch.o: isearch.cpp.o -.PHONY : isearch.o - -# target to build an object file -isearch.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.o -.PHONY : isearch.cpp.o - -isearch.i: isearch.cpp.i -.PHONY : isearch.i - -# target to preprocess a source file -isearch.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.i -.PHONY : isearch.cpp.i - -isearch.s: isearch.cpp.s -.PHONY : isearch.s - -# target to generate assembly for a file -isearch.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/isearch.cpp.s -.PHONY : isearch.cpp.s - -map.o: map.cpp.o -.PHONY : map.o - -# target to build an object file -map.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.o -.PHONY : map.cpp.o - -map.i: map.cpp.i -.PHONY : map.i - -# target to preprocess a source file -map.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.i -.PHONY : map.cpp.i - -map.s: map.cpp.s -.PHONY : map.s - -# target to generate assembly for a file -map.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/map.cpp.s -.PHONY : map.cpp.s - -mission.o: mission.cpp.o -.PHONY : mission.o - -# target to build an object file -mission.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.o -.PHONY : mission.cpp.o - -mission.i: mission.cpp.i -.PHONY : mission.i - -# target to preprocess a source file -mission.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.i -.PHONY : mission.cpp.i - -mission.s: mission.cpp.s -.PHONY : mission.s - -# target to generate assembly for a file -mission.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/mission.cpp.s -.PHONY : mission.cpp.s - -path_smoothing.o: path_smoothing.cpp.o -.PHONY : path_smoothing.o - -# target to build an object file -path_smoothing.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.o -.PHONY : path_smoothing.cpp.o - -path_smoothing.i: path_smoothing.cpp.i -.PHONY : path_smoothing.i - -# target to preprocess a source file -path_smoothing.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.i -.PHONY : path_smoothing.cpp.i - -path_smoothing.s: path_smoothing.cpp.s -.PHONY : path_smoothing.s - -# target to generate assembly for a file -path_smoothing.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/path_smoothing.cpp.s -.PHONY : path_smoothing.cpp.s - -python_bindings.o: python_bindings.cpp.o -.PHONY : python_bindings.o - -# target to build an object file -python_bindings.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.o -.PHONY : python_bindings.cpp.o - -python_bindings.i: python_bindings.cpp.i -.PHONY : python_bindings.i - -# target to preprocess a source file -python_bindings.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.i -.PHONY : python_bindings.cpp.i - -python_bindings.s: python_bindings.cpp.s -.PHONY : python_bindings.s - -# target to generate assembly for a file -python_bindings.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/python_bindings.cpp.s -.PHONY : python_bindings.cpp.s - -theta.o: theta.cpp.o -.PHONY : theta.o - -# target to build an object file -theta.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.o -.PHONY : theta.cpp.o - -theta.i: theta.cpp.i -.PHONY : theta.i - -# target to preprocess a source file -theta.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.i -.PHONY : theta.cpp.i - -theta.s: theta.cpp.s -.PHONY : theta.s - -# target to generate assembly for a file -theta.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/theta.cpp.s -.PHONY : theta.cpp.s - -tinyxml2.o: tinyxml2.cpp.o -.PHONY : tinyxml2.o - -# target to build an object file -tinyxml2.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.o -.PHONY : tinyxml2.cpp.o - -tinyxml2.i: tinyxml2.cpp.i -.PHONY : tinyxml2.i - -# target to preprocess a source file -tinyxml2.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.i -.PHONY : tinyxml2.cpp.i - -tinyxml2.s: tinyxml2.cpp.s -.PHONY : tinyxml2.s - -# target to generate assembly for a file -tinyxml2.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/tinyxml2.cpp.s -.PHONY : tinyxml2.cpp.s - -wrapper.o: wrapper.cpp.o -.PHONY : wrapper.o - -# target to build an object file -wrapper.cpp.o: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.o -.PHONY : wrapper.cpp.o - -wrapper.i: wrapper.cpp.i -.PHONY : wrapper.i - -# target to preprocess a source file -wrapper.cpp.i: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.i -.PHONY : wrapper.cpp.i - -wrapper.s: wrapper.cpp.s -.PHONY : wrapper.s - -# target to generate assembly for a file -wrapper.cpp.s: - $(MAKE) $(MAKESILENT) -f CMakeFiles/planner_cpp.dir/build.make CMakeFiles/planner_cpp.dir/wrapper.cpp.s -.PHONY : wrapper.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... rebuild_cache" - @echo "... planner_cpp" - @echo "... asearch.o" - @echo "... asearch.i" - @echo "... asearch.s" - @echo "... astar.o" - @echo "... astar.i" - @echo "... astar.s" - @echo "... config.o" - @echo "... config.i" - @echo "... config.s" - @echo "... environmentoptions.o" - @echo "... environmentoptions.i" - @echo "... environmentoptions.s" - @echo "... isearch.o" - @echo "... isearch.i" - @echo "... isearch.s" - @echo "... map.o" - @echo "... map.i" - @echo "... map.s" - @echo "... mission.o" - @echo "... mission.i" - @echo "... mission.s" - @echo "... path_smoothing.o" - @echo "... path_smoothing.i" - @echo "... path_smoothing.s" - @echo "... python_bindings.o" - @echo "... python_bindings.i" - @echo "... python_bindings.s" - @echo "... theta.o" - @echo "... theta.i" - @echo "... theta.s" - @echo "... tinyxml2.o" - @echo "... tinyxml2.i" - @echo "... tinyxml2.s" - @echo "... wrapper.o" - @echo "... wrapper.i" - @echo "... wrapper.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system diff --git a/build/cmake_install.cmake b/build/cmake_install.cmake deleted file mode 100644 index ab209a3..0000000 --- a/build/cmake_install.cmake +++ /dev/null @@ -1,54 +0,0 @@ -# Install script for directory: /app/src - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -# Set default install directory permissions. -if(NOT DEFINED CMAKE_OBJDUMP) - set(CMAKE_OBJDUMP "/usr/bin/objdump") -endif() - -if(CMAKE_INSTALL_COMPONENT) - set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") -else() - set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") -endif() - -string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT - "${CMAKE_INSTALL_MANIFEST_FILES}") -file(WRITE "/app/build/${CMAKE_INSTALL_MANIFEST}" - "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/build/planner_cpp.cpython-312-x86_64-linux-gnu.so b/build/planner_cpp.cpython-312-x86_64-linux-gnu.so deleted file mode 100755 index 21a97aa74fdc9c808bd8cfa7a1e74cd1d68de43e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 370584 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 R4uASn{o->hs3B#y?tc_8_!R&E diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e3eb93f..d6fc903 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -59,10 +59,10 @@ set(SOURCE_FILES python_bindings.cpp # Added python_bindings.cpp ) -add_library(planner_cpp SHARED ${SOURCE_FILES}) +add_library(ThetaStarPlanner SHARED ${SOURCE_FILES}) # Link pybind11 -target_link_libraries(planner_cpp PRIVATE pybind11::module) +target_link_libraries(ThetaStarPlanner PRIVATE pybind11::module) # Ensure the library is placed in a location where Python can find it, # or provide instructions to the user to add the build directory to PYTHONPATH. @@ -70,11 +70,11 @@ target_link_libraries(planner_cpp PRIVATE pybind11::module) # Optional: Define a module name that Python expects, if different from target name. # By default, pybind11 creates a module based on the target name. -# On Linux, it will be planner_cpp.so, on Windows planner_cpp.pyd. -# pybind11_add_module(planner_cpp_py ${SOURCE_FILES} src/python_bindings.cpp) # Example if using pybind11_add_module +# On Linux, it will be ThetaStarPlanner.so, on Windows ThetaStarPlanner.pyd. +# pybind11_add_module(ThetaStarPlanner_py ${SOURCE_FILES} src/python_bindings.cpp) # Example if using pybind11_add_module # Include directories (important for CMake to find headers) -target_include_directories(planner_cpp PUBLIC ../include) # Make headers in 'include' available +target_include_directories(ThetaStarPlanner PUBLIC ../include) # Make headers in 'include' available # pybind11::module should handle its own include directories when linked. # Get Python's extension suffix (e.g., .cpython-38-x86_64-linux-gnu.so or .pyd on Windows) @@ -99,8 +99,8 @@ else() endif() # Set the output name and suffix for the Python module -set_target_properties(planner_cpp PROPERTIES +set_target_properties(ThetaStarPlanner PROPERTIES PREFIX "" # No 'lib' prefix for Python modules - LIBRARY_OUTPUT_NAME "planner_cpp" # Output name + LIBRARY_OUTPUT_NAME "ThetaStarPlanner" # Output name SUFFIX "${PYTHON_EXT_SUFFIX}" # Suffix like .cpython-XYZ.so or .pyd ) \ No newline at end of file diff --git a/src/python_bindings.cpp b/src/python_bindings.cpp index da29a13..9737855 100644 --- a/src/python_bindings.cpp +++ b/src/python_bindings.cpp @@ -5,11 +5,11 @@ namespace py = pybind11; -PYBIND11_MODULE(planner_cpp, m) { +PYBIND11_MODULE(ThetaStarPlanner, m) { m.doc() = R"pbdoc( Python module for A* and Theta* path planning --------------------------------------------- - .. currentmodule:: planner_cpp + .. currentmodule:: ThetaStarPlanner .. autosummary:: :toctree: _generate plan_2d diff --git a/src/wrapper.cpp b/src/wrapper.cpp index e4a2ade..c36fe05 100644 --- a/src/wrapper.cpp +++ b/src/wrapper.cpp @@ -74,6 +74,7 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe double y = origin[1] + pt[1] * resolution; path.push_back({x, y}); } + path.push_back({goal[0], goal[1]}); // Ensure the goal is included in the path time_spent = dt_theta; return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid } @@ -93,6 +94,7 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe double y = origin[1] + pt[1] * resolution; path.push_back({x, y}); } + path.push_back({goal[0], goal[1]}); // Ensure the goal is included in the path time_spent = dt_astar; return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid } From 778f1ae807360b0ee124633665e1714f9c281ed5 Mon Sep 17 00:00:00 2001 From: xh <huxiao1@idea.edu.cn> Date: Fri, 11 Jul 2025 11:02:37 +0800 Subject: [PATCH 6/8] fix errors in wrapper.cpp and example.py. --- example.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/example.py b/example.py index e48c288..767b743 100644 --- a/example.py +++ b/example.py @@ -37,18 +37,18 @@ # This is a simplified search. try: - import planner_cpp + import ThetaStarPlanner module_found = True except ImportError as e: - print(f"Error importing planner_cpp: {e}") - print("Please ensure that planner_cpp module is built and either:") + print(f"Error importing ThetaStarPlanner: {e}") + print("Please ensure that ThetaStarPlanner module is built and either:") print("1. The script is run from a directory where Python can find it (e.g., build directory after CMake).") print("2. The build directory (e.g., 'build' or 'build/Release') is in your PYTHONPATH.") print(f"Current sys.path: {sys.path}") exit(1) def main(): - print("Successfully imported planner_cpp module.") + print("Successfully imported ThetaStarPlanner module.") # Example Usage origin = [0.0, 0.0] # Map origin (meters) @@ -83,7 +83,7 @@ def main(): # Plan using A* print("\nPlanning with A*...") use_theta_star_false = False - status_astar, path_astar, time_astar = planner_cpp.plan_2d( + status_astar, path_astar, time_astar = ThetaStarPlanner.plan_2d( origin, dim, map_data, start_m, goal_m, resolution, use_theta_star_false ) @@ -100,7 +100,7 @@ def main(): # Plan using Theta* print("\nPlanning with Theta*...") use_theta_star_true = True - status_theta, path_theta, time_theta = planner_cpp.plan_2d( + status_theta, path_theta, time_theta = ThetaStarPlanner.plan_2d( origin, dim, map_data, start_m, goal_m, resolution, use_theta_star_true ) From bf4eaf520df15ffb154242a2ad7cb8d9af0ee2f0 Mon Sep 17 00:00:00 2001 From: xh <huxiao1@idea.edu.cn> Date: Fri, 11 Jul 2025 13:04:46 +0800 Subject: [PATCH 7/8] fix some bugs. --- example.py | 10 +-- example2.py | 199 ++++++++++++++++++++++++++++++++++++++++++++++++ include/map.h | 2 +- src/map.cpp | 39 +++++----- src/wrapper.cpp | 6 +- 5 files changed, 224 insertions(+), 32 deletions(-) create mode 100644 example2.py diff --git a/example.py b/example.py index 767b743..03c1c8b 100644 --- a/example.py +++ b/example.py @@ -63,11 +63,11 @@ def main(): # Add some obstacles # map_data[index] where index = row * width + col # Example: place an obstacle at (row=1, col=2) -> 1 * 10 + 2 = 12 - if dim[0] > 1 and dim[1] > 2: map_data[1 * dim[1] + 2] = 1 - if dim[0] > 2 and dim[1] > 2: map_data[2 * dim[1] + 2] = 1 - if dim[0] > 3 and dim[1] > 2: map_data[3 * dim[1] + 2] = 1 - if dim[0] > 4 and dim[1] > 2: map_data[4 * dim[1] + 2] = 1 - if dim[0] > 5 and dim[1] > 2: map_data[5 * dim[1] + 2] = 1 # Wall + if dim[0] > 1 and dim[1] > 2: map_data[1 * dim[1] + 2] = 100 + if dim[0] > 2 and dim[1] > 2: map_data[2 * dim[1] + 2] = 100 + if dim[0] > 3 and dim[1] > 2: map_data[3 * dim[1] + 2] = 100 + if dim[0] > 4 and dim[1] > 2: map_data[4 * dim[1] + 2] = 100 + if dim[0] > 5 and dim[1] > 2: map_data[5 * dim[1] + 2] = 100 # Wall # Start and Goal in meters start_m = [0.05, 0.05] # Cell (0,0) diff --git a/example2.py b/example2.py new file mode 100644 index 0000000..7f4b202 --- /dev/null +++ b/example2.py @@ -0,0 +1,199 @@ +import sys +import os + +# Add the build directory to the Python path so it can find planner_cpp. +# This assumes the script is run from the root of the project and the build +# directory is 'build' or 'build/Debug' or 'build/Release' etc. +# A more robust solution for distribution would be a proper setup.py install. + +# Try to find the module in common build directory locations +module_found = False +build_dir_candidates = [ + 'build', + 'build/Debug', + 'build/Release', + 'build/RelWithDebInfo', + 'build/MinSizeRel', + # For multi-config generators like Visual Studio, pybind11 often places + # the .pyd file in a subdirectory matching the configuration within the + # main Python extension directory (e.g., build/lib.win-amd64-3.8/Debug) + # This simple path addition might not be enough for all CMake generators/platforms. + # Users might need to set PYTHONPATH or copy the module manually. +] + +# Add current directory in case the module is placed there by some build systems +# or for manual placement. +sys.path.insert(0, os.path.abspath(".")) + + +for candidate_dir in build_dir_candidates: + # Construct path relative to this script's location (project root) + abs_candidate_dir = os.path.abspath(candidate_dir) + if os.path.isdir(abs_candidate_dir): + sys.path.insert(0, abs_candidate_dir) + # Also check common pybind11 output subdirectories (e.g., for Windows) + # Example: build/Debug/planner_cpp.pyd or build/planner_cpp.pyd + # pybind11 might also place it in a subfolder like 'Release' inside the build dir. + # This is a simplified search. + +try: + import ThetaStarPlanner + module_found = True +except ImportError as e: + print(f"Error importing ThetaStarPlanner: {e}") + print("Please ensure that ThetaStarPlanner module is built and either:") + print("1. The script is run from a directory where Python can find it (e.g., build directory after CMake).") + print("2. The build directory (e.g., 'build' or 'build/Release') is in your PYTHONPATH.") + print(f"Current sys.path: {sys.path}") + exit(1) + +def main(): + import cv2 + import numpy as np + filename = "./data/image.png" + print(f"Loading image from {filename}...") + img = cv2.imread(filename, cv2.IMREAD_GRAYSCALE) # Load as grayscale + + img = cv2.resize(img, (400, 300)) # Resize to 400x300 pixels for testing + + origin = [0,0] # x, y of the map origin + dim = [img.shape[1], img.shape[0]] # width, height in pixels + resolution = 1 # meters per pixel (assumed) + print(dim) + + map_data = [] + # transform image to map data, for each pixel, if the value is over 200, it is marked as 100 occipied, otherwise 0 free + for r in range(dim[1]): # rows (y) + row_data = [] + for c in range(dim[0]): # cols (x) + pixel_value = img[r, c] + if isinstance(pixel_value, np.ndarray): + # If pixel is multi-channel (e.g., RGB), take the first channel + pixel_value = pixel_value[0] + if pixel_value > 200: # Assuming a threshold for occupied + row_data.append(1) # Occupied + else: + row_data.append(0) + map_data.extend(row_data) + + # random pick start and goal points that are free and at least 1000 pixels apart + free_indices = [i for i, v in enumerate(map_data) if v == 0] + print(f"Number of free cells: {len(free_indices)}") + if len(free_indices) < 2: + print("Not enough free cells to pick start and goal points.") + return + import random + start_index = random.choice(free_indices) + goal_index = random.choice(free_indices) + while abs(start_index - goal_index) < 100: # Ensure at least 1000 pixels apart + goal_index = random.choice(free_indices) + print(f"Start index: {start_index}, Goal index: {goal_index}") + print(f"Start cell value: {map_data[start_index]}, Goal cell value: {map_data[goal_index]}") + # Print a small region around start and goal for debugging + def print_region(idx, label): + x = idx % dim[0] + y = idx // dim[0] + print(f"{label} region (centered at {x},{y}):") + for dy in range(-2, 3): + for dx in range(-2, 3): + nx, ny = x+dx, y+dy + if 0 <= nx < dim[0] and 0 <= ny < dim[1]: + print(f"{map_data[ny*dim[0]+nx]:3}", end=" ") + else: + print(" X", end=" ") + print() + print_region(start_index, "Start") + print_region(goal_index, "Goal") + + # Swap start_w and goal_w to (row, col) if needed + start_w = [start_index % dim[0] * resolution, start_index // dim[0] * resolution] # [row, col] + goal_w = [goal_index % dim[0] * resolution, goal_index // dim[0] * resolution] # [row, col] + + print(f"Map Origin: {origin}") + print(f"Map Dimensions (cells): {dim}") + print(f"Map Resolution: {resolution}") + print(f"Start (world): {start_w}") + print(f"Goal (world): {goal_w}") + + print("Successfully imported ThetaStarPlanner module.") + + # Plan using A* + print("\nPlanning with A*...") + use_theta_star_false = False + print("Calling ThetaStarPlanner.plan_2d with:") + print(f" origin={origin}") + print(f" dim={dim}") + print(f" start_w={start_w}") + print(f" goal_w={goal_w}") + print(f" resolution={resolution}") + print(f" use_theta_star={use_theta_star_false}") + status_astar, path_astar, time_astar = ThetaStarPlanner.plan_2d( + origin, dim, map_data, start_w, goal_w, resolution, use_theta_star_false + ) + + if status_astar == 0: + print("A* Path Found Successfully!") + print(f" Path: {path_astar}") + print(f" Time spent: {time_astar:.4f} ms") + else: + print("A* Failed to find a path.") + print(f" Status code: {status_astar}") + print(f" Time spent: {time_astar:.4f} ms") + + # Plan using Theta* + print("\nPlanning with Theta*...") + use_theta_star_true = True + print("Calling ThetaStarPlanner.plan_2d with:") + print(f" origin={origin}") + print(f" dim={dim}") + print(f" start_w={start_w}") + print(f" goal_w={goal_w}") + print(f" map value of start and goal: {map_data[start_w[1] * dim[0] + start_w[0]]}, {map_data[goal_w[1] * dim[0] + goal_w[0]]}") + print(f" resolution={resolution}") + print(f" use_theta_star={use_theta_star_true}") + status_theta, path_theta, time_theta = ThetaStarPlanner.plan_2d( + origin, dim, map_data, start_w, goal_w, resolution, use_theta_star_true + ) + + if status_theta == 0: + print("Theta* Path Found Successfully!") + print(f" Path: {path_theta}") + print(f" Time spent: {time_theta:.4f} ms") + else: + print("Theta* Failed to find a path.") + print(f" Status code: {status_theta}") + print(f" Time spent: {time_theta:.4f} ms") + + # Visualization using matplotlib + import matplotlib.pyplot as plt + + img_color = cv2.cvtColor(img, cv2.COLOR_GRAY2RGB) + fig, ax = plt.subplots(figsize=(10, 10)) + ax.imshow(img_color) + + # Draw start and goal + ax.scatter([start_w[1]], [start_w[0]], c='lime', s=80, marker='o', label='Start') + ax.scatter([goal_w[1]], [goal_w[0]], c='red', s=80, marker='o', label='Goal') + + # Draw A* path (blue) + if status_astar == 0 and path_astar: + path_astar_y = [pt[0] for pt in path_astar] + path_astar_x = [pt[1] for pt in path_astar] + ax.plot(path_astar_x, path_astar_y, color='blue', linewidth=2, label="A* Path") + + # Draw Theta* path (magenta) + if status_theta == 0 and path_theta: + path_theta_y = [pt[0] for pt in path_theta] + path_theta_x = [pt[1] for pt in path_theta] + ax.plot(path_theta_x, path_theta_y, color='magenta', linewidth=2, label="Theta* Path") + + ax.legend() + ax.set_title("Planned Path") + plt.axis('off') + plt.savefig("./data/planned_path.png", bbox_inches='tight', pad_inches=0.1) + print("Saved planned path visualization to ./data/planned_path.png") + plt.show() + + +if __name__ == "__main__": + main() diff --git a/include/map.h b/include/map.h index 788e77a..d93a20c 100644 --- a/include/map.h +++ b/include/map.h @@ -23,7 +23,7 @@ class Map int start_i, start_j; int goal_i, goal_j; double cellSize; - int** Grid; + const std::vector<std::vector<int>> *Grid; }; #endif diff --git a/src/map.cpp b/src/map.cpp index 1b8f8fd..4615fca 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -14,21 +14,16 @@ Map::Map() Map::~Map() { - if (Grid) { - for (int i = 0; i < height; ++i) - delete[] Grid[i]; - delete[] Grid; - } } bool Map::CellIsTraversable(int i, int j) const { - return (Grid[i][j] == CN_GC_NOOBS); + return ((*Grid)[i][j] == CN_GC_NOOBS); } bool Map::CellIsObstacle(int i, int j) const { - return (Grid[i][j] != CN_GC_NOOBS); + return ((*Grid)[i][j] != CN_GC_NOOBS); } bool Map::CellOnGrid(int i, int j) const @@ -38,21 +33,14 @@ bool Map::CellOnGrid(int i, int j) const bool Map::getMap(const std::vector<std::vector<int>>& map, int startx, int starty, int finishx, int finishy, int cell_size) { - if (map.empty() || map[0].empty()) { + if (!Grid || Grid->empty() || (*Grid)[0].empty()) { std::cout << "Error! Empty map provided!" << std::endl; return false; } - + printf("Map size: %d x %d\n", height, width); height = map.size(); width = map[0].size(); - - Grid = new int *[height]; - for (int i = 0; i < height; ++i) { - Grid[i] = new int[width]; - for (int j = 0; j < width; ++j) { - Grid[i][j] = map[i][j]; - } - } + Grid = ↦ start_i = starty; start_j = startx; @@ -60,14 +48,21 @@ bool Map::getMap(const std::vector<std::vector<int>>& map, int startx, int start goal_j = finishx; cellSize = cell_size; - if (Grid[start_i][start_j] != CN_GC_NOOBS) { - std::cout << "Error! Start cell is not traversable (cell's value is" << Grid[start_i][start_j] << ")!" + printf("Start cell: (%d, %d)\n", start_i, start_j); + printf("Goal cell: (%d, %d)\n", goal_i, goal_j); + printf("Cell size: %f\n", cellSize); + printf("Start cell value: %d\n", (*Grid)[start_i][start_j]); + printf("Goal cell value: %d\n", (*Grid)[goal_i][goal_j]); + printf("CN_GC_NOOBS: %d\n", CN_GC_NOOBS); + + if ((*Grid)[start_i][start_j] != CN_GC_NOOBS) { + std::cout << "Error! Start cell is not traversable (cell's value is" << (*Grid)[start_i][start_j] << ")!" << std::endl; return false; } - if (Grid[goal_i][goal_j] != CN_GC_NOOBS) { - std::cout << "Error! Goal cell is not traversable (cell's value is" << Grid[goal_i][goal_j] << ")!" + if ((*Grid)[goal_i][goal_j] != CN_GC_NOOBS) { + std::cout << "Error! Goal cell is not traversable (cell's value is" << (*Grid)[goal_i][goal_j] << ")!" << std::endl; return false; } @@ -83,5 +78,5 @@ int Map::getValue(int i, int j) const if (j < 0 || j >= width) return -1; - return Grid[i][j]; + return (*Grid)[i][j]; } diff --git a/src/wrapper.cpp b/src/wrapper.cpp index c36fe05..775d4d6 100644 --- a/src/wrapper.cpp +++ b/src/wrapper.cpp @@ -28,8 +28,8 @@ class Timer { int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signed char> &map, std::vector<float> &start, std::vector<float> &goal, float resolution, std::vector<std::vector<double> > &path, double &time_spent, bool use_theta) { std::vector<std::vector<int>> map_grid; - int height = dim[0]; - int width = dim[1]; + int height = dim[1]; + int width = dim[0]; map_grid.resize(height); for (int i = 0; i < height; ++i) { @@ -74,7 +74,6 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe double y = origin[1] + pt[1] * resolution; path.push_back({x, y}); } - path.push_back({goal[0], goal[1]}); // Ensure the goal is included in the path time_spent = dt_theta; return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid } @@ -94,7 +93,6 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe double y = origin[1] + pt[1] * resolution; path.push_back({x, y}); } - path.push_back({goal[0], goal[1]}); // Ensure the goal is included in the path time_spent = dt_astar; return mission.getPathValid() ? 0 : -1; // Return 0 if the path is valid } From a282040773eaf8b3a3d31b83b89b3ad882fff2de Mon Sep 17 00:00:00 2001 From: xh <huxiao1@idea.edu.cn> Date: Fri, 11 Jul 2025 14:04:18 +0800 Subject: [PATCH 8/8] fix bugs --- example2.py | 35 ++++++++++------------------------- src/map.cpp | 16 ++++++++-------- src/wrapper.cpp | 10 +++++----- 3 files changed, 23 insertions(+), 38 deletions(-) diff --git a/example2.py b/example2.py index 7f4b202..3751047 100644 --- a/example2.py +++ b/example2.py @@ -54,7 +54,7 @@ def main(): print(f"Loading image from {filename}...") img = cv2.imread(filename, cv2.IMREAD_GRAYSCALE) # Load as grayscale - img = cv2.resize(img, (400, 300)) # Resize to 400x300 pixels for testing + # img = cv2.resize(img, (400, 300)) # Resize to 400x300 pixels for testing origin = [0,0] # x, y of the map origin dim = [img.shape[1], img.shape[0]] # width, height in pixels @@ -85,25 +85,10 @@ def main(): import random start_index = random.choice(free_indices) goal_index = random.choice(free_indices) - while abs(start_index - goal_index) < 100: # Ensure at least 1000 pixels apart + while abs(start_index - goal_index) < 1000: # Ensure at least 1000 pixels apart goal_index = random.choice(free_indices) print(f"Start index: {start_index}, Goal index: {goal_index}") print(f"Start cell value: {map_data[start_index]}, Goal cell value: {map_data[goal_index]}") - # Print a small region around start and goal for debugging - def print_region(idx, label): - x = idx % dim[0] - y = idx // dim[0] - print(f"{label} region (centered at {x},{y}):") - for dy in range(-2, 3): - for dx in range(-2, 3): - nx, ny = x+dx, y+dy - if 0 <= nx < dim[0] and 0 <= ny < dim[1]: - print(f"{map_data[ny*dim[0]+nx]:3}", end=" ") - else: - print(" X", end=" ") - print() - print_region(start_index, "Start") - print_region(goal_index, "Goal") # Swap start_w and goal_w to (row, col) if needed start_w = [start_index % dim[0] * resolution, start_index // dim[0] * resolution] # [row, col] @@ -133,7 +118,7 @@ def print_region(idx, label): if status_astar == 0: print("A* Path Found Successfully!") - print(f" Path: {path_astar}") + # print(f" Path: {path_astar}") print(f" Time spent: {time_astar:.4f} ms") else: print("A* Failed to find a path.") @@ -157,7 +142,7 @@ def print_region(idx, label): if status_theta == 0: print("Theta* Path Found Successfully!") - print(f" Path: {path_theta}") + # print(f" Path: {path_theta}") print(f" Time spent: {time_theta:.4f} ms") else: print("Theta* Failed to find a path.") @@ -172,19 +157,19 @@ def print_region(idx, label): ax.imshow(img_color) # Draw start and goal - ax.scatter([start_w[1]], [start_w[0]], c='lime', s=80, marker='o', label='Start') - ax.scatter([goal_w[1]], [goal_w[0]], c='red', s=80, marker='o', label='Goal') + ax.scatter([start_w[0]], [start_w[1]], c='lime', s=80, marker='o', label='Start') + ax.scatter([goal_w[0]], [goal_w[1]], c='red', s=80, marker='o', label='Goal') # Draw A* path (blue) if status_astar == 0 and path_astar: - path_astar_y = [pt[0] for pt in path_astar] - path_astar_x = [pt[1] for pt in path_astar] + path_astar_x = [pt[0] for pt in path_astar] + path_astar_y = [pt[1] for pt in path_astar] ax.plot(path_astar_x, path_astar_y, color='blue', linewidth=2, label="A* Path") # Draw Theta* path (magenta) if status_theta == 0 and path_theta: - path_theta_y = [pt[0] for pt in path_theta] - path_theta_x = [pt[1] for pt in path_theta] + path_theta_x = [pt[0] for pt in path_theta] + path_theta_y = [pt[1] for pt in path_theta] ax.plot(path_theta_x, path_theta_y, color='magenta', linewidth=2, label="Theta* Path") ax.legend() diff --git a/src/map.cpp b/src/map.cpp index 4615fca..d961c36 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -33,27 +33,27 @@ bool Map::CellOnGrid(int i, int j) const bool Map::getMap(const std::vector<std::vector<int>>& map, int startx, int starty, int finishx, int finishy, int cell_size) { + Grid = ↦ if (!Grid || Grid->empty() || (*Grid)[0].empty()) { std::cout << "Error! Empty map provided!" << std::endl; return false; } - printf("Map size: %d x %d\n", height, width); height = map.size(); width = map[0].size(); - Grid = ↦ + // printf("Map size: %d x %d\n", height, width); start_i = starty; start_j = startx; goal_i = finishy; goal_j = finishx; cellSize = cell_size; - printf("Start cell: (%d, %d)\n", start_i, start_j); - printf("Goal cell: (%d, %d)\n", goal_i, goal_j); - printf("Cell size: %f\n", cellSize); - printf("Start cell value: %d\n", (*Grid)[start_i][start_j]); - printf("Goal cell value: %d\n", (*Grid)[goal_i][goal_j]); - printf("CN_GC_NOOBS: %d\n", CN_GC_NOOBS); + // printf("Start cell: (%d, %d)\n", start_i, start_j); + // printf("Goal cell: (%d, %d)\n", goal_i, goal_j); + // printf("Cell size: %f\n", cellSize); + // printf("Start cell value: %d\n", (*Grid)[start_i][start_j]); + // printf("Goal cell value: %d\n", (*Grid)[goal_i][goal_j]); + // printf("CN_GC_NOOBS: %d\n", CN_GC_NOOBS); if ((*Grid)[start_i][start_j] != CN_GC_NOOBS) { std::cout << "Error! Start cell is not traversable (cell's value is" << (*Grid)[start_i][start_j] << ")!" diff --git a/src/wrapper.cpp b/src/wrapper.cpp index 775d4d6..86ad493 100644 --- a/src/wrapper.cpp +++ b/src/wrapper.cpp @@ -51,7 +51,7 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe } Mission mission; - int cellSize = 1; + int cellSize = resolution; if (!mission.getMap(start_x, start_y, goal_x, goal_y, cellSize, map_grid)) { return -1; // Failed to get the map @@ -70,8 +70,8 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe path.clear(); for (const auto &pt : path_int) { - double x = origin[0] + pt[0] * resolution; - double y = origin[1] + pt[1] * resolution; + double x = origin[0] + pt[0] * cellSize; + double y = origin[1] + pt[1] * cellSize; path.push_back({x, y}); } time_spent = dt_theta; @@ -89,8 +89,8 @@ int plan_2d(std::vector<float> &origin, std::vector<int> &dim, std::vector<signe path.clear(); for (const auto &pt : path_int) { - double x = origin[0] + pt[0] * resolution; - double y = origin[1] + pt[1] * resolution; + double x = origin[0] + pt[0] * cellSize; + double y = origin[1] + pt[1] * cellSize; path.push_back({x, y}); } time_spent = dt_astar;