Paul Eggert <[EMAIL PROTECTED]> wrote: > Jim Meyering <[EMAIL PROTECTED]> writes: > >> alloca.h: alloca_.h >> rm -f [EMAIL PROTECTED] $@ >> cp $(srcdir)/alloca_.h [EMAIL PROTECTED] >> chmod a-x [EMAIL PROTECTED] >> mv [EMAIL PROTECTED] $@ > > One other thing -- how about if we just remove the 'chmod' entirely? > If the source is readonly, that'd make the destination readonly. > Plus it wouldn't bother people who prefer to have read-write files,
Do you know anyone who prefers that their generated files be writable? > and it'd save a command and a line of 'make' output. > > An even shorter possibility would be: > > alloca.h: alloca_.h > cp -f $(srcdir)/alloca_.h [EMAIL PROTECTED] > mv -f [EMAIL PROTECTED] $@ > > This relies on 'cp -f' and 'mv -f', but that's universal nowadays, no? > (If not, we could autoconfize it.) Considering the numerous uses of sed and echo (in place of cp) I preferred to be consistent. But I agree that it'd be better not to pollute the build output with output that is 99% irrelevant. So, how about prefixing each new line with "@", so make doesn't print them. E.g., sys/select.h: test -d sys || mkdir sys @rm -f [EMAIL PROTECTED] $@ echo '#include <sys/socket.h>' >[EMAIL PROTECTED] @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ For the 9 rules that use "cp", I'd prefer your two-liner, but for the fact that the generated files would not necessarily be read-only. IMHO, it is the responsibility of the code that creates such a file to mark it as generated/read-only. Here's a proposed change to do that: 2006-09-07 Jim Meyering <[EMAIL PROTECTED]> Tell "make" not to print just added "rm -f" and "chmod a-w" commands. * modules/alloca-opt, modules/argz, modules/arpa_inet: * modules/byteswap, modules/configmake, modules/fcntl: * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes: * modules/localcharset, modules/netinet_in, modules/poll: * modules/stdbool, modules/stdint, modules/sys_select: * modules/sys_socket, modules/sys_stat, modules/sysexits: Index: modules/alloca-opt =================================================================== RCS file: /sources/gnulib/gnulib/modules/alloca-opt,v retrieving revision 1.4 diff -u -r1.4 alloca-opt --- modules/alloca-opt 7 Sep 2006 05:53:52 -0000 1.4 +++ modules/alloca-opt 7 Sep 2006 06:46:48 -0000 @@ -19,9 +19,9 @@ # We need the following in order to create <alloca.h> when the system # doesn't have one that works with the given compiler. alloca.h: alloca_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/alloca_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += alloca.h alloca.h-t Index: modules/argz =================================================================== RCS file: /sources/gnulib/gnulib/modules/argz,v retrieving revision 1.6 diff -u -r1.6 argz --- modules/argz 7 Sep 2006 05:53:52 -0000 1.6 +++ modules/argz 7 Sep 2006 06:46:48 -0000 @@ -18,9 +18,9 @@ # We need the following in order to create <argz.h> when the system # doesn't have one that works with the given compiler. argz.h: argz_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/argz_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += argz.h argz.h-t Index: modules/arpa_inet =================================================================== RCS file: /sources/gnulib/gnulib/modules/arpa_inet,v retrieving revision 1.3 diff -u -r1.3 arpa_inet --- modules/arpa_inet 7 Sep 2006 05:53:52 -0000 1.3 +++ modules/arpa_inet 7 Sep 2006 06:46:48 -0000 @@ -17,9 +17,9 @@ # doesn't have one. arpa/inet.h: test -d arpa || mkdir arpa - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ echo '#include <sys/socket.h>' >[EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += arpa/inet.h arpa/inet.h-t MOSTLYCLEANDIRS += arpa Index: modules/byteswap =================================================================== RCS file: /sources/gnulib/gnulib/modules/byteswap,v retrieving revision 1.5 diff -u -r1.5 byteswap --- modules/byteswap 7 Sep 2006 05:53:52 -0000 1.5 +++ modules/byteswap 7 Sep 2006 06:46:48 -0000 @@ -17,9 +17,9 @@ # We need the following in order to create <byteswap.h> when the system # doesn't have one. byteswap.h: byteswap_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/byteswap_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += byteswap.h byteswap.h-t Index: modules/configmake =================================================================== RCS file: /sources/gnulib/gnulib/modules/configmake,v retrieving revision 1.5 diff -u -r1.5 configmake --- modules/configmake 7 Sep 2006 05:53:52 -0000 1.5 +++ modules/configmake 7 Sep 2006 06:46:48 -0000 @@ -24,7 +24,7 @@ # # Listed in the same order as the GNU makefile conventions. configmake.h: Makefile - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ ( \ echo '#define PREFIX "$(prefix)"'; \ echo '#define EXEC_PREFIX "$(exec_prefix)"'; \ @@ -50,7 +50,7 @@ echo '#define MANDIR "$(mandir)"'; \ echo '#define MANEXT "$(manext)"'; \ :) | sed '/""/d' >[EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ BUILT_SOURCES += configmake.h CLEANFILES += configmake.h configmake.h-t Index: modules/fcntl =================================================================== RCS file: /sources/gnulib/gnulib/modules/fcntl,v retrieving revision 1.3 diff -u -r1.3 fcntl --- modules/fcntl 7 Sep 2006 05:53:52 -0000 1.3 +++ modules/fcntl 7 Sep 2006 06:46:48 -0000 @@ -19,10 +19,10 @@ # We need the following in order to create <fcntl.h> when the system # doesn't have one that works with the given compiler. fcntl.h: fcntl_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ sed -e 's|@''ABSOLUTE_FCNTL_H''@|$(ABSOLUTE_FCNTL_H)|g' \ < $(srcdir)/fcntl_.h > [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += fcntl.h fcntl.h-t Index: modules/fnmatch =================================================================== RCS file: /sources/gnulib/gnulib/modules/fnmatch,v retrieving revision 1.11 diff -u -r1.11 fnmatch --- modules/fnmatch 7 Sep 2006 05:53:52 -0000 1.11 +++ modules/fnmatch 7 Sep 2006 06:46:48 -0000 @@ -22,9 +22,9 @@ # We need the following in order to create <fnmatch.h> when the system # doesn't have one that supports the required API. fnmatch.h: fnmatch_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/fnmatch_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += fnmatch.h fnmatch.h-t Index: modules/getopt =================================================================== RCS file: /sources/gnulib/gnulib/modules/getopt,v retrieving revision 1.12 diff -u -r1.12 getopt --- modules/getopt 7 Sep 2006 05:53:52 -0000 1.12 +++ modules/getopt 7 Sep 2006 06:46:48 -0000 @@ -22,9 +22,9 @@ # We need the following in order to create <getopt.h> when the system # doesn't have one that works with the given compiler. getopt.h: getopt_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/getopt_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += getopt.h getopt.h-t Index: modules/glob =================================================================== RCS file: /sources/gnulib/gnulib/modules/glob,v retrieving revision 1.9 diff -u -r1.9 glob --- modules/glob 7 Sep 2006 05:53:52 -0000 1.9 +++ modules/glob 7 Sep 2006 06:46:48 -0000 @@ -30,9 +30,9 @@ # We need the following in order to create <glob.h> when the system # doesn't have one that works with the given compiler. glob.h: glob_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/glob_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += glob.h glob.h-t Index: modules/inttypes =================================================================== RCS file: /sources/gnulib/gnulib/modules/inttypes,v retrieving revision 1.10 diff -u -r1.10 inttypes --- modules/inttypes 7 Sep 2006 05:53:53 -0000 1.10 +++ modules/inttypes 7 Sep 2006 06:46:48 -0000 @@ -21,7 +21,7 @@ # We need the following in order to create <inttypes.h> when the system # doesn't have one that works with the given compiler. inttypes.h: inttypes_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ -e 's|@''ABSOLUTE_INTTYPES_H''@|$(ABSOLUTE_INTTYPES_H)|g' \ -e 's/@''PRI_MACROS_BROKEN''@/$(PRI_MACROS_BROKEN)/g' \ @@ -32,7 +32,7 @@ -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \ -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \ < $(srcdir)/inttypes_.h > [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += inttypes.h inttypes.h-t Index: modules/localcharset =================================================================== RCS file: /sources/gnulib/gnulib/modules/localcharset,v retrieving revision 1.9 diff -u -r1.9 localcharset --- modules/localcharset 7 Sep 2006 05:53:53 -0000 1.9 +++ modules/localcharset 7 Sep 2006 06:46:48 -0000 @@ -59,16 +59,16 @@ fi charset.alias: config.charset - rm -f t-$@ $@ + @rm -f t-$@ $@ $(SHELL) $(srcdir)/config.charset '$(host)' > t-$@ - chmod a-w t-$@ + @chmod a-w t-$@ mv t-$@ $@ SUFFIXES += .sed .sin .sin.sed: - rm -f t-$@ $@ + @rm -f t-$@ $@ sed -e '/^#/d' -e 's/@''PACKAGE''@/$(PACKAGE)/g' $< > t-$@ - chmod a-w t-$@ + @chmod a-w t-$@ mv t-$@ $@ CLEANFILES += charset.alias ref-add.sed ref-del.sed Index: modules/netinet_in =================================================================== RCS file: /sources/gnulib/gnulib/modules/netinet_in,v retrieving revision 1.3 diff -u -r1.3 netinet_in --- modules/netinet_in 7 Sep 2006 05:53:53 -0000 1.3 +++ modules/netinet_in 7 Sep 2006 06:46:48 -0000 @@ -17,9 +17,9 @@ # doesn't have one. netinet/in.h: test -d netinet || mkdir netinet - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ echo '#include <sys/socket.h>' >[EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += netinet/in.h netinet/in.h-t MOSTLYCLEANDIRS += netinet Index: modules/poll =================================================================== RCS file: /sources/gnulib/gnulib/modules/poll,v retrieving revision 1.9 diff -u -r1.9 poll --- modules/poll 7 Sep 2006 05:53:53 -0000 1.9 +++ modules/poll 7 Sep 2006 06:46:48 -0000 @@ -18,9 +18,9 @@ # We need the following in order to create <poll.h> when the system # doesn't have one. poll.h: poll_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/poll_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += poll.h poll.h-t Index: modules/stdbool =================================================================== RCS file: /sources/gnulib/gnulib/modules/stdbool,v retrieving revision 1.13 diff -u -r1.13 stdbool --- modules/stdbool 7 Sep 2006 05:53:53 -0000 1.13 +++ modules/stdbool 7 Sep 2006 06:46:48 -0000 @@ -18,9 +18,9 @@ # We need the following in order to create <stdbool.h> when the system # doesn't have one that works. stdbool.h: stdbool_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool_.h > [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += stdbool.h stdbool.h-t Index: modules/stdint =================================================================== RCS file: /sources/gnulib/gnulib/modules/stdint,v retrieving revision 1.13 diff -u -r1.13 stdint --- modules/stdint 7 Sep 2006 05:53:53 -0000 1.13 +++ modules/stdint 7 Sep 2006 06:46:48 -0000 @@ -24,7 +24,7 @@ # We need the following in order to create <stdint.h> when the system # doesn't have one that works with the given compiler. stdint.h: stdint_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ sed -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ -e 's|@''ABSOLUTE_STDINT_H''@|$(ABSOLUTE_STDINT_H)|g' \ @@ -47,7 +47,7 @@ -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ < $(srcdir)/stdint_.h > [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += stdint.h stdint.h-t Index: modules/sys_select =================================================================== RCS file: /sources/gnulib/gnulib/modules/sys_select,v retrieving revision 1.3 diff -u -r1.3 sys_select --- modules/sys_select 7 Sep 2006 05:53:53 -0000 1.3 +++ modules/sys_select 7 Sep 2006 06:46:48 -0000 @@ -17,9 +17,9 @@ # doesn't have one that works with the given compiler. sys/select.h: test -d sys || mkdir sys - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ echo '#include <sys/socket.h>' >[EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += sys/select.h sys/select.h-t MOSTLYCLEANDIRS += sys Index: modules/sys_socket =================================================================== RCS file: /sources/gnulib/gnulib/modules/sys_socket,v retrieving revision 1.6 diff -u -r1.6 sys_socket --- modules/sys_socket 7 Sep 2006 05:53:53 -0000 1.6 +++ modules/sys_socket 7 Sep 2006 06:46:48 -0000 @@ -19,9 +19,9 @@ # doesn't have one that works with the given compiler. sys/socket.h: socket_.h test -d sys || mkdir sys - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/socket_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += sys/socket.h sys/socket.h-t MOSTLYCLEANDIRS += sys Index: modules/sys_stat =================================================================== RCS file: /sources/gnulib/gnulib/modules/sys_stat,v retrieving revision 1.4 diff -u -r1.4 sys_stat --- modules/sys_stat 7 Sep 2006 05:53:53 -0000 1.4 +++ modules/sys_stat 7 Sep 2006 06:46:48 -0000 @@ -19,10 +19,10 @@ # has one that is incomplete. sys/stat.h: stat_.h test -d sys || mkdir sys - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ sed -e 's|@''ABSOLUTE_SYS_STAT_H''@|$(ABSOLUTE_SYS_STAT_H)|g' \ < $(srcdir)/stat_.h > [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += sys/stat.h sys/stat.h-t MOSTLYCLEANDIRS += sys Index: modules/sysexits =================================================================== RCS file: /sources/gnulib/gnulib/modules/sysexits,v retrieving revision 1.8 diff -u -r1.8 sysexits --- modules/sysexits 7 Sep 2006 05:53:53 -0000 1.8 +++ modules/sysexits 7 Sep 2006 06:46:48 -0000 @@ -17,9 +17,9 @@ # We need the following in order to create <sysexits.h> when the system # doesn't have one that works with the given compiler. sysexits.h: sysexit_.h - rm -f [EMAIL PROTECTED] $@ + @rm -f [EMAIL PROTECTED] $@ cp $(srcdir)/sysexit_.h [EMAIL PROTECTED] - chmod a-w [EMAIL PROTECTED] + @chmod a-w [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ MOSTLYCLEANFILES += sysexits.h sysexits.h-t