diff --git a/ChangeLog b/ChangeLog index 989becc66d..56d86d377e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2000-08-10 Ulrich Drepper + + * timezone/zic.c: Update from tzcode2000f. + * timezone/australasia: Update from tzdata2000f. + * timezone/europe: Likewise. + * timezone/southamerica: Likewise. + * timezone/yearistype: Likewise. + 2000-08-01 Mark Kettenis * sysdeps/unix/sysv/linux/i386/sys/elf.h (elf_greg_t, ELF_NGREG, diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 978aa67d1f..84f67b8705 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,8 @@ +2000-08-10 Ulrich Drepper + + * pthread.c (__pthread_initial_thread): Initialize p_errnop and + p_h_errnop correctly and not to NULL. + 2000-08-05 Ulrich Drepper * Banner: Bump version number to 0.9. diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c index 514ba5b71f..646a0049b7 100644 --- a/linuxthreads/pthread.c +++ b/linuxthreads/pthread.c @@ -41,6 +41,10 @@ extern struct __res_state _res; # error "This must not happen; new kernel assumed but old headers" #endif +/* These variables are used by the setup code. */ +extern int _errno; +extern int _h_errno; + /* Descriptor of the initial thread */ struct _pthread_descr_struct __pthread_initial_thread = { @@ -70,9 +74,9 @@ struct _pthread_descr_struct __pthread_initial_thread = { 0, /* char p_cancelstate */ 0, /* char p_canceltype */ 0, /* char p_canceled */ - NULL, /* int *p_errnop */ + &_errno, /* int *p_errnop */ 0, /* int p_errno */ - NULL, /* int *p_h_errnop */ + &_h_errno, /* int *p_h_errnop */ 0, /* int p_h_errno */ NULL, /* char * p_in_sighandler */ 0, /* char p_sigwaiting */ @@ -209,10 +213,6 @@ const int __pthread_offsetof_pid = offsetof(struct _pthread_descr_struct, const int __linuxthread_pthread_sizeof_descr = sizeof(struct _pthread_descr_struct); -/* These variables are used by the setup code. */ -extern int _errno; -extern int _h_errno; - /* Forward declarations */ static void pthread_exit_process(int retcode, void *arg); @@ -376,9 +376,6 @@ extern void *__dso_handle __attribute__ ((weak)); void __pthread_initialize_minimal(void) { - /* The errno/h_errno variable of the main thread are the global ones. */ - __pthread_initial_thread.p_errnop = &_errno; - __pthread_initial_thread.p_h_errnop = &_h_errno; /* If we have special thread_self processing, initialize that for the main thread now. */ #ifdef INIT_THREAD_SELF diff --git a/timezone/australasia b/timezone/australasia index 0910329c7a..c9215d82ec 100644 --- a/timezone/australasia +++ b/timezone/australasia @@ -1,4 +1,4 @@ -# @(#)australasia 7.57 +# @(#)australasia 7.58 # This file also includes Pacific islands. # Notes are at the end of this file @@ -70,8 +70,11 @@ Rule AS 1987 max - Oct lastSun 2:00s 1:00 - Rule AS 1972 only - Feb 27 2:00s 0 - Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 - Rule AS 1986 1989 - Mar Sun>=15 2:00s 0 - -Rule AS 1990 1994 even Mar Sun>=18 2:00s 0 - -Rule AS 1990 1994 odd Mar Sun>=1 2:00s 0 - +Rule AS 1990 only - Mar Sun>=18 2:00s 0 - +Rule AS 1991 only - Mar Sun>=1 2:00s 0 - +Rule AS 1992 only - Mar Sun>=18 2:00s 0 - +Rule AS 1993 only - Mar Sun>=1 2:00s 0 - +Rule AS 1994 only - Mar Sun>=18 2:00s 0 - Rule AS 1995 max - Mar lastSun 2:00s 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb diff --git a/timezone/europe b/timezone/europe index ea45727fd1..92b82b622c 100644 --- a/timezone/europe +++ b/timezone/europe @@ -1,4 +1,4 @@ -# @(#)europe 7.72 +# @(#)europe 7.73 # This data is by no means authoritative; if you think you know better, # go ahead and edit the file (and please send any changes to @@ -1189,6 +1189,10 @@ Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun # motion to give up shifting to summer time in spring, as it was # already done by Estonia. +# From the +# Fact File, Lithuanian State Department of Tourism +# (2000-03-27): Local time is GMT+2 hours ..., no daylight saving. + # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Europe/Vilnius 1:41:16 - LMT 1880 1:24:00 - WMT 1917 # Warsaw Mean Time @@ -1203,7 +1207,7 @@ Zone Europe/Vilnius 1:41:16 - LMT 1880 2:00 C-Eur EE%sT 1998 2:00 - EET 1998 Mar 29 1:00u 1:00 EU CE%sT 1999 Oct 31 1:00u - 2:00 EU EE%sT + 2:00 - EET # Luxembourg # Whitman disagrees with most of these dates in minor ways; go with Shanks. diff --git a/timezone/southamerica b/timezone/southamerica index 81797ff2a5..39d5d6b782 100644 --- a/timezone/southamerica +++ b/timezone/southamerica @@ -1,4 +1,4 @@ -# @(#)southamerica 7.35 +# @(#)southamerica 7.36 # This data is by no means authoritative; if you think you know better, # go ahead and edit the file (and please send any changes to @@ -111,24 +111,31 @@ Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S # From Rives McDow (2000-01-10): # On October 3, 1999, 0:00 local, Argentina implemented daylight savings time, # which did not result in the switch of a time zone, as they stayed 9 hours -# from the International Date Line. On March 5, 2000, at 0:00 local time, -# Argentina will come off daylight savings time, which will bring them to 8 -# hours from the International Date Line. +# from the International Date Line. +Rule Arg 1999 only - Oct Sun>=1 0:00 1:00 S +Rule Arg 2000 only - Mar Sun>=1 0:00 0 - # # From Peter Gradelski via Steffen Thorsen (2000-03-01): # We just checked with our San Paulo office and they say the government of # Argentina decided not to become one of the countries that go on or off DST. # So Buenos Aires should be -3 hours from GMT at all times. # +# From Fabian L. Arce Jofre (2000-04-04): +# The law that claimed DST for Argentina was derogated by President Fernando +# de la Rua on March 2, 2000, because it would make people spend more energy +# in the winter time, rather than less. The change took effect on March 3. +# # Zone NAME GMTOFF RULES FORMAT [UNTIL] # -# Buenos Aires (BA), Distrito Federal (DF), Santa Cruz (SC), -# Tierra del Fuego (TF) & Antartida e Islas +# Buenos Aires (BA), Capital Federal (CF), Santa Cruz (SC), +# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF) Zone America/Buenos_Aires -3:53:48 - LMT 1894 Nov -4:16:44 - CMT 1920 May # Cordoba Mean Time -4:00 - ART 1930 Dec -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT + -3:00 Arg AR%sT 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 + -3:00 - ART # # Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), Chaco (CC), # Formosa (FM), La Pampa (LP), Chubut (CH) @@ -137,6 +144,8 @@ Zone America/Rosario -4:02:40 - LMT 1894 Nov -4:00 - ART 1930 Dec -4:00 Arg AR%sT 1969 Oct 5 -3:00 Arg AR%sT 1991 Jul + -3:00 - ART 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 -3:00 - ART # # Cordoba (CB), Santiago del Estero (SE), Salta (SA), Tucuman (TM), La Rioja (LR), San Juan (SJ), San Luis (SL), @@ -146,6 +155,8 @@ Zone America/Cordoba -4:16:44 - LMT 1894 Nov -4:00 - ART 1930 Dec -4:00 Arg AR%sT 1969 Oct 5 -3:00 Arg AR%sT 1990 Jul + -3:00 - ART 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 -3:00 - ART # # Jujuy (JY) @@ -157,6 +168,8 @@ Zone America/Jujuy -4:21:12 - LMT 1894 Nov -4:00 - WART 1991 Oct 6 -4:00 1:00 WARST 1992 Mar 15 -4:00 - WART 1992 Oct 18 + -3:00 - ART 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 -3:00 - ART # # Catamarca (CT) @@ -167,6 +180,8 @@ Zone America/Catamarca -4:23:08 - LMT 1894 Nov -3:00 Arg AR%sT 1990 Jul -3:00 - ART 1991 Jul -3:00 Arg AR%sT 1992 Jul + -3:00 - ART 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 -3:00 - ART # # Mendoza (MZ) @@ -178,6 +193,8 @@ Zone America/Mendoza -4:35:16 - LMT 1894 Nov -4:00 - WART 1991 Oct 15 -4:00 1:00 WARST 1992 Mar 1 -4:00 - WART 1992 Oct 18 + -3:00 - ART 1999 Oct 3 0:00 + -4:00 Arg AR%sT 2000 Mar 3 0:00 -3:00 - ART # Aruba diff --git a/timezone/yearistype b/timezone/yearistype index 809f5492a1..62d6365ecd 100755 --- a/timezone/yearistype +++ b/timezone/yearistype @@ -1,26 +1,36 @@ #! /bin/sh -: '@(#)yearistype.sh 7.4' +: '@(#)yearistype.sh 7.6' + +case $#-$1 in + 2-|2-0*|2-*[!0-9]*) + echo "$0: wild year - $1" >&2 + exit 1 ;; +esac case $#-$2 in - 2-even) case $1 in - *[24680]) exit 0 ;; - *) exit 1 ;; - esac ;; - 2-nonpres) case $1 in - *[02468][048]|*[13579][26]) exit 1 ;; - *) exit 0 ;; - esac ;; - 2-odd) case $1 in - *[13579]) exit 0 ;; - *) exit 1 ;; - esac ;; - 2-uspres) case $1 in - *[02468][048]|*[13579][26]) exit 0 ;; - *) exit 1 ;; - esac ;; - 2-*) echo "$0: wild type - $2" >&2 - exit 1 ;; - *) echo "$0: usage is $0 year type" >&2 - exit 1 ;; + 2-even) + case $1 in + *[24680]) exit 0 ;; + *) exit 1 ;; + esac ;; + 2-nonpres|2-nonuspres) + case $1 in + *[02468][048]|*[13579][26]) exit 1 ;; + *) exit 0 ;; + esac ;; + 2-odd) + case $1 in + *[13579]) exit 0 ;; + *) exit 1 ;; + esac ;; + 2-uspres) + case $1 in + *[02468][048]|*[13579][26]) exit 0 ;; + *) exit 1 ;; + esac ;; + 2-*) + echo "$0: wild type - $2" >&2 ;; esac + +echo "$0: usage is $0 year even|odd|uspres|nonpres|nonuspres" >&2 diff --git a/timezone/zic.c b/timezone/zic.c index ddf155f279..bc65e73dac 100644 --- a/timezone/zic.c +++ b/timezone/zic.c @@ -1,6 +1,6 @@ #ifndef lint #ifndef NOID -static char elsieid[] = "@(#)zic.c 7.100"; +static char elsieid[] = "@(#)zic.c 7.101"; #endif /* !defined NOID */ #endif /* !defined lint */ @@ -11,8 +11,6 @@ static char elsieid[] = "@(#)zic.c 7.100"; #include "sys/stat.h" /* for umask manifest constants */ #endif /* defined unix */ -#include - /* ** On some ancient hosts, predicates like `isspace(C)' are defined ** only if isascii(C) || C == EOF. Modern hosts obey the C Standard, @@ -442,7 +440,7 @@ const char * const string; static void usage P((void)) { - (void) fprintf(stderr, _("%s: usage is %s [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] [ -d directory ]\n\t[ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n"), + (void) fprintf(stderr, _("%s: usage is %s [ -s ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n"), progname, progname); (void) exit(EXIT_FAILURE); }