about summary refs log tree commit diff
path: root/time
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-01-23 04:24:20 +0000
committerUlrich Drepper <drepper@redhat.com>1997-01-23 04:24:20 +0000
commit8d57beeab10d2afd72e2e3bc6b1ad4695b791955 (patch)
tree1c9bfe3e425125543b2b90c93945576267ffe44e /time
parent1ef32c3dc40295020b91220399d24435f6a78e48 (diff)
downloadglibc-8d57beeab10d2afd72e2e3bc6b1ad4695b791955.tar.gz
glibc-8d57beeab10d2afd72e2e3bc6b1ad4695b791955.tar.xz
glibc-8d57beeab10d2afd72e2e3bc6b1ad4695b791955.zip
update from main archive 970121 cvs/libc-970123
Thu Jan 23 04:06:42 1997  Ulrich Drepper  <drepper@cygnus.com>

	* Make-dist (.PHONY: dist): Remove duplicate declaration.
	(README): Depend on version.h not version.c.
	* Makefile (README): Depend on version.h not version.c.

	* Makeconfig (inst_libdir, inst_slibdir, inst_includedir,
	inst_datadir, inst_zonedir, inst_localedir, inst_i18ndir, inst_bindir,
	inst_sbindir, inst_infodir, inst_sysconfdir): New variables.  Same
	as variable withough inst_ but prepended with $(install_root).
	(localtime-time): Use $(inst_sysconfdir) not $(sysconfdir).
	* Makefile (install-others): Use $(inst_includedir).
	(gnu/stabs.h, gnu/lib-names.h): Use $(inst_includedir).
	* Makerules (tons of install rules): Use inst_% variables.
	* elf/Makefile: Likewise.
	* hurd/Makefile: Likewise.
	* intl/Makefile: Likewise.
	* manual/Makefile: Likewise.
	* po/Makefile: Likewise.
	* sunrpc/Makefile: Likewise.
	* sysdeps/mach/hurd/Makefile: Likewise.
	* sysdeps/standalone/i386/force_cpu386/Makefile: Likewise.
	* time/Makefile: Likewise.

	* config.make.in: Revert patch from Sat Jan 18 22:15:26 1997,
	leave install_root in place.

	* gnu-versions.h (_GNU_GETOPT_INTERFACE_VERSION): Define to 2.
	* posix/getopt.c (GETOPT_INTERFACE_VERSION): Define to 2.
	* posix/getopt1.c (GETOPT_INTERFACE_VERSION): Define to 2.

	* elf/Makefile [yes==$(has-ldconfig)]: Correct dependencies of
	ldconfig.
	(CFLAGS-dl-load.c): New variable, avoid gcc warning.

	* sysdeps/mach/hurd/configure.in: Add _LIBC_REENTRENT to DEFINES.

	* sysdeps/mach/hurd/getdents.c: Update copyright.  De-ANSI-declfy.
	* sysdeps/stub/getdents.c: Likewise.  Correct return value.
	* sysdeps/unix/getdents.c: Likewise.
	* sysdeps/unix/sysv/getdents.c: Likewise.

	* sysdeps/unix/readdir.c: Update copyright.

	* sysdeps/unix/bsd/sony/newsos4/Makefile: Correct ifeq arguments.
	* sysdeps/unix/bsd/sun/sunos4/Makefile: Likewise.
	* sysdeps/unix/sysv/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.

	* sysdeps/unix/sysv/linux/Dist: Don't distribute kernel_termios.h,
	but sys/kernel_termios.h.
	* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir)==termios]
	(sysdep_headers): Add sys/kernel_termios.h.
	* sysdeps/unix/sysv/linux/kernel_termios.h: Moved to...
	* sysdeps/unix/sysv/linux/sys/kernel_termios.h: ...here.
	* sysdeps/unix/sysv/linux/sys/tcgetattr.c: Use __kernel_termios and
	__KERNEL_NCCS instead of kernel_termios and KERNEL_NCCS resp.

	* sysdeps/unix/sysv/linux/alpha/ioctls.h: New file.

	* sysdeps/unix/sysv/linux/getdents.c: Correct problems with alignment.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove getdents.
	Reported by Eirik Fuller <eirik@netcom.com>.

	* time/Banner: Removed.  Wrong and unnecessary information.  It's now
	in...
	* time/README: New file.
	* time/Makefile (distribute): Remove Banner, add README.

Wed Jan 22 13:19:56 1997  Richard Henderson  <rth@tamu.edu>

	* sysdeps/unix/sysv/linux/alpha/ioperm.c (platforms): Add Sable.
	(init_iosys): Recognize /etc/alpha_systype as a four-tuple for
	the purpose of supporting brand new systems.
	(*): The type of iosys variables should be iosys_t.

