From 8e0e6c678f3cf1199751e3b097745531ceed34ed Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Sat, 6 May 2023 16:21:39 -0400 Subject: Remove the "preview" status from the loaded object feature Add an ABI version both to the header file and passed to the setup function. Unfortunately this itself is an ABI break and I couldn't find a good way to avoid it. * NEWS: Announce the ABI is not a preview and the incompatibility. * doc/make.texi: Remove the preview warnings for object loading. Document the new ABI version argument. * src/gnumake.h (GMK_ABI_VERSION): Set the ABI version to 1. Add comments documenting the format of the setup function. * src/load.c (setup_func_t): Rename from load_func_t. (load_file): Pass the ABI version to the setup function. * tests/scripts/features/load: Rework the setup function. * tests/scripts/features/loadapi: Ditto. --- NEWS | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'NEWS') diff --git a/NEWS b/NEWS index 320cf2df..159d228e 100644 --- a/NEWS +++ b/NEWS @@ -20,6 +20,15 @@ https://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=111&se This version of GNU Make no longer supports AmigaOS. If you need support for AmigaOS please use one of the older versions of GNU Make. +* WARNING: Loaded Object ABI incompatibility! + This release changes the loaded object feature from "technology preview" to + fully-supported feature. However, it introduces an ABI incompatibility with + previous releases: the setup function now takes an ABI version as its first + argument. When compiling your loaded object you can test the GMK_ABI_VERSION + constant at compile time to detect which ABI should be used. At runtime + your initialization function can check the provided ABI version to verify + it's being loaded correctly. + * New feature: Makefile warning reporting control A new option "--warn" controls reporting of warnings for makefiles. Actions can be set to "ignore", "warn", or "error". Two new warnings are reported: -- cgit v1.2.1