Skip to content

Commit 6784cbf

Browse files
committed
Moved Tools, Hardware and USBVidPid in Context
Probably a better name for the Packages structure is Hardware, something to see later. Signed-off-by: Cristian Maglie <[email protected]>
1 parent 67a198f commit 6784cbf

15 files changed

+25
-29
lines changed

src/arduino.cc/arduino-builder/main.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ import (
4141
"syscall"
4242

4343
"arduino.cc/builder"
44-
"arduino.cc/builder/constants"
4544
"arduino.cc/builder/gohasissues"
4645
"arduino.cc/builder/i18n"
4746
"arduino.cc/builder/props"
@@ -258,8 +257,9 @@ func main() {
258257
}
259258
ctx.BuildPath = buildPath
260259

260+
// FLAG_VID_PID
261261
if *vidPidFlag != "" {
262-
context[constants.CTX_VIDPID] = *vidPidFlag
262+
ctx.USBVidPid = *vidPidFlag
263263
}
264264

265265
if flag.NArg() > 0 {

src/arduino.cc/builder/add_build_board_property_if_missing.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ import (
3939
type AddBuildBoardPropertyIfMissing struct{}
4040

4141
func (s *AddBuildBoardPropertyIfMissing) Run(context map[string]interface{}, ctx *types.Context) error {
42-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
42+
packages := ctx.Hardware
4343
logger := ctx.GetLogger()
4444

4545
for _, aPackage := range packages.Packages {

src/arduino.cc/builder/add_missing_build_properties_from_parent_platform_txt_files.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,13 @@
3030
package builder
3131

3232
import (
33-
"arduino.cc/builder/constants"
3433
"arduino.cc/builder/types"
3534
)
3635

3736
type AddMissingBuildPropertiesFromParentPlatformTxtFiles struct{}
3837

3938
func (s *AddMissingBuildPropertiesFromParentPlatformTxtFiles) Run(context map[string]interface{}, ctx *types.Context) error {
40-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
39+
packages := ctx.Hardware
4140
targetPackage := ctx.TargetPackage
4241
buildProperties := ctx.BuildProperties
4342

src/arduino.cc/builder/constants/constants.go

-3
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ const CTX_ARCHIVE_FILE_PATH_CORE = "archiveFileCore"
7777
const CTX_BUILD_CORE = "buildCore"
7878
const CTX_FILE_PATH_TO_READ = "filePathToRead"
7979
const CTX_GCC_MINUS_M_OUTPUT = "gccMinusMOutput"
80-
const CTX_HARDWARE = "hardware"
8180
const CTX_HARDWARE_REWRITE_RESULTS = "hardwareRewriteResults"
8281
const CTX_INCLUDE_SECTION = "includeSection"
8382
const CTX_INCLUDES_JUST_FOUND = "includesJustFound"
@@ -86,8 +85,6 @@ const CTX_OBJECT_FILES_CORE = "objectFilesCore"
8685
const CTX_OBJECT_FILES_LIBRARIES = "objectFilesLibraries"
8786
const CTX_OBJECT_FILES_SKETCH = "objectFilesSketch"
8887
const CTX_PLATFORM_KEYS_REWRITE = "platformKeysRewrite"
89-
const CTX_TOOLS = "tools"
90-
const CTX_VIDPID = "VIDPID"
9188
const EMPTY_STRING = ""
9289
const FILE_BOARDS_LOCAL_TXT = "boards.local.txt"
9390
const FILE_BOARDS_TXT = "boards.txt"

src/arduino.cc/builder/hardware_loader.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ func (s *HardwareLoader) Run(context map[string]interface{}, ctx *types.Context)
9292
}
9393
}
9494

95-
context[constants.CTX_HARDWARE] = packages
95+
ctx.Hardware = packages
9696

9797
return nil
9898
}

src/arduino.cc/builder/load_vid_pid_specific_properties.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,18 @@ import (
3434
"arduino.cc/builder/i18n"
3535
"arduino.cc/builder/props"
3636
"arduino.cc/builder/types"
37-
"arduino.cc/builder/utils"
3837
"strconv"
3938
"strings"
4039
)
4140

4241
type LoadVIDPIDSpecificProperties struct{}
4342

4443
func (s *LoadVIDPIDSpecificProperties) Run(context map[string]interface{}, ctx *types.Context) error {
45-
if !utils.MapHas(context, constants.CTX_VIDPID) {
44+
if ctx.USBVidPid == "" {
4645
return nil
4746
}
4847

49-
vidPid := context[constants.CTX_VIDPID].(string)
48+
vidPid := ctx.USBVidPid
5049
vidPid = strings.ToLower(vidPid)
5150
vidPidParts := strings.Split(vidPid, "_")
5251
vid := vidPidParts[0]

src/arduino.cc/builder/rewrite_hardware_keys.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ func (s *RewriteHardwareKeys) Run(context map[string]interface{}, ctx *types.Con
4242
return nil
4343
}
4444

45-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
45+
packages := ctx.Hardware
4646
platformKeysRewrite := context[constants.CTX_PLATFORM_KEYS_REWRITE].(types.PlatforKeysRewrite)
4747
hardwareRewriteResults := context[constants.CTX_HARDWARE_REWRITE_RESULTS].(map[*types.Platform][]types.PlatforKeyRewrite)
4848

src/arduino.cc/builder/setup_build_properties.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ import (
4343
type SetupBuildProperties struct{}
4444

4545
func (s *SetupBuildProperties) Run(context map[string]interface{}, ctx *types.Context) error {
46-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
46+
packages := ctx.Hardware
4747

4848
targetPlatform := ctx.TargetPlatform
4949
actualPlatform := ctx.ActualPlatform
@@ -86,7 +86,7 @@ func (s *SetupBuildProperties) Run(context map[string]interface{}, ctx *types.Co
8686
buildProperties[constants.BUILD_PROPERTIES_BUILD_VARIANT_PATH] = filepath.Join(variantPlatform.Folder, constants.FOLDER_VARIANTS, variant)
8787
}
8888

89-
tools := context[constants.CTX_TOOLS].([]*types.Tool)
89+
tools := ctx.Tools
9090
for _, tool := range tools {
9191
buildProperties[constants.BUILD_PROPERTIES_RUNTIME_TOOLS_PREFIX+tool.Name+constants.BUILD_PROPERTIES_RUNTIME_TOOLS_SUFFIX] = tool.Folder
9292
buildProperties[constants.BUILD_PROPERTIES_RUNTIME_TOOLS_PREFIX+tool.Name+"-"+tool.Version+constants.BUILD_PROPERTIES_RUNTIME_TOOLS_SUFFIX] = tool.Folder

src/arduino.cc/builder/target_board_resolver.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ func (s *TargetBoardResolver) Run(context map[string]interface{}, ctx *types.Con
4747
targetPlatformName := fqbnParts[1]
4848
targetBoardName := fqbnParts[2]
4949

50-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
50+
packages := ctx.Hardware
5151

5252
logger := ctx.GetLogger()
5353

src/arduino.cc/builder/test/hardware_loader_test.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ func TestLoadHardware(t *testing.T) {
5555
NoError(t, err)
5656
}
5757

58-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
58+
packages := ctx.Hardware
5959
require.Equal(t, 2, len(packages.Packages))
6060
require.NotNil(t, packages.Packages["arduino"])
6161
require.Equal(t, 2, len(packages.Packages["arduino"].Platforms))
@@ -103,7 +103,7 @@ func TestLoadHardwareMixingUserHardwareFolder(t *testing.T) {
103103
NoError(t, err)
104104
}
105105

106-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
106+
packages := ctx.Hardware
107107

108108
if runtime.GOOS == "windows" {
109109
//a package is a symlink, and windows does not support them
@@ -171,7 +171,7 @@ func TestLoadHardwareWithBoardManagerFolderStructure(t *testing.T) {
171171
NoError(t, err)
172172
}
173173

174-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
174+
packages := ctx.Hardware
175175
require.Equal(t, 3, len(packages.Packages))
176176
require.NotNil(t, packages.Packages["arduino"])
177177
require.Equal(t, 1, len(packages.Packages["arduino"].Platforms))
@@ -220,7 +220,7 @@ func TestLoadLotsOfHardware(t *testing.T) {
220220
NoError(t, err)
221221
}
222222

223-
packages := context[constants.CTX_HARDWARE].(*types.Packages)
223+
packages := ctx.Hardware
224224

225225
if runtime.GOOS == "windows" {
226226
//a package is a symlink, and windows does not support them

src/arduino.cc/builder/test/load_vid_pid_specific_properties_test.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ package test
3131

3232
import (
3333
"arduino.cc/builder"
34-
"arduino.cc/builder/constants"
3534
"arduino.cc/builder/types"
3635
"github.com/stretchr/testify/require"
3736
"os"
@@ -85,7 +84,7 @@ func TestLoadVIDPIDSpecificProperties(t *testing.T) {
8584
buildPath := SetupBuildPath(t, ctx)
8685
defer os.RemoveAll(buildPath)
8786

88-
context[constants.CTX_VIDPID] = "0x2341_0x0237"
87+
ctx.USBVidPid = "0x2341_0x0237"
8988

9089
commands := []types.Command{
9190
&builder.ContainerSetupHardwareToolsLibsSketchAndProps{},

src/arduino.cc/builder/test/rewrite_hardware_keys_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func TestRewriteHardwareKeys(t *testing.T) {
5353
platform.Properties[constants.PLATFORM_NAME] = "A test platform"
5454
platform.Properties[constants.BUILD_PROPERTIES_COMPILER_PATH] = "{runtime.ide.path}/hardware/tools/avr/bin/"
5555

56-
context[constants.CTX_HARDWARE] = packages
56+
ctx.Hardware = packages
5757

5858
rewrite := types.PlatforKeyRewrite{Key: constants.BUILD_PROPERTIES_COMPILER_PATH, OldValue: "{runtime.ide.path}/hardware/tools/avr/bin/", NewValue: "{runtime.tools.avr-gcc.path}/bin/"}
5959
platformKeysRewrite := types.PlatforKeysRewrite{Rewrites: []types.PlatforKeyRewrite{rewrite}}
@@ -89,7 +89,7 @@ func TestRewriteHardwareKeysWithRewritingDisabled(t *testing.T) {
8989
platform.Properties[constants.BUILD_PROPERTIES_COMPILER_PATH] = "{runtime.ide.path}/hardware/tools/avr/bin/"
9090
platform.Properties[constants.REWRITING] = constants.REWRITING_DISABLED
9191

92-
context[constants.CTX_HARDWARE] = packages
92+
ctx.Hardware = packages
9393

9494
rewrite := types.PlatforKeyRewrite{Key: constants.BUILD_PROPERTIES_COMPILER_PATH, OldValue: "{runtime.ide.path}/hardware/tools/avr/bin/", NewValue: "{runtime.tools.avr-gcc.path}/bin/"}
9595
platformKeysRewrite := types.PlatforKeysRewrite{Rewrites: []types.PlatforKeyRewrite{rewrite}}

src/arduino.cc/builder/test/tools_loader_test.go

+3-4
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ package test
3131

3232
import (
3333
"arduino.cc/builder"
34-
"arduino.cc/builder/constants"
3534
"arduino.cc/builder/types"
3635
"github.com/stretchr/testify/require"
3736
"sort"
@@ -65,7 +64,7 @@ func TestLoadTools(t *testing.T) {
6564
err := loader.Run(context, ctx)
6665
NoError(t, err)
6766

68-
tools := context[constants.CTX_TOOLS].([]*types.Tool)
67+
tools := ctx.Tools
6968
require.Equal(t, 7, len(tools))
7069

7170
sort.Sort(ByToolIDAndVersion(tools))
@@ -104,7 +103,7 @@ func TestLoadToolsWithBoardManagerFolderStructure(t *testing.T) {
104103
err := loader.Run(context, ctx)
105104
NoError(t, err)
106105

107-
tools := context[constants.CTX_TOOLS].([]*types.Tool)
106+
tools := ctx.Tools
108107
require.Equal(t, 3, len(tools))
109108

110109
sort.Sort(ByToolIDAndVersion(tools))
@@ -131,7 +130,7 @@ func TestLoadLotsOfTools(t *testing.T) {
131130
err := loader.Run(context, ctx)
132131
NoError(t, err)
133132

134-
tools := context[constants.CTX_TOOLS].([]*types.Tool)
133+
tools := ctx.Tools
135134
require.Equal(t, 9, len(tools))
136135

137136
require.Equal(t, "arm-none-eabi-gcc", tools[0].Name)

src/arduino.cc/builder/tools_loader.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func (s *ToolsLoader) Run(context map[string]interface{}, ctx *types.Context) er
7272
}
7373
}
7474

75-
context[constants.CTX_TOOLS] = tools
75+
ctx.Tools = tools
7676

7777
return nil
7878
}

src/arduino.cc/builder/types/context.go

+3
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,13 @@ type Context struct {
2020
BuildOptionsJson string
2121
BuildOptionsJsonPrevious string
2222

23+
Hardware *Packages
24+
Tools []*Tool
2325
TargetBoard *Board
2426
TargetPackage *Package
2527
TargetPlatform *Platform
2628
ActualPlatform *Platform
29+
USBVidPid string
2730

2831
BuildProperties props.PropertiesMap
2932
BuildPath string

0 commit comments

Comments
 (0)