libarchive-2.8.3: Build fix for Linux

This commit is contained in:
joerg 2010-03-16 17:05:42 +00:00
parent 1360c7b7c8
commit 2f4361fa76
54 changed files with 9422 additions and 15839 deletions

View file

@ -1,10 +1,9 @@
#! /bin/sh
# Wrapper for compilers which do not understand `-c -o'.
scriptversion=2009-10-06.20; # UTC
scriptversion=2005-05-14.22
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software
# Foundation, Inc.
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@ -18,7 +17,8 @@ scriptversion=2009-10-06.20; # UTC
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@ -103,13 +103,13 @@ if test -z "$ofile" || test -z "$cfile"; then
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
# Create the lock directory.
# Note: use `[/\\:.-]' here to ensure that we don't use the same name
# Note: use `[/.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
@ -124,9 +124,9 @@ trap "rmdir '$lockdir'; exit 1" 1 2 15
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
@ -138,6 +138,5 @@ exit $ret
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# time-stamp-end: "$"
# End:

File diff suppressed because it is too large Load diff

View file

@ -1,10 +1,9 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
# Free Software Foundation, Inc.
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
timestamp='2009-12-31'
timestamp='2003-07-04'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@ -22,26 +21,22 @@ timestamp='2009-12-31'
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
# 02110-1301, USA.
#
# Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted GNU ChangeLog entry.
# diff and a properly formatted ChangeLog entry.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
@ -75,9 +70,8 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
Software Foundation, Inc.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@ -89,11 +83,11 @@ Try \`$me --help' for more information."
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
echo "$timestamp" ; exit ;;
echo "$timestamp" ; exit 0 ;;
--version | -v )
echo "$version" ; exit ;;
echo "$version" ; exit 0 ;;
--help | --h* | -h )
echo "$usage"; exit ;;
echo "$usage"; exit 0 ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@ -105,7 +99,7 @@ while test $# -gt 0 ; do
*local*)
# First pass through any local machine types.
echo $1
exit ;;
exit 0;;
* )
break ;;
@ -124,10 +118,7 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*)
nto-qnx* | linux-gnu* | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@ -153,13 +144,10 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple | -axis | -knuth | -cray | -microblaze)
-apple | -axis)
os=
basic_machine=$1
;;
-bluegene*)
os=-cnk
;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
@ -181,10 +169,6 @@ case $os in
-hiux*)
os=-hiuxwe2
;;
-sco6)
os=-sco5v6
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco5)
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@ -201,10 +185,6 @@ case $os in
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco5v6*)
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@ -248,71 +228,53 @@ case $basic_machine in
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
| bfin \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
| fido | fr30 | frv \
| fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
| maxq | mb | microblaze | mcore | mep | metag \
| ip2k \
| m32r | m68000 | m68k | m88k | mcore \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
| mips64octeon | mips64octeonel \
| mips64orion | mips64orionel \
| mips64r5900 | mips64r5900el \
| mips64vr | mips64vrel \
| mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| moxie \
| mt \
| msp430 \
| nios | nios2 \
| ns16k | ns32k \
| or32 \
| openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| rx \
| score \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
| spu | strongarm \
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic4x | tic80 | tron \
| ubicom32 \
| v850 | v850e \
| we32k \
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
| z8k | z80)
| x86 | xscale | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
m6811 | m68hc11 | m6812 | m68hc12 | picochip)
m6811 | m68hc11 | m6812 | m68hc12)
# Motorola 68HC11/12.
basic_machine=$basic_machine-unknown
os=-none
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;;
ms1)
basic_machine=mt-unknown
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
@ -330,70 +292,56 @@ case $basic_machine in
| a29k-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
| bfin-* | bs2000-* \
| avr-* \
| bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| clipper-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
| ip2k-* \
| m32r-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
| m88110-* | m88k-* | mcore-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
| mips64octeon-* | mips64octeonel-* \
| mips64orion-* | mips64orionel-* \
| mips64r5900-* | mips64r5900el-* \
| mips64vr-* | mips64vrel-* \
| mips64orion-* | mips64orionel-* \
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
| mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
| mt-* \
| msp430-* \
| nios-* | nios2-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* | rx-* \
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| romp-* | rs6000-* \
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tron-* \
| ubicom32-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
| xstormy16-* | xtensa*-* \
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
| xtensa-* \
| ymp-* \
| z8k-* | z80-*)
;;
# Recognize the basic CPU types without company name, with glob match.
xtensa*)
basic_machine=$basic_machine-unknown
| z8k-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@ -411,9 +359,6 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
abacus)
basic_machine=abacus-unknown
;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
@ -431,9 +376,6 @@ case $basic_machine in
amd64)
basic_machine=x86_64-pc
;;
amd64-*)
basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
amdahl)
basic_machine=580-amdahl
os=-sysv
@ -457,10 +399,6 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-bsd
;;
aros)
basic_machine=i386-pc
os=-aros
;;
aux)
basic_machine=m68k-apple
os=-aux
@ -469,26 +407,10 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
blackfin)
basic_machine=bfin-unknown
os=-linux
;;
blackfin-*)
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
os=-linux
;;
bluegene*)
basic_machine=powerpc-ibm
os=-cnk
;;
c90)
basic_machine=c90-cray
os=-unicos
;;
cegcc)
basic_machine=arm-unknown
os=-cegcc
;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@ -513,27 +435,12 @@ case $basic_machine in
basic_machine=j90-cray
os=-unicos
;;
craynv)
basic_machine=craynv-cray
os=-unicosmp
;;
cr16)
basic_machine=cr16-unknown
os=-elf
;;
crds | unos)
basic_machine=m68k-crds
;;
crisv32 | crisv32-* | etraxfs*)
basic_machine=crisv32-axis
;;
cris | cris-* | etrax*)
basic_machine=cris-axis
;;
crx)
basic_machine=crx-unknown
os=-elf
;;
da30 | da30-*)
basic_machine=m68k-da30
;;
@ -556,14 +463,6 @@ case $basic_machine in
basic_machine=m88k-motorola
os=-sysv3
;;
dicos)
basic_machine=i686-pc
os=-dicos
;;
djgpp)
basic_machine=i586-pc
os=-msdosdjgpp
;;
dpx20 | dpx20-*)
basic_machine=rs6000-bull
os=-bosx
@ -714,14 +613,6 @@ case $basic_machine in
basic_machine=m68k-isi
os=-sysv
;;
m68knommu)
basic_machine=m68k-unknown
os=-linux
;;
m68knommu-*)
basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
os=-linux
;;
m88k-omron*)
basic_machine=m88k-omron
;;
@ -733,17 +624,10 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
microblaze)
basic_machine=microblaze-xilinx
;;
mingw32)
basic_machine=i386-pc
os=-mingw32
;;
mingw32ce)
basic_machine=arm-unknown
os=-mingw32ce
;;
miniframe)
basic_machine=m68000-convergent
;;
@ -757,6 +641,10 @@ case $basic_machine in
mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;;
mmix*)
basic_machine=mmix-knuth
os=-mmixware
;;
monitor)
basic_machine=m68k-rom68k
os=-coff
@ -769,9 +657,6 @@ case $basic_machine in
basic_machine=i386-pc
os=-msdos
;;
ms1-*)
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
mvs)
basic_machine=i370-ibm
os=-mvs
@ -840,6 +725,10 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
nv1)
basic_machine=nv1-cray
os=-unicosmp
;;
nsr-tandem)
basic_machine=nsr-tandem
;;
@ -847,12 +736,9 @@ case $basic_machine in
basic_machine=hppa1.1-oki
os=-proelf
;;
openrisc | openrisc-*)
or32 | or32-*)
basic_machine=or32-unknown
;;
os400)
basic_machine=powerpc-ibm
os=-os400
os=-coff
;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
@ -870,14 +756,6 @@ case $basic_machine in
basic_machine=i860-intel
os=-osf
;;
parisc)
basic_machine=hppa-unknown
os=-linux
;;
parisc-*)
basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
os=-linux
;;
pbd)
basic_machine=sparc-tti
;;
@ -887,12 +765,6 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pc98)
basic_machine=i386-pc
;;
pc98-*)
basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
@ -949,10 +821,6 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
rdos)
basic_machine=i386-pc
os=-rdos
;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@ -979,10 +847,6 @@ case $basic_machine in
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
sde)
basic_machine=mipsisa32-sde
os=-elf
;;
sei)
basic_machine=mips-sei
os=-seiux
@ -994,9 +858,6 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
sh5el)
basic_machine=sh5le-unknown
;;
sh64)
basic_machine=sh64-unknown
;;
@ -1086,10 +947,6 @@ case $basic_machine in
basic_machine=tic6x-unknown
os=-coff
;;
tile*)
basic_machine=tile-unknown
os=-linux-gnu
;;
tx39)
basic_machine=mipstx39-unknown
;;
@ -1103,10 +960,6 @@ case $basic_machine in
tower | tower-32)
basic_machine=m68k-ncr
;;
tpf)
basic_machine=s390x-ibm
os=-tpf
;;
udi29k)
basic_machine=a29k-amd
os=-udi
@ -1150,10 +1003,6 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
xbox)
basic_machine=i686-pc
os=-mingw32
;;
xps | xps100)
basic_machine=xps100-honeywell
;;
@ -1165,10 +1014,6 @@ case $basic_machine in
basic_machine=z8k-unknown
os=-sim
;;
z80-*-coff)
basic_machine=z80-unknown
os=-sim
;;
none)
basic_machine=none-none
os=-none
@ -1188,9 +1033,6 @@ case $basic_machine in
romp)
basic_machine=romp-ibm
;;
mmix)
basic_machine=mmix-knuth
;;
rs6000)
basic_machine=rs6000-ibm
;;
@ -1207,10 +1049,13 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
sh64)
basic_machine=sh64-unknown
;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
@ -1257,9 +1102,6 @@ case $os in
# First match some system type aliases
# that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
-auroraux)
os=-auroraux
;;
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
@ -1280,30 +1122,25 @@ case $os in
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
| -sym* | -kopensolaris* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* | -aros* \
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
| -openbsd* | -solidbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
| -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@ -1321,15 +1158,12 @@ case $os in
os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
os=`echo $os | sed -e 's|mac|macos|'`
;;
-linux-dietlibc)
os=-linux-dietlibc
;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
@ -1342,9 +1176,6 @@ case $os in
-opened*)
os=-openedition
;;
-os400*)
os=-os400
;;
-wince*)
os=-wince
;;
@ -1366,9 +1197,6 @@ case $os in
-atheos*)
os=-atheos
;;
-syllable*)
os=-syllable
;;
-386bsd)
os=-bsd
;;
@ -1391,9 +1219,6 @@ case $os in
-sinix*)
os=-sysv4
;;
-tpf*)
os=-tpf
;;
-triton*)
os=-sysv3
;;
@ -1430,14 +1255,6 @@ case $os in
-kaos*)
os=-kaos
;;
-zvmoe)
os=-zvmoe
;;
-dicos*)
os=-dicos
;;
-nacl*)
;;
-none)
;;
*)
@ -1460,12 +1277,6 @@ else
# system, and we'll never get to this point.
case $basic_machine in
score-*)
os=-elf
;;
spu-*)
os=-elf
;;
*-acorn)
os=-riscix1.2
;;
@ -1503,9 +1314,6 @@ case $basic_machine in
m68*-cisco)
os=-aout
;;
mep-*)
os=-elf
;;
mips*-cisco)
os=-elf
;;
@ -1524,15 +1332,9 @@ case $basic_machine in
*-be)
os=-beos
;;
*-haiku)
os=-haiku
;;
*-ibm)
os=-aix
;;
*-knuth)
os=-mmixware
;;
*-wec)
os=-proelf
;;
@ -1635,7 +1437,7 @@ case $basic_machine in
-sunos*)
vendor=sun
;;
-cnk*|-aix*)
-aix*)
vendor=ibm
;;
-beos*)
@ -1665,15 +1467,9 @@ case $basic_machine in
-mvs* | -opened*)
vendor=ibm
;;
-os400*)
vendor=ibm
;;
-ptx*)
vendor=sequent
;;
-tpf*)
vendor=ibm
;;
-vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
@ -1698,7 +1494,7 @@ case $basic_machine in
esac
echo $basic_machine$os
exit
exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)

View file

@ -1,10 +1,10 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2009-04-28.21; # UTC
scriptversion=2007-03-29.01
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
# Software Foundation, Inc.
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
# Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -17,7 +17,9 @@ scriptversion=2009-04-28.21; # UTC
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@ -85,15 +87,6 @@ if test "$depmode" = dashXmstdout; then
depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
# This is just like msvisualcpp but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u="sed s,\\\\\\\\,/,g"
depmode=msvisualcpp
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
@ -199,14 +192,14 @@ sgi)
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
' ' ' >> "$depfile"
echo >> "$depfile"
' ' ' >> $depfile
echo >> $depfile
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
>> $depfile
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
@ -335,12 +328,7 @@ hp2)
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
# Add `dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
s/$/:/
p
}' "$tmpdepfile" >> "$depfile"
sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
@ -416,7 +404,7 @@ dashmstdout)
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
while test $1 != '--mode=compile'; do
shift
done
shift
@ -467,39 +455,32 @@ makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no eat=no
for arg
do
cleared=no
for arg in "$@"; do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
if test $eat = yes; then
eat=no
continue
fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-arch)
eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix=`echo "$object" | sed 's/^.*\././'`
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
@ -519,7 +500,7 @@ cpp)
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
while test $1 != '--mode=compile'; do
shift
done
shift
@ -557,27 +538,13 @@ cpp)
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
# always write the preprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
IFS=" "
for arg
do
case "$arg" in
-o)
shift
;;
$object)
shift
;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
@ -590,23 +557,16 @@ msvisualcpp)
;;
esac
done
"$@" -E 2>/dev/null |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvcmsys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
none)
exec "$@"
;;
@ -625,6 +585,5 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# time-stamp-end: "$"
# End:

