Remove further code duplication by allowing the main function to be
configurable.
(From OE-Core rev: 2d4b35a0db1220e7a7f1b6776223aa4d40a3f246)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently most of the rust recipes use this code but it is all piecemeal.
Turn the code into a class where things can start to be rationalised. Ultimately
some of the data and python code should be moved to a python library but one step
at a time.
No functionality changes.
(From OE-Core rev: 3795285cbf362e13b8151bfdbe1bce999ac28641)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>