## Process this file with automake to produce Makefile.in -*-Makefile-*- ##m4-files-begin ##m4-files-end Makefile.am: Makefile.am.in rm -f $@ $@t sed -n '1,/^##m4-files-begin/p' $< > $@t (((echo EXTRA_DIST =; \ echo " README jm-glibc-io.m4 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: glibc-io.stamp >> $@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)) # Don't depend directly on jm-glibc-io.m4, because that would cause it # to be created in non-srcdir==. builds, and that leads to problems with # distcheck. Note also that we can't add it to DISTCLEANFILES for similar # reasons. glibc-io.stamp: jm-glibc-io.m4n Makefile if test `pwd` = `cd $(srcdir); pwd`; then \ t=jm-glibc-io.m4; \ src=$(srcdir)/jm-glibc-io.m4n; \ echo "dnl This file is automatically generated from $${t}n." \ > $${t}t; \ echo '' >> $${t}t; \ sed \ -e 's/@space_separated@/$(unlocked_functions)/g' \ -e 's/@comma_separated@/$(comma_separated)/g' \ $$src >> $${t}t; \ move-if-change $${t}t $$t; \ fi touch $@ DISTCLEANFILES = glibc-io.stamp 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 $@