public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] newlib: internalize HAVE_INITFINI_ARRAY
@ 2022-01-20 1:01 Michael Frysinger
0 siblings, 0 replies; only message in thread
From: Michael Frysinger @ 2022-01-20 1:01 UTC (permalink / raw)
To: newlib-cvs
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=437c5c5085ff30b4a4960b2b53d06728c788361d
commit 437c5c5085ff30b4a4960b2b53d06728c788361d
Author: Mike Frysinger <vapier@gentoo.org>
Date: Mon Jan 17 22:20:20 2022 -0500
newlib: internalize HAVE_INITFINI_ARRAY
This define is only used by newlib internally, so stop exporting it
as HAVE_INITFINI_ARRAY since this can conflict with defines packages
use themselves.
We don't really need to add _ to HAVE_INIT_FINI too since it isn't
exported in newlib.h, but might as well be consistent here.
We can't (easily) add this to newlib_cflags like HAVE_INIT_FINI is
because this is based on a compile-time test in the top configure,
not on plain shell code in configure.host. We'd have to replicate
the test in every subdir in order to have it passed down.
Diff:
---
newlib/configure | 2 +-
newlib/configure.ac | 2 +-
newlib/configure.host | 2 +-
newlib/libc/misc/fini.c | 6 +++---
newlib/libc/misc/init.c | 6 +++---
newlib/libc/stdlib/__call_atexit.c | 2 +-
newlib/libc/sys/arm/crt0.S | 2 +-
newlib/newlib.hin | 2 +-
8 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/newlib/configure b/newlib/configure
index e303a2729..8190f9f2e 100755
--- a/newlib/configure
+++ b/newlib/configure
@@ -12817,7 +12817,7 @@ $as_echo "$libc_cv_initfinit_array" >&6; }
if test $libc_cv_initfinit_array = yes; then
cat >>confdefs.h <<_ACEOF
-#define HAVE_INITFINI_ARRAY 1
+#define _HAVE_INITFINI_ARRAY 1
_ACEOF
fi
diff --git a/newlib/configure.ac b/newlib/configure.ac
index 361bbfbac..8dca042aa 100644
--- a/newlib/configure.ac
+++ b/newlib/configure.ac
@@ -648,7 +648,7 @@ fi
rm -f conftest*])
AC_SUBST(libc_cv_initfinit_array)
if test $libc_cv_initfinit_array = yes; then
- AC_DEFINE_UNQUOTED(HAVE_INITFINI_ARRAY)
+ AC_DEFINE_UNQUOTED(_HAVE_INITFINI_ARRAY)
fi
AC_CACHE_CHECK(if $CC accepts -fno-tree-loop-distribute-patterns with \
diff --git a/newlib/configure.host b/newlib/configure.host
index c429dde1c..ca6b46f03 100644
--- a/newlib/configure.host
+++ b/newlib/configure.host
@@ -992,7 +992,7 @@ fi
# Have init/finit if not explicitly specified otherwise
if [ "x${have_init_fini}" != "xno" ]; then
- newlib_cflags="${newlib_cflags} -DHAVE_INIT_FINI"
+ newlib_cflags="${newlib_cflags} -D_HAVE_INIT_FINI"
fi
if test -z "${have_crt0}" && test -n "${sys_dir}"; then
diff --git a/newlib/libc/misc/fini.c b/newlib/libc/misc/fini.c
index 56eed6cb3..5f2016070 100644
--- a/newlib/libc/misc/fini.c
+++ b/newlib/libc/misc/fini.c
@@ -13,11 +13,11 @@
/* Handle ELF .{pre_init,init,fini}_array sections. */
#include <sys/types.h>
-#ifdef HAVE_INITFINI_ARRAY
+#ifdef _HAVE_INITFINI_ARRAY
extern void (*__fini_array_start []) (void) __attribute__((weak));
extern void (*__fini_array_end []) (void) __attribute__((weak));
-#ifdef HAVE_INIT_FINI
+#ifdef _HAVE_INIT_FINI
extern void _fini (void);
#endif
@@ -32,7 +32,7 @@ __libc_fini_array (void)
for (i = count; i > 0; i--)
__fini_array_start[i-1] ();
-#ifdef HAVE_INIT_FINI
+#ifdef _HAVE_INIT_FINI
_fini ();
#endif
}
diff --git a/newlib/libc/misc/init.c b/newlib/libc/misc/init.c
index 95f1a7422..3aef7ad06 100644
--- a/newlib/libc/misc/init.c
+++ b/newlib/libc/misc/init.c
@@ -13,7 +13,7 @@
/* Handle ELF .{pre_init,init,fini}_array sections. */
#include <sys/types.h>
-#ifdef HAVE_INITFINI_ARRAY
+#ifdef _HAVE_INITFINI_ARRAY
/* These magic symbols are provided by the linker. */
extern void (*__preinit_array_start []) (void) __attribute__((weak));
@@ -21,7 +21,7 @@ extern void (*__preinit_array_end []) (void) __attribute__((weak));
extern void (*__init_array_start []) (void) __attribute__((weak));
extern void (*__init_array_end []) (void) __attribute__((weak));
-#ifdef HAVE_INIT_FINI
+#ifdef _HAVE_INIT_FINI
extern void _init (void);
#endif
@@ -36,7 +36,7 @@ __libc_init_array (void)
for (i = 0; i < count; i++)
__preinit_array_start[i] ();
-#ifdef HAVE_INIT_FINI
+#ifdef _HAVE_INIT_FINI
_init ();
#endif
diff --git a/newlib/libc/stdlib/__call_atexit.c b/newlib/libc/stdlib/__call_atexit.c
index 3eec11214..c29a03c8e 100644
--- a/newlib/libc/stdlib/__call_atexit.c
+++ b/newlib/libc/stdlib/__call_atexit.c
@@ -49,7 +49,7 @@ static void
register_fini(void)
{
if (&__libc_fini) {
-#ifdef HAVE_INITFINI_ARRAY
+#ifdef _HAVE_INITFINI_ARRAY
extern void __libc_fini_array (void);
atexit (__libc_fini_array);
#else
diff --git a/newlib/libc/sys/arm/crt0.S b/newlib/libc/sys/arm/crt0.S
index 5e677a23c..6b01d8a88 100644
--- a/newlib/libc/sys/arm/crt0.S
+++ b/newlib/libc/sys/arm/crt0.S
@@ -12,7 +12,7 @@
#error __USER_LABEL_PREFIX is not defined
#endif
-#ifdef HAVE_INITFINI_ARRAY
+#ifdef _HAVE_INITFINI_ARRAY
#define _init __libc_init_array
#define _fini __libc_fini_array
#endif
diff --git a/newlib/newlib.hin b/newlib/newlib.hin
index a0999512c..37ed88e97 100644
--- a/newlib/newlib.hin
+++ b/newlib/newlib.hin
@@ -49,7 +49,7 @@
/* Define if the linker supports .preinit_array/.init_array/.fini_array
* sections. */
-#undef HAVE_INITFINI_ARRAY
+#undef _HAVE_INITFINI_ARRAY
/* True if atexit() may dynamically allocate space for cleanup
functions. */
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-01-20 1:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-20 1:01 [newlib-cygwin] newlib: internalize HAVE_INITFINI_ARRAY Michael Frysinger
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).