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
diff --git a/python/builder.go b/python/builder.go
index 7d4589c..7ecd4b5 100644
--- a/python/builder.go
+++ b/python/builder.go
@@ -54,7 +54,8 @@
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 @@
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(),