// file : build2/cli/target -*- C++ -*- // copyright : Copyright (c) 2014-2017 Code Synthesis Ltd // license : MIT; see accompanying LICENSE file #ifndef BUILD2_CLI_TARGET #define BUILD2_CLI_TARGET #include #include #include #include namespace build2 { namespace cli { class cli: public file { public: using file::file; public: static const target_type static_type; virtual const target_type& dynamic_type () const {return static_type;} }; // Standard layout type compatible with target*[3]. // struct cli_cxx_members { const_ptr h = nullptr; const_ptr c = nullptr; const_ptr i = nullptr; }; class cli_cxx: public mtime_target, public cli_cxx_members { public: using mtime_target::mtime_target; virtual group_view group_members (action_type); virtual timestamp load_mtime () const; public: static const target_type static_type; virtual const target_type& dynamic_type () const {return static_type;} }; } } #endif // BUILD2_CLI_TARGET