aboutsummaryrefslogtreecommitdiff
path: root/build2/cc/target
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2017-05-01 18:24:31 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2017-05-01 19:30:26 +0300
commit70317569c6dcd9809ed4a8c425777e653ec6ca08 (patch)
tree07a538b296933e9e2a1f81088f8fcc8da3f749ad /build2/cc/target
parentcbec9ea8841c8a58b2d50bb628b28aea7a6fe179 (diff)
Add hxx extension for headers
Diffstat (limited to 'build2/cc/target')
-rw-r--r--build2/cc/target63
1 files changed, 0 insertions, 63 deletions
diff --git a/build2/cc/target b/build2/cc/target
deleted file mode 100644
index 6992609..0000000
--- a/build2/cc/target
+++ /dev/null
@@ -1,63 +0,0 @@
-// file : build2/cc/target -*- C++ -*-
-// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
-// license : MIT; see accompanying LICENSE file
-
-#ifndef BUILD2_CC_TARGET
-#define BUILD2_CC_TARGET
-
-#include <build2/types>
-#include <build2/utility>
-
-#include <build2/target>
-
-namespace build2
-{
- namespace cc
- {
- // This is an abstract base target for all c-common source files. We use
- // this arrangement in rule matching to detect "unknown" (to this rule)
- // source files that it cannot handle but should not ignore either. For
- // example, a C link rule that sees a C++ source file.
- //
- class cc: public file
- {
- public:
- using file::file;
-
- public:
- static const target_type static_type;
- virtual const target_type& dynamic_type () const = 0;
- };
-
- // There is hardly a c-family compilation without a C header inclusion.
- // As a result, this target type is registered for any c-family module.
- //
- class h: public file
- {
- public:
- using file::file;
-
- public:
- static const target_type static_type;
- virtual const target_type& dynamic_type () const {return static_type;}
- };
-
- // This one we define in cc but the target type is only registered by the
- // c module. This way we can implement rule chaining without jumping
- // through too many hoops (like resolving target type dynamically) but
- // also without relaxing things too much (i.e., the user still won't be
- // able to refer to c{} without loading the c module).
- //
- class c: public cc
- {
- public:
- using cc::cc;
-
- public:
- static const target_type static_type;
- virtual const target_type& dynamic_type () const {return static_type;}
- };
- }
-}
-
-#endif // BUILD2_CC_TARGET