From 5a3ec90c8165b94111cbdac75032f208e7b20cf6 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 2 Jul 2001 07:39:33 +0000 Subject: (Makefile.am): Include jm-glibc-io.m4n in emitted definition of EXTRA_DIST. (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to ensure that the generated file is created/updated whenever the list of $(unlocked_functions) is changed. (jm-glibc-io.m4): New rule. (unlocked-io.h): New rule -- currently unused. --- m4/Makefile.am.in | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'm4') diff --git a/m4/Makefile.am.in b/m4/Makefile.am.in index 1e3495fec..36a4da4e6 100644 --- a/m4/Makefile.am.in +++ b/m4/Makefile.am.in @@ -6,10 +6,45 @@ Makefile.am: Makefile.am.in rm -f $@ $@t sed -n '1,/^##m4-files-begin/p' $< > $@t - ( (echo EXTRA_DIST = README Makefile.am.in | tr '\012' @); \ + ((echo EXTRA_DIST = README jm-glibc-io.m4n Makefile.am.in|tr '\012' @);\ (echo *.m4|tr ' ' @) ) \ |sed 's/@$$/%/;s/@/ \\@/g' |tr @% '\012\012' \ >> $@t sed -n '/^##m4-files-end/,$$p' $< >> $@t + echo >> $@t + echo all-local: jm-glibc-io.m4 >> $@t chmod a-w $@t mv $@t $@ + +unlocked_functions = \ + clearerr_unlocked feof_unlocked ferror_unlocked \ + fflush_unlocked fgets_unlocked fputc_unlocked fputs_unlocked \ + fread_unlocked fwrite_unlocked getc_unlocked getchar_unlocked \ + putc_unlocked putchar_unlocked + +comma_separated = $(shell echo $(unlocked_functions)|tr -s ' ' ,) +base_functions = $(patsubst %_unlocked,%,$(unlocked_functions)) +jm-glibc-io.m4: jm-glibc-io.m4n Makefile + echo 'dnl This file is automatically generated from $<' > $@t + echo '' >> $@t + sed \ + -e 's/@space_separated@/$(unlocked_functions)/g' \ + -e 's/@comma_separated@/$(comma_separated)/g' \ + $< >> $@t + move-if-change $@t $@ + +unlocked-io.h: unlocked-io.hin Makefile.am.in + tmp=t$$$$; \ + echo '' > $$tmp; \ + for f in $(base_functions); do \ + u=`echo $$f|tr '[:lower:]' '[:upper:]'`; \ + 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" $< \ + | sed "/^@replace_this@$$/d" \ + $< > $@t; \ + rm -f $$tmp; \ + mv $@t $@ -- cgit v1.2.3-70-g09d2