Bruno Haible <[EMAIL PROTECTED]> wrote: > Hi Paul, Jim, > > Most developers are using glibc systems nowadays. When gnulib creates many > replacement header files on such systems, it makes look gnulib a bit > ridiculous. So can we avoid to create a header file when it's easy to do so? > Here is a proposed patch. > > 2007-01-28 Bruno Haible <[EMAIL PROTECTED]> > > * modules/sys_time (Makefile.am): Build sys/time.h only when it's the > value of $(SYS_TIME_H). > * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H. > * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY, > gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting > GETTIMEOFDAY_REPLACEMENT to 1.
Hi Bruno, Good idea. I've checked in your change with these minor changes: - use $(SYS_TIME_H) also in the definition of MOSTLYCLEANFILES, and - drop the unnecessary single quotes here: SYS_TIME_H='sys/time.h' Here's the revised patch: * modules/sys_time (Makefile.am): Build sys/time.h only when it's the value of $(SYS_TIME_H). [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed, remove it conditionally, too. * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting GETTIMEOFDAY_REPLACEMENT to 1. Index: modules/sys_time =================================================================== RCS file: /sources/gnulib/gnulib/modules/sys_time,v retrieving revision 1.4 diff -u -p -r1.4 sys_time --- modules/sys_time 22 Jan 2007 23:07:42 -0000 1.4 +++ modules/sys_time 28 Jan 2007 18:45:42 -0000 @@ -13,7 +13,7 @@ gl_HEADER_SYS_TIME_H AC_PROG_MKDIR_P Makefile.am: -BUILT_SOURCES += sys/time.h +BUILT_SOURCES += $(SYS_TIME_H) # We need the following in order to create <sys/time.h> when the system # doesn't have one that works with the given compiler. @@ -28,7 +28,7 @@ sys/time.h: sys_time_.h < $(srcdir)/sys_time_.h; \ } > [EMAIL PROTECTED] mv [EMAIL PROTECTED] $@ -MOSTLYCLEANFILES += sys/time.h sys/time.h-t +MOSTLYCLEANFILES += $(SYS_TIME_H) sys/time.h-t Include: #include <sys/time.h> Index: m4/sys_time_h.m4 =================================================================== RCS file: /sources/gnulib/gnulib/m4/sys_time_h.m4,v retrieving revision 1.3 diff -u -p -r1.3 sys_time_h.m4 --- m4/sys_time_h.m4 19 Jan 2007 02:04:14 -0000 1.3 +++ m4/sys_time_h.m4 28 Jan 2007 18:45:42 -0000 @@ -52,4 +52,10 @@ AC_DEFUN([gl_HEADER_SYS_TIME_H_BODY], dnl Assume POSIX behavior unless another module says otherwise. GETTIMEOFDAY_REPLACEMENT=0 AC_SUBST([GETTIMEOFDAY_REPLACEMENT]) + if test $HAVE_SYS_TIME_H = 0 || test $HAVE_STRUCT_TIMEVAL = 0; then + SYS_TIME_H=sys/time.h + else + SYS_TIME_H= + fi + AC_SUBST([SYS_TIME_H]) ]) Index: m4/gettimeofday.m4 =================================================================== RCS file: /sources/gnulib/gnulib/m4/gettimeofday.m4,v retrieving revision 1.16 diff -u -p -r1.16 gettimeofday.m4 --- m4/gettimeofday.m4 19 Jan 2007 02:00:37 -0000 1.16 +++ m4/gettimeofday.m4 28 Jan 2007 18:45:42 -0000 @@ -32,6 +32,7 @@ AC_DEFUN([gl_FUNC_GETTIMEOFDAY], if test $gl_cv_func_gettimeofday_posix_signature != yes; then GETTIMEOFDAY_REPLACEMENT=1 + SYS_TIME_H=sys/time.h if test $gl_cv_func_gettimeofday_clobber != yes; then AC_LIBOBJ(gettimeofday) gl_PREREQ_GETTIMEOFDAY @@ -77,6 +78,7 @@ AC_DEFUN([gl_FUNC_GETTIMEOFDAY_CLOBBER], if test $gl_cv_func_gettimeofday_clobber = yes; then GETTIMEOFDAY_REPLACEMENT=1 + SYS_TIME_H=sys/time.h gl_GETTIMEOFDAY_REPLACE_LOCALTIME AC_DEFINE([GETTIMEOFDAY_CLOBBERS_LOCALTIME], 1, [Define if gettimeofday clobbers the localtime buffer.])