version 1, including all changes.
.
Rev |
Author |
# |
Line |
1 |
perry |
1 |
ZIC |
|
|
2 |
!!!ZIC |
|
|
3 |
NAME |
|
|
4 |
SYNOPSIS |
|
|
5 |
DESCRIPTION |
|
|
6 |
NOTE |
|
|
7 |
FILE |
|
|
8 |
SEE ALSO |
|
|
9 |
---- |
|
|
10 |
!!NAME |
|
|
11 |
|
|
|
12 |
|
|
|
13 |
zic - time zone compiler |
|
|
14 |
!!SYNOPSIS |
|
|
15 |
|
|
|
16 |
|
|
|
17 |
__zic__ [[ __-v__ ] [[ __-d__ ''directory'' ] [[ |
|
|
18 |
__-l__ ''localtime'' ] [[ __-p__ ''posixrules'' ] |
|
|
19 |
[[ __-L__ ''leapsecondfilename'' ] [[ __-s__ ] [[ |
|
|
20 |
__-y__ ''command'' ] [[ ''filename'' ... |
|
|
21 |
] |
|
|
22 |
!!DESCRIPTION |
|
|
23 |
|
|
|
24 |
|
|
|
25 |
''Zic'' reads text from the file(s) named on the command |
|
|
26 |
line and creates the time conversion information files |
|
|
27 |
specified in this input. If a ''filename'' is __-__, |
|
|
28 |
the standard input is read. |
|
|
29 |
|
|
|
30 |
|
|
|
31 |
These options are available: |
|
|
32 |
|
|
|
33 |
|
|
|
34 |
__-d__ ''directory'' |
|
|
35 |
|
|
|
36 |
|
|
|
37 |
Create time conversion information files in the named |
|
|
38 |
directory rather than in the standard directory named |
|
|
39 |
below. |
|
|
40 |
|
|
|
41 |
|
|
|
42 |
__-l__ ''timezone'' |
|
|
43 |
|
|
|
44 |
|
|
|
45 |
Use the given time zone as local time. ''Zic'' will act |
|
|
46 |
as if the input contained a link line of the |
|
|
47 |
form |
|
|
48 |
|
|
|
49 |
|
|
|
50 |
Link ''timezone'' localtime |
|
|
51 |
|
|
|
52 |
|
|
|
53 |
__-p__ ''timezone'' |
|
|
54 |
|
|
|
55 |
|
|
|
56 |
Use the given time zone's rules when handling POSIX-format |
|
|
57 |
time zone environment variables. ''Zic'' will act as if |
|
|
58 |
the input contained a link line of the form |
|
|
59 |
|
|
|
60 |
|
|
|
61 |
Link ''timezone'' posixrules |
|
|
62 |
|
|
|
63 |
|
|
|
64 |
__-L__ ''leapsecondfilename'' |
|
|
65 |
|
|
|
66 |
|
|
|
67 |
Read leap second information from the file with the given |
|
|
68 |
name. If this option is not used, no leap second information |
|
|
69 |
appears in output files. |
|
|
70 |
|
|
|
71 |
|
|
|
72 |
__-v__ |
|
|
73 |
|
|
|
74 |
|
|
|
75 |
Complain if a year that appears in a data file is outside |
|
|
76 |
the range of years representable by time(2) |
|
|
77 |
values. |
|
|
78 |
|
|
|
79 |
|
|
|
80 |
__-s__ |
|
|
81 |
|
|
|
82 |
|
|
|
83 |
Limit time values stored in output files to values that are |
|
|
84 |
the same whether they're taken to be signed or unsigned. You |
|
|
85 |
can use this option to generate SVVS-compatible |
|
|
86 |
files. |
|
|
87 |
|
|
|
88 |
|
|
|
89 |
__-y__ ''command'' |
|
|
90 |
|
|
|
91 |
|
|
|
92 |
Use the given ''command'' rather than __yearistype__ |
|
|
93 |
when checking year types (see below). |
|
|
94 |
|
|
|
95 |
|
|
|
96 |
Input lines are made up of fields. Fields are separated from |
|
|
97 |
one another by any number of white space characters. Leading |
|
|
98 |
and trailing white space on input lines is ignored. An |
|
|
99 |
unquoted sharp character (#) in the input introduces a |
|
|
100 |
comment which extends to the end of the line the sharp |
|
|
101 |
character appears on. White space characters and sharp |
|
|
102 |
characters may be enclosed in double quotes ( |
|
|
103 |
|
|
|
104 |
|
|
|
105 |
A rule line has the form |
|
|
106 |
|
|
|
107 |
|
|
|
108 |
Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S |
|
|
109 |
For example: |
|
|
110 |
Rule US 1967 1973 - Apr lastSun 2:00 1:00 D |
|
|
111 |
The fields that make up a rule line are: |
|
|
112 |
|
|
|
113 |
|
|
|
114 |
__NAME__ |
|
|
115 |
|
|
|
116 |
|
|
|
117 |
Gives the (arbitrary) name of the set of rules this rule is |
|
|
118 |
part of. |
|
|
119 |
|
|
|
120 |
|
|
|
121 |
__FROM__ |
|
|
122 |
|
|
|
123 |
|
|
|
124 |
Gives the first year in which the rule applies. Any integer |
|
|
125 |
year can be supplied; the Gregorian calendar is assumed. The |
|
|
126 |
word __minimum__ (or an abbreviation) means the minimum |
|
|
127 |
year representable as an integer. The word __maximum__ |
|
|
128 |
(or an abbreviation) means the maximum year representable as |
|
|
129 |
an integer. Rules can describe times that are not |
|
|
130 |
representable as time values, with the unrepresentable times |
|
|
131 |
ignored; this allows rules to be portable among hosts with |
|
|
132 |
differing time value types. |
|
|
133 |
|
|
|
134 |
|
|
|
135 |
__TO__ |
|
|
136 |
|
|
|
137 |
|
|
|
138 |
Gives the final year in which the rule applies. In addition |
|
|
139 |
to __minimum__ and __maximum__ (as above), the word |
|
|
140 |
__only__ (or an abbreviation) may be used to repeat the |
|
|
141 |
value of the __FROM__ field. |
|
|
142 |
|
|
|
143 |
|
|
|
144 |
__TYPE__ |
|
|
145 |
|
|
|
146 |
|
|
|
147 |
Gives the type of year in which the rule applies. If |
|
|
148 |
__TYPE__ is __-__ then the rule applies in all years |
|
|
149 |
between __FROM__ and __TO__ inclusive. If __TYPE__ |
|
|
150 |
is something else, then ''zic'' executes the |
|
|
151 |
command |
|
|
152 |
|
|
|
153 |
|
|
|
154 |
__yearistype__ ''year type'' |
|
|
155 |
|
|
|
156 |
|
|
|
157 |
to check the type of a year: an exit status of zero is taken |
|
|
158 |
to mean that the year is of the given type; an exit status |
|
|
159 |
of one is taken to mean that the year is not of the given |
|
|
160 |
type. |
|
|
161 |
|
|
|
162 |
|
|
|
163 |
__IN__ |
|
|
164 |
|
|
|
165 |
|
|
|
166 |
Names the month in which the rule takes effect. Month names |
|
|
167 |
may be abbreviated. |
|
|
168 |
|
|
|
169 |
|
|
|
170 |
__ON__ |
|
|
171 |
|
|
|
172 |
|
|
|
173 |
Gives the day on which the rule takes effect. Recognized |
|
|
174 |
forms include: |
|
|
175 |
|
|
|
176 |
|
|
|
177 |
5 the fifth of the month |
|
|
178 |
lastSun the last Sunday in the month |
|
|
179 |
lastMon the last Monday in the month |
|
|
180 |
Sun |
|
|
181 |
Names of days of the week may be abbreviated or spelled out in full. Note that there must be no spaces within the __ON__ field. |
|
|
182 |
|
|
|
183 |
|
|
|
184 |
__AT__ |
|
|
185 |
|
|
|
186 |
|
|
|
187 |
Gives the time of day at which the rule takes effect. |
|
|
188 |
Recognized forms include: |
|
|
189 |
|
|
|
190 |
|
|
|
191 |
2 time in hours |
|
|
192 |
2:00 time in hours and minutes |
|
|
193 |
15:00 24-hour format time (for times after noon) |
|
|
194 |
1:28:14 time in hours, minutes, and seconds |
|
|
195 |
where hour 0 is midnight at the start of the day, and hour 24 is midnight at the end of the day. Any of these forms may be followed by the letter __w__ if the given time is local ``wall clock'' time, __s__ if the given time is local ``standard'' time, or __u__ (or __g__ or __z__) if the given time is universal time; in the absence of an indicator, wall clock time is assumed. |
|
|
196 |
|
|
|
197 |
|
|
|
198 |
__SAVE__ |
|
|
199 |
|
|
|
200 |
|
|
|
201 |
Gives the amount of time to be added to local standard time |
|
|
202 |
when the rule is in effect. This field has the same format |
|
|
203 |
as the __AT__ field (although, of course, the __w__ |
|
|
204 |
and __s__ suffixes are not used). |
|
|
205 |
|
|
|
206 |
|
|
|
207 |
__LETTER/S__ |
|
|
208 |
|
|
|
209 |
|
|
|
210 |
Gives the ``variable part'' (for example, the ``S'' or ``D'' |
|
|
211 |
in ``EST'' or ``EDT'') of time zone abbreviations to be used |
|
|
212 |
when this rule is in effect. If this field is __-__, the |
|
|
213 |
variable part is null. |
|
|
214 |
|
|
|
215 |
|
|
|
216 |
A zone line has the form |
|
|
217 |
|
|
|
218 |
|
|
|
219 |
Zone NAME GMTOFF RULES/SAVE FORMAT [[UNTIL] |
|
|
220 |
For example: |
|
|
221 |
Zone Australia/Adelaide 9:30 Aus CST 1971 Oct 31 2:00 |
|
|
222 |
The fields that make up a zone line are: |
|
|
223 |
|
|
|
224 |
|
|
|
225 |
__NAME__ |
|
|
226 |
|
|
|
227 |
|
|
|
228 |
The name of the time zone. This is the name used in creating |
|
|
229 |
the time conversion information file for the |
|
|
230 |
zone. |
|
|
231 |
|
|
|
232 |
|
|
|
233 |
__GMTOFF__ |
|
|
234 |
|
|
|
235 |
|
|
|
236 |
The amount of time to add to UTC to get standard time in |
|
|
237 |
this zone. This field has the same format as the __AT__ |
|
|
238 |
and __SAVE__ fields of rule lines; begin the field with a |
|
|
239 |
minus sign if time must be subtracted from UTC. |
|
|
240 |
|
|
|
241 |
|
|
|
242 |
__RULES/SAVE__ |
|
|
243 |
|
|
|
244 |
|
|
|
245 |
The name of the rule(s) that apply in the time zone or, |
|
|
246 |
alternately, an amount of time to add to local standard |
|
|
247 |
time. If this field is __-__ then standard time always |
|
|
248 |
applies in the time zone. |
|
|
249 |
|
|
|
250 |
|
|
|
251 |
__FORMAT__ |
|
|
252 |
|
|
|
253 |
|
|
|
254 |
The format for time zone abbreviations in this time zone. |
|
|
255 |
The pair of characters __%s__ is used to show where the |
|
|
256 |
``variable part'' of the time zone abbreviation goes. |
|
|
257 |
Alternately, a slash (/) separates standard and daylight |
|
|
258 |
abbreviations. |
|
|
259 |
|
|
|
260 |
|
|
|
261 |
__UNTIL__ |
|
|
262 |
|
|
|
263 |
|
|
|
264 |
The time at which the UTC offset or the rule(s) change for a |
|
|
265 |
location. It is specified as a year, a month, a day, and a |
|
|
266 |
time of day. If this is specified, the time zone information |
|
|
267 |
is generated from the given UTC offset and rule change until |
|
|
268 |
the time specified. The month, day, and time of day have the |
|
|
269 |
same format as the IN, ON, and AT columns of a rule; |
|
|
270 |
trailing columns can be omitted, and default to the earliest |
|
|
271 |
possible value for the missing columns. |
|
|
272 |
|
|
|
273 |
|
|
|
274 |
The next line must be a ``continuation'' line; this has the |
|
|
275 |
same form as a zone line except that the string ``Zone'' and |
|
|
276 |
the name are omitted, as the continuation line will place |
|
|
277 |
information starting at the time specified as the |
|
|
278 |
__UNTIL__ field in the previous line in the file used by |
|
|
279 |
the previous line. Continuation lines may contain an |
|
|
280 |
__UNTIL__ field, just as zone lines do, indicating that |
|
|
281 |
the next line is a further continuation. |
|
|
282 |
|
|
|
283 |
|
|
|
284 |
A link line has the form |
|
|
285 |
|
|
|
286 |
|
|
|
287 |
Link LINK-FROM LINK-TO |
|
|
288 |
For example: |
|
|
289 |
Link Europe/Istanbul Asia/Istanbul |
|
|
290 |
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. |
|
|
291 |
|
|
|
292 |
|
|
|
293 |
Except for continuation lines, lines may appear in any order |
|
|
294 |
in the input. |
|
|
295 |
|
|
|
296 |
|
|
|
297 |
Lines in the file that describes leap seconds have the |
|
|
298 |
following form: |
|
|
299 |
|
|
|
300 |
|
|
|
301 |
Leap YEAR MONTH DAY HH:MM:SS CORR R/S |
|
|
302 |
For example: |
|
|
303 |
Leap 1974 Dec 31 23:59:60 + S |
|
|
304 |
The __YEAR__, __MONTH__, __DAY__, and __HH:MM:SS__ fields tell when the leap second happened. The __CORR__ field should be ``+'' if a second was added or ``-'' if a second was skipped. The __R/S__ field should be (an abbreviation of) ``Stationary'' if the leap second time given by the other fields should be interpreted as UTC or (an abbreviation of) ``Rolling'' if the leap second time given by the other fields should be interpreted as local wall clock time. |
|
|
305 |
!!NOTE |
|
|
306 |
|
|
|
307 |
|
|
|
308 |
For areas with more than two types of local time, you may |
|
|
309 |
need to use local standard time in the __AT__ field of |
|
|
310 |
the earliest transition time's rule to ensure that the |
|
|
311 |
earliest transition time recorded in the compiled file is |
|
|
312 |
correct. |
|
|
313 |
!!FILE |
|
|
314 |
|
|
|
315 |
|
|
|
316 |
/usr/share/zoneinfo standard directory used for created |
|
|
317 |
files |
|
|
318 |
!!SEE ALSO |
|
|
319 |
|
|
|
320 |
|
|
|
321 |
ctime(3), zdump(1) |
|
|
322 |
---- |