X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fanalyzer.h;h=6d6af9b5ab5706a076617bd6e9a500cf84052ee3;hb=4e6fd9a7436d61af311ab83b5ec264b37078fe76;hp=b9afffa9e7e8896a58a10a53535f43fd4d823f85;hpb=04c316da6d5d90e43cba262f54d90ca231f703bf;p=builder.git diff --git a/source/analyzer.h b/source/analyzer.h index b9afffa..6d6af9b 100644 --- a/source/analyzer.h +++ b/source/analyzer.h @@ -9,6 +9,7 @@ Distributed under the LGPL #define ANALYZER_H_ #include +#include #include #include @@ -26,7 +27,7 @@ public: DEPS, //< Skip over "trivial" targets such as Install and Compile ALLDEPS, //< Print out absolutely every target REBUILD, //< Print targets that are going to be rebuilt - RDEPS //< Print targets that depend on the given targets (NYI) + RDEPS //< Print targets that depend on the given targets }; private: @@ -38,6 +39,7 @@ private: Table table; unsigned max_depth; bool full_paths; + std::map > rdepends; public: Analyzer(Builder &); @@ -54,14 +56,15 @@ private: /** Adds rows to the table for the given target and its dependencies. */ - void build_depend_table(Target &, unsigned); + void build_depend_table(const Target &, unsigned); /** Prints out the table that resulted from the analysis. */ void print_table() const; - static bool target_order(Target *, Target *); + static bool target_order(const Target *, const Target *); + static bool target_order_full(const Target *, const Target *); }; #endif