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

Commit 10b74350 authored by Daniel Norman's avatar Daniel Norman
Browse files

Performs same checks as aidl_interface.go before stripping leading "I".

Test: building AIDL interface named IntEnum.aidl. Leading I is not
removed.
Change-Id: Ia40cbdf9b8936f6f58a99971eae1b2138a678c91
parent aefd0af5
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -113,7 +113,14 @@ func genAidl(ctx android.ModuleContext, rule *android.RuleBuilder, aidlFile andr

	aidlPackage := strings.TrimSuffix(aidlFile.Rel(), aidlFile.Base())
	baseName := strings.TrimSuffix(aidlFile.Base(), aidlFile.Ext())
	shortName := strings.TrimPrefix(baseName, "I")
	shortName := baseName
	// TODO(b/111362593): aidl_to_cpp_common.cpp uses heuristics to figure out if
	//   an interface name has a leading I. Those same heuristics have been
	//   moved here.
	if len(baseName) >= 2 && baseName[0] == 'I' &&
		strings.ToUpper(baseName)[1] == baseName[1] {
		shortName = strings.TrimPrefix(baseName, "I")
	}

	outDir := android.PathForModuleGen(ctx, "aidl")
	headerI := outDir.Join(ctx, aidlPackage, baseName+".h")