class

Quartz::Build::FapPacker

Inherits Reference < Object

Turns a linked ELF + manifest into a loadable .fap by adding a .fapmeta section via arm-none-eabi-objcopy — same flow ufbt uses.

Invocation: arm-none-eabi-objcopy --add-section .fapmeta=<bin>
--set-section-flags .fapmeta=contents,noload,readonly
<input.elf> <output.fap>

Constructors

new(toolchain : Toolchain, runner : Runner | Nil = nil)
Source

Instance methods

command_for(input_elf : String, meta_path : String, output : String) : Tuple(String, Array(String))
Source
pack(input_elf : String, manifest : FapManifest, output : String) : String

Produce a .fap at output from a linked partial ELF input_elf and a serialized manifest. The manifest bytes are written to a temp file because objcopy's --add-section takes a filename.

Source
toolchain
Source

Nested types