zic(1M) zic(1M)
NAME
zic - time zone compiler
SYNOPSIS
zic [-v] [-d directory] [-l localtime] [filename . . .]
DESCRIPTION
zic reads text from the file(s) named on the command line and
creates the time conversion information files specified in
this input. If a filename is `-', the standard input is read.
Input lines are made up of fields. Fields are separated by
any number of white space characters. Leading and trailing
white space on input lines is ignored. A pound sign (#) in
the input introduces a comment which extends to the end of the
line the pound sign appears on. White space characters and
pound signs may be enclosed in double quotes (") if they're to
be used as part of a field. Any line that is blank (after
comment stripping) is ignored. Non-blank lines are expected
to be of one of three types: rule lines, zone lines, and link
lines.
A rule line has the form
Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
For example:
Rule USA 1969 1973 - Apr lastSun 2:00 1:00 D
The fields that make up a rule line are:
NAME Gives the (arbitrary) name of the set of rules this rule
is part of.
FROM Gives the first year in which the rule applies. The
word minimum (or an abbreviation) means the minimum year
with a representable time value. The word maximum (or
an abbreviation) means the maximum year with a
representable time value.
TO Gives the final year in which the rule applies. In
addition to minimum and maximum (as above), the word
only (or an abbreviation) may be used to repeat the
value of the FROM field.
TYPE Gives the type of year in which the rule applies. If
TYPE is `-' then the rule applies in all years between
FROM and TO inclusive; if TYPE is uspres, the rule
Copyright 1994 Novell, Inc. Page 1
zic(1M) zic(1M)
applies in U.S. Presidential election years; if TYPE is
nonpres, the rule applies in years other than U.S.
Presidential election years. If TYPE is something else,
then zic executes the command
yearistype year type
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.
IN Names the month in which the rule takes effect. Month
names may be abbreviated.
ON Gives the day on which the rule takes effect.
Recognized forms include:
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
Names of days of the week may be abbreviated or spelled
out in full. Note: there must be no spaces within the
ON field.
AT Gives the time of day at which the rule takes effect.
Recognized forms include:
2 time in hours
2:00 time in hours and minutes
15:00 24-hour format time (for times after noon)
Copyright 1994 Novell, Inc. Page 2
zic(1M) zic(1M)
1:28:14
time in hours, minutes, and seconds
Any of these forms may be followed by the letter w if the
given time is local ``wall clock'' time or s if the given time
is local ``standard'' time; in the absence of w or s, wall
clock time is assumed.
SAVE Gives the amount of time to be added to local standard
time when the rule is in effect. This field has the
same format as the AT field (although, of course, the w
and s suffixes are not used).
LETTER/S
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. If this field
is `-', the variable part is null.
A zone line has the form
Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
For example:
Zone PRC 8:00 PRC C%sT
The fields that make up a zone line are:
NAME The name of the time zone. This is the name used in
creating the time conversion information file for the
zone.
GMTOFF
The amount of time to add to GMT to get standard time in
this zone. This field has the same format as the AT and
SAVE fields of rule lines; begin the field with a minus
sign if time must be subtracted from GMT.
RULES/SAVE
The name of the rule(s) that apply in the time zone or,
alternately, an amount of time to add to local standard
time. If this field is `-' then standard time always
applies in the time zone.
FORMAT
The format for time zone abbreviations in this time
zone. The pair of characters %s is used to show where
the ``variable part'' of the time zone abbreviation
Copyright 1994 Novell, Inc. Page 3
zic(1M) zic(1M)
goes.
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.
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 UNTIL field in the previous line in the
file used by the previous line. Continuation lines may
contain an UNTIL field, just as zone lines do,
indicating that the next line is a further continuation.
A link line has the form
Link LINK-FROM LINK-TO
For example:
Link US/Eastern EST5EDT
The LINK-FROM field should appear as the NAME field in some
zone line; the LINK-TO field is used as an alternate name for
that zone.
Except for continuation lines, lines may appear in any order
in the input.
OPTIONS
-v Complain if a year that appears in a data file is
outside the range of years representable by system time
values (0:00:00 AM GMT, January 1, 1970, to 3:14:07 AM
GMT, January 19, 2038).
-d directory
Create time conversion information files in the
directory directory rather than in the standard
directory /usr/lib/locale/TZ.
-l timezone
Use the time zone timezone as local time. zic will act
as if the file contained a link line of the form
Link timezone
localtime
Copyright 1994 Novell, Inc. Page 4
zic(1M) zic(1M)
FILES
/usr/lib/locale/TZ standard directory used for created files
NOTICES
For areas with more than two types of local time, you may need
to use local standard time in the AT field of the earliest
transition time's rule to ensure that the earliest transition
time recorded in the compiled file is correct.
REFERENCES
ctime(3C), time(1)
Copyright 1994 Novell, Inc. Page 5