From b5083221dad8084deb4a7949cb9fc487aa09e080 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 16 Nov 2021 10:46:19 +0200 Subject: WIP: apply/perform_update --- libbuild2/dynamic.hxx | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 libbuild2/dynamic.hxx (limited to 'libbuild2/dynamic.hxx') diff --git a/libbuild2/dynamic.hxx b/libbuild2/dynamic.hxx new file mode 100644 index 0000000..395a839 --- /dev/null +++ b/libbuild2/dynamic.hxx @@ -0,0 +1,33 @@ +// file : libbuild2/dynamic.hxx -*- C++ -*- +// license : MIT; see accompanying LICENSE file + +#ifndef LIBBUILD2_DYNAMIC_HXX +#define LIBBUILD2_DYNAMIC_HXX + +#include +#include +#include + +#include +#include + +#include + +// Additional functionality that is normally only useful for implementing +// rules with dynamic dependencies. +// +namespace build2 +{ + class LIBBUILD2_SYMEXPORT dyndep_rule + { + public: + // Update the target during the match phase. Return true if it has changed + // or if the passed timestamp is not timestamp_unknown and is older than + // the target. + // + static bool + update (tracer&, action, const target&, timestamp); + }; +} + +#endif // LIBBUILD2_DYNAMIC_HXX -- cgit v1.1