Improvements to shared makefiles
Detail: * Some subtle bugs can be caused by including shared makefiles in the wrong order. To try to prevent further problems, and simplify main makefiles at the same time, CApp, CLibrary and CModule now include the makefiles they depend upon themselves, in the correct order: generally speaking, all macro (re)definitions should be before rule definitions. * Added sentry macro definitions to each makefile. These can be used to avoid repeated inclusion of makefiles - particularly important now that CApp, CLibrary and CModule do additional includes. This removes the majority of cases where amu produced warnings about multiple inclusion; a few components remain where this is still the case, but these warnings are harmless. If they bother you, simply remove the now-superfluous include statements from the relevant main makefile. * Created a CUtil shared makefile, for building transient utilities. The 'C' in the name is more for consistency with CApp/CLibrary/CModule than anything to do with the 'C' language, since all of these makefiles work equally well for assembler and 'C' - the 'C' is for historic reasons. * Tweaked the debug rules in CApp to avoid harmless but annoying linker warnings about stubs being included twice. * Added several new default switches to ASFLAGS. These enable us to start making assembler source files work under a cross-assembler, because statements like GET Hdr:Macros GET Hdr:Machine.<Machine> are not portable, and tweaking the cross-assembler to understand these types of constructs would not be pretty. Instead, with the extra command line switches now introduced, you can use GET Macros GET Machine/$Machine Admin: Tested in a ROM build Version 5.12. Tagged as 'BuildSys-5_12'
Showing with 108 additions and 15 deletions