X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuildinfo.h;h=ee831f3c4da453dfdfc3c16567e5350a9174026d;hb=1496723307ed47b60d3116623ba383e85b50efef;hp=595fe1a55ccd5bb414ebbe5febec8f86431465b2;hpb=f76c063eb9b792088e034ffb4c2f173b843e8c57;p=builder.git diff --git a/source/buildinfo.h b/source/buildinfo.h index 595fe1a..ee831f3 100644 --- a/source/buildinfo.h +++ b/source/buildinfo.h @@ -28,8 +28,10 @@ public: private: void incpath(const std::string &); void define(const std::string &, const std::string &); + void libmode_for_lib(const std::string &, LibraryMode); void libpath(const std::string &); void library(const std::string &); + void local_incpath(const std::string &); }; enum UpdateLevel @@ -68,12 +70,15 @@ public: typedef std::map DefineMap; typedef std::list PathList; typedef std::list WordList; + typedef std::map LibModeMap; DefineMap defines; PathList incpath; + PathList local_incpath; PathList libpath; WordList libs; Tracked libmode; + LibModeMap libmodes; Tracked threads; Tracked debug; Tracked optimize; @@ -83,6 +88,11 @@ public: BuildInfo(); + /** Returns the library mode for linking a particular library. If no mode + has been specified for that library, the the global library mode is + returned. */ + LibraryMode get_libmode_for(const std::string &) const; + /** Updates the BuildInfo from another one. Lists are concatenated, with the first occurrence of each item preserved. Scalars are overwritten.