View file

@ -1,23 +1,38 @@
#!/bin/sh
#
# $NetBSD: install-sh,v 1.1.1.2 2010/03/14 17:56:28 joerg Exp $
# This script now also installs multiple files, but might choke on installing
# multiple files with spaces in the file names.
#
# install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
scriptversion=2006-12-25.00
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright 1991 by the Massachusetts Institute of Technology
# Copyright (C) 1994 X Consortium
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in advertising or
# publicity pertaining to distribution of the software without specific,
# written prior permission. M.I.T. makes no representations about the
# suitability of this software for any purpose. It is provided "as is"
# without express or implied warranty.
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
@ -26,266 +41,479 @@
# This script is compatible with the BSD install script, but was written
# from scratch.
nl='
'
IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
doit=${DOITPROG-}
if test -z "$doit"; then
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
# put in absolute paths if you don't have them in your path; or use env. vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
awkprog="${AWKPROG-awk}"
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
instcmd="$mvprog"
pathcompchmodcmd="$chmodprog 755"
chmodcmd="$chmodprog 755"
chowncmd=""
chgrpcmd=""
stripcmd=""
stripflags=""
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
msrc=""
dst=""
dir_arg=""
suffix=""
suffixfmt=""
stripcmd=
while [ x"$1" != x ]; do
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-b) suffix=".old"
shift
continue;;
-c) ;;
-B) suffixfmt="$2"
shift
shift
continue;;
-C) copy_on_change=true;;
-c) instcmd="$cpprog"
shift
continue;;
-d) dir_arg=true
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
shift;;
-s) stripcmd="$stripprog"
shift
continue;;
--help) echo "$usage"; exit $?;;
-S) stripcmd="$stripprog"
stripflags="-S $2 $stripflags"
shift
shift
continue;;
*) if [ x"$msrc" = x ]
then
msrc="$dst"
else
msrc="$msrc $dst"
fi
src="$dst"
dst="$1"
shift
continue;;
-m) mode=$2
case $mode in
*' '* | *' '* | *'
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
shift;;
-T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
if [ x"$dir_arg" = x ]
then
dstisfile=""
if [ ! -d "$dst" ]
then
if [ x"$msrc" = x"$src" ]
then
dstisfile=true
else
echo "install: destination is not a directory"
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call `install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
trap '(exit $?); exit' 1 2 13 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
msrc="$msrc $dst"
u_plus_rw='% 200'
fi
if [ x"$msrc" = x ]
then
echo "install: no destination specified"
exit 1
fi
for srcarg in $msrc; do
if [ x"$dir_arg" != x ]; then
dstarg="$srcarg"
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
dstarg="$dst"
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
# Waiting for this to be detected by the "$instcmd $srcarg $dsttmp" command
for src
do
# Protect names starting with `-'.
case $src in
-*) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f "$srcarg" ]
then
doinst="$instcmd"
elif [ -d "$srcarg" ]
then
echo "install: $srcarg: not a regular file"
exit 1
elif [ "$srcarg" = "/dev/null" ]
then
doinst="$cpprog"
else
echo "install: $srcarg does not exist"
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
# If destination is a directory, append the input filename; if your system
# does not like double slashes in filenames, you may need to add some logic
if [ -d "$dstarg" ]
then
dstarg="$dstarg"/`basename "$srcarg"`
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
## this sed command emulates the dirname command
dstdir=`echo "$dstarg" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
# this part is taken from Noah Friedman's mkinstalldirs script
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
'
IFS="${IFS-${defaultIFS}}"
oIFS="${IFS}"
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS="${oIFS}"
pathcomp=''
while [ $# -ne 0 ] ; do
pathcomp="${pathcomp}${1}"
shift
if [ ! -d "${pathcomp}" ] ;
then
$doit $mkdirprog "${pathcomp}"
if [ x"$chowncmd" != x ]; then $doit $chowncmd "${pathcomp}"; else true ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "${pathcomp}"; else true ; fi &&
if [ x"$pathcompchmodcmd" != x ]; then $doit $pathcompchmodcmd "${pathcomp}"; else true ; fi
else
true
fi
pathcomp="${pathcomp}/"
done
fi
if [ x"$dir_arg" != x ]
then
if [ -d "$dstarg" ]; then
true
else
$doit $mkdirprog "$dstarg" &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dstarg"; else true ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dstarg"; else true ; fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dstarg"; else true ; fi
fi
else
if [ x"$dstisfile" = x ]
then
file=$srcarg
else
file=$dst
fi
dstfile=`basename "$file"`
dstfinal="$dstdir/$dstfile"
# Make a temp file name in the proper directory.
dsttmp=$dstdir/#inst.$$#
# Make a backup file name in the proper directory.
case x$suffixfmt in
*%*) suffix=`echo x |
$awkprog -v bname="$dstfinal" -v fmt="$suffixfmt" '
{ cnt = 0;
do {
sfx = sprintf(fmt, cnt++);
name = bname sfx;
} while (system("test -f " name) == 0);
print sfx; }' -`;;
x) ;;
*) suffix="$suffixfmt";;
dst=$dst_arg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst;;
esac
dstbackup="$dstfinal$suffix"
# Move or copy the file name to the temp name
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
$doit $doinst $srcarg "$dsttmp" &&
test -d "$dstdir"
dstdir_status=$?
fi
fi
trap "rm -f ${dsttmp}" 0 &&
obsolete_mkdir_used=false
# and set any options; do chmod last to preserve setuid bits
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writeable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
-*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test -z "$d" && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else true;fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else true;fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $stripflags "$dsttmp"; else true;fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else true;fi &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
if [ x"$suffix" != x ] && [ -f "$dstfinal" ]
then
$doit $mvcmd "$dstfinal" "$dstbackup"
else
$doit $rmcmd -f "$dstfinal"
fi &&
$doit $mvcmd "$dsttmp" "$dstfinal"
trap '' 0
fi
done
done &&
exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View file

@ -111,9 +111,9 @@ done
$lt_unset CDPATH
unset CP
unset MV
unset RM
: ${CP="cp -f"}
: ${ECHO="echo"}
: ${EGREP="/bin/grep -E"}
@ -1010,6 +1010,21 @@ func_source ()
func_infer_tag ()
{
$opt_debug
# FreeBSD-specific: where we install compilers with non-standard names
tag_compilers_CC="*cc cc* *gcc gcc*"
tag_compilers_CXX="*c++ c++* *g++ g++*"
base_compiler=`set -- "$@"; echo $1`
# If $tagname isn't set, then try to infer if the default "CC" tag applies
if test -z "$tagname"; then
for zp in $tag_compilers_CC; do
case $base_compiler in
$zp) tagname="CC"; break;;
esac
done
fi
if test -n "$available_tags" && test -z "$tagname"; then
CC_quoted=
for arg in $CC; do
@ -1042,6 +1057,21 @@ func_infer_tag ()
break
;;
esac
# FreeBSD-specific: try compilers based on inferred tag
if test -z "$tagname"; then
eval "tag_compilers=\$tag_compilers_${z}"
if test -n "$tag_compilers"; then
for zp in $tag_compilers; do
case $base_compiler in
$zp) tagname=$z; break;;
esac
done
if test -n "$tagname"; then
break
fi
fi
fi
fi
done
# If $tagname still isn't set, then no tagged configuration
@ -2528,6 +2558,9 @@ static const void *lt_preloaded_setup() {
;;
esac
;;
*-*-freebsd*)
# FreeBSD doesn't need this...
;;
*)
func_fatal_error "unknown suffix for \`$my_dlsyms'"
;;
@ -4584,6 +4617,7 @@ func_mode_link ()
*" $arg "*) ;;
* ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
esac
deplibs="$deplibs $arg"
continue
;;
@ -5073,13 +5107,30 @@ func_mode_link ()
finalize_deplibs="$deplib $finalize_deplibs"
else
compiler_flags="$compiler_flags $deplib"
if test "$linkmode" = lib ; then
case "$new_inherited_linker_flags " in
*" $deplib "*) ;;
* ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
esac
fi
case $linkmode in
lib)
deplibs="$deplib $deplibs"
test "$pass" = conv && continue
newdependency_libs="$deplib $newdependency_libs"
;;
prog)
if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
if test "$pass" = scan; then
deplibs="$deplib $deplibs"
else
compile_deplibs="$deplib $compile_deplibs"
finalize_deplibs="$deplib $finalize_deplibs"
fi
;;
*)
;;
esac # linkmode
continue
;;
-l*)

View file

