changeset 3307:a1f859e951a9

.
author Jim Meyering <jim@meyering.net>
date Sun, 15 Jul 2001 16:28:39 +0000
parents dda82c9928d4
children 9067b76176e2
files lib/Makefile.in
diffstat 1 files changed, 32 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -197,11 +197,11 @@
 libfetish_a_LIBADD = @LIBOBJS@ @ALLOCA@
 libfetish_a_DEPENDENCIES = $(libfetish_a_LIBADD)
 
-BUILT_SOURCES = getdate.c lstat.c stat.c
+BUILT_SOURCES = getdate.c lstat.c stat.c unlocked-io.h
 MAINTAINERCLEANFILES = $(BUILT_SOURCES)
-DISTCLEANFILES = lstat.c stat.c
+DISTCLEANFILES = lstat.c stat.c unlocked-io.h
 
-EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin
+EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin unlocked-io.hin
 
 charset_alias = $(DESTDIR)$(libdir)/charset.alias
 charset_tmp = $(DESTDIR)$(libdir)/charset.tmp
@@ -209,6 +209,17 @@
 SUFFIXES = .sed .sin
 
 CLEANFILES = charset.alias ref-add.sed ref-del.sed
+
+###############################################
+
+# FIXME: CAUTION this list is a duplicate of one in ../Makefile.cfg.
+io_functions = \
+  clearerr feof ferror fflush fgets fputc fputs \
+  fread fwrite getc getchar putc putchar
+
+
+a_z = abcdefghijklmnopqrstuvwxyz
+A_Z = ABCDEFGHIJKLMNOPQRSTUVWXYZ
 EXEEXT =
 OBJEXT = o
 subdir = lib
@@ -933,7 +944,7 @@
 # On systems with glibc-2.1 or newer, the file is redundant, therefore we
 # avoid installing it.
 
-all-local: charset.alias ref-add.sed ref-del.sed lstat.c stat.c
+all-local: charset.alias ref-add.sed ref-del.sed lstat.c stat.c unlocked-io.h
 install-exec-local: all-local
 	$(mkinstalldirs) $(DESTDIR)$(libdir)
 	if test -f $(charset_alias); then \
@@ -966,6 +977,23 @@
 .sin.sed:
 	sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > $@-t
 	mv $@-t $@
+
+unlocked-io.h: $(srcdir)/unlocked-io.hin Makefile.am
+	tmp=t$$$$;							\
+	echo						> $$tmp;	\
+	for b in $(io_functions); do					\
+	  f=$${b}_unlocked;						\
+	  u=`echo $$f|tr $(a_z) $(A_Z)`;				\
+	  echo "#  if HAVE_$${u}_UNLOCKED"		>> $$tmp;	\
+	  echo "#   undef $$f"				>> $$tmp;	\
+	  echo "#   define $$f(S) $${f}_unlocked (S)"	>> $$tmp;	\
+	  echo '#endif'					>> $$tmp;	\
+	done;								\
+	sed "/^@replace_this@$$/r$$tmp" $(srcdir)/unlocked-io.hin	\
+	  | sed "/^@replace_this@$$/d"					\
+	  > $@t;							\
+	rm -f $$tmp;							\
+	mv $@t $@
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT: