From: Jeremy Kerr Date: Mon, 18 Mar 2013 06:23:23 +0000 (+0800) Subject: parsers: dynamically register parsers X-Git-Tag: v1.0.0~688 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=45e92aa32a80fdbbf5ad3ad64e34b1ac872018ef;hp=45e92aa32a80fdbbf5ad3ad64e34b1ac872018ef parsers: dynamically register parsers Currently, we require all parsers to be defined in an array in parsers.c. This change removes this requirement, by introducting a register_parser() macro, which adds a constructor to register the parser with the core parser infrastructure. Because each parser no longer resolves an undefined symbol, we need to use a `ld -r` object for libparser, instead of using libtool, which creates a .a (and hence has no parsers included). Signed-off-by: Jeremy Kerr ---