* ANN: SweetAda 0.7 released
@ 2021-06-01 20:18 Gabriele Galeotti
0 siblings, 0 replies; only message in thread
From: Gabriele Galeotti @ 2021-06-01 20:18 UTC (permalink / raw)
Hi all.
I've just released SweetAda 0.7.
SweetAda is a lightweight development framework to create Ada systems on a wide range
of machines. Please refer to https://www.sweetada.org.
Downloads available @ https://sourceforge.net/projects/sweetada.
Release notes
-------------
- updated targets in master Makefile ("all" was tagged default instead of "help");
the targets "kernel_info" and "kernel_libinfo" are now exposed (kernel_libinfo
produces listings of library objects even if the kernel build is not successful)
- added implicit dependencies for console unit
- elftool will emit spaces instead of TABs when performing an ELF section dump, this
will be noted in the next toolchain release
- the linker script filename can now be declared in the platform configuration.in
by specifying "LD_SCRIPT := <linker_script_filename>", otherwise it takes a default
"linker.lds"
- the C library now implements Ada stubs for malloc/free/calloc/realloc, so C code
can call these Ada subprograms via stdlib wrappers; this has also the benefit of
resolve references to malloc() when secondary stack tries to return heavy (i.e.,
unconstrained) objects, but be sure to add "USE_LIBGCC := Y" and "USE_CLIBRARY := Y"
to the configuration.in file, either the generic one in the top-level directory,
or the platform-dependent one
- SFP RTS: a-except: Raise_Exception calls Last_Chance_Handler
- SFP RTS: added Ada.Assertions (for pragma Assert you need to turn on -gnata in
the "Ada Run-Time Checks switches" section of Makefile.tc.in)
- core/bits: added BITZERO/BITONE/BITL/BITH/BITOFF/BITON declarations
- core/console: Print (Boolean), emits "T" or "F"
- core/llutils: HexDigit_To_U8 uses a case instead of longer ifs
- modules/definitions: added a few definitions
- added various Volatile_Full_Access aspects here and there
- corrected some section wildcards in linker scripts for ARM platforms
- x86_64 lacks some low-level CPU subprograms (but thay are empty anyway) and so the
build could fail with unresolved objects, added
- new libutils/libopenocd.tcl file, useful for small OpenOCD function helpers
- Digi Connect ME (NET+ARM NS7520): some more register definitions; adopted a Tcl
script as front-end to OpenOCD
- Synergy S5D9: OpenOCD cfg file renamed to standard "openocd.cfg"
- Synergy S5D9: more register definitions, SCI almost completely parameterized
- platform Spartan3E renamed as Spartan3E-SK
- new target: Avnet Xilinx Spartan-3A Evaluation Kit (Spartan3A-EK, MicroBlaze v7.00.b),
only able to blink a LED; the programmer.tcl front-end will download the bitstream by
directly interfacing with the on-board Cypress PSoC via USB protocol (no external
tools needed in a Linux environment)
- targets involving OpenOCD (DigiConnectME, FRDM-KL46Z, HiFive1, MSP432P401R,
STM32F769I, Synergy-S5D9) now should specify in the platform configuration.in the
OpenOCD prefix (in Windows is the installation directory, i.e., that which is the
parent of bin/, etc); the default is the *nix path "/usr/local"
- in the top-level directory there are the two files .cproject and .project for Eclipse
CDT; no big deal since you have absolutely no Ada support, but if you import the
project and configure the *.adb and *.ads files as textual source files, you could
do a make build cycle, with error signalling (clicking on the error shown in console
should redirect you to the offending source line)
- typos, cosmetics and minor adjustments
Quick notes
-----------
As usual, download the three packages core, RTS and LibGCC (since many changes are
system-wide), and please save your work before overwrite the filesystem.
G
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-06-01 20:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-01 20:18 ANN: SweetAda 0.7 released Gabriele Galeotti
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox