Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a80b113f authored by Steven Moreland's avatar Steven Moreland Committed by Gerrit Code Review
Browse files

Merge "Add name hint to Soong."

parents bbd707fa 671dc231
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -325,8 +325,8 @@ func (r *NameResolver) chooseId(namespace *Namespace) {
	namespace.id = strconv.Itoa(id)
}

func (r *NameResolver) MissingDependencyError(depender string, dependerNamespace blueprint.Namespace, depName string) (err error) {
	text := fmt.Sprintf("%q depends on undefined module %q", depender, depName)
func (r *NameResolver) MissingDependencyError(depender string, dependerNamespace blueprint.Namespace, depName string, guess []string) (err error) {
	text := fmt.Sprintf("%q depends on undefined module %q.", depender, depName)

	_, _, isAbs := r.parseFullyQualifiedName(depName)
	if isAbs {
@@ -345,9 +345,10 @@ func (r *NameResolver) MissingDependencyError(depender string, dependerNamespace
		}
		_, skipped := namespace.moduleContainer.SkippedModuleFromName(depName, nil)
		if skipped {
			skippedDepErrors = append(skippedDepErrors, namespace.moduleContainer.MissingDependencyError(depender, dependerNamespace, depName))
			skippedDepErrors = append(skippedDepErrors, namespace.moduleContainer.MissingDependencyError(depender, dependerNamespace, depName, nil))
		}
	}

	if len(foundInNamespaces) > 0 {
		// determine which namespaces are visible to dependerNamespace
		dependerNs := dependerNamespace.(*Namespace)
@@ -363,6 +364,10 @@ func (r *NameResolver) MissingDependencyError(depender string, dependerNamespace
		text += fmt.Sprintf("\n%s", err.Error())
	}

	if len(guess) > 0 {
		text += fmt.Sprintf("\nOr did you mean %q?", guess)
	}

	return fmt.Errorf(text)
}

+9 −6
Original line number Diff line number Diff line
@@ -174,9 +174,10 @@ func TestDependingOnModuleInNonImportedNamespace(t *testing.T) {
			`,
		}),
	).
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir3/Android.bp:4:5: "b" depends on undefined module "a"
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir3/Android.bp:4:5: "b" depends on undefined module "a".
Module "b" is defined in namespace "dir3" which can read these 2 namespaces: ["dir3" "."]
Module "a" can be found in these namespaces: ["dir1" "dir2"]\E`)).
Module "a" can be found in these namespaces: ["dir1" "dir2"]\E
Or did you mean ["soong_namespace"]?`)).
		RunTest(t)
}

@@ -421,9 +422,10 @@ func TestNamespacesDontInheritParentNamespaces(t *testing.T) {
			`,
		}),
	).
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir1/subdir1/Android.bp:4:5: "b" depends on undefined module "a"
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir1/subdir1/Android.bp:4:5: "b" depends on undefined module "a".
Module "b" is defined in namespace "dir1/subdir1" which can read these 2 namespaces: ["dir1/subdir1" "."]
Module "a" can be found in these namespaces: ["dir1"]\E`)).
Module "a" can be found in these namespaces: ["dir1"]\E
Or did you mean ["soong_namespace"]?`)).
		RunTest(t)
}

@@ -481,9 +483,10 @@ func TestNamespaceImportsNotTransitive(t *testing.T) {
			`,
		}),
	).
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir3/Android.bp:5:5: "c" depends on undefined module "a"
		ExtendWithErrorHandler(FixtureExpectsOneErrorPattern(`\Qdir3/Android.bp:5:5: "c" depends on undefined module "a".
Module "c" is defined in namespace "dir3" which can read these 3 namespaces: ["dir3" "dir2" "."]
Module "a" can be found in these namespaces: ["dir1"]\E`)).
Module "a" can be found in these namespaces: ["dir1"]\E
Or did you mean ["b"]?`)).
		RunTest(t)
}