Disable "__builtin_func" when converting mk to bp

The "__builtin_func" doesn't work in soong. The converting tool
androidmk should disable this feature.

Bug: 329770862
Test: 1. cd build/soong/androidmk/androidmk
      2. go test -run TestEndToEnd
Change-Id: I1de04e4e1a34fb7335e0013f59b33f7f2673722a
This commit is contained in:
Herbert Xue 2024-03-15 16:03:22 +08:00
parent 8b0192d031
commit 3fe7b7f66e
2 changed files with 18 additions and 4 deletions

View file

@ -510,6 +510,22 @@ endif # b==false
// endif
`,
},
{
// Unsupported function case because that doesn't work in bp
desc: "error for unsupported functions",
in: `
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(filter-out filter-out-file.java ,$(call all-java-files-under, src))
LOCAL_PACKAGE_NAME := foo
include $(BUILD_PACKAGE)
`,
expected: `
android_app {
name: "foo",
srcs: ["UNSUPPORTED FUNCTION:filter-out filter-out-file.java src/**/*.java"],
}
`,
},
{
desc: "ignore all-makefiles-under",
in: `

View file

@ -14,9 +14,7 @@
package parser
import (
"strings"
)
import "strings"
type Scope interface {
Get(name string) string
@ -88,7 +86,7 @@ func (v Variable) EvalFunction(scope Scope) ([]string, bool) {
if fname == "call" {
return scope.Call(argVals[0], argVals[1:]), true
} else {
return []string{"__builtin_func:" + fname + " " + strings.Join(argVals, " ")}, true
return []string{"UNSUPPORTED FUNCTION:" + fname + " " + strings.Join(argVals, " ")}, true
}
}
}