From 33111a31562f364e496b8c8bba47693babecdbc0 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 15 May 2019 07:57:45 +0200 Subject: Add ability to depend on (declared) ad hoc group member --- build2/target.hxx | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'build2/target.hxx') diff --git a/build2/target.hxx b/build2/target.hxx index e167211..4c0efbe 100644 --- a/build2/target.hxx +++ b/build2/target.hxx @@ -1539,14 +1539,18 @@ namespace build2 // any time but any subsequent updates must set the same path. Or, in // other words, once the path is set, it never changes. // - // A set empty path may signify special unknown/undetermined/unreal - // location (for example, a binless library or an installed import library - // -- we know the DLL is there, just not exactly where). In this case you - // would also normally set its mtime. We used to return a pointer to - // properly distinguish between not set and empty but that proved too - // tedious. Note that this means there could be a race between path and - // mtime (unless you lock the target in some other way; see file_rule) so - // for this case it makes sense to set the timestamp first. + // An empty path may signify special unknown/undetermined/unreal location + // (for example, a binless library or an installed import library -- we + // know the DLL is there, just not exactly where). In this case you would + // also normally set its mtime. + // + // We used to return a pointer to properly distinguish between not set and + // empty but that proved too tedious to work with. So now we return empty + // path both when not set (which will be empty_path so you can distinguish + // the two case if you really want to) and when set to empty. Note that + // this means there could be a race between path and mtime (unless you + // lock the target in some other way; see file_rule) so in this case it + // makes sense to set the timestamp first. // const path_type& path () const; -- cgit v1.1