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

Commit 47a9d0cd authored by Lukacs T. Berki's avatar Lukacs T. Berki
Browse files

Really fix queryview.

In addition, make the Ninja command nicer by using backticks instead of
backslash-quoting double quotes.

Test: Manual: "m queryview"
Change-Id: I5d6e1d41424e0229bfe08e2e7eaf2fb025ed48c2
parent 89071b08
Loading
Loading
Loading
Loading
+12 −8
Original line number Diff line number Diff line
@@ -66,16 +66,20 @@ func generateBuildActionsForBazelConversion(ctx SingletonContext, converterMode
	bazelQueryView := ctx.Rule(pctx, "bazelQueryView",
		blueprint.RuleParams{
			Command: fmt.Sprintf(
				"rm -rf ${outDir}/* && "+
					"BUILDER=\"%s\" && "+
					"cd $$(dirname \"$$BUILDER\") && "+
					"ABSBUILDER=\"$$PWD/$$(basename \"$$BUILDER\")\" && "+
					"cd / && "+
					"env -i \"$$ABSBUILDER\" --bazel_queryview_dir ${outDir} \"%s\" && "+
					"echo WORKSPACE: `cat %s` > ${outDir}/.queryview-depfile.d",
				`rm -rf "${outDir}/"* && `+
					`mkdir -p "${outDir}" && `+
					`echo WORKSPACE: cat "%s" > "${outDir}/.queryview-depfile.d" && `+
					`BUILDER="%s" && `+
					`echo BUILDER=$$BUILDER && `+
					`cd "$$(dirname "$$BUILDER")" && `+
					`echo PWD=$$PWD && `+
					`ABSBUILDER="$$PWD/$$(basename "$$BUILDER")" && `+
					`echo ABSBUILDER=$$ABSBUILDER && `+
					`cd / && `+
					`env -i "$$ABSBUILDER" --bazel_queryview_dir "${outDir}" "%s"`,
				moduleListFilePath.String(), // Use the contents of Android.bp.list as the depfile.
				primaryBuilder.String(),
				strings.Join(os.Args[1:], "\" \""),
				moduleListFilePath.String(), // Use the contents of Android.bp.list as the depfile.
			),
			CommandDeps: []string{primaryBuilder.String()},
			Description: fmt.Sprintf(
+3 −2
Original line number Diff line number Diff line
@@ -43,7 +43,7 @@ func init() {
	flag.StringVar(&delveListen, "delve_listen", "", "Delve port to listen on for debugging")
	flag.StringVar(&delvePath, "delve_path", "", "Path to Delve. Only used if --delve_listen is set")
	flag.StringVar(&docFile, "soong_docs", "", "build documentation file to output")
	flag.StringVar(&bazelQueryViewDir, "bazel_queryview_dir", "", "path to the bazel queryview directory")
	flag.StringVar(&bazelQueryViewDir, "bazel_queryview_dir", "", "path to the bazel queryview directory relative to --top")
}

func newNameResolver(config android.Config) *android.NameResolver {
@@ -150,7 +150,8 @@ func main() {
	if bazelQueryViewDir != "" {
		// Run the code-generation phase to convert BazelTargetModules to BUILD files.
		codegenContext := bp2build.NewCodegenContext(configuration, *ctx, bp2build.QueryView)
		if err := createBazelQueryView(codegenContext, bazelQueryViewDir); err != nil {
		absoluteQueryViewDir := shared.JoinPath(topDir, bazelQueryViewDir)
		if err := createBazelQueryView(codegenContext, absoluteQueryViewDir); err != nil {
			fmt.Fprintf(os.Stderr, "%s", err)
			os.Exit(1)
		}