| 
    siplasplas
    
   A library for C++ reflection and introspection 
   | 
 
Represents the set of properties that define a target. More...
#include <siplasplas/cmake/target.hpp>
Static Public Member Functions | |
| static Metadata | loadFromFile (const CMakeProject &project, const std::string &targetName) | 
| Loads target properties from a JSON file.  More... | |
Public Attributes | |
| std::string | name | 
| std::string | sourceDir | 
| std::string | binaryDir | 
| std::vector< std::string > | sources | 
| std::vector< std::string > | includeDirs | 
| std::string | binary | 
| std::string | binaryDebug | 
| std::string | binaryRelease | 
Represents the set of properties that define a target.
This structure is just an aggregation of the set of target properties CMakeTarget needs to work. Currently those are:
      
  | 
  static | 
Loads target properties from a JSON file.
remove when merging fixing-windows-support
Throw an exception instead of UB?
This function reads target properties from a JSON file named "<\p targetName>.json" located at the root of the project binary directory. The JSON file has a dictionary mapping from the name of the different target properties (NAME, SOURCES, INCLUDE_DIRECTORIES, LOCATION) to their values. See export_target.cmake.
Passing a target name that doesn't exist in the CMake project has undefined behavior.
export_target.cmake and the JSON file format. | project | Reference to the CMakeProject the target belongs to. | 
| targetName | Name of the target to load. | 
| std::string cpp::CMakeTarget::Metadata::binaryRelease |