Skip to content

Commit bdadd58

Browse files
committed
add "slit" subcmd
1 parent b1a47ee commit bdadd58

File tree

3 files changed

+31
-2
lines changed

3 files changed

+31
-2
lines changed

lazybox/src/main/kotlin/cfig/lazybox/App.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,4 +59,10 @@ fun main(args: Array<String>) {
5959
log.error("Usage: tracecmd <report_file>")
6060
}
6161
}
62+
if (args[0] == "split") {
63+
if (args.size != 3) {
64+
log.error("Usage: split <workdir> <part_name>")
65+
}
66+
CompileCommand().run(args[1], args[2])
67+
}
6268
}
Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,27 @@
11
package cfig.lazybox
22

3+
import cfig.helper.Helper
4+
import java.io.File
5+
36
class CompileCommand {
4-
}
7+
fun run(workDir: String, stem: String) {
8+
val simg2simg = "simg2simg"
9+
val cmd = "$simg2simg $workDir/$stem.subimg $workDir/$stem.subimg 524288000"
10+
Helper.powerRun(cmd, null)
11+
val emmcImageListFile = File(workDir, "emmc_image_list")
12+
val theLines = emmcImageListFile.readLines().toMutableList()
13+
val stemLine = (theLines.filter { it.startsWith("$stem.subimg,") }).get(0).split(",")
14+
check(stemLine.size == 2)
15+
val stemPart = stemLine[1]
16+
theLines.apply {
17+
removeIf { it.startsWith("$stem.subimg") }
18+
val superImageFiles = File(workDir).listFiles { file -> file.name.startsWith("$stem.subimg.") }
19+
superImageFiles.forEach {
20+
val newLine = "${it.name},$stemPart"
21+
println("Adding $newLine")
22+
add(newLine)
23+
}
24+
}
25+
emmcImageListFile.writeText(theLines.joinToString("\n") + "\n")
26+
}
27+
}

lazybox/src/main/kotlin/cfig/lazybox/TraceCmdParser.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class TraceCmdParser {
3737
val timestampString = parts[2].split(':')[0]
3838
val timestamp = timestampString.toDouble()
3939
val eventType = parts[3].removeSuffix(":")
40-
var info = line.trim().substring(line.trim().indexOf(parts[4]))
40+
val info = line.trim().substring(line.trim().indexOf(parts[4]))
4141
log.debug(info)
4242
info.split(" ").forEachIndexed { index, s ->
4343
log.debug("info#$index: $s")

0 commit comments

Comments
 (0)