X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2FMakefile.am;h=7b6e0d574304e8bf1a3b858c1bc3e5b536a944fc;hb=69bf446b34292cd2d2a73f1838325fbeb0ff7c25;hp=f3732a19bf5320774a20da6ee9804449adf66a11;hpb=ee4ce7426f2ec7e616613a9398f449e5e7d596f3;p=gnulib.git diff --git a/m4/Makefile.am b/m4/Makefile.am index f3732a19b..7b6e0d574 100644 --- a/m4/Makefile.am +++ b/m4/Makefile.am @@ -1,23 +1,121 @@ ## Process this file with automake to produce Makefile.in -*-Makefile-*- ##m4-files-begin -EXTRA_DIST = README assert.m4 check-decl.m4 chown.m4 const.m4 d-ino.m4 \ -d-type.m4 decl.m4 error.m4 getgroups.m4 getline.m4 getloadavg.m4 \ -inttypes_h.m4 isc-posix.m4 jm-macros.m4 jm-mktime.m4 jm-winsz1.m4 \ -jm-winsz2.m4 lchown.m4 lfs.m4 lstat.m4 malloc.m4 memcmp.m4 perl.m4 \ -prereq.m4 putenv.m4 readdir.m4 realloc.m4 ssize_t.m4 stat.m4 strftime.m4 \ -uintmax_t.m4 uptime.m4 utimbuf.m4 - +EXTRA_DIST = README jm-glibc-io.m4n Makefile.am.in \ +afs.m4 \ +assert.m4 \ +bison.m4 \ +c-bs-a.m4 \ +check-decl.m4 \ +chown.m4 \ +codeset.m4 \ +d-ino.m4 \ +d-type.m4 \ +dos.m4 \ +error.m4 \ +fnmatch.m4 \ +fpending.m4 \ +fstypename.m4 \ +fsusage.m4 \ +ftruncate.m4 \ +getgroups.m4 \ +getline.m4 \ +getloadavg.m4 \ +glibc.m4 \ +glibc21.m4 \ +gnu-source.m4 \ +group-member.m4 \ +iconv.m4 \ +inttypes_h.m4 \ +isc-posix.m4 \ +jm-glibc-io.m4 \ +jm-macros.m4 \ +jm-mktime.m4 \ +jm-winsz1.m4 \ +jm-winsz2.m4 \ +lchown.m4 \ +lcmessage.m4 \ +lib-check.m4 \ +libintl.m4 \ +link-follow.m4 \ +ls-mntd-fs.m4 \ +lstat.m4 \ +malloc.m4 \ +mbrtowc.m4 \ +mbstate_t.m4 \ +mbswidth.m4 \ +memcmp.m4 \ +nanosleep.m4 \ +perl.m4 \ +prereq.m4 \ +progtest.m4 \ +putenv.m4 \ +readdir.m4 \ +realloc.m4 \ +regex.m4 \ +rename.m4 \ +rmdir-errno.m4 \ +search-libs.m4 \ +st_dm_mode.m4 \ +st_mtim.m4 \ +stat.m4 \ +strerror_r.m4 \ +strftime.m4 \ +timespec.m4 \ +uintmax_t.m4 \ +ulonglong.m4 \ +unlink-busy.m4 \ +uptime.m4 \ +utimbuf.m4 \ +utime.m4 \ +utimes.m4 \ +xstrtoumax.m4 ##m4-files-end Makefile.am: Makefile.am.in rm -f $@ $@t sed -n '1,/^##m4-files-begin/p' $< > $@t - ( echo EXTRA_DIST = README; \ - find . -type f -name '*.m4' -print |sed s/..// |sort ) \ - |fmt | (tr '\012' @; echo) \ - |sed 's/@$$/%/;s/@/ \\@/g' |tr @% '\012\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 $@ + +all-local: jm-glibc-io.m4