History log of /fuchsia/zircon/third_party/ulib/cksum/rules.mk
Revision Date Author Comments
# bdcdf4d9 30-Apr-2018 Roland McGrath <mcgrathr@google.com>

[host] zbi will replace mkbootfs

Rewrite the mkbootfs host tool from scratch in C++14, under the new
name zbi (Zircon Boot Image), which will become the new name for the
BOOTDATA format soon. The old tool is left intact during a
transition period.

The new implementation is marginally shorter but with more comments
and structure. It opens each file only once and uses mmap heavily.
It uses getopt_long for argument parsing. It uses the cksum and lz4
code as proper hostlibs rather than source files.

The --complete switch makes the tool check that the result is a
complete bootable image, which has a kernel and a /boot BOOTFS (and
can optionally have additional items).

The --ramdisk switch is replaced with --target=ramdisk: all
following input file arguments will be treated as raw images.
Similarly, --target=zbi treats following input file arguments
as incomplete ZBI files and never as manifest text files.

The --board, --vid, --pid, --header, and --header-align switches are
not supported by zbi. Those things are now handled entirely by boot
loaders. Boot shims for legacy boot loaders are standalone images
that can just be prepended to a complete ZBI image.

Change-Id: I4903b7d0c5824c496301a52c05a85a2e36b3cebd


# 719b4cbd 16-Mar-2017 John Grossman <johngro@google.com>

[assert] Introduce MX_ASSERT

Make magenta style asserts public and defined in magenta/assert.h. Convert
usermode code to use the MX_(ASSERT|DEBUG_ASSERT) versions.

Change-Id: Iec8cc20f9c577cee50bc72bd820d4c1b604b8a86


# 4768386a 18-Aug-2016 Brian Swetland <swetland@google.com>

[lib][cksum] new style build config of shared user/kernel libraries

1. The kernel build globs all includes into one global -I space, but
the user build depends on public includes being relative to the
module source, so the "canonical" source needs to live in the
.../ulib/$module/... space so .../ulib/$module/include/...
contains the public headers:

This is third_party/ulib/cksum for libcksum

2. The kernel version of the module simply needs to reference the
canonical source and contains only a rules.mk, as in:

third_party/lib/cksum

3. If there are public headers, the kernel side rules.mk must
add them to the kernel include space, like the above does:

KERNEL_INCLUDES += $(SRC_DIR)/include

Change-Id: Ia1a5af22844f22e2c027dcaea7e7b7cf35d00ab2