aboutsummaryrefslogtreecommitdiff
path: root/build/cxx/rule
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-04-27 12:57:39 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-04-27 12:57:39 +0200
commit9d818423031083f227a5e872826ed8c2d6e14a0f (patch)
tree794f3a27ba27e9210dc0c891fe681b863b53c747 /build/cxx/rule
parent10cdf9fdcd4181f2ea3dec1abf5bcc359b87829c (diff)
Add support for specifying library link order
Diffstat (limited to 'build/cxx/rule')
-rw-r--r--build/cxx/rule12
1 files changed, 10 insertions, 2 deletions
diff --git a/build/cxx/rule b/build/cxx/rule
index d139cc7..da46eb6 100644
--- a/build/cxx/rule
+++ b/build/cxx/rule
@@ -38,8 +38,6 @@ namespace build
class link: public rule
{
public:
- enum class type {exe, liba, libso};
-
virtual void*
match (action, target&, const std::string& hint) const;
@@ -48,6 +46,16 @@ namespace build
static target_state
perform_update (action, target&);
+
+ private:
+ enum class type {e, a, so};
+ enum class order {a, so, a_so, so_a};
+
+ static type
+ link_type (target&);
+
+ static order
+ link_order (target&);
};
}
}