* Re: Newlib Digest, Vol 27, Issue 23
[not found] <mailman.34813.1652684169.2100866.newlib@sourceware.org>
@ 2022-05-16 7:42 ` Алексей Бондаренко
0 siblings, 0 replies; only message in thread
From: Алексей Бондаренко @ 2022-05-16 7:42 UTC (permalink / raw)
To: newlib
All dubious actions - freeze, 24/7 under the attacks of scammers, perhaps
there is a substitution of identity.legitimate device is only this and then
they are trying to perform remote control, apple, Mac, there is no more
trust.
пн, 16 мая 2022 г., 09:58 <newlib-request@sourceware.org>:
> Send Newlib mailing list submissions to
> newlib@sourceware.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://sourceware.org/mailman/listinfo/newlib
> or, via email, send a message with subject or body 'help' to
> newlib-request@sourceware.org
>
> You can reach the person managing the list at
> newlib-owner@sourceware.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Newlib digest..."
> Today's Topics:
>
> 1. Re: [PATCH 2/7] Cygwin: Enable backward binary compatibility
> (Sebastian Huber)
> 2. [PATCH 2/6] Optional struct _reent::__unused_sdidinit
> (Sebastian Huber)
> 3. [PATCH 5/6] Optional struct
> _reent::_new::_reent::_unused_rand (Sebastian Huber)
> 4. [PATCH 3/6] Optional struct _reent::_unspecified_locale_info
> (Sebastian Huber)
> 5. [PATCH 4/6] Optional struct _reent::_new::_unused
> (Sebastian Huber)
> 6. [PATCH 0/6] Add --enable-newlib-reent-binary-compat configure
> option (Sebastian Huber)
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 07:31:38 +0200
> Subject: Re: [PATCH 2/7] Cygwin: Enable backward binary compatibility
> On 13/05/2022 22:15, Corinna Vinschen wrote:
> > On May 13 15:46, Sebastian Huber wrote:
> >> ---
> >> winsup/cygwin/include/cygwin/config.h | 1 +
> >> 1 file changed, 1 insertion(+)
> >>
> >> diff --git a/winsup/cygwin/include/cygwin/config.h
> b/winsup/cygwin/include/cygwin/config.h
> >> index 71a216fbd..2d410a2e7 100644
> >> --- a/winsup/cygwin/include/cygwin/config.h
> >> +++ b/winsup/cygwin/include/cygwin/config.h
> >> @@ -80,6 +80,7 @@ extern inline struct _reent *__getreent (void)
> >> #define __TM_GMTOFF tm_gmtoff
> >> #define __TM_ZONE tm_zone
> >> #define _USE_LONG_TIME_T 1
> >> +#define _NEWLIB_BACKWARD_BINARY_COMPAT 1
> > Why?
> >
> > AFAICS we don't expose _REENT to user space. In theory (knocking
> > on wood here), we shouldn't need _REENT binary compat.
>
> Ok good, I always thought the unused members in struct _reent were
> mainly for Cygwin.
>
> Maybe the option should be named --enable-newlib-reent-binary-compat and
> restricted to struct _reent.
>
> --
> embedded brains GmbH
> Herr Sebastian HUBER
> Dornierstr. 4
> 82178 Puchheim
> Germany
> email: sebastian.huber@embedded-brains.de
> phone: +49-89-18 94 741 - 16
> fax: +49-89-18 94 741 - 08
>
> Registergericht: Amtsgericht München
> Registernummer: HRB 157899
> Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
> Unsere Datenschutzerklärung finden Sie hier:
> https://embedded-brains.de/datenschutzerklaerung/
>
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 08:55:53 +0200
> Subject: [PATCH 2/6] Optional struct _reent::__unused_sdidinit
> Provide struct _reent::__unused_sdidinit only if
> _REENT_BACKWARD_BINARY_COMPAT
> is defined.
> ---
> newlib/libc/include/sys/reent.h | 16 +++++++++++++---
> 1 file changed, 13 insertions(+), 3 deletions(-)
>
> diff --git a/newlib/libc/include/sys/reent.h
> b/newlib/libc/include/sys/reent.h
> index fa9ac57da..e2fd0b422 100644
> --- a/newlib/libc/include/sys/reent.h
> +++ b/newlib/libc/include/sys/reent.h
> @@ -342,6 +342,12 @@ struct _rand48 {
> #define _REENT_ASCTIME_SIZE 26
> #define _REENT_SIGNAL_SIZE 24
>
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> +#define _REENT_INIT_UNUSED_SDIDINIT 0,
> +#else
> +#define _REENT_INIT_UNUSED_SDIDINIT /* Nothing to initialize */
> +#endif
> +
> /*
> * struct _reent
> *
> @@ -395,9 +401,11 @@ struct _reent
>
> char *_emergency;
>
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> /* No longer used, but member retained for binary compatibility.
> Now, the __cleanup member is used to check initialization. */
> int _unused_sdidinit;
> +#endif
>
> int _unspecified_locale_info; /* unused, reserved for locale
> stuff */
> struct __locale_t *_locale;/* per-thread locale */
> @@ -440,7 +448,7 @@ struct _reent
> &__sf[2], \
> 0, \
> _NULL, \
> - 0, \
> + _REENT_INIT_UNUSED_SDIDINIT \
> 0, \
> _NULL, \
> _NULL, \
> @@ -478,7 +486,7 @@ extern const struct __sFILE_fake __sf_fake_stderr;
> (__FILE *)&__sf_fake_stderr, \
> 0, \
> _NULL, \
> - 0, \
> + _REENT_INIT_UNUSED_SDIDINIT \
> 0, \
> _NULL, \
> _NULL, \
> @@ -633,9 +641,11 @@ struct _reent
> int _unspecified_locale_info; /* unused, reserved for locale
> stuff */
> struct __locale_t *_locale;/* per-thread locale */
>
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> /* No longer used, but member retained for binary compatibility.
> Now, the __cleanup member is used to check initialization. */
> int _unused_sdidinit;
> +#endif
>
> void (*__cleanup) (struct _reent *);
>
> @@ -723,7 +733,7 @@ struct _reent
> "", \
> 0, \
> _NULL, \
> - 0, \
> + _REENT_INIT_UNUSED_SDIDINIT \
> _NULL, \
> _NULL, \
> 0, \
> --
> 2.35.3
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 08:55:56 +0200
> Subject: [PATCH 5/6] Optional struct _reent::_new::_reent::_unused_rand
> Provide struct _reent::_new::_reent::_unused_rand only if
> _REENT_BACKWARD_BINARY_COMPAT is defined.
> ---
> newlib/libc/include/sys/reent.h | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/newlib/libc/include/sys/reent.h
> b/newlib/libc/include/sys/reent.h
> index 1884ed982..4683ecc2f 100644
> --- a/newlib/libc/include/sys/reent.h
> +++ b/newlib/libc/include/sys/reent.h
> @@ -344,9 +344,11 @@ struct _rand48 {
>
> #ifdef _REENT_BACKWARD_BINARY_COMPAT
> #define _REENT_INIT_UNUSED_LOCALE_INFO 0,
> +#define _REENT_INIT_UNUSED_RAND 0,
> #define _REENT_INIT_UNUSED_SDIDINIT 0,
> #else
> #define _REENT_INIT_UNUSED_LOCALE_INFO /* Nothing to initialize */
> +#define _REENT_INIT_UNUSED_RAND /* Nothing to initialize */
> #define _REENT_INIT_UNUSED_SDIDINIT /* Nothing to initialize */
> #endif
>
> @@ -667,7 +669,9 @@ struct _reent
> {
> struct
> {
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> unsigned int _unused_rand;
> +#endif
> char * _strtok_last;
> char _asctime_buf[_REENT_ASCTIME_SIZE];
> struct __tm _localtime_buf;
> @@ -749,7 +753,7 @@ struct _reent
> _NULL, \
> { \
> { \
> - 0, \
> + _REENT_INIT_UNUSED_RAND \
> _NULL, \
> "", \
> {0, 0, 0, 0, 0, 0, 0, 0, 0}, \
> --
> 2.35.3
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 08:55:54 +0200
> Subject: [PATCH 3/6] Optional struct _reent::_unspecified_locale_info
> Provide struct _reent::_unspecified_locale_info only if
> _REENT_BACKWARD_BINARY_COMPAT is defined.
> ---
> newlib/libc/include/sys/reent.h | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/newlib/libc/include/sys/reent.h
> b/newlib/libc/include/sys/reent.h
> index e2fd0b422..5f557111e 100644
> --- a/newlib/libc/include/sys/reent.h
> +++ b/newlib/libc/include/sys/reent.h
> @@ -343,8 +343,10 @@ struct _rand48 {
> #define _REENT_SIGNAL_SIZE 24
>
> #ifdef _REENT_BACKWARD_BINARY_COMPAT
> +#define _REENT_INIT_UNUSED_LOCALE_INFO 0,
> #define _REENT_INIT_UNUSED_SDIDINIT 0,
> #else
> +#define _REENT_INIT_UNUSED_LOCALE_INFO /* Nothing to initialize */
> #define _REENT_INIT_UNUSED_SDIDINIT /* Nothing to initialize */
> #endif
>
> @@ -405,9 +407,9 @@ struct _reent
> /* No longer used, but member retained for binary compatibility.
> Now, the __cleanup member is used to check initialization. */
> int _unused_sdidinit;
> -#endif
>
> int _unspecified_locale_info; /* unused, reserved for locale
> stuff */
> +#endif
> struct __locale_t *_locale;/* per-thread locale */
>
> struct _mprec *_mp;
> @@ -449,7 +451,7 @@ struct _reent
> 0, \
> _NULL, \
> _REENT_INIT_UNUSED_SDIDINIT \
> - 0, \
> + _REENT_INIT_UNUSED_LOCALE_INFO \
> _NULL, \
> _NULL, \
> _NULL, \
> @@ -487,7 +489,7 @@ extern const struct __sFILE_fake __sf_fake_stderr;
> 0, \
> _NULL, \
> _REENT_INIT_UNUSED_SDIDINIT \
> - 0, \
> + _REENT_INIT_UNUSED_LOCALE_INFO \
> _NULL, \
> _NULL, \
> _NULL, \
> @@ -638,7 +640,9 @@ struct _reent
> char _emergency[_REENT_EMERGENCY_SIZE];
>
> /* TODO */
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> int _unspecified_locale_info; /* unused, reserved for locale
> stuff */
> +#endif
> struct __locale_t *_locale;/* per-thread locale */
>
> #ifdef _REENT_BACKWARD_BINARY_COMPAT
> @@ -731,7 +735,7 @@ struct _reent
> _REENT_STDIO_STREAM(&(var), 2), \
> 0, \
> "", \
> - 0, \
> + _REENT_INIT_UNUSED_LOCALE_INFO \
> _NULL, \
> _REENT_INIT_UNUSED_SDIDINIT \
> _NULL, \
> --
> 2.35.3
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 08:55:55 +0200
> Subject: [PATCH 4/6] Optional struct _reent::_new::_unused
> Provide struct _reent::_new::_unused only if _REENT_BACKWARD_BINARY_COMPAT
> is
> defined.
> ---
> newlib/libc/include/sys/reent.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/newlib/libc/include/sys/reent.h
> b/newlib/libc/include/sys/reent.h
> index 5f557111e..1884ed982 100644
> --- a/newlib/libc/include/sys/reent.h
> +++ b/newlib/libc/include/sys/reent.h
> @@ -687,6 +687,7 @@ struct _reent
> _mbstate_t _wcsrtombs_state;
> int _h_errno;
> } _reent;
> +#ifdef _REENT_BACKWARD_BINARY_COMPAT
> /* Two next two fields were once used by malloc. They are no longer
> used. They are used to preserve the space used before so as to
> allow addition of new reent fields and keep binary compatibility.
> */
> @@ -696,6 +697,7 @@ struct _reent
> unsigned char * _nextf[_N_LISTS];
> unsigned int _nmalloc[_N_LISTS];
> } _unused;
> +#endif
> } _new;
>
> # ifndef _REENT_GLOBAL_ATEXIT
> --
> 2.35.3
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Sebastian Huber <sebastian.huber@embedded-brains.de>
> To: newlib@sourceware.org
> Cc:
> Bcc:
> Date: Mon, 16 May 2022 08:55:51 +0200
> Subject: [PATCH 0/6] Add --enable-newlib-reent-binary-compat configure
> option
> This patch set adds the --enable-newlib-reent-binary-compat configure
> option
> which may be used to define the new Newlib configuration option
> _REENT_BACKWARD_BINARY_COMPAT. This option is used to provide binary
> backward
> compatibility for struct _reent by preserving unused members in struct
> _reent
> to keep the structure layout. Make _REENT_GLOBAL_ATEXIT the default and
> remove
> this option.
>
> v2:
>
> * Rename --enable-newlib-backward-binary-compat in
> --enable-newlib-reent-binary-compat.
>
> * Do not enable option for Cygwin.
>
> * Adjust code in libgloss.
>
> Sebastian Huber (6):
> Add --enable-newlib-reent-binary-compat
> Optional struct _reent::__unused_sdidinit
> Optional struct _reent::_unspecified_locale_info
> Optional struct _reent::_new::_unused
> Optional struct _reent::_new::_reent::_unused_rand
> Use global atexit data for all configurations
>
> libgloss/arc/crt0.S | 11 +++--
> libgloss/epiphany/crt0.S | 26 +++++-----
> libgloss/sparc_leon/locore_atexit.c | 4 +-
> newlib/README | 12 ++---
> newlib/configure | 30 ++++++++----
> newlib/configure.ac | 25 +++++++---
> newlib/libc/include/sys/config.h | 7 ++-
> newlib/libc/include/sys/reent.h | 74 +++++++++++++++++------------
> newlib/libc/reent/reent.c | 19 --------
> newlib/libc/stdlib/__atexit.c | 15 ++----
> newlib/libc/stdlib/__call_atexit.c | 8 ++--
> newlib/newlib.hin | 6 +--
> 12 files changed, 125 insertions(+), 112 deletions(-)
>
> --
> 2.35.3
>
>
>
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-05-16 7:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <mailman.34813.1652684169.2100866.newlib@sourceware.org>
2022-05-16 7:42 ` Newlib Digest, Vol 27, Issue 23 Алексей Бондаренко
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).