Skip to content

Commit 5c2d5d7

Browse files
committed
Moved SetupBuildProperties into proper package
1 parent e2b2496 commit 5c2d5d7

File tree

4 files changed

+30
-52
lines changed

4 files changed

+30
-52
lines changed

Diff for: arduino/builder/sketch.go

+27
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
"github.com/arduino/arduino-cli/arduino/sketch"
2525
"github.com/arduino/arduino-cli/i18n"
2626
"github.com/arduino/go-paths-helper"
27+
"github.com/arduino/go-properties-orderedmap"
2728

2829
"github.com/pkg/errors"
2930
)
@@ -169,3 +170,29 @@ func writeIfDifferent(source []byte, destPath *paths.Path) error {
169170
// Source and destination are the same, don't write anything
170171
return nil
171172
}
173+
174+
// SetupBuildProperties adds the build properties related to the sketch to the
175+
// default board build properties map.
176+
func SetupBuildProperties(boardBuildProperties *properties.Map, buildPath *paths.Path, sketch *sketch.Sketch, optimizeForDebug bool) *properties.Map {
177+
buildProperties := properties.NewMap()
178+
buildProperties.Merge(boardBuildProperties)
179+
180+
if buildPath != nil {
181+
buildProperties.SetPath("build.path", buildPath)
182+
}
183+
if sketch != nil {
184+
buildProperties.Set("build.project_name", sketch.MainFile.Base())
185+
buildProperties.SetPath("build.source.path", sketch.FullPath)
186+
}
187+
if optimizeForDebug {
188+
if debugFlags, ok := buildProperties.GetOk("compiler.optimization_flags.debug"); ok {
189+
buildProperties.Set("compiler.optimization_flags", debugFlags)
190+
}
191+
} else {
192+
if releaseFlags, ok := buildProperties.GetOk("compiler.optimization_flags.release"); ok {
193+
buildProperties.Set("compiler.optimization_flags", releaseFlags)
194+
}
195+
}
196+
197+
return buildProperties
198+
}

Diff for: commands/compile/compile.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ func Compile(ctx context.Context, req *rpc.CompileRequest, outStream, errStream
149149
defer maybePurgeBuildCache()
150150

151151
// Add build properites related to sketch data
152-
buildProperties = builder.SetupBuildProperties(buildProperties, buildPath, sk, req.GetOptimizeForDebug())
152+
buildProperties = bldr.SetupBuildProperties(buildProperties, buildPath, sk, req.GetOptimizeForDebug())
153153

154154
requiredTools, err := pme.FindToolsRequiredForBuild(targetPlatform, buildPlatform)
155155
if err != nil {

Diff for: legacy/builder/setup_build_properties.go

-50
This file was deleted.

Diff for: legacy/builder/test/builder_test.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"testing"
2323
"time"
2424

25+
bldr "github.com/arduino/arduino-cli/arduino/builder"
2526
"github.com/arduino/arduino-cli/arduino/cores/packagemanager"
2627
"github.com/arduino/arduino-cli/arduino/sketch"
2728
"github.com/arduino/arduino-cli/legacy/builder"
@@ -89,7 +90,7 @@ func prepareBuilderTestContext(t *testing.T, ctx *types.Context, sketchPath *pat
8990
requiredTools, err := pme.FindToolsRequiredForBuild(targetPlatform, buildPlatform)
9091
require.NoError(t, err)
9192

92-
buildProperties = builder.SetupBuildProperties(buildProperties, ctx.BuildPath, ctx.Sketch, false /*OptimizeForDebug*/)
93+
buildProperties = bldr.SetupBuildProperties(buildProperties, ctx.BuildPath, ctx.Sketch, false /*OptimizeForDebug*/)
9394
ctx.PackageManager = pme
9495
ctx.TargetBoard = targetBoard
9596
ctx.BuildProperties = buildProperties

0 commit comments

Comments
 (0)