Example #1
0
        private bool UntimedExecute(
            BuildAction action,
            BuildOptions buildOptions,
            IEnumerable<string> targetPaths,
            bool processDependencies,
            BuildResults buildResults)
        {
            TimedComputeDependencies(buildResults, buildOptions);
            if (!m_dependenciesValid) {
                return false;
            }

            HashSet<BuildFile> targets = GetBuildFilesForPaths(targetPaths);

            HashSet<BuildNode> buildNodes = GetBuildNodesForFiles(targets);
            if (buildNodes == null) {
                return false;
            }

            BuildProcess buildProcess = new BuildProcess(
                this,
                action,
                buildOptions,
                buildResults,
                buildNodes,
                processDependencies);
            bool result = buildProcess.Run();
            return result;
        }
Example #2
0
        internal BuildProcess CreateBuildProcess(
            BuildOptions buildOptions,
            IEnumerable<string> targetPaths)
        {
            ComputeDependencies(buildOptions);
            if (!m_dependenciesValid) {
                return null;
            }

            HashSet<BuildFile> targets = GetBuildFilesForPaths(targetPaths);

            HashSet<BuildNode> buildNodes = GetBuildNodesForFiles(targets);
            if (buildNodes == null) {
                return null;
            }

            BuildResults buildResults = new BuildResults();
            BuildProcess buildProcess = new BuildProcess(
                this,
                BuildAction.Build /* don't care */,
                buildOptions,
                buildResults /* don't care */,
                buildNodes,
                true /* processDependencies */);

            return buildProcess;
        }