aboutsummaryrefslogtreecommitdiff
path: root/build/prerequisite.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-01-05 11:55:15 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-01-05 11:55:15 +0200
commit9fb791e9fad6c63fc1dac49f4d05ae63b8a3db9b (patch)
treed60322d4382ca5f97b676c5abe2e39524f35eab4 /build/prerequisite.cxx
parentf159b1dac68c8714f7ba71ca168e3b695891aad9 (diff)
Rename build directory/namespace to build2
Diffstat (limited to 'build/prerequisite.cxx')
-rw-r--r--build/prerequisite.cxx82
1 files changed, 0 insertions, 82 deletions
diff --git a/build/prerequisite.cxx b/build/prerequisite.cxx
deleted file mode 100644
index 49cab89..0000000
--- a/build/prerequisite.cxx
+++ /dev/null
@@ -1,82 +0,0 @@
-// file : build/prerequisite.cxx -*- C++ -*-
-// copyright : Copyright (c) 2014-2015 Code Synthesis Ltd
-// license : MIT; see accompanying LICENSE file
-
-#include <build/prerequisite>
-
-#include <ostream>
-
-#include <build/scope>
-#include <build/target> // target_type
-#include <build/context>
-#include <build/diagnostics>
-
-using namespace std;
-
-namespace build
-{
- // prerequisite_key
- //
- ostream&
- operator<< (ostream& os, const prerequisite_key& pk)
- {
- if (pk.proj != nullptr)
- os << *pk.proj << '%';
-
- // Don't print scope if we are project-qualified or the
- // prerequisite's directory is absolute. In both these
- // cases the scope is not used to resolve it to target.
- //
- else if (!pk.tk.dir->absolute ())
- {
- string s (diag_relative (pk.scope->out_path (), false));
-
- if (!s.empty ())
- os << s << ':';
- }
-
- return os << pk.tk;
- }
-
- // prerequisite_set
- //
- auto prerequisite_set::
- insert (const std::string* proj,
- const target_type& tt,
- dir_path dir,
- std::string name,
- const std::string* ext,
- scope& s,
- tracer& trace) -> pair<prerequisite&, bool>
- {
- //@@ OPT: would be nice to somehow first check if this prerequisite is
- // already in the set before allocating a new instance.
-
- // Find or insert.
- //
- auto r (emplace (proj, tt, move (dir), move (name), ext, s));
- prerequisite& p (const_cast<prerequisite&> (*r.first));
-
- // Update extension if the existing prerequisite has it unspecified.
- //
- if (p.ext != ext)
- {
- level5 ([&]{
- diag_record r (trace);
- r << "assuming prerequisite " << p << " is the same as the "
- << "one with ";
- if (ext == nullptr)
- r << "unspecified extension";
- else if (ext->empty ())
- r << "no extension";
- else
- r << "extension " << *ext;
- });
-
- if (ext != nullptr)
- p.ext = ext;
- }
-
- return pair<prerequisite&, bool> (p, r.second);
- }
-}