Skip to content

Commit ce9d3b2

Browse files
author
Federico Fissore
committed
Even when no libraries are used, precompiled ones must be removed
Signed-off-by: Federico Fissore <[email protected]>
1 parent ccadaae commit ce9d3b2

File tree

2 files changed

+27
-4
lines changed

2 files changed

+27
-4
lines changed

Diff for: src/arduino.cc/builder/test/unused_compiled_libraries_remover_test.go

+27
Original file line numberDiff line numberDiff line change
@@ -75,3 +75,30 @@ func TestUnusedCompiledLibrariesRemoverLibDoesNotExist(t *testing.T) {
7575
err := cmd.Run(context)
7676
NoError(t, err)
7777
}
78+
79+
func TestUnusedCompiledLibrariesRemoverNoUsedLibraries(t *testing.T) {
80+
temp, err := ioutil.TempDir("", "test")
81+
NoError(t, err)
82+
defer os.RemoveAll(temp)
83+
84+
NoError(t, os.MkdirAll(filepath.Join(temp, "SPI"), os.FileMode(0755)))
85+
NoError(t, os.MkdirAll(filepath.Join(temp, "Bridge"), os.FileMode(0755)))
86+
NoError(t, ioutil.WriteFile(filepath.Join(temp, "dummy_file"), []byte{}, os.FileMode(0644)))
87+
88+
context := make(map[string]interface{})
89+
context[constants.CTX_LIBRARIES_BUILD_PATH] = temp
90+
context[constants.CTX_IMPORTED_LIBRARIES] = []*types.Library{}
91+
92+
cmd := builder.UnusedCompiledLibrariesRemover{}
93+
err = cmd.Run(context)
94+
NoError(t, err)
95+
96+
_, err = os.Stat(filepath.Join(temp, "SPI"))
97+
require.Error(t, err)
98+
require.True(t, os.IsNotExist(err))
99+
_, err = os.Stat(filepath.Join(temp, "Bridge"))
100+
require.Error(t, err)
101+
require.True(t, os.IsNotExist(err))
102+
_, err = os.Stat(filepath.Join(temp, "dummy_file"))
103+
NoError(t, err)
104+
}

Diff for: src/arduino.cc/builder/unused_compiled_libraries_remover.go

-4
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,6 @@ func (s *UnusedCompiledLibrariesRemover) Run(context map[string]interface{}) err
4444
librariesBuildPath := context[constants.CTX_LIBRARIES_BUILD_PATH].(string)
4545
libraries := context[constants.CTX_IMPORTED_LIBRARIES].([]*types.Library)
4646

47-
if len(libraries) == 0 {
48-
return nil
49-
}
50-
5147
_, err := os.Stat(librariesBuildPath)
5248
if err != nil && os.IsNotExist(err) {
5349
return nil

0 commit comments

Comments
 (0)