1997-01-22  Paul Eggert  <eggert@twinsun.com>

	* strftime.c (_strftime_copytm):
	New function, to work around Solaris 2.5 tzset bug.

Wed Jan 22 23:05:14 1997  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/mach/hurd/vdprintf.c: Complete de-ANSI-declfication.
	* sysdeps/posix/pipestream.c (writedecl): Fix typo.
	Reported by Marcus G. Daniels <marcus@shannon.sysc.pdx.edu>.

Wed Jan 22 13:58:56 1997  Andreas Jaeger  <aj@arthur.pfalz.de>

	* elf/Makefile (CFLAGS-dl-load.c): New Variable to keep gcc silent
	since name_copy is initialized.

Wed Jan 22 16:58:12 1997  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/Makefile (tests): Remove scanf11.
	* stdio-common/scanf11.c: Removed.
	* stdio-common/vfscanf.c Revert patch of Thu Jan 16 23:39:25 1997.
	Although the Corrigendum 1 describes the result as implemented the
	even more recent Amendement 1 seconds the position of ISO C:1990
	where the %n directive has no effect on the assignment count.
	* stdio-common/bug10.c: Likewise.
	* stdio-common/scanf1.c: Likewise.
	* stdio-common/scanf3.c: Likewise.
	* stdio-common/scanf10.c: Likewise.
	* stdio-common/tstdiomisc.c: Likewise.

	* new-malloc/obstack.h: Don't define malloc using bcopy if malloc
	is not available.  This leads to problems since bcopy does not
	return a value.  Instead define _obstack_memcpy based on memcpy or
	bcopy.  This name isn't used outside obstack.h and so no problems
	from using the memcpy function in a file including obstack.h can
	result.
	Reported by Martin Trapp <trapp@ipd.info.uni-karlsruhe.de>.

Tue Jan 21 18:35:55 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* misc/regexp.h (compile): Fix typos.

Tue Jan 21 01:01:59 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/sys/procfs.h (struct elf_prpsinfo): Fix
	type of pr_{pid,ppid,pgrp,sid} fields.
	* sysdeps/unix/sysv/linux/alpha/sys/procfs.h (struct
	elf_prpsinfo): Likewise.
Diffstat (limited to 'time')
-rw-r--r--time/Banner1
-rw-r--r--time/Makefile35
-rw-r--r--time/README28
-rw-r--r--time/strftime.c27
4 files changed, 72 insertions, 19 deletions
diff --git a/time/Banner b/time/Banner
deleted file mode 100644
index eb972db206..0000000000
--- a/time/Banner
+++ /dev/null
@@ -1 +0,0 @@
-tzcode1997a and tzdata1997a by Arthur David Olson et. al.
diff --git a/time/Makefile b/time/Makefile
index 21ad62e071..7f8513cc6a 100644
--- a/time/Makefile
+++ b/time/Makefile
@@ -24,7 +24,7 @@ subdir	:= time
 headers	:= time.h sys/time.h sys/timeb.h timebits.h
 distribute := tzfile.h private.h scheck.c ialloc.c yearistype	\
 	      iso3166.tab zone.tab tzselect.ksh checktab.awk	\
-	      Banner
+	      README
 extra-objs = scheck.o ialloc.o $(tzfiles:%=z.%)
 
 routines	:= offtime asctime clock ctime ctime_r difftime	\
