[PATCH v2 11/11] Remove __sglue member for one configuration
Corinna Vinschen
vinschen@redhat.com
Thu May 12 19:09:43 GMT 2022
On May 12 14:11, Matthew Joyce wrote:
> From: Matt Joyce <matthew.joyce@embedded-brains.de>
>
> Removed __sglue member of struct reent when
> _REENT_GLOBAL_STDIO_STREAMS is defined.
> ---
> newlib/libc/include/sys/reent.h | 8 ++++----
> newlib/libc/reent/reent.c | 6 +++++-
> newlib/libc/stdio/fcloseall.c | 5 +++++
> newlib/libc/stdio/findfp.c | 9 ++++++++-
> 4 files changed, 22 insertions(+), 6 deletions(-)
This patch requires another change in Cygwin.
For some reason, entirely lost in the mist of time, Cygwin exports the
cleanup_glue function. It already did so when winsup and newlib sources
have been imported into the sourceware CVS repo, back in 2000.
At this point I'd usually say that we can't change that because backward
compatibility and yada yada, but it just doesn't make any sense to export
cleanup_glue, and never did. At all.
So, instead of reverting cleanup_glue to non-static, let's pull this
through and let's drop it from the list of exported functions.
That means, this patch needs a tiny extension and the commit message
should mention that it's removing cleanup_glue from the list of exported
symbols.
Here's the diff of the required change, please add it to this patch:
diff --git a/winsup/cygwin/common.din b/winsup/cygwin/common.din
index 63fa09af2553..751ab3754421 100644
--- a/winsup/cygwin/common.din
+++ b/winsup/cygwin/common.din
@@ -316,7 +316,6 @@ chroot SIGFE
cimag NOSIGFE
cimagf NOSIGFE
cimagl NOSIGFE
-cleanup_glue NOSIGFE
clearenv SIGFE
clearerr SIGFE
clearerr_unlocked SIGFE
diff --git a/winsup/cygwin/include/cygwin/version.h b/winsup/cygwin/include/cygwin/version.h
index ad7fab43f458..6f65a12994bc 100644
--- a/winsup/cygwin/include/cygwin/version.h
+++ b/winsup/cygwin/include/cygwin/version.h
@@ -516,12 +516,13 @@ details. */
341: Export pthread_cond_clockwait, pthread_mutex_clocklock,
pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock,
sem_clockwait, sig2str, str2sig.
+ 342: Remove cleanup_glue.
Note that we forgot to bump the api for ualarm, strtoll, strtoull,
sigaltstack, sethostname. */
#define CYGWIN_VERSION_API_MAJOR 0
-#define CYGWIN_VERSION_API_MINOR 341
+#define CYGWIN_VERSION_API_MINOR 342
/* There is also a compatibity version number associated with the shared memory
regions. It is incremented when incompatible changes are made to the shared
Thanks,
Corinna
More information about the Newlib
mailing list