@ -1,10 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
scriptversion=2009-04-28.21; # UTC
scriptversion=2006-05-10.23
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
# 2008, 2009 Free Software Foundation, Inc.
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@ -18,7 +18,9 @@ scriptversion=2009-04-28.21; # UTC
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@ -87,9 +89,6 @@ Supported PROGRAM values:
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
\`g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
@ -107,22 +106,15 @@ Send bug reports to <bug-automake@gnu.org>."
esac
# normalize program name to check for.
program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program). This is about non-GNU programs, so use $1 not
# $program.
# the program).
case $1 in
lex*|yacc*)
lex|yacc)
# Not GNU programs, they don't have --version.
;;
tar*)
tar)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
@ -146,7 +138,7 @@ esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case $program in
case $1 in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@ -156,7 +148,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch aclocal.m4
;;
autoconf*)
autoconf)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
@ -165,7 +157,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch configure
;;
autoheader*)
autoheader)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
@ -195,7 +187,7 @@ WARNING: \`$1' is $msg. You should only need it if
while read f; do touch "$f"; done
;;
autom4te*)
autom4te)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
@ -218,7 +210,7 @@ WARNING: \`$1' is needed, but is $msg.
fi
;;
bison*|yacc*)
bison|yacc)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
@ -248,7 +240,7 @@ WARNING: \`$1' $msg. You should only need it if
fi
;;
lex*|flex*)
lex|flex)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
@ -271,7 +263,7 @@ WARNING: \`$1' is $msg. You should only need it if
fi
;;
help2man*)
help2man)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
@ -285,11 +277,11 @@ WARNING: \`$1' is $msg. You should only need it if
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit $?
exit 1
fi
;;
makeinfo*)
makeinfo)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
@ -318,7 +310,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch $file
;;
tar*)
tar)
shift
# We have already tried tar in the generic part.
@ -371,6 +363,5 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# time-stamp-end: "$"
# End:

View file

@ -1 +1 @@
2008002
2008003

View file

@ -15,25 +15,16 @@
# * $Locker: $
# * $ProjectName: $
# * $ProjectRevision: $
# * $LastChangedRevision: 29 $
# * $LastChangedDate: 2008-05-06 00:10:33 +0200 (Tue, 06 May 2008) $
# * $LastChangedRevision: 1827 $
# * $LastChangedDate: 2010-01-16 16:21:36 -0800 (Sat, 16 Jan 2010) $
# * $State: Exp $
# * $RCSfile: mvcpp.nt,v $
# * $Source: /cvsroot/pkgsrc/archivers/libarchive/files/build/windows/Attic/mvcpp.nt,v $
# *
# * Change Log:
# * $Log: mvcpp.nt,v $
# * Revision 1.1.1.2 2010/03/14 17:56:32 joerg
# * libarchive-2.8.2:
# * - Fix NULL deference for short self-extracting zip archives
# * - Don't dereference symlinks on Linux when reading ACLs
# * - Better detection of SHA2 support for old OpenSSL versions
# * - Fix parsing of input files for bsdtar -T
# * - Do not leak setup_xattr into the global namespace
# * - Fix build when an older libarchive is already installed
# * - Use O_BINARY opening files in bsdtar
# * - Include missing archive_crc32.h
# * - Correctly include iconv.h required by libxml2
# * Revision 1.1.1.3 2010/03/16 17:05:52 joerg
# * libarchive-2.8.3: Build fix for Linux
# *
# *
# */

View file

@ -15,25 +15,16 @@
# * $Locker: $
# * $ProjectName: $
# * $ProjectRevision: $
# * $LastChangedRevision: 29 $
# * $LastChangedDate: 2008-05-06 00:10:33 +0200 (Tue, 06 May 2008) $
# * $LastChangedRevision: 1827 $
# * $LastChangedDate: 2010-01-16 16:21:36 -0800 (Sat, 16 Jan 2010) $
# * $State: Exp $
# * $RCSfile: wccpp.nt,v $
# * $Source: /cvsroot/pkgsrc/archivers/libarchive/files/build/windows/Attic/wccpp.nt,v $
# *
# * Change Log:
# * $Log: wccpp.nt,v $
# * Revision 1.1.1.2 2010/03/14 17:56:32 joerg
# * libarchive-2.8.2:
# * - Fix NULL deference for short self-extracting zip archives
# * - Don't dereference symlinks on Linux when reading ACLs
# * - Better detection of SHA2 support for old OpenSSL versions
# * - Fix parsing of input files for bsdtar -T
# * - Do not leak setup_xattr into the global namespace
# * - Fix build when an older libarchive is already installed
# * - Use O_BINARY opening files in bsdtar
# * - Include missing archive_crc32.h
# * - Correctly include iconv.h required by libxml2
# * Revision 1.1.1.3 2010/03/16 17:05:52 joerg
# * libarchive-2.8.3: Build fix for Linux
# *
# *
# */

View file

@ -3,44 +3,44 @@ default: all
archive_entry.3.html: ../../libarchive/archive_entry.3
groff -mdoc2html ../../libarchive/archive_entry.3 > archive_entry.3.html
groff -mdoc -T html ../../libarchive/archive_entry.3 > archive_entry.3.html
archive_read.3.html: ../../libarchive/archive_read.3
groff -mdoc2html ../../libarchive/archive_read.3 > archive_read.3.html
groff -mdoc -T html ../../libarchive/archive_read.3 > archive_read.3.html
archive_read_disk.3.html: ../../libarchive/archive_read_disk.3
groff -mdoc2html ../../libarchive/archive_read_disk.3 > archive_read_disk.3.html
groff -mdoc -T html ../../libarchive/archive_read_disk.3 > archive_read_disk.3.html
archive_util.3.html: ../../libarchive/archive_util.3
groff -mdoc2html ../../libarchive/archive_util.3 > archive_util.3.html
groff -mdoc -T html ../../libarchive/archive_util.3 > archive_util.3.html
archive_write.3.html: ../../libarchive/archive_write.3
groff -mdoc2html ../../libarchive/archive_write.3 > archive_write.3.html
groff -mdoc -T html ../../libarchive/archive_write.3 > archive_write.3.html
archive_write_disk.3.html: ../../libarchive/archive_write_disk.3
groff -mdoc2html ../../libarchive/archive_write_disk.3 > archive_write_disk.3.html
groff -mdoc -T html ../../libarchive/archive_write_disk.3 > archive_write_disk.3.html
cpio.5.html: ../../libarchive/cpio.5
groff -mdoc2html ../../libarchive/cpio.5 > cpio.5.html
groff -mdoc -T html ../../libarchive/cpio.5 > cpio.5.html
libarchive-formats.5.html: ../../libarchive/libarchive-formats.5
groff -mdoc2html ../../libarchive/libarchive-formats.5 > libarchive-formats.5.html
groff -mdoc -T html ../../libarchive/libarchive-formats.5 > libarchive-formats.5.html
libarchive.3.html: ../../libarchive/libarchive.3
groff -mdoc2html ../../libarchive/libarchive.3 > libarchive.3.html
groff -mdoc -T html ../../libarchive/libarchive.3 > libarchive.3.html
libarchive_internals.3.html: ../../libarchive/libarchive_internals.3
groff -mdoc2html ../../libarchive/libarchive_internals.3 > libarchive_internals.3.html
groff -mdoc -T html ../../libarchive/libarchive_internals.3 > libarchive_internals.3.html
mtree.5.html: ../../libarchive/mtree.5
groff -mdoc2html ../../libarchive/mtree.5 > mtree.5.html
groff -mdoc -T html ../../libarchive/mtree.5 > mtree.5.html
tar.5.html: ../../libarchive/tar.5
groff -mdoc2html ../../libarchive/tar.5 > tar.5.html
groff -mdoc -T html ../../libarchive/tar.5 > tar.5.html
bsdtar.1.html: ../../tar/bsdtar.1
groff -mdoc2html ../../tar/bsdtar.1 > bsdtar.1.html
groff -mdoc -T html ../../tar/bsdtar.1 > bsdtar.1.html
bsdcpio.1.html: ../../cpio/bsdcpio.1
groff -mdoc2html ../../cpio/bsdcpio.1 > bsdcpio.1.html
groff -mdoc -T html ../../cpio/bsdcpio.1 > bsdcpio.1.html
all: archive_entry.3.html archive_read.3.html archive_read_disk.3.html archive_util.3.html archive_write.3.html archive_write_disk.3.html cpio.5.html libarchive-formats.5.html libarchive.3.html libarchive_internals.3.html mtree.5.html tar.5.html bsdtar.1.html bsdcpio.1.html

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,495 +1,210 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
%%CreationDate: Sun Mar 14 02:49:16 2010
%%DocumentNeededResources: font Times-Roman
%%DocumentSuppliedResources: procset grops 1.19 2
%%Pages: 27
%%PageOrder: Ascend
%%DocumentMedia: Default 612 792 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.19 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
}bind def
/PEND{
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<html>)0 12 Q(<head>)0 24 Q(<title>)36 36 Q
(January 8, 2005 archi)74.5 48 Q -.15(ve)-.25 G(_util 3).15 E(</title>)
36 72 Q 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<style type="te)36 12 Q(xt/css">)-.15 E(<!--)36
24 Q(body { mar)72 36 Q(gin-left:4%; })-.18 E(H1, H2, H3, H4, H5 {)72 48
Q(color: maroon; padding: 4pt; mar)108 60 Q(gin-left: -4%;)-.18 E
(border: solid; border)108 72 Q(-width: thin; width: 100%;)-.2 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(background: r)108 12 Q(gb\(204,204,255\))-.18 E
(})72 24 Q(-->)36 36 Q(</style>)36 48 Q(</head>)0 60 Q
(<body bgcolor="#FFFFFF" te)0 72 Q(xt="#000000">)-.15 E 0 Cg EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<h3 id="N)36 12 Q(AME">)-.35 E -.35(NA)36 24 S
(ME).35 E(</h3>)36 36 Q(<b>archi)0 48 Q -.15(ve)-.25 G
(_clear_error</b>,).15 E(<b>archi)0 60 Q -.15(ve)-.25 G
(_compression</b>,).15 E(<b>archi)0 72 Q -.15(ve)-.25 G
(_compression_name</b>,).15 E 0 Cg EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G(_cop).15 E
(y_error</b>,)-.1 E(<b>archi)0 24 Q -.15(ve)-.25 G(_errno</b>,).15 E
(<b>archi)0 36 Q -.15(ve)-.25 G(_error_string</b>,).15 E(<b>archi)0 48 Q
-.15(ve)-.25 G(_\214le_count</b>,).15 E(<b>archi)0 60 Q -.15(ve)-.25 G
(_format</b>,).15 E(<b>archi)0 72 Q -.15(ve)-.25 G(_format_name</b>,).15
E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G(_set_error</b>)
.15 E 2.5(-l)0 24 S(ibarchi)-2.5 E .3 -.15(ve u)-.25 H(tility functions)
.15 E(<h3 id="SYNOPSIS">)36 36 Q(SYNOPSIS)36 48 Q(</h3>)36 60 Q
(<br><br><code></code><code>v)0 72 Q(oid</code>)-.2 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G
(_clear_error</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>int</code>)0 24 Q
(<b>archi)0 36 Q -.15(ve)-.25 G
(_compression</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>const</code><code> ch\
ar</code><code> *</code>)0 48 Q(<b>archi)0 60 Q -.15(ve)-.25 G
(_compression_name</b>\(<code></code><code>struct archi).15 E .3 -.15
(ve *)-.25 H(</code>\)).15 E(<br><br><code></code><code>v)0 72 Q
(oid</code>)-.2 E 0 Cg EP
%%Page: 8 8
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G(_cop).15 E
(y_error</b>\(<code></code><code>struct archi)-.1 E .3 -.15(ve *)-.25 H
(</code><code>, struct archi).15 E .3 -.15(ve *)-.25 H(</code>\)).15 E
(<br><br><code></code><code>int</code>)0 24 Q(<b>archi)0 36 Q -.15(ve)
-.25 G(_errno</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>const</code><code> ch\
ar</code><code> *</code>)0 48 Q(<b>archi)0 60 Q -.15(ve)-.25 G
(_error_string</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>int</code>)0 72 Q 0 Cg
EP
%%Page: 9 9
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G
(_\214le_count</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>int</code>)0 24 Q
(<b>archi)0 36 Q -.15(ve)-.25 G
(_format</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)-.25 H
(</code>\)).15 E(<br><br><code></code><code>const</code><code> char</co\
de><code> *</code>)0 48 Q(<b>archi)0 60 Q -.15(ve)-.25 G
(_format_name</b>\(<code></code><code>struct archi).15 E .3 -.15(ve *)
-.25 H(</code>\)).15 E(<br><br><code></code><code>v)0 72 Q(oid</code>)
-.2 E 0 Cg EP
%%Page: 10 10
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G
(_set_error</b>\(<code></code>).15 E(<code></code><code>struct archi)0
24 Q .3 -.15(ve *)-.25 H(</code>).15 E
(<code></code><code>int error_code</code>)0 36 Q
(<code></code><code>const char *fmt</code>)0 48 Q
(<code></code><code>...</code>)0 60 Q(\))0 72 Q 0 Cg EP
%%Page: 11 11
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<h3 id="DESCRIPTION">)36 12 Q(DESCRIPTION)36 24
Q(</h3>)36 36 Q(These functions pro)0 48 Q(vide access to v)-.15 E
(arious information about the)-.25 E(<font size="-1"></font><font size=\
"-1">struct</font><font size="-1"> archi)0 60 Q -.15(ve)-.25 G(</font>)
.15 E(object used in the)0 72 Q 0 Cg EP
%%Page: 12 12
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<a href="../html3/libarchi)0 12 Q -.15(ve)-.25 G
(.html">libarchi).15 E -.15(ve)-.25 G(\(3\)</a>).15 E(library)0 24 Q(.)
-.65 E(<dl compact>)0 36 Q(<dt><b>archi)0 48 Q -.15(ve)-.25 G
(_clear_error</b>\(<code></code>\)<dd>).15 E(Clears an)0 60 Q 2.5(ye)
-.15 G(rror information left o)-2.5 E -.15(ve)-.15 G 2.5(rf).15 G
(rom a pre)-2.5 E(vious call.)-.25 E(Not generally used in client code.)
0 72 Q 0 Cg EP
%%Page: 13 13
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<dt><b>archi)0 12 Q -.15(ve)-.25 G
(_compression</b>\(<code></code>\)<dd>).15 E
(Returns a numeric code indicating the current compression.)0 24 Q
(This v)0 36 Q(alue is set by)-.25 E(<b>archi)0 48 Q -.15(ve)-.25 G
(_read_open</b>\(<code></code>\).).15 E(<dt><b>archi)0 60 Q -.15(ve)-.25
G(_compression_name</b>\(<code></code>\)<dd>).15 E(Returns a te)0 72 Q
(xt description of the current compression suitable for display)-.15 E
(.)-.65 E 0 Cg EP
%%Page: 14 14
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<dt><b>archi)0 12 Q -.15(ve)-.25 G(_cop).15 E
(y_error</b>\(<code></code>\)<dd>)-.1 E
(Copies error information from one archi)0 24 Q .3 -.15(ve t)-.25 H 2.5
(oa).15 G(nother)-2.5 E(.)-.55 E(<dt><b>archi)0 36 Q -.15(ve)-.25 G
(_errno</b>\(<code></code>\)<dd>).15 E
(Returns a numeric error code \(see)0 48 Q
(<a href="../html2/errno.html">errno\(2\)</a>\))0 60 Q
(indicating the reason for the most recent error return.)0 72 Q 0 Cg EP
%%Page: 15 15
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<dt><b>archi)0 12 Q -.15(ve)-.25 G
(_error_string</b>\(<code></code>\)<dd>).15 E(Returns a te)0 24 Q
(xtual error message suitable for display)-.15 E(.)-.65 E
(The error message here is usually more speci\214c than that)0 36 Q
(obtained from passing the result of)0 48 Q(<b>archi)0 60 Q -.15(ve)-.25
G(_errno</b>\(<code></code>\)).15 E(to)0 72 Q 0 Cg EP
%%Page: 16 16
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<a href="../html3/strerror)0 12 Q
(.html">strerror\(3\)</a>.)-.55 E(<dt><b>archi)0 24 Q -.15(ve)-.25 G
(_\214le_count</b>\(<code></code>\)<dd>).15 E
(Returns a count of the number of \214les processed by this archi)0 36 Q
.3 -.15(ve o)-.25 H(bject.).15 E(The count is incremented by calls to)0
48 Q(<code>archi)0 60 Q -.15(ve)-.25 G(_write_header</code>).15 E(or)0
72 Q 0 Cg EP
%%Page: 17 17
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<code>archi)0 12 Q -.15(ve)-.25 G(_read_ne).15 E
(xt_header</code>)-.15 E(<dt><b>archi)0 24 Q -.15(ve)-.25 G
(_format</b>\(<code></code>\)<dd>).15 E
(Returns a numeric code indicating the format of the current)0 36 Q
(archi)0 48 Q .3 -.15(ve e)-.25 H(ntry).15 E(.)-.65 E(This v)0 60 Q
(alue is set by a successful call to)-.25 E(<b>archi)0 72 Q -.15(ve)-.25
G(_read_ne).15 E(xt_header</b>\(<code></code>\).)-.15 E 0 Cg EP
%%Page: 18 18
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(Note that it is common for this v)0 12 Q
(alue to change from)-.25 E(entry to entry)0 24 Q(.)-.65 E -.15(Fo)0 36
S 2.5(re).15 G(xample, a tar archi)-2.65 E .3 -.15(ve m)-.25 H(ight ha)
.15 E .3 -.15(ve s)-.2 H -2.15 -.25(ev e).15 H(ral entries that).25 E
(utilize GNU tar e)0 48 Q(xtensions and se)-.15 E -.15(ve)-.25 G
(ral entries that do not.).15 E(These entries will ha)0 60 Q .3 -.15
(ve d)-.2 H(if).15 E(ferent format codes.)-.25 E(<dt><b>archi)0 72 Q
-.15(ve)-.25 G(_format_name</b>\(<code></code>\)<dd>).15 E 0 Cg EP
%%Page: 19 19
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 2.5(At)0 12 S -.15(ex)-2.5 G
(tual description of the format of the current entry).15 E(.)-.65 E
(<dt><b>archi)0 24 Q -.15(ve)-.25 G(_set_error</b>\(<code></code>\)<dd>)
.15 E(Sets the numeric error code and error description that will be re\
turned)0 36 Q(by)0 48 Q(<b>archi)0 60 Q -.15(ve)-.25 G
(_errno</b>\(<code></code>\)).15 E(and)0 72 Q 0 Cg EP
%%Page: 20 20
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>archi)0 12 Q -.15(ve)-.25 G
(_error_string</b>\(<code></code>\).).15 E(This function should be used\
within I/O callbacks to set system-speci\214c)0 24 Q
(error codes and error descriptions.)0 36 Q
(This function accepts a printf-lik)0 48 Q 2.5(ef)-.1 G
(ormat string and ar)-2.5 E(guments.)-.18 E(Ho)0 60 Q(we)-.25 E -.15(ve)
-.25 G .8 -.4(r, y).15 H(ou should be careful to use only the follo).4 E
(wing printf)-.25 E(format speci\214ers:)0 72 Q 0 Cg EP
%%Page: 21 21
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.74(``)0 12 S(%c').74 E(',)-.74 E -.74(``)0 24
S(%d').74 E(',)-.74 E -.74(``)0 36 S(%jd').74 E(',)-.74 E -.74(``)0 48 S
(%jo').74 E(',)-.74 E -.74(``)0 60 S(%ju').74 E(',)-.74 E -.74(``)0 72 S
(%jx').74 E(',)-.74 E 0 Cg EP
%%Page: 22 22
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.74(``)0 12 S(%ld').74 E(',)-.74 E -.74(``)0 24
S(%lo').74 E(',)-.74 E -.74(``)0 36 S(%lu').74 E(',)-.74 E -.74(``)0 48
S(%lx').74 E(',)-.74 E -.74(``)0 60 S(%o').74 E(',)-.74 E -.74(``)0 72 S
(%u').74 E(',)-.74 E 0 Cg EP
%%Page: 23 23
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.74(``)0 12 S(%s').74 E(',)-.74 E -.74(``)0 24
S(%x').74 E(',)-.74 E -.74(``)0 36 S(%%').74 E('.)-.74 E
(Field-width speci\214ers and other printf features are)0 48 Q
(not uniformly supported and should not be used.)0 60 Q(</dl>)0 72 Q 0
Cg EP
%%Page: 24 24
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<h3 id="SEE ALSO">)36 12 Q(SEE ALSO)36 24 Q
(</h3>)36 36 Q(<a href="../html3/archi)0 48 Q -.15(ve)-.25 G
(_read.html">archi).15 E -.15(ve)-.25 G(_read\(3\)</a>,).15 E
(<a href="../html3/archi)0 60 Q -.15(ve)-.25 G(_write.html">archi).15 E
-.15(ve)-.25 G(_write\(3\)</a>,).15 E(<a href="../html3/libarchi)0 72 Q
-.15(ve)-.25 G(.html">libarchi).15 E -.15(ve)-.25 G(\(3\)</a>,).15 E 0
Cg EP
%%Page: 25 25
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<a href="../html3/printf.html">printf\(3\)</a>)0
12 Q(<h3 id="HIST)36 24 Q(OR)-.18 E(Y">)-.65 E(HIST)36 36 Q(OR)-.18 E(Y)
-.65 E(</h3>)36 48 Q(The)0 60 Q(<b>libarchi)0 72 Q -.15(ve)-.25 G(</b>)
.15 E 0 Cg EP
%%Page: 26 26
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(library \214rst appeared in)0 12 Q(FreeBSD5.3.)0
24 Q(<h3 id="A)36 36 Q(UTHORS">)-.55 E -.55(AU)36 48 S(THORS).55 E
(</h3>)36 60 Q(<p>)36 72 Q 0 Cg EP
%%Page: 27 27
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The)0 12 Q(<b>libarchi)0 24 Q -.15(ve)-.25 G
(</b>).15 E(library w)0 36 Q(as written by)-.1 E -.35(Ti)0 48 S 2.5(mK)
.35 G(ientzle &lt;kientzle@acm.or)-2.5 E(g&gt;.)-.18 E(</body>)0 60 Q
(</html>)0 72 Q 0 Cg EP
%%Trailer
end
%%EOF
<!-- Creator : groff version 1.19.2 -->
<!-- CreationDate: Sun Mar 14 19:50:20 2010 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="generator" content="groff -Thtml, see www.gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="Content-Style" content="text/css">
<style type="text/css">
p { margin-top: 0; margin-bottom: 0; }
pre { margin-top: 0; margin-bottom: 0; }
table { margin-top: 0; margin-bottom: 0; }
</style>
<title></title>
</head>
<body>
<hr>
<p valign="top">archive_util(3) FreeBSD Library Functions
Manual archive_util(3)</p>
<p style="margin-top: 1em" valign="top"><b>NAME</b></p>
<p style="margin-left:8%;"><b>archive_clear_error</b>,
<b>archive_compression</b>, <b>archive_compression_name</b>,
<b>archive_copy_error</b>, <b>archive_errno</b>,
<b>archive_error_string</b>, <b>archive_file_count</b>,
<b>archive_format</b>, <b>archive_format_name</b>,
<b>archive_set_error</b> &mdash; libarchive utility
functions</p>
<p style="margin-top: 1em" valign="top"><b>SYNOPSIS</b></p>
<p style="margin-left:8%;"><b>#include
&lt;archive.h&gt;</b></p>
<p style="margin-left:8%; margin-top: 1em"><i>void</i></p>
<p style="margin-left:14%;"><b>archive_clear_error</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>int</i></p>
<p style="margin-left:14%;"><b>archive_compression</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>const char
*</i></p>
<p style="margin-left:14%;"><b>archive_compression_name</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>void</i></p>
<p style="margin-left:14%;"><b>archive_copy_error</b>(<i>struct&nbsp;archive&nbsp;*</i>,
<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>int</i></p>
<p style="margin-left:14%;"><b>archive_errno</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>const char
*</i></p>
<p style="margin-left:14%;"><b>archive_error_string</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>int</i></p>
<p style="margin-left:14%;"><b>archive_file_count</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>int</i></p>
<p style="margin-left:14%;"><b>archive_format</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>const char
*</i></p>
<p style="margin-left:14%;"><b>archive_format_name</b>(<i>struct&nbsp;archive&nbsp;*</i>);</p>
<p style="margin-left:8%; margin-top: 1em"><i>void</i></p>
<p valign="top"><b>archive_set_error</b>(<i>struct&nbsp;archive&nbsp;*</i>,
<i>int&nbsp;error_code</i>,
<i>const&nbsp;char&nbsp;*fmt</i>, <i>...</i>);</p>
<p style="margin-top: 1em" valign="top"><b>DESCRIPTION</b></p>
<p style="margin-left:8%;">These functions provide access
to various information about the struct archive object used
in the libarchive(3) library.</p>
<p valign="top"><b>archive_clear_error</b>()</p>
<p style="margin-left:20%;">Clears any error information
left over from a previous call. Not generally used in client
code.</p>
<p valign="top"><b>archive_compression</b>()</p>
<p style="margin-left:20%;">Returns a numeric code
indicating the current compression. This value is set by
<b>archive_read_open</b>().</p>
<p valign="top"><b>archive_compression_name</b>()</p>
<p style="margin-left:20%;">Returns a text description of
the current compression suitable for display.</p>
<p valign="top"><b>archive_copy_error</b>()</p>
<p style="margin-left:20%;">Copies error information from
one archive to another.</p>
<p valign="top"><b>archive_errno</b>()</p>
<p style="margin-left:20%;">Returns a numeric error code
(see errno(2)) indicating the reason for the most recent
error return.</p>
<p valign="top"><b>archive_error_string</b>()</p>
<p style="margin-left:20%;">Returns a textual error message
suitable for display. The error message here is usually more
specific than that obtained from passing the result of
<b>archive_errno</b>() to strerror(3).</p>
<p valign="top"><b>archive_file_count</b>()</p>
<p style="margin-left:20%;">Returns a count of the number
of files processed by this archive object. The count is
incremented by calls to archive_write_header or
archive_read_next_header.</p>
<p valign="top"><b>archive_format</b>()</p>
<p style="margin-left:20%;">Returns a numeric code
indicating the format of the current archive entry. This
value is set by a successful call to
<b>archive_read_next_header</b>(). Note that it is common
for this value to change from entry to entry. For example, a
tar archive might have several entries that utilize GNU tar
extensions and several entries that do not. These entries
will have different format codes.</p>
<p valign="top"><b>archive_format_name</b>()</p>
<p style="margin-left:20%;">A textual description of the
format of the current entry.</p>
<p valign="top"><b>archive_set_error</b>()</p>
<p style="margin-left:20%;">Sets the numeric error code and
error description that will be returned by
<b>archive_errno</b>() and <b>archive_error_string</b>().
This function should be used within I/O callbacks to set
system-specific error codes and error descriptions. This
function accepts a printf-like format string and arguments.
However, you should be careful to use only the following
printf format specifiers: &lsquo;&lsquo;%c&rsquo;&rsquo;,
&lsquo;&lsquo;%d&rsquo;&rsquo;,
&lsquo;&lsquo;%jd&rsquo;&rsquo;,
&lsquo;&lsquo;%jo&rsquo;&rsquo;,
&lsquo;&lsquo;%ju&rsquo;&rsquo;,
&lsquo;&lsquo;%jx&rsquo;&rsquo;,
&lsquo;&lsquo;%ld&rsquo;&rsquo;,
&lsquo;&lsquo;%lo&rsquo;&rsquo;,
&lsquo;&lsquo;%lu&rsquo;&rsquo;,
&lsquo;&lsquo;%lx&rsquo;&rsquo;,
&lsquo;&lsquo;%o&rsquo;&rsquo;,
&lsquo;&lsquo;%u&rsquo;&rsquo;,
&lsquo;&lsquo;%s&rsquo;&rsquo;,
&lsquo;&lsquo;%x&rsquo;&rsquo;,
&lsquo;&lsquo;%%&rsquo;&rsquo;. Field-width specifiers and
other printf features are not uniformly supported and should
not be used.</p>
<p style="margin-top: 1em" valign="top"><b>SEE ALSO</b></p>
<p style="margin-left:8%;">archive_read(3),
archive_write(3), libarchive(3), printf(3)</p>
<p style="margin-top: 1em" valign="top"><b>HISTORY</b></p>
<p style="margin-left:8%;">The <b>libarchive</b> library
first appeared in FreeBSD&nbsp;5.3.</p>
<p style="margin-top: 1em" valign="top"><b>AUTHORS</b></p>
<p style="margin-left:8%;">The <b>libarchive</b> library
was written by Tim Kientzle
&lang;kientzle@acm.org&rang;.</p>
<p style="margin-left:8%; margin-top: 1em">FreeBSD&nbsp;9.0
January&nbsp;8, 2005 FreeBSD&nbsp;9.0</p>
<hr>
</body>
</html>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,622 +1,339 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
%%CreationDate: Sun Mar 14 02:49:17 2010
%%DocumentNeededResources: font Times-Roman
%%DocumentSuppliedResources: procset grops 1.19 2
%%Pages: 46
%%PageOrder: Ascend
%%DocumentMedia: Default 612 792 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.19 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
}bind def
/PEND{
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<html>)0 12 Q(<head>)0 24 Q(<title>)36 36 Q
(August 20, 2007 MTREE 5)74.5 48 Q(</title>)36 72 Q 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<style type="te)36 12 Q(xt/css">)-.15 E(<!--)36
24 Q(body { mar)72 36 Q(gin-left:4%; })-.18 E(H1, H2, H3, H4, H5 {)72 48
Q(color: maroon; padding: 4pt; mar)108 60 Q(gin-left: -4%;)-.18 E
(border: solid; border)108 72 Q(-width: thin; width: 100%;)-.2 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(background: r)108 12 Q(gb\(204,204,255\))-.18 E
(})72 24 Q(-->)36 36 Q(</style>)36 48 Q(</head>)0 60 Q
(<body bgcolor="#FFFFFF" te)0 72 Q(xt="#000000">)-.15 E 0 Cg EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<h3 id="N)36 12 Q(AME">)-.35 E -.35(NA)36 24 S
(ME).35 E(</h3>)36 36 Q(<b>mtree</b>)0 48 Q 2.5(-f)0 60 S
(ormat of mtree dir hierarch)-2.5 E 2.5<798c>-.05 G(les)-2.5 E
(<h3 id="DESCRIPTION">)36 72 Q 0 Cg EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(DESCRIPTION)36 12 Q(</h3>)36 24 Q(The)0 36 Q
(<b>mtree</b>)0 48 Q(format is a te)0 60 Q
(xtual format that describes a collection of \214lesystem objects.)-.15
E(Such \214les are typically used to create or v)0 72 Q
(erify directory hierarchies.)-.15 E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<h4 id="General F)36 12 Q(ormat">)-.15 E
(General F)36 24 Q(ormat)-.15 E(</h4>)36 36 Q(An)0 48 Q(<b>mtree</b>)0
60 Q(\214le consists of a series of lines, each pro)0 72 Q
(viding information)-.15 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(about a single \214lesystem object.)0 12 Q
(Leading whitespace is al)0 24 Q -.1(wa)-.1 G(ys ignored.).1 E(<p>)36 36
Q(When encoding \214le or pathnames, an)0 48 Q 2.5(yb)-.15 G
(ackslash character or)-2.5 E
(character outside of the 95 printable ASCII characters must be)0 60 Q
(encoded as a a backslash follo)0 72 Q(wed by three)-.25 E 0 Cg EP
%%Page: 8 8
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(octal digits.)0 12 Q
(When reading mtree \214les, an)0 24 Q 2.5(ya)-.15 G
(ppearance of a backslash)-2.5 E(follo)0 36 Q
(wed by three octal digits should be con)-.25 E -.15(ve)-.4 G
(rted into the).15 E(corresponding character)0 48 Q(.)-.55 E(<p>)36 60 Q
(Each line is interpreted independently as one of the follo)0 72 Q
(wing types:)-.25 E 0 Cg EP
%%Page: 9 9
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<dl compact>)0 12 Q(<p><dt>Signature<dd>)0 24 Q
(The \214rst line of an)0 36 Q 2.5(ym)-.15 G(tree \214le must be)-2.5 E
(gin with)-.15 E -.74(``)0 48 S(#mtree').74 E('.)-.74 E
(If a \214le contains an)0 60 Q 2.5(yf)-.15 G
(ull path entries, the \214rst line should)-2.5 E(be)0 72 Q(gin with)
-.15 E 0 Cg EP
%%Page: 10 10
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.74(``)0 12 S(#mtree v2.0').74 E(',)-.74 E
(otherwise, the \214rst line should be)0 24 Q(gin with)-.15 E -.74(``)0
36 S(#mtree v1.0').74 E('.)-.74 E(<p><dt>Blank<dd>)0 48 Q
(Blank lines are ignored.)0 60 Q(<p><dt>Comment<dd>)0 72 Q 0 Cg EP
%%Page: 11 11
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(Lines be)0 12 Q(ginning with)-.15 E
(<b></b><b>#</b>)0 24 Q(are ignored.)0 36 Q(<p><dt>Special<dd>)0 48 Q
(Lines be)0 60 Q(ginning with)-.15 E(<b></b><b>/</b>)0 72 Q 0 Cg EP
%%Page: 12 12
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(are special commands that in\215uence)0 12 Q
(the interpretation of later lines.)0 24 Q(<p><dt>Relati)0 36 Q -.15(ve)
-.25 G(<dd>).15 E(If the \214rst whitespace-delimited w)0 48 Q
(ord has no)-.1 E(<b></b><b>/</b>)0 60 Q(characters,)0 72 Q 0 Cg EP
%%Page: 13 13
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF
(it is the name of a \214le in the current directory)0 12 Q(.)-.65 E(An)
0 24 Q 2.5(yr)-.15 G(elati)-2.5 E .3 -.15(ve e)-.25 H
(ntry that describes a directory changes the).15 E(current directory)0
36 Q(.)-.65 E(<p><dt>dot-dot<dd>)0 48 Q(As a special case, a relati)0 60
Q .3 -.15(ve e)-.25 H(ntry with the \214lename).15 E
(<code></code><code>..</code>)0 72 Q 0 Cg EP
%%Page: 14 14
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF
(changes the current directory to the parent directory)0 12 Q(.)-.65 E
(Options on dot-dot entries are al)0 24 Q -.1(wa)-.1 G(ys ignored.).1 E
(<p><dt>Full<dd>)0 36 Q(If the \214rst whitespace-delimited w)0 48 Q
(ord has a)-.1 E(<b></b><b>/</b>)0 60 Q(character after)0 72 Q 0 Cg EP
%%Page: 15 15
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(the \214rst character)0 12 Q 2.5(,i)-.4 G 2.5
(ti)-2.5 G 2.5(st)-2.5 G(he pathname of a \214le relati)-2.5 E .3 -.15
(ve t)-.25 H 2.5(ot).15 G(he)-2.5 E(starting directory)0 24 Q(.)-.65 E
(There can be multiple full entries describing the same \214le.)0 36 Q
(</dl>)0 48 Q(<p>)36 60 Q(Some tools that process)0 72 Q 0 Cg EP
%%Page: 16 16
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b>mtree</b>)0 12 Q
(\214les may require that multiple lines describing the same \214le)0 24
Q(occur consecuti)0 36 Q -.15(ve)-.25 G(ly).15 E(.)-.65 E
(It is not permitted for the same \214le to be mentioned using)0 48 Q
(both a relati)0 60 Q .3 -.15(ve a)-.25 H
(nd a full \214le speci\214cation.).15 E(<h4 id="Special commands">)36
72 Q 0 Cg EP
%%Page: 17 17
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(Special commands)36 12 Q(</h4>)36 24 Q -1 -.8
(Tw o)0 36 T(special commands are currently de\214ned:)3.3 E
(<dl compact>)0 48 Q(<p><dt><b></b><b>/set</b><dd>)0 60 Q
(This command de\214nes def)0 72 Q(ault v)-.1 E(alues for one or more k)
-.25 E -.15(ey)-.1 G -.1(wo).15 G(rds.).1 E 0 Cg EP
%%Page: 18 18
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(It is follo)0 12 Q
(wed on the same line by one or more whitespace-separated)-.25 E -.1(ke)
0 24 S(yw)-.05 E(ord de\214nitions.)-.1 E
(These de\214nitions apply to all follo)0 36 Q
(wing \214les that do not specify)-.25 E 2.5(av)0 48 S(alue for that k)
-2.75 E -.15(ey)-.1 G -.1(wo).15 G(rd.).1 E
(<p><dt><b></b><b>/unset</b><dd>)0 60 Q(This command remo)0 72 Q -.15
(ve)-.15 G 2.5(sa).15 G .3 -.15(ny d)-2.5 H(ef).15 E(ault v)-.1 E
(alue set by a pre)-.25 E(vious)-.25 E 0 Cg EP
%%Page: 19 19
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<b></b><b>/set</b>)0 12 Q(command.)0 24 Q
(It is follo)0 36 Q(wed on the same line by one or more k)-.25 E -.15
(ey)-.1 G -.1(wo).15 G(rds).1 E(separated by whitespace.)0 48 Q(</dl>)0
60 Q(<h4 id="K)36 72 Q -.15(ey)-.25 G -.1(wo).15 G(rds">).1 E 0 Cg EP
%%Page: 20 20
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -2.15 -.25(Ke y)36 12 T -.1(wo).25 G(rds).1 E
(</h4>)36 24 Q(After the \214lename, a full or relati)0 36 Q .3 -.15
(ve e)-.25 H(ntry consists of zero).15 E(or more whitespace-separated k)
0 48 Q -.15(ey)-.1 G -.1(wo).15 G(rd de\214nitions.).1 E
(Each such de\214nition consists of a k)0 60 Q .3 -.15(ey f)-.1 H
(rom the follo).15 E(wing)-.25 E(list immediately follo)0 72 Q
(wed by an '=' sign)-.25 E 0 Cg EP
%%Page: 21 21
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(and a v)0 12 Q(alue.)-.25 E(Softw)0 24 Q
(are programs reading mtree \214les should w)-.1 E(arn about)-.1 E
(unrecognized k)0 36 Q -.15(ey)-.1 G -.1(wo).15 G(rds.).1 E(<p>)36 48 Q
(Currently supported k)0 60 Q -.15(ey)-.1 G -.1(wo).15 G
(rds are as follo).1 E(ws:)-.25 E(<dl compact>)0 72 Q 0 Cg EP
%%Page: 22 22
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<p><dt><b></b><b>cksum</b><dd>)0 12 Q
(The checksum of the \214le using the def)0 24 Q
(ault algorithm speci\214ed by)-.1 E(the)0 36 Q
(<a href="../html1/cksum.html">cksum\(1\)</a>)0 48 Q(utility)0 60 Q(.)
-.65 E(<p><dt><b></b><b>contents</b><dd>)0 72 Q 0 Cg EP
%%Page: 23 23
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF
(The full pathname of a \214le that holds the contents of this \214le.)0
12 Q(<p><dt><b></b><b>\215ags</b><dd>)0 24 Q
(The \214le \215ags as a symbolic name.)0 36 Q(See)0 48 Q
(<a href="../html1/ch\215ags.html">ch\215ags\(1\)</a>)0 60 Q
(for information on these names.)0 72 Q 0 Cg EP
%%Page: 24 24
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(If no \215ags are to be set the string)0 12 Q
-.74(``)0 24 S(none').74 E(')-.74 E(may be used to o)0 36 Q -.15(ve)-.15
G(rride the current def).15 E(ault.)-.1 E(<p><dt><b></b><b>gid</b><dd>)0
48 Q(The \214le group as a numeric v)0 60 Q(alue.)-.25 E
(<p><dt><b></b><b>gname</b><dd>)0 72 Q 0 Cg EP
%%Page: 25 25
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The \214le group as a symbolic name.)0 12 Q
(<p><dt><b></b><b>ignore</b><dd>)0 24 Q(Ignore an)0 36 Q 2.5<798c>-.15 G
(le hierarch)-2.5 E 2.5(yb)-.05 G(elo)-2.5 E 2.5(wt)-.25 G(his \214le.)
-2.5 E(<p><dt><b></b><b>link</b><dd>)0 48 Q(The tar)0 60 Q
(get of the symbolic link when type=link.)-.18 E
(<p><dt><b></b><b>md5</b><dd>)0 72 Q 0 Cg EP
%%Page: 26 26
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The MD5 message digest of the \214le.)0 12 Q
(<p><dt><b></b><b>md5digest</b><dd>)0 24 Q 2.5(As)0 36 S(ynon)-2.5 E
(ym for)-.15 E(<b></b><b>md5</b>.)0 48 Q(<p><dt><b></b><b>mode</b><dd>)0
60 Q(The current \214le')0 72 Q 2.5(sp)-.55 G
(ermissions as a numeric \(octal\) or symbolic)-2.5 E 0 Cg EP
%%Page: 27 27
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.25(va)0 12 S(lue.).25 E
(<p><dt><b></b><b>nlink</b><dd>)0 24 Q
(The number of hard links the \214le is e)0 36 Q(xpected to ha)-.15 E
-.15(ve)-.2 G(.).15 E(<p><dt><b></b><b>nochange</b><dd>)0 48 Q(Mak)0 60
Q 2.5(es)-.1 G(ure this \214le or directory e)-2.5 E(xists b)-.15 E
(ut otherwise ignore all attrib)-.2 E(utes.)-.2 E
(<p><dt><b></b><b>ripemd160digest</b><dd>)0 72 Q 0 Cg EP
%%Page: 28 28
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The)0 12 Q
(<font size="-1"></font><font size="-1">RIPEMD160</font>)0 24 Q
(message digest of the \214le.)0 36 Q(<p><dt><b></b><b>rmd160</b><dd>)0
48 Q 2.5(As)0 60 S(ynon)-2.5 E(ym for)-.15 E
(<b></b><b>ripemd160digest</b>.)0 72 Q 0 Cg EP
%%Page: 29 29
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<p><dt><b></b><b>rmd160digest</b><dd>)0 12 Q 2.5
(As)0 24 S(ynon)-2.5 E(ym for)-.15 E(<b></b><b>ripemd160digest</b>.)0 36
Q(<p><dt><b></b><b>sha1</b><dd>)0 48 Q(The)0 60 Q
(<font size="-1"></font><font size="-1">FIPS</font>)0 72 Q 0 Cg EP
%%Page: 30 30
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(160-1)0 12 Q(\(`)0 24 Q
(`<font size="-1"></font><font size="-1">SHA-1</font>')-.74 E('\))-.74 E
(message digest of the \214le.)0 36 Q
(<p><dt><b></b><b>sha1digest</b><dd>)0 48 Q 2.5(As)0 60 S(ynon)-2.5 E
(ym for)-.15 E(<b></b><b>sha1</b>.)0 72 Q 0 Cg EP
%%Page: 31 31
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<p><dt><b></b><b>sha256</b><dd>)0 12 Q(The)0 24
Q(<font size="-1"></font><font size="-1">FIPS</font>)0 36 Q(180-2)0 48 Q
(\(`)0 60 Q(`<font size="-1"></font><font size="-1">SHA-256</font>')-.74
E('\))-.74 E(message digest of the \214le.)0 72 Q 0 Cg EP
%%Page: 32 32
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<p><dt><b></b><b>sha256digest</b><dd>)0 12 Q 2.5
(As)0 24 S(ynon)-2.5 E(ym for)-.15 E(<b></b><b>sha256</b>.)0 36 Q
(<p><dt><b></b><b>size</b><dd>)0 48 Q
(The size, in bytes, of the \214le.)0 60 Q
(<p><dt><b></b><b>time</b><dd>)0 72 Q 0 Cg EP
%%Page: 33 33
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The last modi\214cation time of the \214le.)0 12
Q(<p><dt><b></b><b>type</b><dd>)0 24 Q
(The type of the \214le; may be set to an)0 36 Q 2.5(yo)-.15 G
(ne of the follo)-2.5 E(wing:)-.25 E(<p>)36 48 Q(<dl compact>)0 60 Q
(<dt><b></b><b>block</b><dd>)0 72 Q 0 Cg EP
%%Page: 34 34
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(block special de)0 12 Q(vice)-.25 E
(<dt><b></b><b>char</b><dd>)0 24 Q(character special de)0 36 Q(vice)-.25
E(<dt><b></b><b>dir</b><dd>)0 48 Q(directory)0 60 Q
(<dt><b></b><b>\214fo</b><dd>)0 72 Q 0 Cg EP
%%Page: 35 35
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(\214fo)0 12 Q(<dt><b></b><b>\214le</b><dd>)0 24
Q(re)0 36 Q(gular \214le)-.15 E(<dt><b></b><b>link</b><dd>)0 48 Q
(symbolic link)0 60 Q(<dt><b></b><b>sock)0 72 Q(et</b><dd>)-.1 E 0 Cg EP
%%Page: 36 36
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(sock)0 12 Q(et)-.1 E(</dl>)0 24 Q
(<p><dt><b></b><b>uid</b><dd>)0 36 Q(The \214le o)0 48 Q
(wner as a numeric v)-.25 E(alue.)-.25 E(<p><dt><b></b><b>uname</b><dd>)
0 60 Q(The \214le o)0 72 Q(wner as a symbolic name.)-.25 E 0 Cg EP
%%Page: 37 37
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(</dl>)0 12 Q(<p>)36 24 Q(<h3 id="SEE ALSO">)36
36 Q(SEE ALSO)36 48 Q(</h3>)36 60 Q
(<a href="../html1/cksum.html">cksum\(1\)</a>,)0 72 Q 0 Cg EP
%%Page: 38 38
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(<a href="../html1/\214nd.html">\214nd\(1\)</a>,)
0 12 Q(<a href="../html8/mtree.html">mtree\(8\)</a>)0 24 Q(<h3 id="B)36
36 Q(UGS">)-.1 E -.1(BU)36 48 S(GS).1 E(</h3>)36 60 Q(The)0 72 Q 0 Cg EP
%%Page: 39 39
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(FreeBSD)0 12 Q
(implementation of mtree does not currently support)0 24 Q(the)0 36 Q
(<b>mtree</b>)0 48 Q(2.0)0 60 Q(format.)0 72 Q 0 Cg EP
%%Page: 40 40
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The requirement for a)0 12 Q -.74(``)0 24 S
(#mtree').74 E(')-.74 E(signature line is ne)0 36 Q 2.5(wa)-.25 G
(nd not yet widely implemented.)-2.5 E(<h3 id="HIST)36 48 Q(OR)-.18 E
(Y">)-.65 E(HIST)36 60 Q(OR)-.18 E(Y)-.65 E(</h3>)36 72 Q 0 Cg EP
%%Page: 41 41
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The)0 12 Q(<b>mtree</b>)0 24 Q
(utility appeared in)0 36 Q(4.3BSDReno.)0 48 Q(The)0 60 Q
(<font size="-1"></font><font size="-1">MD5</font>)0 72 Q 0 Cg EP
%%Page: 42 42
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(digest capability w)0 12 Q(as added in)-.1 E
(FreeBSD2.1,)0 24 Q
(in response to the widespread use of programs which can spoof)0 36 Q
(<a href="../html1/cksum.html">cksum\(1\)</a>.)0 48 Q(The)0 60 Q
(<font size="-1"></font><font size="-1">SHA-1</font>)0 72 Q 0 Cg EP
%%Page: 43 43
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(and)0 12 Q
(<font size="-1"></font><font size="-1">RIPEMD160</font>)0 24 Q
(digests were added in)0 36 Q(FreeBSD4.0,)0 48 Q(as ne)0 60 Q 2.5(wa)
-.25 G(ttacks ha)-2.5 E .3 -.15(ve d)-.2 H(emonstrated weaknesses in).15
E(<font size="-1"></font><font size="-1">MD5</font>.)0 72 Q 0 Cg EP
%%Page: 44 44
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(The)0 12 Q
(<font size="-1"></font><font size="-1">SHA-256</font>)0 24 Q(digest w)0
36 Q(as added in)-.1 E(FreeBSD6.0.)0 48 Q(Support for \214le \215ags w)0
60 Q(as added in)-.1 E(FreeBSD4.0,)0 72 Q 0 Cg EP
%%Page: 45 45
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(and mostly comes from)0 12 Q(NetBSD.)0 24 Q(The)
0 36 Q -.74(``)0 48 S(full').74 E(')-.74 E(entry format w)0 60 Q
(as added by)-.1 E(NetBSD.)0 72 Q 0 Cg EP
%%Page: 46 46
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(</body>)0 12 Q(</html>)0 24 Q 0 Cg EP
%%Trailer
end
%%EOF
<!-- Creator : groff version 1.19.2 -->
<!-- CreationDate: Sun Mar 14 19:50:32 2010 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="generator" content="groff -Thtml, see www.gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="Content-Style" content="text/css">
<style type="text/css">
p { margin-top: 0; margin-bottom: 0; }
pre { margin-top: 0; margin-bottom: 0; }
table { margin-top: 0; margin-bottom: 0; }
</style>
<title></title>
</head>
<body>
<hr>
<p valign="top">MTREE(5) FreeBSD File Formats Manual
MTREE(5)</p>
<p style="margin-top: 1em" valign="top"><b>NAME</b></p>
<p style="margin-left:8%;"><b>mtree</b> &mdash; format of
mtree dir hierarchy files</p>
<p style="margin-top: 1em" valign="top"><b>DESCRIPTION</b></p>
<p style="margin-left:8%;">The <b>mtree</b> format is a
textual format that describes a collection of filesystem
objects. Such files are typically used to create or verify
directory hierarchies.</p>
<p style="margin-left:8%; margin-top: 1em"><b>General
Format</b> <br>
An <b>mtree</b> file consists of a series of lines, each
providing information about a single filesystem object.
Leading whitespace is always ignored.</p>
<p style="margin-left:8%; margin-top: 1em">When encoding
file or pathnames, any backslash character or character
outside of the 95 printable ASCII characters must be encoded
as a a backslash followed by three octal digits. When
reading mtree files, any appearance of a backslash followed
by three octal digits should be converted into the
corresponding character.</p>
<p style="margin-left:8%; margin-top: 1em">Each line is
interpreted independently as one of the following types:</p>
<p style="margin-top: 1em" valign="top">Signature</p>
<p style="margin-left:26%; margin-top: 1em">The first line
of any mtree file must begin with
&lsquo;&lsquo;#mtree&rsquo;&rsquo;. If a file contains any
full path entries, the first line should begin with
&lsquo;&lsquo;#mtree v2.0&rsquo;&rsquo;, otherwise, the
first line should begin with &lsquo;&lsquo;#mtree
v1.0&rsquo;&rsquo;.</p>
<p style="margin-top: 1em" valign="top">Blank</p>
<p style="margin-left:26%; margin-top: 1em">Blank lines are
ignored.</p>
<p style="margin-top: 1em" valign="top">Comment</p>
<p style="margin-left:26%; margin-top: 1em">Lines beginning
with <b>#</b> are ignored.</p>
<p style="margin-top: 1em" valign="top">Special</p>
<p style="margin-left:26%; margin-top: 1em">Lines beginning
with <b>/</b> are special commands that influence the
interpretation of later lines.</p>
<p style="margin-top: 1em" valign="top">Relative</p>
<p style="margin-left:26%; margin-top: 1em">If the first
whitespace-delimited word has no <b>/</b> characters, it is
the name of a file in the current directory. Any relative
entry that describes a directory changes the current
directory.</p>
<p style="margin-top: 1em" valign="top">dot-dot</p>
<p style="margin-left:26%; margin-top: 1em">As a special
case, a relative entry with the filename <i>..</i> changes
the current directory to the parent directory. Options on
dot-dot entries are always ignored.</p>
<p style="margin-top: 1em" valign="top">Full</p>
<p style="margin-left:26%; margin-top: 1em">If the first
whitespace-delimited word has a <b>/</b> character after the
first character, it is the pathname of a file relative to
the starting directory. There can be multiple full entries
describing the same file.</p>
<p style="margin-left:8%; margin-top: 1em">Some tools that
process <b>mtree</b> files may require that multiple lines
describing the same file occur consecutively. It is not
permitted for the same file to be mentioned using both a
relative and a full file specification.</p>
<p style="margin-left:8%; margin-top: 1em"><b>Special
commands</b> <br>
Two special commands are currently defined:</p>
<p style="margin-top: 1em" valign="top"><b>/set</b></p>
<p style="margin-left:26%; margin-top: 1em">This command
defines default values for one or more keywords. It is
followed on the same line by one or more
whitespace-separated keyword definitions. These definitions
apply to all following files that do not specify a value for
that keyword.</p>
<p style="margin-top: 1em" valign="top"><b>/unset</b></p>
<p style="margin-left:26%; margin-top: 1em">This command
removes any default value set by a previous <b>/set</b>
command. It is followed on the same line by one or more
keywords separated by whitespace.</p>
<p style="margin-left:8%; margin-top: 1em"><b>Keywords</b>
<br>
After the filename, a full or relative entry consists of
zero or more whitespace-separated keyword definitions. Each
such definition consists of a key from the following list
immediately followed by an &rsquo;=&rsquo; sign and a value.
Software programs reading mtree files should warn about
unrecognized keywords.</p>
<p style="margin-left:8%; margin-top: 1em">Currently
supported keywords are as follows:</p>
<p style="margin-top: 1em" valign="top"><b>cksum</b></p>
<p style="margin-left:26%; margin-top: 1em">The checksum of
the file using the default algorithm specified by the
cksum(1) utility.</p>
<p style="margin-top: 1em" valign="top"><b>contents</b></p>
<p style="margin-left:26%; margin-top: 1em">The full
pathname of a file that holds the contents of this file.</p>
<p style="margin-top: 1em" valign="top"><b>flags</b></p>
<p style="margin-left:26%; margin-top: 1em">The file flags
as a symbolic name. See chflags(1) for information on these
names. If no flags are to be set the string
&lsquo;&lsquo;none&rsquo;&rsquo; may be used to override the
current default.</p>
<p style="margin-top: 1em" valign="top"><b>gid</b></p>
<p style="margin-left:26%; margin-top: 1em">The file group
as a numeric value.</p>
<p style="margin-top: 1em" valign="top"><b>gname</b></p>
<p style="margin-left:26%; margin-top: 1em">The file group
as a symbolic name.</p>
<p style="margin-top: 1em" valign="top"><b>ignore</b></p>
<p style="margin-left:26%; margin-top: 1em">Ignore any file
hierarchy below this file.</p>
<p style="margin-top: 1em" valign="top"><b>link</b></p>
<p style="margin-left:26%; margin-top: 1em">The target of
the symbolic link when type=link.</p>
<p style="margin-top: 1em" valign="top"><b>md5</b></p>
<p style="margin-left:26%; margin-top: 1em">The MD5 message
digest of the file.</p>
<p style="margin-top: 1em" valign="top"><b>md5digest</b></p>
<p style="margin-left:26%; margin-top: 1em">A synonym for
<b>md5</b>.</p>
<p style="margin-top: 1em" valign="top"><b>mode</b></p>
<p style="margin-left:26%; margin-top: 1em">The current
file&rsquo;s permissions as a numeric (octal) or symbolic
value.</p>
<p style="margin-top: 1em" valign="top"><b>nlink</b></p>
<p style="margin-left:26%; margin-top: 1em">The number of
hard links the file is expected to have.</p>
<p style="margin-top: 1em" valign="top"><b>nochange</b></p>
<p style="margin-left:26%; margin-top: 1em">Make sure this
file or directory exists but otherwise ignore all
attributes.</p>
<p style="margin-top: 1em" valign="top"><b>ripemd160digest</b></p>
<p style="margin-left:26%;">The RIPEMD160 message digest of
the file.</p>
<p style="margin-top: 1em" valign="top"><b>rmd160</b></p>
<p style="margin-left:26%; margin-top: 1em">A synonym for
<b>ripemd160digest</b>.</p>
<p style="margin-top: 1em" valign="top"><b>rmd160digest</b></p>
<p style="margin-left:26%;">A synonym for
<b>ripemd160digest</b>.</p>
<p style="margin-top: 1em" valign="top"><b>sha1</b></p>
<p style="margin-left:26%; margin-top: 1em">The FIPS 160-1
(&lsquo;&lsquo;SHA-1&rsquo;&rsquo;) message digest of the
file.</p>
<p style="margin-top: 1em" valign="top"><b>sha1digest</b></p>
<p style="margin-left:26%; margin-top: 1em">A synonym for
<b>sha1</b>.</p>
<p style="margin-top: 1em" valign="top"><b>sha256</b></p>
<p style="margin-left:26%; margin-top: 1em">The FIPS 180-2
(&lsquo;&lsquo;SHA-256&rsquo;&rsquo;) message digest of the
file.</p>
<p style="margin-top: 1em" valign="top"><b>sha256digest</b></p>
<p style="margin-left:26%;">A synonym for
<b>sha256</b>.</p>
<p style="margin-top: 1em" valign="top"><b>size</b></p>
<p style="margin-left:26%; margin-top: 1em">The size, in
bytes, of the file.</p>
<p style="margin-top: 1em" valign="top"><b>time</b></p>
<p style="margin-left:26%; margin-top: 1em">The last
modification time of the file.</p>
<p style="margin-top: 1em" valign="top"><b>type</b></p>
<p style="margin-left:26%; margin-top: 1em">The type of the
file; may be set to any one of the following:</p>
<p style="margin-top: 1em" valign="top"><b>block</b></p>
<p style="margin-left:45%; margin-top: 1em">block special
device</p>
<p valign="top"><b>char</b></p>
<p style="margin-left:45%; margin-top: 1em">character
special device</p>
<p valign="top"><b>dir</b></p>
<p style="margin-left:45%; margin-top: 1em">directory</p>
<p valign="top"><b>fifo</b></p>
<p style="margin-left:45%; margin-top: 1em">fifo</p>
<p valign="top"><b>file</b></p>
<p style="margin-left:45%; margin-top: 1em">regular
file</p>
<p valign="top"><b>link</b></p>
<p style="margin-left:45%; margin-top: 1em">symbolic
link</p>
<p valign="top"><b>socket</b></p>
<p style="margin-left:45%; margin-top: 1em">socket</p>
<p style="margin-top: 1em" valign="top"><b>uid</b></p>
<p style="margin-left:26%; margin-top: 1em">The file owner
as a numeric value.</p>
<p style="margin-top: 1em" valign="top"><b>uname</b></p>
<p style="margin-left:26%; margin-top: 1em">The file owner
as a symbolic name.</p>
<p style="margin-top: 1em" valign="top"><b>SEE ALSO</b></p>
<p style="margin-left:8%;">cksum(1), find(1), mtree(8)</p>
<p style="margin-top: 1em" valign="top"><b>BUGS</b></p>
<p style="margin-left:8%;">The FreeBSD implementation of
mtree does not currently support the <b>mtree</b> 2.0
format. The requirement for a
&lsquo;&lsquo;#mtree&rsquo;&rsquo; signature line is new and
not yet widely implemented.</p>
<p style="margin-top: 1em" valign="top"><b>HISTORY</b></p>
<p style="margin-left:8%;">The <b>mtree</b> utility
appeared in 4.3BSD&minus;Reno. The MD5 digest capability was
added in FreeBSD&nbsp;2.1, in response to the widespread use
of programs which can spoof cksum(1). The SHA-1 and
RIPEMD160 digests were added in FreeBSD&nbsp;4.0, as new
attacks have demonstrated weaknesses in MD5. The SHA-256
digest was added in FreeBSD&nbsp;6.0. Support for file flags
was added in FreeBSD&nbsp;4.0, and mostly comes from NetBSD.
The &lsquo;&lsquo;full&rsquo;&rsquo; entry format was added
by NetBSD.</p>
<p style="margin-left:8%; margin-top: 1em">FreeBSD&nbsp;9.0
August&nbsp;20, 2007 FreeBSD&nbsp;9.0</p>
<hr>
</body>
</html>

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
archive_entry(3) NetBSD Library Functions Manual archive_entry(3)
archive_entry(3) FreeBSD Library Functions Manual archive_entry(3)
NAME
archive_entry_acl_add_entry, archive_entry_acl_add_entry_w,
@ -358,4 +358,4 @@ HISTORY
AUTHORS
The libarchive library was written by Tim Kientzle <kientzle@acm.org>.
NetBSD 5.0 May 12, 2008 NetBSD 5.0
FreeBSD 9.0 May 12, 2008 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
archive_read(3) NetBSD Library Functions Manual archive_read(3)
archive_read(3) FreeBSD Library Functions Manual archive_read(3)
NAME
archive_read_new, archive_read_set_filter_options,
@ -493,4 +493,4 @@ BUGS
format of an empty file by inspecting the contents, so this library
treats empty files as having a special ``empty'' format.
NetBSD 5.0 April 13, 2009 NetBSD 5.0
FreeBSD 9.0 April 13, 2009 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
archive_read_disk(3) NetBSD Library Functions Manual archive_read_disk(3)
archive_read_disk(3) FreeBSD Library Functions Manual archive_read_disk(3)
NAME
archive_read_disk_new, archive_read_disk_set_symlink_logical,
@ -201,4 +201,4 @@ BUGS
such methods are implemented, the ``hybrid'' symbolic link mode will make
sense.
NetBSD 5.0 March 10, 2009 NetBSD 5.0
FreeBSD 9.0 March 10, 2009 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
archive_util(3) NetBSD Library Functions Manual archive_util(3)
archive_util(3) FreeBSD Library Functions Manual archive_util(3)
NAME
archive_clear_error, archive_compression, archive_compression_name,
@ -96,4 +96,4 @@ HISTORY
AUTHORS
The libarchive library was written by Tim Kientzle <kientzle@acm.org>.
NetBSD 5.0 January 8, 2005 NetBSD 5.0
FreeBSD 9.0 January 8, 2005 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
archive_write(3) NetBSD Library Functions Manual archive_write(3)
archive_write(3) FreeBSD Library Functions Manual archive_write(3)
NAME
archive_write_new, archive_write_set_format_cpio,
@ -483,4 +483,4 @@ BUGS
correctly restore device nodes with large device numbers from archives
created by this library.
NetBSD 5.0 May 11, 2008 NetBSD 5.0
FreeBSD 9.0 May 11, 2008 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
archive_write_disk(3) NetBSD Library Functions Manual archive_write_disk(3)
archive_write_disk(3) FreeBSD Library Functions Manual archive_write_disk(3)
NAME
archive_write_disk_new, archive_write_disk_set_options,
@ -254,4 +254,4 @@ BUGS
There should be a corresponding archive_read_disk interface that walks a
directory heirarchy and returns archive entry objects.
NetBSD 5.0 August 5, 2008 NetBSD 5.0
FreeBSD 9.0 August 5, 2008 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
BSDCPIO(1) NetBSD General Commands Manual BSDCPIO(1)
BSDCPIO(1) FreeBSD General Commands Manual BSDCPIO(1)
NAME
cpio -- copy files to and from archives
@ -247,4 +247,4 @@ BUGS
mats cannot support files over 4 gigabytes, except for the ``odc'' vari-
ant, which can support files up to 8 gigabytes.
NetBSD 5.0 December 21, 2007 NetBSD 5.0
FreeBSD 9.0 December 21, 2007 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
BSDTAR(1) NetBSD General Commands Manual BSDTAR(1)
BSDTAR(1) FreeBSD General Commands Manual BSDTAR(1)
NAME
tar -- manipulate tape archives
@ -442,15 +442,15 @@ SECURITY
three ways this can happen. Although tar has mechanisms to protect
against each one, savvy users should be aware of the implications:
Archive entries can have absolute pathnames. By default, tar
o Archive entries can have absolute pathnames. By default, tar
removes the leading / character from filenames before restoring
them to guard against this problem.
Archive entries can have pathnames that include .. components.
o Archive entries can have pathnames that include .. components.
By default, tar will not extract files containing .. components
in their pathname.
Archive entries can exploit symbolic links to restore files to
o Archive entries can exploit symbolic links to restore files to
other directories. An archive can restore a symbolic link to
another directory, then use that link to restore a file into that
directory. To guard against this, tar checks each extracted path
@ -546,4 +546,4 @@ BUGS
There are alternative long options for many of the short options that are
deliberately not documented.
NetBSD 5.0 Oct 12, 2009 NetBSD 5.0
FreeBSD 9.0 Oct 12, 2009 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
CPIO(5) NetBSD File Formats Manual CPIO(5)
CPIO(5) FreeBSD File Formats Manual CPIO(5)
NAME
cpio -- format of cpio archive files
@ -232,4 +232,4 @@ HISTORY
appear? Who invented it? When did HP come out with their variant? When
did Sun introduce ACLs and extended attributes? XXX
NetBSD 5.0 October 5, 2007 NetBSD 5.0
FreeBSD 9.0 October 5, 2007 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
libarchive-formats(5) NetBSD File Formats Manual libarchive-formats(5)
libarchive-formats(5) FreeBSD File Formats Manual libarchive-formats(5)
NAME
libarchive-formats -- archive formats supported by the libarchive library
@ -70,16 +70,16 @@ DESCRIPTION
ustar The libarchive library can both read and write this format. This
format has the following limitations:
Device major and minor numbers are limited to 21 bits. Nodes
o Device major and minor numbers are limited to 21 bits. Nodes
with larger numbers will not be added to the archive.
Path names in the archive are limited to 255 bytes. (Shorter
o Path names in the archive are limited to 255 bytes. (Shorter
if there is no / character in exactly the right place.)
Symbolic links and hard links are stored in the archive with
o Symbolic links and hard links are stored in the archive with
the name of the referenced file. This name is limited to 100
bytes.
Extended attributes, file flags, and other extended security
o Extended attributes, file flags, and other extended security
information cannot be stored.
Archive entries are limited to 8 gigabytes in size.
o Archive entries are limited to 8 gigabytes in size.
Note that the pax interchange format has none of these restric-
tions.
@ -238,4 +238,4 @@ SEE ALSO
ar(1), cpio(1), mkisofs(1), shar(1), tar(1), zip(1), zlib(3), cpio(5),
mtree(5), tar(5)
NetBSD 5.0 December 27, 2009 NetBSD 5.0
FreeBSD 9.0 December 27, 2009 FreeBSD 9.0

View file

@ -1,10 +1,10 @@
LIBARCHIVE(3) NetBSD Library Functions Manual LIBARCHIVE(3)
LIBARCHIVE(3) FreeBSD Library Functions Manual LIBARCHIVE(3)
NAME
libarchive -- functions for reading and writing streaming archives
LIBRARY
Reading and Writing Streaming Archives Library (libarchive, -larchive)
Streaming Archive Library (libarchive, -larchive)
OVERVIEW
The libarchive library provides a flexible interface for reading and
@ -16,22 +16,22 @@ OVERVIEW
When reading an archive, the library automatically detects the format and
the compression. The library currently has read support for:
old-style tar archives,
most variants of the POSIX ``ustar'' format,
the POSIX ``pax interchange'' format,
GNU-format tar archives,
most common cpio archive formats,
ISO9660 CD images (with or without RockRidge extensions),
Zip archives.
o old-style tar archives,
o most variants of the POSIX ``ustar'' format,
o the POSIX ``pax interchange'' format,
o GNU-format tar archives,
o most common cpio archive formats,
o ISO9660 CD images (with or without RockRidge extensions),
o Zip archives.
The library automatically detects archives compressed with gzip(1),
bzip2(1), or compress(1) and decompresses them transparently.
When writing an archive, you can specify the compression to be used and
the format to use. The library can write
POSIX-standard ``ustar'' archives,
POSIX ``pax interchange format'' archives,
POSIX octet-oriented cpio archives,
two different variants of shar archives.
o POSIX-standard ``ustar'' archives,
o POSIX ``pax interchange format'' archives,
o POSIX octet-oriented cpio archives,
o two different variants of shar archives.
Pax interchange format is an extension of the tar archive format that
eliminates essentially all of the limitations of historic tar formats in
a standard fashion that is supported by POSIX-compliant pax(1) implemen-
@ -182,4 +182,4 @@ BUGS
formats do not support nanosecond timestamps; old tar formats do not sup-
port large device numbers.
NetBSD 5.0 August 19, 2006 NetBSD 5.0
FreeBSD 9.0 August 19, 2006 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
LIBARCHIVE(3) NetBSD Library Functions Manual LIBARCHIVE(3)
LIBARCHIVE(3) FreeBSD Library Functions Manual LIBARCHIVE(3)
NAME
libarchive_internals -- description of libarchive internal interfaces
@ -245,4 +245,4 @@ AUTHORS
The libarchive library was written by Tim Kientzle <kientzle@acm.org>.
BUGS
NetBSD 5.0 April 16, 2007 NetBSD 5.0
FreeBSD 9.0 April 16, 2007 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
MTREE(5) NetBSD File Formats Manual MTREE(5)
MTREE(5) FreeBSD File Formats Manual MTREE(5)
NAME
mtree -- format of mtree dir hierarchy files
@ -155,4 +155,4 @@ HISTORY
added in FreeBSD 4.0, and mostly comes from NetBSD. The ``full'' entry
format was added by NetBSD.
NetBSD 5.0 August 20, 2007 NetBSD 5.0
FreeBSD 9.0 August 20, 2007 FreeBSD 9.0

View file

@ -1,4 +1,4 @@
tar(5) NetBSD File Formats Manual tar(5)
tar(5) FreeBSD File Formats Manual tar(5)
NAME
tar -- format of tape archive files
@ -108,11 +108,11 @@ DESCRIPTION
for John Gilmore's pdtar program and many system implementations from the
late 1980s and early 1990s. These archives generally follow the POSIX
ustar format described below with the following variations:
The magic value is ``ustar '' (note the following space). The
o The magic value is ``ustar '' (note the following space). The
version field contains a space character followed by a null.
The numeric fields are generally filled with leading spaces (not
o The numeric fields are generally filled with leading spaces (not
leading zeros as recommended in the final standard).
The prefix field is often not used, limiting pathnames to the 100
o The prefix field is often not used, limiting pathnames to the 100
characters of old-style archives.
POSIX ustar Archives
@ -531,11 +531,11 @@ DESCRIPTION
Solaris tar (beginning with SunOS XXX 5.7 ?? XXX) supports an
``extended'' format that is fundamentally similar to pax interchange for-
mat, with the following differences:
Extended attributes are stored in an entry whose type is X, not
o Extended attributes are stored in an entry whose type is X, not
x, as used by pax interchange format. The detailed format of
this entry appears to be the same as detailed above for the x
entry.
An additional A entry is used to store an ACL for the following
o An additional A entry is used to store an ACL for the following
regular entry. The body of this entry contains a seven-digit
octal number followed by a zero byte, followed by the textual ACL
description. The octal value is the number of ACL entries plus a
@ -598,4 +598,4 @@ HISTORY
This documentation was written as part of the libarchive and bsdtar
project by Tim Kientzle <kientzle@FreeBSD.org>.
NetBSD 5.0 December 27, 2009 NetBSD 5.0
FreeBSD 9.0 December 27, 2009 FreeBSD 9.0

View file

@ -210,7 +210,7 @@ setup_acls_posix1e(struct archive_read_disk *a,
acl = acl_get_link_np(accpath, ACL_TYPE_ACCESS);
#else
else if ((!a->follow_symlinks)
&& (archive_entry_filetype(entry) == AE_IFLNK)))
&& (archive_entry_filetype(entry) == AE_IFLNK))
/* We can't get the ACL of a symlink, so we assume it can't
have one. */
acl = NULL;