@@ -65,22 +65,22 @@ endef
 
 # Make these absolute file names.
 installed-localtime-file := $(firstword $(filter /%,$(localtime-file)) \
-					$(addprefix $(zonedir)/, \
+					$(addprefix $(inst_zonedir)/, \
 						    $(localtime-file)))
 installed-posixrules-file := $(firstword $(filter /%,$(posixrules-file)) \
-					 $(addprefix $(zonedir)/, \
+					 $(addprefix $(inst_zonedir)/, \
 						     $(posixrules-file)))
 
 ifeq ($(cross-compiling),no)
 # Don't try to install the zoneinfo files since we can't run zic.
-install-others = $(addprefix $(zonedir)/,$(zonenames) \
-					 $(zonenames:%=posix/%) \
-					 $(zonenames:%=right/%)) \
+install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \
+					      $(zonenames:%=posix/%) \
+					      $(zonenames:%=right/%)) \
 		 $(installed-localtime-file) $(installed-posixrules-file)
 endif
 
 ifeq ($(have-ksh),yes)
-install-others += $(zonedir)/iso3166.tab $(zonedir)/zone.tab
+install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab
 install-bin += tzselect
 endif
 
@@ -115,23 +115,23 @@ echo-zonenames:
 	@echo 'Known zones: $(zonenames)'
 
 
-# Although $(zonedir) gets compiled into zic, it is useful to always
-# specify it with -d on the command line so that it can be overridden on
-# the command line of `make install' (e.g., "make install prefix=/foo").
-zic-cmd = $(built-program-cmd) -d $(zonedir)
+# We have to use `-d $(inst_zonedir)' to explictly tell zic where to
+# place the output files although $(zonedir) is compiled in.  But the
+# user might have set $(install_root) on the command line of `make install'.
+zic-cmd = $(built-program-cmd) -d $(inst_zonedir)
 tzcompile = $(zic-cmd)$(target-zone-flavor) -L $(word 3,$^) \
 	    -y $(dir $(word 4,$^))$(notdir $(word 4,$^)) $<
 
 # The source files specify the zone names relative to the -d directory,
-# so for the posix/ and right/ flavors we need to pass -d $(zonedir)/posix
+# so for the posix/ and right/ flavors we need to pass -d $(inst_zonedir)/posix
 # and the like.  This magic extracts /posix or /right if it's the first
-# component after $(zonedir) in the target name $@.
+# component after $(inst_zonedir) in the target name $@.
 target-zone-flavor = $(filter /posix /right, \
 			      /$(firstword $(subst /, , \
-					   $(patsubst $(zonedir)/%,%,$@))))
+					  $(patsubst $(inst_zonedir)/%,%,$@))))
 
 ifdef localtime
-$(installed-localtime-file): $(zonedir)/$(localtime) $(objpfx)zic
+$(installed-localtime-file): $(inst_zonedir)/$(localtime) $(objpfx)zic
 	$(make-target-directory)
 	if test -r $@; then \
 	  echo Site timezone NOT reset to Factory.; \
@@ -142,7 +142,7 @@ $(installed-localtime-file): $(zonedir)/$(localtime) $(objpfx)zic
 	fi
 endif
 ifdef posixrules
-$(installed-posixrules-file): $(zonedir)/$(posixrules) $(objpfx)zic
+$(installed-posixrules-file): $(inst_zonedir)/$(posixrules) $(objpfx)zic
 	$(zic-cmd) -p $(posixrules)
 endif
 
@@ -179,4 +179,5 @@ $(objpfx)tzselect: tzselect.ksh
 	chmod 555 $@.new
 	mv -f $@.new $@
 
-$(addprefix $(zonedir)/,iso3166.tab zone.tab): $(zonedir)/%: %; $(do-install)
+$(addprefix $(inst_zonedir)/,iso3166.tab zone.tab): $(inst_zonedir)/%: %
+	$(do-install)
diff --git a/time/README b/time/README
new file mode 100644
index 0000000000..3bd4e306ed
--- /dev/null
+++ b/time/README
@@ -0,0 +1,28 @@
+The sources files
+	`zic.c'
+	`zdump.c'
+	`tzselect.ksh'
+	`checktab.awk'
+files come from the tzcode1997a package by Arthur David Olsen et.al.
+
+The file
+	`africa'
+	`antarctica'
+	`asia'
+	`australasia'
+	`europe'
+	`northamerica'
+	`southamerica'
+	`pacificnew'
+	`etcetera'
+	`factory'
+	`backward'
+	`systemv'
+	`solar87'
+	`solar88'
+	`solar89'
+	`iso3166.tab'
+	`zone.tab'
+	`leapseconds'
+	`yearistype'
+files come from the tzdata1997a package by Arthur David Olsen et.al.
diff --git a/time/strftime.c b/time/strftime.c
index 56abd45240..ca3563c072 100644
--- a/time/strftime.c
+++ b/time/strftime.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 93, 94, 95, 96 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -328,6 +328,31 @@ static char const month_name[][10] =
   };
 #endif
 
+
+#if !defined _LIBC && HAVE_TZNAME && HAVE_TZSET
+  /* Solaris 2.5 tzset sometimes modifies the storage returned by localtime.
+     Work around this bug by copying *tp before it might be munged.  */
+  size_t _strftime_copytm __P ((char *, size_t, const char *,
+			        const struct tm *));
+  size_t
+  strftime (s, maxsize, format, tp)
+      char *s;
+      size_t maxsize;
+      const char *format;
+      const struct tm *tp;
+  {
+    struct tm tmcopy;
+    tmcopy = *tp;
+    return _strftime_copytm (s, maxsize, format, &tmcopy);
+  }
+# ifdef strftime
+#  undef strftime
+# endif
+# define strftime(S, Maxsize, Format, Tp) \
+  _strftime_copytm ((S), (Maxsize), (Format), (Tp))
+#endif
+
+
 /* Write information from TP into S according to the format
    string FORMAT, writing no more that MAXSIZE characters
    (including the terminating '\0') and returning number of