2021-01-31 Bruno Haible <bruno@clisp.org>
+ relocatable-prog-wrapper: Update after recent changes.
+ * lib/relocwrapper.c: Update comments.
+ * modules/relocatable-prog-wrapper (Files): Add lib/scratch_buffer.h,
+ lib/malloc/scratch_buffer*, lib/malloc.c, lib/realloc.c, lib/free.c,
+ lib/mempcpy.c, lib/rawmemchr.c, m4/lstat.m4. Remove lib/lstat.c.
+ (Depends-on): Add c99, eloop-threshold, fcntl-h, idx, intprops,
+ libc-config, stddef, sys_stat. Remove alloca-opt.
+ (configure.ac): Invoke gl_FUNC_MALLOC_POSIX, gl_FUNC_REALLOC_POSIX,
+ gl_FUNC_FREE, gl_FUNC_MEMPCPY, gl_FUNC_RAWMEMCHR.
+ * lib/canonicalize-lgpl.c (memmove): Undefine in the relocwrapper.
+ * build-aux/install-reloc (func_create_wrapper): Compile also
+ malloc/scratch_buffer_*.c, malloc.c, realloc.c, free.c, mempcpy.c,
+ rawmemchr.c. Don't compile lstat.c.
+
Make it possible to compile rawmemchr.c separately, unconditionally.
* lib/rawmemchr.c: Don't define rawmemchr if not needed.
"$srcdir"/readlink.c \
"$srcdir"/stat.c \
"$srcdir"/canonicalize-lgpl.c \
+ "$srcdir"/malloc/scratch_buffer_dupfree.c \
+ "$srcdir"/malloc/scratch_buffer_grow.c \
+ "$srcdir"/malloc/scratch_buffer_grow_preserve.c \
+ "$srcdir"/malloc/scratch_buffer_set_array_size.c \
+ "$srcdir"/malloc.c \
+ "$srcdir"/realloc.c \
+ "$srcdir"/free.c \
+ "$srcdir"/mempcpy.c \
+ "$srcdir"/rawmemchr.c \
"$srcdir"/malloca.c \
- "$srcdir"/lstat.c \
"$srcdir"/relocatable.c \
"$srcdir"/setenv.c \
"$srcdir"/c-ctype.c \
readlink.o \
stat.o \
canonicalize-lgpl.o \
+ scratch_buffer_dupfree.o \
+ scratch_buffer_grow.o \
+ scratch_buffer_grow_preserve.o \
+ scratch_buffer_set_array_size.o \
+ malloc.o \
+ realloc.o \
+ mempcpy.o \
+ rawmemchr.o \
malloca.o \
- lstat.o \
relocatable.o \
setenv.o \
c-ctype.o
# define __rawmemchr rawmemchr
# define __readlink readlink
# define __stat stat
+# if IN_RELOCWRAPPER
+ /* When building the relocatable program wrapper, use the system's memmove
+ function, not the gnulib override, otherwise we would get a link error.
+ */
+# undef memmove
+# endif
#endif
/* Suppress bogus GCC -Wmaybe-uninitialized warnings. */
lib/readlink.c
lib/stat.c
lib/canonicalize-lgpl.c
+lib/scratch_buffer.h
+lib/malloc/scratch_buffer.h
+lib/malloc/scratch_buffer_dupfree.c
+lib/malloc/scratch_buffer_grow.c
+lib/malloc/scratch_buffer_grow_preserve.c
+lib/malloc/scratch_buffer_set_array_size.c
+lib/malloc.c
+lib/realloc.c
+lib/free.c
+lib/mempcpy.c
+lib/rawmemchr.c
lib/malloca.h
lib/malloca.c
-lib/lstat.c
lib/relocatable.h
lib/relocatable.c
lib/setenv.c
m4/largefile.m4
m4/malloca.m4
m4/canonicalize.m4
+m4/lstat.m4
m4/eealloc.m4
m4/environ.m4
m4/readlink.m4
m4/setenv.m4
Depends-on:
-alloca-opt
+c99
double-slash-root
+eloop-threshold
+environ
errno
+fcntl-h
filename
+idx
+intprops
largefile
+libc-config
pathmax
ssize_t
stdbool
+stddef
stdint
stdlib
-unistd
-environ
string
+sys_stat
+unistd
verify
xalloc-oversized
AC_REQUIRE([AC_C_RESTRICT])
gl_FUNC_READLINK_SEPARATE
gl_CANONICALIZE_LGPL_SEPARATE
+gl_FUNC_MALLOC_POSIX
+gl_FUNC_REALLOC_POSIX
+gl_FUNC_FREE
+gl_FUNC_MEMPCPY
+gl_FUNC_RAWMEMCHR
gl_MALLOCA
gl_RELOCATABLE_LIBRARY
gl_FUNC_SETENV_SEPARATE