Use make_boot_image() for all Zebu tests
Due to the fact that we didn't have
make_boot_image() in early development, currently the tests are written in different ways for code generation and linking:
compile_to_sharedlib()(as exposed in API, but not in the Mu spec) to link generated code to a dynamic library
make_boot_image()(as exposed in API) to link generated code to an executable
compile_fnc()to link generated code to a dynamic library for cargo tests
- manually compile code, persist vm, and link for cargo tests
Currently 1 and 2 are internally using
make_boot_image(). But others are not.
make_boot_image() in Zebu allows generating dynamic library or executable (depends on output file name), we can make all the test use
make_boot_image(). This will make the linking for all tests unified, and make it easy to make changes.