From 8663ecf31c51e5bf7fef194bb15aed0b038fb8fc Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 2 Jul 2018 12:25:39 +0200 Subject: Add ability to suppress auto-synchronization via BDEP_SYNC envvar If BDEP_SYNC is set, auto-synchronization will only be performed if its value is true or 1. So to suppress, run: $ BDEP_SYNC=0 b --- bdep/sync.cxx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'bdep/sync.cxx') diff --git a/bdep/sync.cxx b/bdep/sync.cxx index 8cfdc7a..1620555 100644 --- a/bdep/sync.cxx +++ b/bdep/sync.cxx @@ -436,14 +436,22 @@ namespace bdep // if! $null($cfgs) // cfgs = [dir_paths] $regex.split($cfgs, ' *"([^"]*)" *', '\1') // + // Also note that we try to avoid setting any variables in order + // not to pollute the configuration's root scope. + // os << "# Created automatically by bdep." << endl << "#" << endl << "if ($build.meta_operation != 'info' && \\" << endl << " $build.meta_operation != 'configure' && \\" << endl << " $build.meta_operation != 'disfigure')" << endl - << " run '" << argv0 << "' sync --hook=1 " << + << "{" << endl + << " if ($getenv('BDEP_SYNC') == [null] || \\" << endl + << " $getenv('BDEP_SYNC') == true || \\" << endl + << " $getenv('BDEP_SYNC') == 1)" << endl + << " run '" << argv0 << "' sync --hook=1 " << "--verbose $build.verbosity " << - "--config \"$out_root\"" << endl; + "--config \"$out_root\"" << endl + << "}" << endl; os.close (); } -- cgit v1.1