1986-12-02 19:22:09 -05:00
|
|
|
.TH ZIC 8
|
1986-02-15 17:45:02 -05:00
|
|
|
.SH NAME
|
1986-11-19 19:17:22 -05:00
|
|
|
zic \- time zone compiler
|
1986-02-15 17:45:02 -05:00
|
|
|
.SH SYNOPSIS
|
1986-11-19 19:17:22 -05:00
|
|
|
.B zic
|
1986-02-15 17:50:34 -05:00
|
|
|
[
|
|
|
|
|
.B \-d
|
1986-08-28 08:59:23 -04:00
|
|
|
.I directory
|
|
|
|
|
] [
|
1986-02-28 21:31:08 -05:00
|
|
|
.B \-l
|
1986-08-28 08:59:23 -04:00
|
|
|
.I localtime
|
|
|
|
|
] [
|
|
|
|
|
.I filename
|
|
|
|
|
\&... ]
|
1986-02-15 17:45:02 -05:00
|
|
|
.SH DESCRIPTION
|
1986-11-19 19:17:22 -05:00
|
|
|
.I Zic
|
1986-02-15 17:45:02 -05:00
|
|
|
reads text from the file(s) named on the command line
|
1986-03-06 09:34:53 -05:00
|
|
|
and creates the time conversion information files specified in this input.
|
1986-02-15 17:45:02 -05:00
|
|
|
If a
|
|
|
|
|
.I filename
|
|
|
|
|
is
|
1986-08-28 08:59:23 -04:00
|
|
|
.BR \- ,
|
1986-02-15 17:45:02 -05:00
|
|
|
the standard input is read.
|
|
|
|
|
.PP
|
1986-02-28 21:31:08 -05:00
|
|
|
These options are available:
|
1986-02-15 17:50:34 -05:00
|
|
|
.TP
|
1986-03-05 18:52:03 -05:00
|
|
|
.BI "\-d " directory
|
1986-03-06 09:34:53 -05:00
|
|
|
Create time conversion information files in the named directory rather than
|
1986-02-15 17:50:34 -05:00
|
|
|
in the standard directory named below.
|
1986-02-28 21:31:08 -05:00
|
|
|
.TP
|
1986-08-28 08:59:23 -04:00
|
|
|
.BI "\-l " timezone
|
1986-02-28 21:31:08 -05:00
|
|
|
Use the given time zone as local time.
|
1986-11-19 19:17:22 -05:00
|
|
|
.I Zic
|
1986-08-28 08:59:23 -04:00
|
|
|
will act as if the file contained a link line of the form
|
|
|
|
|
.sp
|
|
|
|
|
.ti +.5i
|
|
|
|
|
Link \fItimzone\fP localtime
|
|
|
|
|
.sp
|
1986-02-28 21:31:08 -05:00
|
|
|
Input lines are made up of fields.
|
|
|
|
|
Fields are separated from one another by any number of white space characters.
|
|
|
|
|
Leading and trailing white space on input lines is ignored.
|
|
|
|
|
An unquoted sharp character (#) in the input introduces a comment which extends
|
|
|
|
|
to the end of the line the sharp character appears on.
|
|
|
|
|
White space characters and sharp characters may be enclosed in double quotes
|
|
|
|
|
(") if they're to be used as part of a field.
|
1986-08-28 08:59:23 -04:00
|
|
|
Any line that is blank (after comment stripping) is ignored.
|
1986-02-15 17:45:02 -05:00
|
|
|
Non-blank lines are expected to be of one of three
|
|
|
|
|
types: rule lines, zone lines, and link lines.
|
|
|
|
|
.PP
|
|
|
|
|
A rule line has the form
|
|
|
|
|
.nf
|
|
|
|
|
.B
|
|
|
|
|
.ti +.5i
|
1986-08-28 08:59:23 -04:00
|
|
|
.ta \w'Rule\0\0'u +\w'NAME\0\0'u +\w'FROM\0\0'u +\w'1973\0\0'u +\w'TYPE\0\0'u +\w'Apr\0\0'u +\w'lastSun\0\0'u +\w'2:00\0\0'u +\w'SAVE\0\0'u
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
|
|
|
|
.sp
|
|
|
|
|
For example:
|
|
|
|
|
.ti +.5i
|
|
|
|
|
.sp
|
1986-08-28 08:59:23 -04:00
|
|
|
Rule USA 1969 1973 \- Apr lastSun 2:00 1:00 D
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
.fi
|
|
|
|
|
The fields that make up a rule line are:
|
1986-08-28 08:59:23 -04:00
|
|
|
.TP "\w'LETTER/S'u"
|
1986-02-15 17:45:02 -05:00
|
|
|
.B NAME
|
|
|
|
|
Gives the (arbitrary) name of the set of rules this rule is part of.
|
|
|
|
|
.TP
|
|
|
|
|
.B FROM
|
1986-11-15 20:50:47 -05:00
|
|
|
Gives the first year in which the rule applies.
|
|
|
|
|
The word
|
|
|
|
|
.B minimum
|
1987-02-16 13:33:10 -05:00
|
|
|
(or an abbreviation) means the minimum year with a representable time value.
|
1986-11-15 20:50:47 -05:00
|
|
|
The word
|
1986-11-15 20:07:05 -05:00
|
|
|
.B maximum
|
1987-02-16 13:33:10 -05:00
|
|
|
(or an abbreviation) means the maximum year with a representable time value.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B TO
|
1986-11-15 20:50:47 -05:00
|
|
|
Gives the final year in which the rule applies.
|
|
|
|
|
In addition to
|
|
|
|
|
.B minimum
|
|
|
|
|
and
|
|
|
|
|
.B maximum
|
|
|
|
|
(as above),
|
|
|
|
|
the word
|
1986-08-28 08:59:23 -04:00
|
|
|
.B only
|
1986-11-15 20:50:47 -05:00
|
|
|
(or an abbreviation)
|
1986-02-15 18:33:42 -05:00
|
|
|
may be used to repeat the value of the
|
1986-08-28 08:59:23 -04:00
|
|
|
.B FROM
|
1986-11-15 20:50:47 -05:00
|
|
|
field.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B TYPE
|
|
|
|
|
Gives the type of year in which the year applies. If
|
|
|
|
|
.B TYPE
|
|
|
|
|
is
|
1986-08-28 08:59:23 -04:00
|
|
|
.B \-
|
1986-03-05 18:52:03 -05:00
|
|
|
then the rule applies in all years between
|
1986-02-15 17:45:02 -05:00
|
|
|
.B FROM
|
|
|
|
|
and
|
|
|
|
|
.B TO
|
1986-11-19 19:35:35 -05:00
|
|
|
inclusive;
|
|
|
|
|
if
|
|
|
|
|
.B TYPE
|
|
|
|
|
is
|
|
|
|
|
.BR uspres ,
|
|
|
|
|
the rule applies in U.S. Presidential election years;
|
|
|
|
|
if
|
|
|
|
|
.B TYPE
|
|
|
|
|
is
|
|
|
|
|
.BR nonpres ,
|
|
|
|
|
the rule applies in years other than U.S. Presidential election years.
|
1986-02-15 17:45:02 -05:00
|
|
|
If
|
|
|
|
|
.B TYPE
|
1986-08-28 08:59:23 -04:00
|
|
|
is something else, then
|
1986-11-19 19:17:22 -05:00
|
|
|
.I zic
|
1986-08-28 08:59:23 -04:00
|
|
|
executes the command
|
1986-02-15 17:45:02 -05:00
|
|
|
.ti +.5i
|
1986-11-19 19:35:35 -05:00
|
|
|
\fByearistype\fP \fIyear\fP \fItype\fP
|
1986-02-15 17:45:02 -05:00
|
|
|
.br
|
1986-11-19 19:35:35 -05:00
|
|
|
to check the type of a year:
|
|
|
|
|
an exit status of zero is taken to mean that the year is of the given type;
|
|
|
|
|
an exit status of one is taken to mean that the year is not of the given type.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B IN
|
|
|
|
|
Names the month in which the rule takes effect. Month names may be
|
|
|
|
|
abbreviated.
|
|
|
|
|
.TP
|
|
|
|
|
.B ON
|
|
|
|
|
Gives the day on which the rule takes effect.
|
|
|
|
|
Recognized forms include:
|
|
|
|
|
.nf
|
|
|
|
|
.in +.5i
|
|
|
|
|
.sp
|
1986-08-28 08:59:23 -04:00
|
|
|
.ta \w'Sun<=25\0\0'u
|
1986-02-15 17:45:02 -05:00
|
|
|
5 the fifth of the month
|
|
|
|
|
lastSun the last Sunday in the month
|
|
|
|
|
lastMon the last Monday in the month
|
|
|
|
|
Sun>=8 first Sunday on or after the eighth
|
|
|
|
|
Sun<=25 last Sunday on or before the 25th
|
|
|
|
|
.fi
|
|
|
|
|
.in -.5i
|
|
|
|
|
.sp
|
|
|
|
|
Names of days of the week may be abbreviated or spelled out in full.
|
|
|
|
|
Note that there must be no spaces within the
|
|
|
|
|
.B ON
|
1986-02-28 21:31:08 -05:00
|
|
|
field.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B AT
|
1986-12-02 19:22:09 -05:00
|
|
|
Gives the time of day at which the rule takes affect.
|
1986-02-15 17:45:02 -05:00
|
|
|
Recognized forms include:
|
|
|
|
|
.nf
|
|
|
|
|
.in +.5i
|
|
|
|
|
.sp
|
|
|
|
|
.ta \w'1:28:13 'u
|
|
|
|
|
2 time in hours
|
|
|
|
|
2:00 time in hours and minutes
|
|
|
|
|
15:00 24-hour format time (for times after noon)
|
|
|
|
|
1:28:14 time in hours, minutes, and seconds
|
|
|
|
|
.fi
|
|
|
|
|
.in -.5i
|
1986-12-02 19:22:09 -05:00
|
|
|
.sp
|
|
|
|
|
Any of these forms may be followed by the letter
|
|
|
|
|
.B w
|
|
|
|
|
if the given time is local ``wall clock'' time or
|
|
|
|
|
.B s
|
|
|
|
|
if the given time is local ``standard'' time; in the absence of
|
|
|
|
|
.B w
|
|
|
|
|
or
|
|
|
|
|
.BR s ,
|
|
|
|
|
wall clock time is assumed.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B SAVE
|
|
|
|
|
Gives the amount of time to be added to local standard time when the rule is in
|
1986-08-28 08:59:23 -04:00
|
|
|
effect.
|
1986-03-05 18:52:03 -05:00
|
|
|
This field has the same format as the
|
1986-02-15 17:45:02 -05:00
|
|
|
.B AT
|
1986-12-02 19:22:09 -05:00
|
|
|
field
|
|
|
|
|
(although, of course, the
|
|
|
|
|
.B w
|
|
|
|
|
and
|
|
|
|
|
.B s
|
|
|
|
|
suffixes are not used).
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B LETTER/S
|
1986-08-28 08:59:23 -04:00
|
|
|
Gives the ``variable part'' (for example, the ``S'' or ``D'' in ``EST''
|
|
|
|
|
or ``EDT'') of time zone abbreviations to be used when this rule is in effect.
|
1986-02-15 17:45:02 -05:00
|
|
|
If this field is
|
1986-08-28 08:59:23 -04:00
|
|
|
.BR \- ,
|
1986-02-15 17:45:02 -05:00
|
|
|
the variable part is null.
|
|
|
|
|
.PP
|
|
|
|
|
A zone line has the form
|
|
|
|
|
.sp
|
|
|
|
|
.nf
|
|
|
|
|
.ti +.5i
|
1986-11-15 20:07:05 -05:00
|
|
|
.ta \w'Zone\0\0'u +\w'Australia/South\-west\0\0'u +\w'GMTOFF\0\0'u +\w'RULES/SAVE\0\0'u +\w'FORMAT\0\0'u
|
|
|
|
|
Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
For example:
|
|
|
|
|
.sp
|
|
|
|
|
.ti +.5i
|
1986-10-29 18:46:51 -05:00
|
|
|
Zone Australia/South\-west 9:30 Aus CST 1987 Mar 15 2:00
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
.fi
|
|
|
|
|
The fields that make up a zone line are:
|
1986-08-28 08:59:23 -04:00
|
|
|
.TP "\w'GMTOFF'u"
|
1986-02-15 17:45:02 -05:00
|
|
|
.B NAME
|
|
|
|
|
The name of the time zone.
|
1986-03-06 09:34:53 -05:00
|
|
|
This is the name used in creating the time conversion information file for the
|
|
|
|
|
zone.
|
1986-02-15 17:45:02 -05:00
|
|
|
.TP
|
|
|
|
|
.B GMTOFF
|
|
|
|
|
The amount of time to add to GMT to get standard time in this zone.
|
|
|
|
|
This field has the same format as the
|
|
|
|
|
.B AT
|
|
|
|
|
and
|
|
|
|
|
.B SAVE
|
|
|
|
|
fields of rule lines;
|
|
|
|
|
begin the field with a minus sign if time must be subtracted from GMT.
|
|
|
|
|
.TP
|
1986-11-15 20:07:05 -05:00
|
|
|
.B RULES/SAVE
|
1986-10-30 14:39:36 -05:00
|
|
|
The name of the rule(s) that apply in the time zone or,
|
|
|
|
|
alternately, an amount of time to add to local standard time.
|
1986-03-06 09:34:53 -05:00
|
|
|
If this field is
|
1986-08-28 08:59:23 -04:00
|
|
|
.B \-
|
1986-02-15 17:45:02 -05:00
|
|
|
then standard time always applies in the time zone.
|
|
|
|
|
.TP
|
|
|
|
|
.B FORMAT
|
|
|
|
|
The format for time zone abbreviations in this time zone.
|
1986-03-05 18:52:03 -05:00
|
|
|
The pair of characters
|
1986-08-28 08:59:23 -04:00
|
|
|
.B %s
|
|
|
|
|
is used to show where the ``variable part'' of the time zone abbreviation goes.
|
1986-10-29 18:46:51 -05:00
|
|
|
.B UNTIL
|
|
|
|
|
The time at which the GMT offset or the rule(s) change for a location.
|
|
|
|
|
It is specified as a year, a month, a day, and a time of day. If this is
|
|
|
|
|
specified, the time zone information is generated from the given GMT offset
|
|
|
|
|
and rule change until the time specified.
|
|
|
|
|
.IP
|
|
|
|
|
The next line must be a
|
|
|
|
|
``continuation'' line; this has the same form as a zone line except that the
|
|
|
|
|
string ``Zone'' and the name are omitted, as the continuation line will
|
|
|
|
|
place information starting at the time specified as the
|
|
|
|
|
.B UNTIL
|
|
|
|
|
field in the previous line in the file used by the previous line.
|
|
|
|
|
Continuation lines may contain an
|
|
|
|
|
.B UNTIL
|
|
|
|
|
field, just as zone lines do, indicating that the next line is a further
|
|
|
|
|
continuation.
|
1986-02-15 17:45:02 -05:00
|
|
|
.PP
|
|
|
|
|
A link line has the form
|
|
|
|
|
.sp
|
|
|
|
|
.nf
|
|
|
|
|
.ti +.5i
|
1986-08-28 08:59:23 -04:00
|
|
|
.if t .ta \w'Link\0\0'u +\w'LINK-FROM\0\0'u
|
1986-12-26 22:45:11 -05:00
|
|
|
.if n .ta \w'Link\0\0'u +\w'US/EasternS\0\0'u
|
1986-02-15 18:33:42 -05:00
|
|
|
Link LINK-FROM LINK-TO
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
For example:
|
|
|
|
|
.sp
|
|
|
|
|
.ti +.5i
|
1986-12-26 22:45:11 -05:00
|
|
|
Link US/EasternS EST5EDT
|
1986-02-15 17:45:02 -05:00
|
|
|
.sp
|
|
|
|
|
.fi
|
|
|
|
|
The
|
1986-02-15 18:33:42 -05:00
|
|
|
.B LINK-FROM
|
1986-02-15 17:45:02 -05:00
|
|
|
field should appear as the
|
|
|
|
|
.B NAME
|
|
|
|
|
field in some zone line;
|
|
|
|
|
the
|
1986-02-15 18:33:42 -05:00
|
|
|
.B LINK-TO
|
1986-02-15 17:45:02 -05:00
|
|
|
field is used as an alternate name for that zone.
|
|
|
|
|
.PP
|
1986-10-29 21:52:03 -05:00
|
|
|
Except for continuation lines,
|
|
|
|
|
lines may appear in any order in the input.
|
1986-12-26 22:45:11 -05:00
|
|
|
.SH NOTE
|
1986-12-02 19:22:09 -05:00
|
|
|
For areas with more than two types of local time,
|
|
|
|
|
you may need to use local standard time in the
|
|
|
|
|
.B AT
|
|
|
|
|
field of the earliest transition time's rule to ensure that
|
|
|
|
|
the earliest transition time recorded in the compiled file is correct.
|
1986-02-15 17:45:02 -05:00
|
|
|
.SH FILES
|
1986-11-15 20:07:05 -05:00
|
|
|
/etc/zoneinfo standard directory used for created files
|
1986-02-15 17:45:02 -05:00
|
|
|
.SH "SEE ALSO"
|
1986-12-26 22:45:11 -05:00
|
|
|
newctime(3), tzfile(5), zdump(8)
|
1986-02-15 17:45:02 -05:00
|
|
|
.. %W%
|