.TH IAR 10.1.SH NAMEiar \- archive and library maintainer.SH SYNOPSIS.B iar.I key[.I posname].I afile[.I file ...].SH DESCRIPTION.I Iarmaintains groups of filescombined into a single archive file,.IR afile .The main use of.I iaris to create and update library files for the loaders.IR 2l (10.1),etc.It can be used, though, for any similar purpose..PP.I Keyis one character from the set.BR drqtpmx ,optionally concatenated withone or more of.BR vuaibclo .The.I filesare constituents of the archive.IR afile .The meanings of the.I keycharacters are:.TP.B dDelete .I files from the archive file..TP.B rReplace.I files in the archive file, or add them if missing.Optional modifiers are.RS.PD0.TP.B uReplace only files withmodified dates later than that ofthe archive..TP.B aPlace new files after.I posnamein the archive rather than at the end..TP.BR b " or " iPlace new files before.I posnamein the archive..RE.PD.TP.B qQuick. Append.I files to the end of the archive without checking for duplicates.Avoids quadratic behavior in.LR "for (i in *.v) ar r lib.a $i" ..TP.B tList a table of contents of the archive.If names are given, only those files are listed..TP.B pPrint the named files in the archive..TP.B mMove the named files to the end or elsewhere,specified as with .LR r ..TP.B oPreserve the access and modification times of filesextracted with the.B xcommand..TP.B xExtract the named files.If no names are given, all files in the archive areextracted.In neither case does.B xalter the archive file..TP.B vVerbose.Give a file-by-filedescription of the making of anew archive file from the old archive and the constituent files.With.BR p ,precede each file with a name.With.BR t ,give a long listing of all information about the files,somewhat like a listing by.IR ls (1),showing.br.ns.IP.B mode uid/gid size date name.TP.B cCreate.Normally.I iarwill create a new archive when.I afiledoes not exist, and give a warning.Option .B cdiscards any old contents and suppresses the warning..TP.B lLocal.Normally.I iarplaces its temporary files in the directory.BR /tmp .This option causes them to be placed in the local directory..PPWhen a.BR d ,.BR r ,or.BR m.I keyis specified and all members of the archive are valid object files forthe same architecture,.I iarinserts a table of contents, required by the loaders, atthe front of the library.The table of contents isrebuilt whenever the archive is modified, exceptwhen the.B q.I keyis specified or when the table of contents isexplicitly moved or deleted..SH EXAMPLE.TP.Liar cr lib.a *.vReplace the contents of library.L lib.awith the object files in the current directory..SH FILES.TF /tmp/vxxxx.TP.B /tmp/v*temporaries.SH SOURCE.B /utils/iar.SH "SEE ALSO".IR 2l (10.1), .IR ar (10.6).SH BUGSIf the same file is mentioned twice in an argument list,it may be put in the archive twice..brThe file format used by this command is taken from UNIX, andmakes some invalid assumptions,for instance that user IDs are numeric.
.TH IAR 10.1
.SH NAME
iar \- archive and library maintainer
.SH SYNOPSIS
.B iar
.I key
[
.I posname
]
.I afile
[
.I file ...
]
.SH DESCRIPTION
.I Iar
maintains groups of files
combined into a single archive file,
.IR afile .
The main use of
.I iar
is to create and update library files for the loaders
.IR 2l (10.1),
etc.
It can be used, though, for any similar purpose.
.PP
.I Key
is one character from the set
.BR drqtpmx ,
optionally concatenated with
one or more of
.BR vuaibclo .
The
.I files
are constituents of the archive
.IR afile .
The meanings of the
.I key
characters are:
.TP
.B d
Delete
.I files
from the archive file.
.TP
.B r
Replace
.I files
in the archive file, or add them if missing.
Optional modifiers are
.RS
.PD0
.TP
.B u
Replace only files with
modified dates later than that of
the archive.
.TP
.B a
Place new files after
.I posname
in the archive rather than at the end.
.TP
.BR b " or " i
Place new files before
.I posname
in the archive.
.RE
.PD
.TP
.B q
Quick. Append
.I files
to the end of the archive without checking for duplicates.
Avoids quadratic behavior in
.LR "for (i in *.v) ar r lib.a $i" .
.TP
.B t
List a table of contents of the archive.
If names are given, only those files are listed.
.TP
.B p
Print the named files in the archive.
.TP
.B m
Move the named files to the end or elsewhere,
specified as with
.LR r .
.TP
.B o
Preserve the access and modification times of files
extracted with the
.B x
command.
.TP
.B x
Extract the named files.
If no names are given, all files in the archive are
extracted.
In neither case does
.B x
alter the archive file.
.TP
.B v
Verbose.
Give a file-by-file
description of the making of a
new archive file from the old archive and the constituent files.
With
.BR p ,
precede each file with a name.
With
.BR t ,
give a long listing of all information about the files,
somewhat like a listing by
.IR ls (1),
showing
.br
.ns
.IP
.B
mode uid/gid size date name
.TP
.B c
Create.
Normally
.I iar
will create a new archive when
.I afile
does not exist, and give a warning.
Option
.B c
discards any old contents and suppresses the warning.
.TP
.B l
Local.
Normally
.I iar
places its temporary files in the directory
.BR /tmp .
This option causes them to be placed in the local directory.
.PP
When a
.BR d ,
.BR r ,
or
.BR m
.I key
is specified and all members of the archive are valid object files for
the same architecture,
.I iar
inserts a table of contents, required by the loaders, at
the front of the library.
The table of contents is
rebuilt whenever the archive is modified, except
when the
.B q
.I key
is specified or when the table of contents is
explicitly moved or deleted.
.SH EXAMPLE
.TP
.L
iar cr lib.a *.v
Replace the contents of library
.L lib.a
with the object files in the current directory.
.SH FILES
.TF /tmp/vxxxx
.TP
.B /tmp/v*
temporaries
.SH SOURCE
.B /utils/iar
.SH "SEE ALSO"
.IR 2l (10.1),
.IR ar (10.6)
.SH BUGS
If the same file is mentioned twice in an argument list,
it may be put in the archive twice.
.br
The file format used by this command is taken from UNIX, and
makes some invalid assumptions,
for instance that user IDs are numeric.