private void InternalBuild()
        {
            // TODO: auto start option(warning: use proper working dir!)

            foreach (var target in SelectedPreset.Targets)
            {
                try
                {
                    BuildPipelineHelper.Build(target);
                }
                catch (Exception ex)
                {
                    Debug.LogError("Failed to build target: " + target.Name + " error: " + ex);
                }
            }

            // If the last target is marked as not cleaning the defines
            // ignore this function call.
            if (!SelectedPreset.Targets.Last().DoNotCleanDefines)
            {
                // reset the directives
                ResetDefines();
            }

            // increase build number TODO: build counting
        }