summaryrefslogtreecommitdiff
path: root/modules/errno
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2011-05-24 15:33:49 -0600
committerEric Blake <eblake@redhat.com>2011-06-01 08:58:23 -0600
commit63ce57e7e9fff1265da4e0a4d2639483c28b6b93 (patch)
tree66c56de09a1eee647a45eafe5b085670c22020c6 /modules/errno
parent6b66ce308dae8448f02da645a9fd8fb992349f06 (diff)
downloadgnulib-63ce57e7e9fff1265da4e0a4d2639483c28b6b93.tar.gz
strerror: drop strerror_r dependency
Since the errno module is responsible for introducing replacement errno values, it should also be responsible for translating those new values into strings. And by moving the replacements into a file managed by the errno, we can then break the dependency between strerror and strerror_r, so that strerror no longer drags in multi-threading modules required by strerror_r. Tested on glibc with: gl_cv_header_errno_h_complete=no gl_cv_func_working_strerror=no \ gl_cv_func_strerror_r_works=no ./gnulib-tool --with-tests \ --test strerror strerror_r-posix * lib/strerror_r.c (strerror_r): Move gnulib replacement strings... * lib/strerror-override.c (strerror_override): ...to new file. * lib/strerror-override.h: Add prototype. * lib/strerror-impl.h: Delete. * lib/strerror.c (strerror): New implementation. * modules/errno (Files): Add new files. (configure.ac): Compile new file as appropriate. * modules/strerror (Files): Drop unused file. (Depends-on): Drop strerror_r-posix. * MODULES.html.sh: Document strerror_r-posix. Requested by Sam Steingold. Signed-off-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'modules/errno')
-rw-r--r--modules/errno5
1 files changed, 5 insertions, 0 deletions
diff --git a/modules/errno b/modules/errno
index 2fee35d5b1..2640ec8bbd 100644
--- a/modules/errno
+++ b/modules/errno
@@ -3,6 +3,8 @@ A POSIX-like <errno.h>.
Files:
lib/errno.in.h
+lib/strerror-override.h
+lib/strerror-override.c
m4/errno_h.m4
Depends-on:
@@ -10,6 +12,9 @@ include_next
configure.ac:
gl_HEADER_ERRNO_H
+if test -n "$ERRNO_H"; then
+ AC_LIBOBJ([strerror-override])
+fi
Makefile.am:
BUILT_SOURCES += $(ERRNO_H)