altos/stm: Use picolibc startup code Instead of custom bits Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Fix flash loader map file names Make sure these include the product name too. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Move from newlib-nano to picolibc Use picolibc.ld, which involved some .ld file hacking, including: 1) Defining ao_boot RAM address in the .ld file and declaring it 'extern' 2) Changing how m0 interrupt vector got moved to ram 3) Using -Taltos.ld instead of -Wl,-Taltos.ld so picolibc.specs wouldn't add picolibc.ld 4) Placing romconfig vars in '.init.1' and '.init.2' sections instead of '.romconfig' 5) Place code needing to run out of RAM in section .srodata instead of .ramtext Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Move common build definitions to src/Makefile.defs This cleans up the build process for all architectures, providing a common place to specify vpath, cflags and build rules for various common files. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Switch to newlib-nano for libc on arm Stop using pdclib Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Rename 'core' to 'kernel' core remains a bad name to use -- dirvish skips files (and directories, it seems) with that name. Signed-off-by: Keith Packard <keithp@keithp.com>
altos/stm: Update pdclib paths for flash-loader builds Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Change flash loader name to just AltosFlash Remove the software version string from the product name Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Use installed pdclib Switch over to the installed pdclib everywhere Signed-off-by: Keith Packard <keithp@keithp.com>
Add --with parameters to configure for compiler selection This allows the user to specify which compiler to use for each target CPU. Also checks to make sure the arm compiler supports -m0 and -m3 cpu type flags. The build now actually uses the specified compilers too. Signed-off-by: Keith Packard <keithp@keithp.com>
altos/stm: New compiler doesn't correctly build flash bits yet Use /opt/cortex until we make the packaged one work Signed-off-by: Keith Packard <keithp@keithp.com>
altos/stm: Create per-product flash loaders Split the flash loader prototype into pieces so that each product can build a custom flash loader with very little code. Signed-off-by: Keith Packard <keithp@keithp.com>