From 6de6b99afebab8d9decbb6e0cff74cec2edf3c7b Mon Sep 17 00:00:00 2001 From: Anton Gushcha Date: Thu, 26 Feb 2015 17:59:24 +0300 Subject: [PATCH] project config support for builder --- src/dlangide/builders/builder.d | 8 +++++++- src/dlangide/ui/frame.d | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/dlangide/builders/builder.d b/src/dlangide/builders/builder.d index 6f07359..b4880c5 100644 --- a/src/dlangide/builders/builder.d +++ b/src/dlangide/builders/builder.d @@ -16,6 +16,7 @@ class Builder : BackgroundOperationWatcher { protected ExternalProcess _extprocess; protected OutputPanel _log; protected ProtectedTextStorage _box; + protected dstring _projectConfig; protected BuildConfiguration _buildConfig; protected BuildOperation _buildOp; protected bool _verbose; @@ -23,8 +24,9 @@ class Builder : BackgroundOperationWatcher { @property Project project() { return _project; } @property void project(Project p) { _project = p; } - this(AppFrame frame, Project project, OutputPanel log, BuildConfiguration buildConfig, BuildOperation buildOp, bool verbose) { + this(AppFrame frame, Project project, OutputPanel log, dstring projectConfig, BuildConfiguration buildConfig, BuildOperation buildOp, bool verbose) { super(frame); + _projectConfig = projectConfig; _buildConfig = buildConfig; _buildOp = buildOp; _verbose = verbose; @@ -83,6 +85,10 @@ class Builder : BackgroundOperationWatcher { } } + if(_projectConfig != DEFAULT_PROJECT_CONFIGURATION) { + params ~= "--config=".dup ~ cast(string)(_projectConfig); + } + if (_verbose) params ~= "-v".dup; diff --git a/src/dlangide/ui/frame.d b/src/dlangide/ui/frame.d index 357ef3b..7dcc9c0 100644 --- a/src/dlangide/ui/frame.d +++ b/src/dlangide/ui/frame.d @@ -697,7 +697,7 @@ class IDEFrame : AppFrame { _logPanel.logLine("No project is opened"); return; } - Builder op = new Builder(this, currentWorkspace.startupProject, _logPanel, currentWorkspace.buildConfiguration, buildOp, false); + Builder op = new Builder(this, currentWorkspace.startupProject, _logPanel, currentWorkspace.projectConfiguration, currentWorkspace.buildConfiguration, buildOp, false); setBackgroundOperation(op); }