From 54c5b61f0acca588b4ca60d6566616facb25efc0 Mon Sep 17 00:00:00 2001 From: Dan Willemsen Date: Thu, 29 Nov 2018 12:54:20 -0800 Subject: [PATCH] python par: trim and convert the entry point at build time Instead of doing these string operations in the C++ code at every startup of an embedded par, trim and convert the entry point file to a python module path at build time. Test: m Change-Id: I04a6459a80c84a704b8a25a144ab1e19622d6cc3 --- python/builder.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/python/builder.go b/python/builder.go index 7d4589cce..7ecd4b5e4 100644 --- a/python/builder.go +++ b/python/builder.go @@ -54,7 +54,8 @@ var ( embeddedPar = pctx.AndroidStaticRule("embeddedPar", blueprint.RuleParams{ - Command: `echo '$main' > $entryPoint &&` + + // `echo -n` to trim the newline, since the python code just wants the name + Command: `echo -n '$main' > $entryPoint &&` + `$mergeParCmd -p --prefix $launcher -e $entryPoint $out $srcsZips && ` + `chmod +x $out && (rm -f $entryPoint)`, CommandDeps: []string{"$mergeParCmd"}, @@ -114,7 +115,7 @@ func registerBuildActionForParFile(ctx android.ModuleContext, embeddedLauncher b Output: binFile, Implicits: implicits, Args: map[string]string{ - "main": main, + "main": strings.Replace(strings.TrimSuffix(main, pyExt), "/", ".", -1), "entryPoint": entryPoint, "srcsZips": strings.Join(srcsZips.Strings(), " "), "launcher": launcherPath.String(),