diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2014-12-18 07:14:53 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2014-12-18 07:14:53 +0200 |
commit | c0c85b67516653c181fbce7c61c2df3e31e4edd8 (patch) | |
tree | 535467b029b27b190e35064e4babd62825eba6a1 /build/cxx/target.cxx | |
parent | 835ed5f7080a98e9ee80ac08d5585ccdbb63fe0e (diff) |
Initial support for loading dependency info from buildfiles
Also a new iteration on the overall architecture. Now, for the first time,
build can read the buildfile and build itself.
g++-4.9 -std=c++14 -g -I.. -o bd bd.cxx algorithm.cxx scope.cxx parser.cxx lexer.cxx target.cxx prerequisite.cxx rule.cxx native.cxx cxx/target.cxx cxx/rule.cxx process.cxx timestamp.cxx path.cxx
g++-4.9 -std=c++14 -g -I../../.. -o driver driver.cxx ../../../build/lexer.cxx
g++-4.9 -std=c++14 -g -I../../.. -o driver driver.cxx ../../../build/lexer.cxx ../../../build/parser.cxx ../../../build/scope.cxx ../../../build/target.cxx ../../../build/native.cxx ../../../build/prerequisite.cxx ../../../build/path.cxx ../../../build/timestamp.cxx
Diffstat (limited to 'build/cxx/target.cxx')
-rw-r--r-- | build/cxx/target.cxx | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/build/cxx/target.cxx b/build/cxx/target.cxx index 7171e30..c4502b4 100644 --- a/build/cxx/target.cxx +++ b/build/cxx/target.cxx @@ -10,11 +10,16 @@ namespace build { namespace cxx { - using type_info = target::type_info; + const target_type hxx::static_type { + typeid (hxx), "hxx", &file::static_type, &target_factory<hxx>}; - const type_info hxx::ti_ {typeid (hxx), "hxx", &file::ti_}; - const type_info ixx::ti_ {typeid (ixx), "ixx", &file::ti_}; - const type_info txx::ti_ {typeid (txx), "txx", &file::ti_}; - const type_info cxx::ti_ {typeid (cxx), "cxx", &file::ti_}; + const target_type ixx::static_type { + typeid (ixx), "ixx", &file::static_type, &target_factory<ixx>}; + + const target_type txx::static_type { + typeid (txx), "txx", &file::static_type, &target_factory<txx>}; + + const target_type cxx::static_type { + typeid (cxx), "cxx", &file::static_type, &target_factory<cxx>}; } } |