Regenerate newlib/newlib.hin?
Commit Message
Hello,
when I run "autoreconf" in "newlib", I get the following local changes:
Are these changes due to a local configuration or tooling issue or
should we check in these changes?
Comments
Am 11.09.2023 um 09:12 schrieb Sebastian Huber:
> Hello,
>
> when I run "autoreconf" in "newlib", I get the following local changes:
[...]
> Are these changes due to a local configuration or tooling issue or
> should we check in these changes?
You almost certainly should not check in those changes. In fact, you
probably have to revert to the checked-in copy, or remove those changes
manually.
They result from the very unusual way newlib handles configuration
headers. You'll find that those 4 elements are instead defined in the
_other_ checked-in *.hin file: _newlib_version.hin. We artificially
split the autoheader definitions into these two separate files, and then
#include the configure-generated _newlib_version.h into the generated
newlib.h.
Unfortunately autoreconf does not really understand this rather
convoluted scheme. While it allows for more than one call to
AC_CONFIG_HEADER, to configure more than one *.hin file, it does not
recognize the idea that autoheader should put any less than all of the
AC_DEFINE()d entries into its output file (newlib.hin).
So this needs some extra, manual post-processing after running
autoreconf, to remove the duplicate definitions.
@@ -375,6 +375,9 @@
/* nano version of malloc is used. */
#undef _NANO_MALLOC
+/* "The newlib version in string format." */
+#undef _NEWLIB_VERSION
+
/* Verify _REENT_CHECK macros allocate memory successfully. */
#undef _REENT_CHECK_VERIFY
@@ -422,4 +425,13 @@
/* Define if wide char orientation is supported. */
#undef _WIDE_ORIENT
+/* "The newlib minor version number." */
+#undef __NEWLIB_MINOR__
+
+/* "The newlib patch level." */
+#undef __NEWLIB_PATCHLEVEL__
+
+/* "The newlib major version number." */
+#undef __NEWLIB__
+
#endif /* !__NEWLIB_H__ */