From: Bruno Haible <bruno@clisp.org>
Date: Mon, 9 Jan 2023 20:18:20 +0000 (+0100)
Subject: malloc-h: Improve portability.
X-Git-Tag: v1.0~1873
X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=c5dbe0eaeaff25ab9bdf6e0ea873f054617a0e89;p=gnulib.git

malloc-h: Improve portability.

* lib/malloc.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE when possible.
* modules/malloc-h (Makefile.am): Substitute
INCLUDE_NEXT_AS_FIRST_DIRECTIVE and NEXT_AS_FIRST_DIRECTIVE_MALLOC_H.
---

diff --git a/ChangeLog b/ChangeLog
index 12171e2fff..3b2773fb48 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2023-01-09  Bruno Haible  <bruno@clisp.org>
+
+	malloc-h: Improve portability.
+	* lib/malloc.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE when possible.
+	* modules/malloc-h (Makefile.am): Substitute
+	INCLUDE_NEXT_AS_FIRST_DIRECTIVE and NEXT_AS_FIRST_DIRECTIVE_MALLOC_H.
+
 2023-01-09  Bruno Haible  <bruno@clisp.org>
 
 	reallocarray: Fix compilation error in C++ mode on Android.
diff --git a/lib/malloc.in.h b/lib/malloc.in.h
index 52319a1fc4..4921f6e994 100644
--- a/lib/malloc.in.h
+++ b/lib/malloc.in.h
@@ -27,7 +27,7 @@
      In this situation, in C++ mode, the declaration of memalign might be used
      before it actually occurs.  */
 
-#@INCLUDE_NEXT@ @NEXT_MALLOC_H@
+#@INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ @NEXT_AS_FIRST_DIRECTIVE_MALLOC_H@
 
 #else
 /* Normal invocation convention.  */
@@ -38,7 +38,7 @@
 
 /* The include_next requires a split double-inclusion guard.  */
 #if @HAVE_MALLOC_H@
-# @INCLUDE_NEXT@ @NEXT_MALLOC_H@
+# @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ @NEXT_AS_FIRST_DIRECTIVE_MALLOC_H@
 #endif
 
 #undef _GL_ALREADY_INCLUDING_MALLOC_H
diff --git a/modules/malloc-h b/modules/malloc-h
index 9717c90b67..7c241d2943 100644
--- a/modules/malloc-h
+++ b/modules/malloc-h
@@ -26,10 +26,12 @@ malloc.h: malloc.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H
 @NMD@	$(AM_V_GEN)$(MKDIR_P) '%reldir%'
 	$(gl_V_at)$(SED_HEADER_STDOUT) \
 	      -e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \
+	      -e 's|@''INCLUDE_NEXT_AS_FIRST_DIRECTIVE''@|$(INCLUDE_NEXT_AS_FIRST_DIRECTIVE)|g' \
 	      -e 's|@''HAVE_MALLOC_H''@|$(HAVE_MALLOC_H)|g' \
 	      -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+	      -e 's|@''NEXT_AS_FIRST_DIRECTIVE_MALLOC_H''@|$(NEXT_AS_FIRST_DIRECTIVE_MALLOC_H)|g' \
 	      -e 's|@''NEXT_MALLOC_H''@|$(NEXT_MALLOC_H)|g' \
 	      -e 's/@''GNULIB_FREE_POSIX''@/$(GNULIB_FREE_POSIX)/g' \
 	      -e 's/@''GNULIB_MEMALIGN''@/$(GNULIB_MEMALIGN)/g' \