Merge branch 'vendor/LIBARCHIVE'
authorPeter Avalos <pavalos@theshell.com>
Sat, 27 Jun 2009 21:34:06 +0000 (11:34 -1000)
committerPeter Avalos <pavalos@theshell.com>
Sat, 27 Jun 2009 21:34:06 +0000 (11:34 -1000)
1  2 
Makefile.inc1
contrib/libarchive/README.DRAGONFLY
lib/Makefile
lib/libarchive/Makefile
lib/libarchive/config.h
usr.bin/cpio/Makefile
usr.bin/tar/Makefile

diff --cc Makefile.inc1
index ab4343e,0000000..2bea51c
mode 100644,000000..100644
--- /dev/null
@@@ -1,990 -1,0 +1,990 @@@
- _prebuild_libs=               lib/libbz2 lib/libz lib/libarchive
 +#
 +# $FreeBSD: src/Makefile.inc1,v 1.141.2.62 2003/04/06 19:54:00 dwmalone Exp $
 +# $DragonFly: src/Makefile.inc1,v 1.118 2008/06/24 20:22:30 thomas Exp $
 +#
 +# Build-time options are documented in make.conf(5).
 +#
 +# The intended user-driven targets are:
 +#
 +# buildworld  - rebuild *everything*, including glue to help do upgrades
 +# quickworld  - skip the glue and do a depend+build on the meat
 +# realquickworld - skip the glue and depend stages and just build the meat
 +# crossworld  - only build the glue (particularly the cross-build environment)
 +# installworld- install everything built by "buildworld"
 +# most        - build user commands, no libraries or include files
 +# installmost - install user commands, no libraries or include files
 +#
 +# Standard targets (not defined here) are documented in the makefiles in
 +# /usr/share/mk.  These include:
 +#             obj depend all install clean cleandepend cleanobj
 +
 +# Put initial settings here.
 +SUBDIR=
 +
 +# We must do share/info early so that installation of info `dir'
 +# entries works correctly.  Do it first since it is less likely to
 +# grow dependencies on include and lib than vice versa.
 +.if exists(${.CURDIR}/share/info)
 +SUBDIR+= share/info
 +.endif
 +
 +# We must do include and lib early so that the perl *.ph generation
 +# works correctly as it uses the header files installed by this.
 +.if exists(${.CURDIR}/include)
 +SUBDIR+= include
 +.endif
 +.if exists(${.CURDIR}/lib)
 +SUBDIR+= lib
 +.endif
 +# This exists simply to ensure that the obj dir hierarchy is
 +# intact for nrelease, allowing the nrelease Makefile's to 
 +# reference ${.OBJDIR}.
 +#
 +.if exists(${.CURDIR}/nrelease)
 +SUBDIR+= nrelease
 +.endif
 +
 +.if exists(${.CURDIR}/bin)
 +SUBDIR+= bin
 +.endif
 +.if exists(${.CURDIR}/games) && !defined(NO_GAMES)
 +SUBDIR+= games
 +.endif
 +.if exists(${.CURDIR}/gnu)
 +SUBDIR+= gnu
 +.endif
 +.if exists(${.CURDIR}/kerberos5) && exists(${.CURDIR}/crypto) && \
 +    !defined(NO_CRYPT) && !defined(NO_OPENSSL) && defined(WANT_KERBEROS)
 +SUBDIR+= kerberos5
 +.endif
 +.if exists(${.CURDIR}/libexec)
 +SUBDIR+= libexec
 +.endif
 +.if exists(${.CURDIR}/sbin)
 +SUBDIR+= sbin
 +.endif
 +.if exists(${.CURDIR}/secure) && !defined(NO_CRYPT)
 +SUBDIR+= secure
 +.endif
 +.if exists(${.CURDIR}/share) && !defined(NO_SHARE)
 +SUBDIR+= share
 +.endif
 +.if exists(${.CURDIR}/sys)
 +SUBDIR+= sys
 +.endif
 +.if exists(${.CURDIR}/usr.bin)
 +SUBDIR+= usr.bin
 +.endif
 +.if exists(${.CURDIR}/usr.sbin)
 +SUBDIR+= usr.sbin
 +.endif
 +
 +# etc must be last for "distribute" to work
 +.if exists(${.CURDIR}/etc)
 +SUBDIR+= etc
 +.endif
 +
 +# These are last, since it is nice to at least get the base system
 +# rebuilt before you do them.
 +.if defined(LOCAL_DIRS)
 +.for _DIR in ${LOCAL_DIRS}
 +.if exists(${.CURDIR}/${_DIR}) & exists(${.CURDIR}/${_DIR}/Makefile)
 +SUBDIR+= ${_DIR}
 +.endif
 +.endfor
 +.endif
 +
 +.if defined(SUBDIR_OVERRIDE)
 +SUBDIR=               ${SUBDIR_OVERRIDE}
 +.endif
 +
 +.if defined(NOCLEANDIR)
 +CLEANDIR=     clean cleandepend
 +.else
 +CLEANDIR=     cleandir
 +.endif
 +
 +.if defined(NO_CLEAN)
 +NOCLEAN=      # defined
 +.endif
 +
 +# Object directory base in primary make.  Note that when we rerun make
 +# from inside this file we change MAKEOBJDIRPREFIX to the appropriate
 +# subdirectory because the rest of the build system needs it that way.
 +# The original object directory base is saved in OBJTREE.
 +#
 +MAKEOBJDIRPREFIX?=    /usr/obj
 +OBJTREE?=             ${MAKEOBJDIRPREFIX}
 +
 +# Used for stage installs and pathing
 +#
 +DESTDIRBASE?=         ${OBJTREE}${.CURDIR}
 +
 +# Remove DESTDIR from MAKEFLAGS.  It is present in the environment
 +# anyhow, and we need to be able to override it for stage installs
 +.MAKEFLAGS:=  ${.MAKEFLAGS:NDESTDIR=*}
 +
 +# This sets the compiler we use to build the world/kernel with
 +WORLD_CCVER?= gcc41
 +
 +TARGET_ARCH?= ${MACHINE_ARCH}
 +.if ${TARGET_ARCH} == ${MACHINE_ARCH}
 +TARGET?=      ${MACHINE}
 +.else
 +TARGET?=      ${TARGET_ARCH}
 +.endif
 +.if make(buildworld)
 +BUILD_ARCH!=  sysctl -n hw.machine_arch
 +.if ${MACHINE_ARCH} != ${BUILD_ARCH}
 +.error To cross-build, set TARGET_ARCH.
 +.endif
 +.endif
 +
 +# Backwards compatibility with older make's or older sys.mk's.  make
 +# is expected to define MACHINE_PLATFORM.
 +#
 +.if !defined(MACHINE_PLATFORM)
 +MACHINE_PLATFORM= pc32
 +.endif
 +
 +# XXX this is ugly and we need to come up with a nicer solution
 +.if !defined(TARGET_PLATFORM)
 +.if ${TARGET_ARCH} == "i386"
 +TARGET_PLATFORM= pc32
 +.elif ${TARGET_ARCH} == "amd64"
 +TARGET_PLATFORM= pc64
 +.else
 +.error Unknown target architecture.
 +.endif
 +.endif
 +
 +THREAD_LIB?=  thread_xu
 +.if ${THREAD_LIB} == "c_r"
 +.if defined(NO_LIBC_R)
 +.error libc_r is chosen as the default thread library, but NO_LIBC_R is defined
 +.endif
 +.endif
 +
 +# BTOOLS      (Natively built) All non-cross-development tools that the
 +#             main build needs.  This includes things like 'mkdir' and 'rm'.
 +#             We will not use the native system's exec path once we start
 +#             on WORLD.  (bootstrap-tools and build-tools or BTOOLS)
 +#
 +# CTOOLS      (Natively built) Cross development tools which are specific
 +#             to the target architecture.
 +#
 +# WORLD               (Cross built) Our ultimate buildworld, using only BTOOLS and
 +#             CTOOLS.
 +#
 +# MACHINE_PLATFORM Platform Architecture we are building on
 +# MACHINE     Machine Architecture (usually the same as MACHINE_ARCH)
 +# MACHINE_ARCH        Cpu Architecture we are building on
 +#
 +# TARGET_PLATFORM Platform Architecture we are building for
 +# TARGET      Machine Architecture we are building for
 +# TARGET_ARCH Cpu Architecture we are building for
 +#
 +BTOOLSDEST=   ${DESTDIRBASE}/btools_${MACHINE_ARCH}
 +CTOOLSDEST=   ${DESTDIRBASE}/ctools_${MACHINE_ARCH}_${TARGET_ARCH}
 +WORLDDEST=    ${DESTDIRBASE}/world_${TARGET_ARCH}
 +
 +# The bootstrap-tools path is used by the bootstrap-tools, build-tools, and
 +# cross-tools stages to augment the existing command path to access newer
 +# versions of certain utilities such as 'patch' that the cross-tools stage
 +# might expect.
 +#
 +BTOOLSPATH= ${BTOOLSDEST}/usr/sbin:${BTOOLSDEST}/usr/bin:${BTOOLSDEST}/bin:${BTOOLSDEST}/usr/games
 +
 +# The strict temporary command path contains all binaries required
 +# by the buildworld system after the cross-tools stage.
 +#
 +STRICTTMPPATH=        ${CTOOLSDEST}/usr/sbin:${CTOOLSDEST}/usr/bin:${CTOOLSDEST}/bin:${CTOOLSDEST}/usr/games:${BTOOLSDEST}/usr/sbin:${BTOOLSDEST}/usr/bin:${BTOOLSDEST}/bin:${BTOOLSDEST}/usr/games
 +
 +TMPDIR?=      /tmp
 +TMPPID!=      echo $$$$
 +
 +#
 +# Building a world goes through the following stages
 +#
 +# 1. bootstrap-tool stage [BMAKE]
 +#     This stage is responsible for creating programs that
 +#     are needed for backward compatibility reasons. They
 +#     are not built as cross-tools.
 +# 2. build-tool stage [TMAKE]
 +#     This stage is responsible for creating the object
 +#     tree and building any tools that are needed during
 +#     the build process.
 +# 3. cross-tool stage [XMAKE]
 +#     This stage is responsible for creating any tools that
 +#     are needed for cross-builds. A cross-compiler is one
 +#     of them.
 +# 4. world stage [WMAKE]
 +#     This stage actually builds the world.
 +# 5. install stage (optional) [IMAKE]
 +#     This stage installs a previously built world.
 +#
 +
 +# bootstrap-tool stage
 +#
 +BMAKEENV=     MAKEOBJDIRPREFIX=${BTOOLSDEST} \
 +              OBJTREE=${OBJTREE} \
 +              DESTDIR=${BTOOLSDEST} \
 +              PATH=${BTOOLSPATH}:${PATH} \
 +              INSTALL="sh ${.CURDIR}/tools/install.sh"
 +
 +BMAKE=                ${BMAKEENV} ${MAKE} -f Makefile.inc1 -DBOOTSTRAPPING \
 +              -DNOINFO -DNOMAN -DNOPIC -DNOPROFILE -DNOSHARED \
 +              -DNO_WERROR -DNO_NLS
 +
 +# build-tool stage
 +#
 +TMAKEENV=     MAKEOBJDIRPREFIX=${BTOOLSDEST} \
 +              OBJTREE=${OBJTREE} \
 +              DESTDIR= \
 +              PATH=${BTOOLSPATH}:${PATH} \
 +              INSTALL="sh ${.CURDIR}/tools/install.sh"
 +
 +TMAKE=                ${TMAKEENV} ${MAKE} -f Makefile.inc1 -DBOOTSTRAPPING \
 +              -DNO_FORTRAN -DNOSHARED
 +
 +# cross-tool stage
 +#
 +# note: TOOLS_PREFIX points to the obj root holding the cross
 +#     compiler binaries, while USRDATA_PREFIX points to the obj root 
 +#     holding the target environment (and also determines where cross-built
 +#     libraries, crt*.o, and include files are installed).
 +#
 +XMAKEENV=     MAKEOBJDIRPREFIX=${CTOOLSDEST} \
 +              OBJTREE=${OBJTREE} \
 +              DESTDIR=${CTOOLSDEST} \
 +              INSTALL="sh ${.CURDIR}/tools/install.sh" \
 +              TOOLS_PREFIX=${CTOOLSDEST} \
 +              USRDATA_PREFIX=${WORLDDEST} \
 +              PATH=${BTOOLSPATH}:${PATH}
 +
 +XMAKE=                ${XMAKEENV} ${MAKE} -f Makefile.inc1 -DNO_FORTRAN -DNO_GDB \
 +              -DBOOTSTRAPPING -DNOSHARED
 +
 +# world stage, note the strict path and note that TOOLS_PREFIX is left
 +# unset and USRDATA_PREFIX (which defaults to TOOLS_PREFIX) is set to empty,
 +# which is primarily for the compiler so it targets / (e.g. /usr/<blah>)
 +# for both binary and library paths, even though it is being compiled to
 +# WORLDDEST.  None of the programs in the world stage are ever actually
 +# executed during the buildworld/installworld.
 +#
 +CROSSENV=     MAKEOBJDIRPREFIX=${WORLDDEST} \
 +              OBJTREE=${OBJTREE} \
 +              MACHINE_ARCH=${TARGET_ARCH} \
 +              MACHINE=${TARGET} \
 +              MACHINE_PLATFORM=${TARGET_PLATFORM} \
 +              OBJFORMAT_PATH=${CTOOLSDEST} \
 +              HOST_CCVER=${HOST_CCVER} \
 +              CCVER=${WORLD_CCVER}
 +
 +WMAKEENV=     ${CROSSENV} \
 +              DESTDIR=${WORLDDEST} \
 +              INSTALL="sh ${.CURDIR}/tools/install.sh" \
 +              PATH=${STRICTTMPPATH}
 +
 +WMAKE=                ${WMAKEENV} ${MAKE} -f Makefile.inc1
 +
 +# install stage
 +#
 +IMAKEENV=     ${CROSSENV} \
 +              PATH=${STRICTTMPPATH}
 +IMAKE=                ${IMAKEENV} ${MAKE} -f Makefile.inc1
 +
 +# kernel stage
 +#
 +KMAKEENV=     ${WMAKEENV}
 +
 +# buildworld
 +#
 +# Attempt to rebuild the entire system, with reasonable chance of
 +# success, regardless of how old your existing system is.
 +#
 +_worldtmp:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Rebuilding the temporary build tree"
 +      @echo "--------------------------------------------------------------"
 +.if !defined(NOCLEAN)
 +      rm -rf ${BTOOLSDEST} ${CTOOLSDEST} ${WORLDDEST}
 +.else
 +      # XXX - These two can depend on any header file.
 +      rm -f ${OBJTREE}${.CURDIR}/usr.bin/kdump/ioctl.c
 +      rm -f ${OBJTREE}${.CURDIR}/usr.bin/truss/ioctl.c
 +.endif
 +      mkdir -p ${DESTDIRBASE} ${BTOOLSDEST} ${CTOOLSDEST} ${WORLDDEST}
 +.for _dir in ${WORLDDEST} ${BTOOLSDEST} ${CTOOLSDEST}
 +      mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist        \
 +              -p ${_dir}/  > /dev/null
 +      mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist         \
 +              -p ${_dir}/usr > /dev/null
 +.endfor
 +      mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist     \
 +              -p ${WORLDDEST}/usr/include > /dev/null
 +      ${LN} -sf ${.CURDIR}/sys ${WORLDDEST}
 +
 +_bootstrap-tools:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 1: bootstrap tools"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${BMAKE} bootstrap-tools
 +_cleanobj:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 2a: cleaning up the object tree"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} ${CLEANDIR:S/^/par-/}
 +_obj:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 2b: rebuilding the object tree"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} par-obj
 +_build-tools:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 2c: build tools"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${TMAKE} build-tools
 +_cross-tools:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 3: cross tools"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${XMAKE} cross-tools
 +_includes:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 4a: populating ${WORLDDEST}/usr/include"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} SHARED=symlinks par-includes
 +_libraries:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 4b: building libraries"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} -DNOHTML -DNOINFO -DNOMAN -DNOFSCHG libraries
 +_depend:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 4c: make dependencies"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} par-depend
 +everything:
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> stage 4d: building everything.."
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${WMAKE} all
 +
 +# note: buildworld no longer depends on _cleanobj because we rm -rf the
 +# entire object tree and built the bootstrap tools in a different location.
 +#
 +# buildworld  - build everything from scratch
 +# quickworld  - skip the bootstrap, build, and cross-build steps
 +# realquickworld - skip the bootstrap, build, crossbuild, and depend step.
 +#
 +# note: we include _obj in realquickworld to prevent accidental creation
 +# of files in /usr/src.
 +
 +WMAKE_TGTS=
 +.if !defined(SUBDIR_OVERRIDE)
 +WMAKE_TGTS+=  _worldtmp _bootstrap-tools
 +.endif
 +WMAKE_TGTS+=  _obj _build-tools
 +.if !defined(SUBDIR_OVERRIDE)
 +WMAKE_TGTS+=  _cross-tools
 +.endif
 +WMAKE_TGTS+=  _includes _libraries _depend everything
 +
 +buildworld: ${WMAKE_TGTS}
 +
 +quickworld: _obj _includes _libraries _depend everything
 +
 +realquickworld: _obj _includes _libraries everything
 +
 +crossworld: _worldtmp _bootstrap-tools _obj _build-tools _cross-tools
 +
 +.ORDER: ${WMAKE_TGTS}
 +
 +#
 +# installcheck
 +#
 +# Checks to be sure system is ready for installworld
 +#
 +installcheck:
 +.if !defined(NO_SENDMAIL)
 +      @pw usershow smmsp || (echo "You may need to run 'make preupgrade' first"; exit 1)
 +      @pw groupshow smmsp || (echo "You may need to run 'make preupgrade' first"; exit 1)
 +.endif
 +      @pw usershow _pflogd || (echo "You may need to run 'make preupgrade' first"; exit 1)
 +      @pw groupshow authpf || (echo "You may need to run 'make preupgrade' first"; exit 1)
 +      @pw groupshow _pflogd || (echo "You may need to run 'make preupgrade' first"; exit 1)
 +.if !defined(DESTDIR) || ${DESTDIR} == "" || ${DESTDIR} == "/"
 +      @case `uname -r` in 1.2*|1.3-*|1.3.*|1.4.*|1.5.0-*|1.5.1-*|1.5.2-*|1.5.3-*) echo "You must upgrade your kernel to at least 1.5.4 and reboot before you can safely installworld, due to libc/system call ABI changes" ; exit 1;; esac
 +.endif
 +# distributeworld
 +#
 +# Distributes everything compiled by a `buildworld'.
 +#
 +# installworld
 +#
 +# Installs everything compiled by a 'buildworld'.
 +#
 +distributeworld installworld: installcheck
 +      cd ${.CURDIR}; ${IMAKE} re${.TARGET:S/world$//}
 +      ${INSTALL} -o root -g wheel -m 644 ${.CURDIR}/Makefile_upgrade.inc ${DESTDIR}/etc/upgrade/
 +
 +#
 +# reinstall
 +#
 +# If you have a build server, you can NFS mount the source and obj directories
 +# and do a 'make reinstall' on the *client* to install new binaries from the
 +# most recent server build.
 +#
 +reinstall:
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Making hierarchy"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${MAKE} -f Makefile.inc1 hierarchy
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Installing everything.."
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${MAKE} -f Makefile.inc1 install
 +.if !defined(NOMAN) && !defined(NO_MAKEDB_RUN)
 +      @echo
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Rebuilding man page indices"
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}/share/man; ${MAKE} makedb
 +.endif
 +
 +redistribute:
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Distributing everything.."
 +      @echo "--------------------------------------------------------------"
 +      cd ${.CURDIR}; ${MAKE} -f Makefile.inc1 distribute
 +
 +#
 +# buildkernel, nativekernel, quickkernel, and installkernel
 +#
 +# Which kernels to build and/or install is specified by setting
 +# KERNCONF. If not defined a GENERIC kernel is built/installed.
 +# Only the existing (depending TARGET) config files are used
 +# for building kernels and only the first of these is designated
 +# as the one being installed.
 +#
 +# You can specify INSTALLSTRIPPED=1 if you wish the installed 
 +# kernel and modules to be stripped of its debug info (required
 +# symbols are left intact).  You can specify INSTALLSTRIPPEDMODULES
 +# if you only want to strip the modules of their debug info.  These
 +# only apply if you have DEBUG=-g in your kernel config or make line.
 +#
 +# Note that we have to use TARGET instead of TARGET_ARCH when
 +# we're in kernel-land. Since only TARGET_ARCH is (expected) to
 +# be set to cross-build, we have to make sure TARGET is set
 +# properly.
 +
 +.if !defined(KERNCONF) && defined(KERNEL)
 +KERNCONF=     ${KERNEL}
 +KERNWARN=     yes
 +.else
 +KERNCONF?=    GENERIC
 +.endif
 +INSTKERNNAME?=        kernel
 +
 +KRNLSRCDIR=   ${.CURDIR}/sys
 +KRNLCONFDIR=  ${KRNLSRCDIR}/config
 +KRNLOBJDIR=   ${OBJTREE}${KRNLSRCDIR}
 +KERNCONFDIR?= ${KRNLCONFDIR}
 +
 +BUILDKERNELS=
 +INSTALLKERNEL=
 +.for _kernel in ${KERNCONF}
 +.if exists(${KERNCONFDIR}/${_kernel})
 +BUILDKERNELS+=        ${_kernel}
 +.if empty(INSTALLKERNEL)
 +INSTALLKERNEL= ${_kernel}
 +.endif
 +.endif
 +.endfor
 +
 +# kernel version numbers survive rm -rf
 +#
 +.for _kernel in ${BUILDKERNELS}
 +.if exists(${KRNLOBJDIR}/${_kernel}/version)
 +KERNEL_VERSION_${_kernel} != cat ${KRNLOBJDIR}/${_kernel}/version
 +.endif
 +.endfor
 +
 +#
 +# buildkernel
 +#
 +# Builds all kernels defined by BUILDKERNELS.
 +#
 +bk_tools:
 +      @if [ ! -f ${WORLDDEST}/.libraries_done ]; then \
 +          echo "You must buildworld before buildkernel.  If you wish"; \
 +          echo "to build a kernel using native tools, config it manually"; \
 +          echo "or use the nativekernel target if you are in a rush"; \
 +          exit 1; \
 +      fi
 +
 +maybe_bk_tools:
 +.for _kernel in ${BUILDKERNELS}
 +      @if [ ! -f ${KRNLOBJDIR}/${_kernel}/.nativekernel_run ]; then \
 +          if [ ! -f ${WORLDDEST}/.libraries_done ]; then \
 +              echo "The kernel was build using buildworld tools which no" ; \
 +              echo "longer appear to exist, quickkernel failed!" ; \
 +              exit 1; \
 +          fi; \
 +      fi
 +.endfor
 +
 +bk_build_list:
 +.if empty(BUILDKERNELS)
 +      @echo ">>> ERROR: Missing kernel configuration file(s) (${KERNCONF})."
 +      @echo ">>> Did you move your kernel configs from i386/conf to config/?"
 +      @false
 +.endif
 +
 +bk_kernwarn:
 +.if defined(KERNWARN)
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> WARNING: KERNEL= setting should be changed to KERNCONF="
 +      @echo "--------------------------------------------------------------"
 +      @sleep 3
 +.endif
 +      @echo
 +
 +# The buildkernel target rebuilds the specified kernels from scratch
 +# using the crossbuild tools generated by the last buildworld.  It is
 +# the safest (but also the most time consuming) way to build a new kernel.
 +#
 +buildkernel:  bk_tools bk_build_list bk_kernwarn
 +.for _kernel in ${BUILDKERNELS}
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} started on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +      @echo "===> ${_kernel}"
 +.if !defined(NOCLEAN) && !defined(NO_KERNELCLEAN)
 +      rm -rf ${KRNLOBJDIR}/${_kernel}
 +.else
 +      @if [ -f ${KRNLOBJDIR}/${_kernel}/.nativekernel_run ]; then \
 +              echo "YOU ARE REBUILDING WITH BUILDKERNEL, REMOVING OLD NATIVEKERNEL BUILD"; \
 +              rm -rf ${KRNLOBJDIR}/${_kernel}; fi
 +.endif
 +      mkdir -p ${KRNLOBJDIR}
 +.if !defined(NO_KERNELCONFIG)
 +      cd ${KRNLCONFDIR}; \
 +              PATH=${STRICTTMPPATH} \
 +                  config ${CONFIGARGS} -d ${KRNLOBJDIR}/${_kernel} \
 +                      ${KERNCONFDIR}/${_kernel}
 +.endif
 +.if !defined(NOCLEAN) && !defined(NO_KERNELCLEAN) && defined(KERNEL_VERSION_${_kernel})
 +      echo ${KERNEL_VERSION_${_kernel}} > ${KRNLOBJDIR}/${_kernel}/version
 +.endif
 +      touch ${KRNLOBJDIR}/${_kernel}/.buildkernel_run
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          MAKESRCPATH=${KRNLSRCDIR}/dev/disk/aic7xxx/aicasm \
 +          ${MAKE} -DBOOTSTRAPPING -f ${KRNLSRCDIR}/dev/disk/aic7xxx/aicasm/Makefile
 +.if !defined(NO_KERNELDEPEND)
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} depend
 +.endif
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} all
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +.endfor
 +
 +# The nativekernel target rebuilds the specified kernels from scratch
 +# using the system's standard compiler rather than using the crossbuild
 +# tools generated by the last buildworld.  This is fairly safe if your
 +# system is reasonable up-to-date.
 +#
 +nativekernel: bk_build_list bk_kernwarn
 +.for _kernel in ${BUILDKERNELS}
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} started on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +      @echo "===> ${_kernel}"
 +.if !defined(NOCLEAN) && !defined(NO_KERNELCLEAN)
 +      rm -rf ${KRNLOBJDIR}/${_kernel}
 +.else
 +      @if [ -f ${KRNLOBJDIR}/${_kernel}/.buildkernel_run ]; then \
 +              echo "YOU ARE REBUILDING WITH NATIVEKERNEL, REMOVING OLD BUILDKERNEL BUILD"; \
 +              rm -rf ${KRNLOBJDIR}/${_kernel}; fi
 +.endif
 +      mkdir -p ${KRNLOBJDIR}
 +.if !defined(NO_KERNELCONFIG)
 +      cd ${KRNLCONFDIR}; \
 +                  config ${CONFIGARGS} -d ${KRNLOBJDIR}/${_kernel} \
 +                      ${KERNCONFDIR}/${_kernel}
 +.endif
 +.if !defined(NOCLEAN) && !defined(NO_KERNELCLEAN) && defined(KERNEL_VERSION_${_kernel})
 +      echo ${KERNEL_VERSION_${_kernel}} > ${KRNLOBJDIR}/${_kernel}/version
 +.endif
 +      touch ${KRNLOBJDIR}/${_kernel}/.nativekernel_run
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          MAKESRCPATH=${KRNLSRCDIR}/dev/disk/aic7xxx/aicasm \
 +          ${MAKE} -DBOOTSTRAPPING -f ${KRNLSRCDIR}/dev/disk/aic7xxx/aicasm/Makefile
 +.if !defined(NO_KERNELDEPEND)
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${MAKE} KERNEL=${INSTKERNNAME} depend
 +.endif
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${MAKE} KERNEL=${INSTKERNNAME} all
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +.endfor
 +
 +# The quickkernel target rebuilds the specified kernels as quickly
 +# as possible.  It will use the native tools or the buildworld cross tools
 +# based on whether the kernel was originally generated via buildkernel or
 +# nativekernel.  Config is rerun but the object hierarchy is not rebuilt,
 +# nor is the make depend step run.
 +#
 +quickkernel:  maybe_bk_tools bk_build_list bk_kernwarn
 +.for _kernel in ${BUILDKERNELS}
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} started on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +      @echo "===> ${_kernel}"
 +.if exists(${KRNLOBJDIR}/${_kernel}/.buildkernel_run)
 +.if !defined(NO_KERNELCONFIG)
 +      cd ${KRNLCONFDIR}; \
 +              PATH=${STRICTTMPPATH} \
 +                  config ${CONFIGARGS} -d ${KRNLOBJDIR}/${_kernel} \
 +                      ${KERNCONFDIR}/${_kernel}
 +.endif
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} all
 +.else
 +.if !defined(NO_KERNELCONFIG)
 +      cd ${KRNLCONFDIR}; \
 +          config ${CONFIGARGS} -d ${KRNLOBJDIR}/${_kernel} \
 +              ${KERNCONFDIR}/${_kernel}
 +.endif
 +      cd ${KRNLOBJDIR}/${_kernel}; \
 +          ${MAKE} KERNEL=${INSTKERNNAME} all
 +.endif
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +.endfor
 +
 +
 +# installkernel
 +#
 +# Install the kernel defined by INSTALLKERNEL
 +#
 +installkernel reinstallkernel:
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Kernel install for ${INSTALLKERNEL} started on `LC_ALL=C date`"
 +      @echo "--------------------------------------------------------------"
 +.if exists(${KRNLOBJDIR}/${INSTALLKERNEL}/.buildkernel_run)
 +      cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \
 +          ${IMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}
 +.else
 +      cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \
 +          ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}
 +.endif
 +
 +#
 +# most
 +#
 +# Build most of the user binaries on the existing system libs and includes.
 +#
 +most:
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Building programs only"
 +      @echo "--------------------------------------------------------------"
 +.for _dir in bin sbin libexec usr.bin usr.sbin gnu/libexec gnu/usr.bin gnu/usr.sbin
 +      cd ${.CURDIR}/${_dir};          ${MAKE} DIRPRFX=${_dir}/ all
 +.endfor
 +
 +#
 +# installmost
 +#
 +# Install the binaries built by the 'most' target.  This does not include
 +# libraries or include files.
 +#
 +installmost:
 +      @echo "--------------------------------------------------------------"
 +      @echo ">>> Installing programs only"
 +      @echo "--------------------------------------------------------------"
 +.for _dir in bin sbin libexec usr.bin usr.sbin gnu/libexec gnu/usr.bin gnu/usr.sbin
 +      cd ${.CURDIR}/${_dir};          ${MAKE} DIRPRFX=${_dir}/ install
 +.endfor
 +
 +#
 +# ------------------------------------------------------------------------
 +#
 +# From here onwards are utility targets used by the 'make world' and
 +# related targets.  If your 'world' breaks, you may like to try to fix
 +# the problem and manually run the following targets to attempt to
 +# complete the build.  Beware, this is *not* guaranteed to work, you
 +# need to have a pretty good grip on the current state of the system
 +# to attempt to manually finish it.  If in doubt, 'make world' again.
 +#
 +
 +# bootstrap-tools: Build all tools required to build all tools.  Note that
 +# order is important in a number of cases and also note that the bootstrap
 +# and build tools stages have access to earlier binaries they themselves
 +# had generated.
 +#
 +# patch:      older patch's do not have -i.  This program must be built
 +#             first so other bootstrap tools that need to apply patches
 +#             can use it.
 +# [x]install: dependancies on various new install features
 +# rpcgen:     old rpcgen used a hardwired cpp path, newer OBJFORMAT_PATH
 +#             envs are not compatible with older objformat binaries.
 +#
 +.if exists(${.CURDIR}/games) && !defined(NO_GAMES)
 +_strfile=     games/fortune/strfile
 +.endif
 +
 +bootstrap-tools:
 +      ${LN} -fs /bin/date ${BTOOLSDEST}/bin/date
 +.for _tool in ${_strfile} \
 +    usr.bin/patch \
 +    bin/chmod bin/cp bin/cpdup bin/dd bin/mkdir bin/rm bin/echo bin/test \
 +    bin/cat bin/ln bin/mv bin/csh bin/expr bin/sh \
 +    bin/hostname bin/kill \
 +    usr.bin/yacc usr.bin/colldef usr.bin/uudecode usr.bin/xinstall \
 +    usr.bin/m4 usr.bin/rpcgen usr.bin/make usr.bin/awk usr.bin/stat \
 +    usr.bin/find usr.bin/lex usr.bin/sed usr.bin/uname usr.bin/touch \
 +    usr.bin/mkdep usr.bin/mktemp usr.bin/lorder usr.bin/file2c \
 +    usr.bin/tsort usr.bin/tr usr.bin/join usr.bin/wc usr.bin/basename \
 +    usr.bin/gencat usr.bin/chflags usr.bin/expand usr.bin/paste \
 +    usr.bin/mklocale usr.bin/uuencode usr.bin/compile_et usr.bin/hexdump \
 +    usr.bin/cap_mkdb usr.bin/true usr.bin/false \
 +    usr.bin/cmp usr.bin/xargs usr.bin/id usr.bin/env usr.bin/dirname \
 +    usr.bin/tail \
 +    usr.sbin/chown usr.sbin/mtree usr.sbin/config \
 +    usr.sbin/btxld usr.sbin/zic usr.sbin/makewhatis \
 +    gnu/usr.bin/texinfo gnu/usr.bin/grep gnu/usr.bin/sort \
 +    usr.bin/gzip usr.bin/bzip2 usr.bin/mkcsmapper usr.bin/mkesdb
 +      ${ECHODIR} "===> ${_tool} (bootstrap-tools)"; \
 +              cd ${.CURDIR}/${_tool}; \
 +              ${MAKE} DIRPRFX=${_tool}/ obj; \
 +              ${MAKE} DIRPRFX=${_tool}/ depend; \
 +              ${MAKE} DIRPRFX=${_tool}/ all; \
 +              ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${BTOOLSDEST} install
 +.endfor
 +      touch ${BTOOLSDEST}/.bootstrap_done
 +
 +# build-tools: Build special purpose build tools.
 +#
 +# XXX we may be able to remove or consolidate this into bootstrap-tools
 +# now that we have the native helper (.nx/.no) infrastructure.
 +#
 +.if exists(${.CURDIR}/share) && !defined(NO_SHARE)
 +_share=       share/syscons/scrnmaps
 +.endif
 +
 +.if !defined(NO_GCC34)
 +_gcc34_cross= gnu/usr.bin/cc34
 +_gcc34_tools= gnu/usr.bin/cc34/cc_prep gnu/usr.bin/cc34/cc_tools
 +.endif
 +_gcc41_cross= gnu/usr.bin/cc41
 +_gcc41_tools= gnu/usr.bin/cc41/cc_prep gnu/usr.bin/cc41/cc_tools
 +_binutils= gnu/usr.bin/binutils217
 +
 +.if exists(${.CURDIR}/kerberos5) && exists(${.CURDIR}/crypto) && \
 +    !defined(NO_CRYPT) && defined(WANT_KERBEROS)
 +_libkrb5= kerberos5/tools kerberos5/lib/libroken kerberos5/lib/libvers \
 +    kerberos5/lib/libasn1 kerberos5/lib/libhdb kerberos5/lib/libsl
 +.endif
 +
 +build-tools:
 +.for _tool in ${_gcc34_tools} ${_gcc41_tools} ${_libkrb5} ${_share}
 +      ${ECHODIR} "===> ${_tool} (build-tools)"; \
 +              cd ${.CURDIR}/${_tool}; \
 +              ${MAKE} DIRPRFX=${_tool}/ obj; \
 +              ${MAKE} DIRPRFX=${_tool}/ depend; \
 +              ${MAKE} DIRPRFX=${_tool}/ all; \
 +              ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${BTOOLSDEST} install
 +.endfor
 +      touch ${BTOOLSDEST}/.build_done
 +
 +#
 +# cross-tools: Build cross-building tools
 +#
 +.if ${TARGET_ARCH} == "i386" && ${MACHINE_ARCH} != "i386"
 +_btxld=       usr.sbin/btxld
 +.endif
 +
 +cross-tools:
 +.for _tool in ${_btxld} ${_binutils} \
 +            usr.bin/objformat usr.bin/crunch/crunchide \
 +            ${_gcc34_cross} ${_gcc41_cross}
 +      ${ECHODIR} "===> ${_tool} (cross-tools)"; \
 +              cd ${.CURDIR}/${_tool}; \
 +              ${MAKE} DIRPRFX=${_tool}/ obj; \
 +              ${MAKE} DIRPRFX=${_tool}/ depend; \
 +              ${MAKE} DIRPRFX=${_tool}/ all; \
 +              ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${CTOOLSDEST} install
 +.endfor
 +      touch ${CTOOLSDEST}/.cross_done
 +
 +#
 +# hierarchy - ensure that all the needed directories are present
 +#
 +hierarchy:
 +      cd ${.CURDIR}/etc;              ${MAKE} distrib-dirs
 +
 +#
 +# libraries - build all libraries, and install them under ${DESTDIR}.
 +#
 +# The list of libraries with dependents (${_prebuild_libs}) and their
 +# interdependencies (__L) are built automatically by the
 +# ${.CURDIR}/tools/make_libdeps.sh script.
 +#
 +# .makeenv does not work when bootstrapping from 4.x, so we must be sure
 +# to specify the correct CCVER or 'cc' will not exec the correct compiler.
 +#
 +libraries:
 +.if !defined(NO_GCC34)
 +      cd ${.CURDIR}; \
 +          HOST_CCVER=${HOST_CCVER} CCVER=gcc34 \
 +              ${MAKE} -f Makefile.inc1 _startup_libs34;
 +.endif
 +      cd ${.CURDIR}; \
 +          HOST_CCVER=${HOST_CCVER} CCVER=gcc41 \
 +              ${MAKE} -f Makefile.inc1 _startup_libs41;
 +      cd ${.CURDIR}; \
 +          ${MAKE} -f Makefile.inc1 _startup_libs; \
 +          ${MAKE} -f Makefile.inc1 _prebuild_libs; \
 +          ${MAKE} -f Makefile.inc1 _generic_libs;
 +      touch ${WORLDDEST}/.libraries_done
 +
 +# These dependencies are not automatically generated:
 +#
 +# gnu/lib/${CCVER}/libgcc and gnu/lib/${CCVER}/csu must be built before all
 +# shared libraries for ELF.  The target for _startup_libs34 is
 +# specifically built using gcc34.  Same goes for _startup_libs41.
 +#
 +_startup_libs34=      gnu/lib/gcc34/csu gnu/lib/gcc34/libgcc
 +_startup_libs41=      gnu/lib/gcc41/csu gnu/lib/gcc41/libgcc
 +_startup_libs=                lib/csu lib/libc lib/libc_rtld
 +
++_prebuild_libs=               lib/libbz2 lib/libz
 +_prebuild_libs+=      lib/libutil
 +
 +_generic_libs=        gnu/lib
 +
 +.if !defined(NO_CRYPT) && defined(WANT_KERBEROS)
 +_prebuild_libs+=      kerberos5/tools
 +_prebuild_libs+=      kerberos5/lib/libasn1
 +_prebuild_libs+=      kerberos5/lib/libgssapi
 +_prebuild_libs+=      kerberos5/lib/libkrb5
 +_prebuild_libs+=      kerberos5/lib/libroken
 +_generic_libs+=       kerberos5/lib
 +.endif
 +
 +_prebuild_libs+= lib/libcom_err lib/libcrypt lib/libmd \
 +              lib/libncurses/libncurses lib/libopie lib/libradius \
 +              lib/libsbuf lib/libtacplus lib/libm \
 +              lib/libpam lib/libypclnt lib/lib${THREAD_LIB}
 +
 +lib/libopie__L lib/libradius__L lib/libtacplus__L: lib/libmd__L
 +
 +_generic_libs+=       lib
 +
 +.if !defined(NO_CRYPT)
 +.if !defined(NO_OPENSSL)
 +_prebuild_libs+=      secure/lib/libcrypto secure/lib/libssl
 +.if !defined(NO_OPENSSH)
 +_prebuild_libs+=      secure/lib/libssh
 +secure/lib/libssh__L: secure/lib/libcrypto__L lib/libz__L
 +.endif
 +.endif
 +_generic_libs+=       secure/lib
 +.endif
 +
 +_generic_libs+=       usr.bin/lex/lib
 +
 +.for _lib in ${_startup_libs34} ${_startup_libs41} \
 +              ${_startup_libs} ${_prebuild_libs} ${_generic_libs}
 +${_lib}__L: .PHONY
 +.if exists(${.CURDIR}/${_lib})
 +      ${ECHODIR} "===> ${_lib}"; \
 +              cd ${.CURDIR}/${_lib}; \
 +              ${MAKE} DIRPRFX=${_lib}/ depend; \
 +              ${MAKE} DIRPRFX=${_lib}/ all; \
 +              ${MAKE} DIRPRFX=${_lib}/ install
 +.endif
 +.endfor
 +
 +_startup_libs: ${_startup_libs:S/$/__L/}
 +_startup_libs34: ${_startup_libs34:S/$/__L/}
 +_startup_libs41: ${_startup_libs41:S/$/__L/}
 +_prebuild_libs: ${_prebuild_libs:S/$/__L/}
 +_generic_libs: ${_generic_libs:S/$/__L/}
 +
 +# library targets must be ordered because there are inter-library
 +# races (e.g. generation of tconfig.h)
 +#
 +.ORDER: ${_startup_libs34:S/$/__L/}
 +.ORDER: ${_startup_libs41:S/$/__L/}
 +.ORDER: ${_startup_libs:S/$/__L/}
 +.ORDER: ${_prebuild_libs:S/$/__L/}
 +.ORDER: ${_generic_libs:S/$/__L/}
 +
 +.for __target in clean cleandepend cleandir obj depend includes
 +.for entry in ${SUBDIR}
 +${entry}.${__target}__D: .PHONY
 +      @if test -d ${.CURDIR}/${entry}.${MACHINE_ARCH}; then \
 +              ${ECHODIR} "===> ${DIRPRFX}${entry}.${MACHINE_ARCH}"; \
 +              edir=${entry}.${MACHINE_ARCH}; \
 +              cd ${.CURDIR}/$${edir}; \
 +      else \
 +              ${ECHODIR} "===> ${DIRPRFX}${entry}"; \
 +              edir=${entry}; \
 +              cd ${.CURDIR}/$${edir}; \
 +      fi; \
 +      ${MAKE} ${__target} DIRPRFX=${DIRPRFX}$${edir}/
 +.endfor
 +par-${__target}: ${SUBDIR:S/$/.${__target}__D/}
 +.ORDER: ${SUBDIR:S/$/.${__target}__D/}
 +.endfor
 +.ORDER: par-clean par-cleandepend par-cleandir par-obj par-depend par-includes
 +
 +# The wmake target is used by /usr/bin/wmake to run make in a
 +# world build environment.
 +#
 +wmake:
 +      @echo '${WMAKEENV} ${MAKE} -m ${.CURDIR}/share/mk ${WMAKE_ARGS}'
 +
 +wmakeenv:
 +      @echo '${WMAKEENV} /bin/sh'
 +
 +bmake:
 +      @echo '${BMAKEENV} ${MAKE} -m ${.CURDIR}/share/mk ${BMAKE_ARGS}'
 +
 +bmakeenv:
 +      @echo '${BMAKEENV} /bin/sh'
 +
 +tmake:
 +      @echo '${TMAKEENV} ${MAKE} -m ${.CURDIR}/share/mk ${TMAKE_ARGS}'
 +
 +tmakeenv:
 +      @echo '${TMAKEENV} /bin/sh'
 +
 +xmake:
 +      @echo '${XMAKEENV} ${MAKE} -m ${.CURDIR}/share/mk ${XMAKE_ARGS}'
 +
 +xmakeenv:
 +      @echo '${XMAKEENV} /bin/sh'
 +
 +.include <bsd.subdir.mk>
 +
index 29fd02f,0000000..7336e5b
mode 100644,000000..100644
--- /dev/null
@@@ -1,11 -1,0 +1,9 @@@
- Remember to update cpio's version string in config.h.
 +Original source can be downloaded from:
 +http://people.freebsd.org/~kientzle/libarchive/src/
 +
 +A list of deleted files is in README.DELETED.
 +
 +This source is used in:
 +      lib/libarchive
 +      usr.bin/cpio
 +      usr.bin/tar
diff --cc lib/Makefile
index 479fede,0000000..7af021a
mode 100644,000000..100644
--- /dev/null
@@@ -1,59 -1,0 +1,59 @@@
- # libmd must be built before libatm, libopie, libradius, and libtacplus.
 +#     @(#)Makefile    8.1 (Berkeley) 6/4/93
 +# $FreeBSD: src/lib/Makefile,v 1.107.2.16 2002/10/10 19:24:35 kbyanc Exp $
 +# $DragonFly: src/lib/Makefile,v 1.35 2008/09/30 12:20:29 hasso Exp $
 +
 +# To satisfy shared library or ELF linkage when only the libraries being
 +# built are visible:
 +#
 +# libcom_err must be built before libkrb and libpam.
 +# libcrypt must be built before libkrb and libpam.
-       libarchive libbluetooth libcom_err libcrypt libm libmd \
++# libmd must be built before libarchive, libatm, libopie, libradius, and libtacplus.
 +# libncurses must be built before libdialog, libedit and libreadline.
 +# libradius must be built before libpam.
 +# libtacplus must be built before libpam.
 +# libutil must be built before libpam.
 +# libsbuf must be built before libcam.
 +# libthread_xu must be built before libpthread.
 +# ${_libc_r} must be built before libpthread.
 +#
 +# Otherwise, the SUBDIR list should be in alphabetical order.
 +
 +SUBDIR=       csu \
++      libbluetooth libcom_err libcrypt libm libmd libarchive \
 +      libncurses libradius libtacplus libutil libsbuf \
 +      libalias libatm ${_libbind} ${_libbind9} libbz2 libc ${_libc_r} \
 +      libcalendar libcam libcompat libdevinfo libdevstat libedit libevent libfetch \
 +      libftpio libipsec libipx libisc libkcore libkinfo libkvm libmagic \
 +      ${_libmilter} ${_libncp} libnetgraph libopie libpam \
 +      libpcap libposix1e libsdp libthread_xu libpthread librpcsvc ${_libsm} \
 +      ${_libsmb} ${_libsmdb} ${_libsmutil} libstand libtelnet libusbhid \
 +      ${_libvgl} libwrap libxpg4 liby libypclnt libz i18n_module pam_module \
 +      libc_rtld libsctp
 +
 +.if exists(${.CURDIR}/compat/${MACHINE_ARCH}/Makefile)
 +SUBDIR+= compat/${MACHINE_ARCH}
 +.endif
 +
 +.if !defined(NO_LIBC_R)
 +_libc_r=      libc_r
 +.endif
 +
 +.if !defined(NO_BIND)
 +_libbind=     libbind
 +_libbind9=    libbind9
 +.endif
 +
 +.if !defined(NO_SENDMAIL)
 +_libmilter=   libmilter
 +_libsm=               libsm
 +_libsmdb=     libsmdb
 +_libsmutil=   libsmutil
 +.endif
 +
 +.if ${MACHINE_ARCH} == "i386"
 +_libncp=      libncp
 +_libsmb=      libsmb
 +_libvgl=      libvgl
 +.endif
 +
 +.include <bsd.subdir.mk>
index c2b4aa3,0000000..4c07e29
mode 100644,000000..100644
--- /dev/null
@@@ -1,234 -1,0 +1,258 @@@
- DPADD=        ${LIBBZ2} ${LIBZ}
- LDADD=        -lbz2 -lz
 +# $FreeBSD: src/lib/libarchive/Makefile,v 1.50 2006/09/05 05:59:45 kientzle Exp $
 +# $DragonFly: src/lib/libarchive/Makefile,v 1.21 2008/06/18 06:28:21 hasso Exp $
 +
 +LIB=  archive
 +
 +CONTRIBDIR=   ${.CURDIR}/../../contrib/libarchive/libarchive
 +.PATH: ${CONTRIBDIR}
 +
 +SHLIB_MAJOR=  5
 +CFLAGS+=      -DPLATFORM_CONFIG_H=\"config.h\"
 +CFLAGS+=      -I${.OBJDIR} -I${.CURDIR} -I${CONTRIBDIR}
 +WARNS?=       6
 +
++DPADD=        ${LIBBZ2} ${LIBZ} ${LIBMD}
++LDADD=        -lbz2 -lz -lmd
++.if !defined(NO_OPENSSL)
++DPADD+=       ${LIBCRYPTO}
++LDADD+=       -lcrypto
++CFLAGS+=      -DWITH_OPENSSL
++.endif
 +
 +INCS= archive.h archive_entry.h
 +
 +SRCS= archive_check_magic.c                           \
 +      archive_entry.c                                 \
 +      archive_entry_copy_stat.c                       \
 +      archive_entry_link_resolver.c                   \
 +      archive_entry_stat.c                            \
 +      archive_entry_strmode.c                         \
 +      archive_read.c                                  \
 +      archive_read_data_into_fd.c                     \
++      archive_read_disk.c                             \
++      archive_read_disk_entry_from_file.c             \
++      archive_read_disk_set_standard_lookup.c         \
 +      archive_read_extract.c                          \
 +      archive_read_open_fd.c                          \
 +      archive_read_open_file.c                        \
 +      archive_read_open_filename.c                    \
 +      archive_read_open_memory.c                      \
 +      archive_read_support_compression_all.c          \
 +      archive_read_support_compression_bzip2.c        \
 +      archive_read_support_compression_compress.c     \
 +      archive_read_support_compression_gzip.c         \
 +      archive_read_support_compression_none.c         \
 +      archive_read_support_compression_program.c      \
++      archive_read_support_compression_xz.c           \
 +      archive_read_support_format_all.c               \
 +      archive_read_support_format_ar.c                \
 +      archive_read_support_format_cpio.c              \
 +      archive_read_support_format_empty.c             \
 +      archive_read_support_format_iso9660.c           \
 +      archive_read_support_format_mtree.c             \
 +      archive_read_support_format_tar.c               \
 +      archive_read_support_format_zip.c               \
 +      archive_string.c                                \
 +      archive_string_sprintf.c                        \
 +      archive_util.c                                  \
 +      archive_virtual.c                               \
 +      archive_write.c                                 \
 +      archive_write_disk.c                            \
 +      archive_write_disk_set_standard_lookup.c        \
 +      archive_write_open_fd.c                         \
 +      archive_write_open_file.c                       \
 +      archive_write_open_filename.c                   \
 +      archive_write_open_memory.c                     \
 +      archive_write_set_compression_bzip2.c           \
 +      archive_write_set_compression_compress.c        \
 +      archive_write_set_compression_gzip.c            \
 +      archive_write_set_compression_none.c            \
 +      archive_write_set_compression_program.c         \
++      archive_write_set_compression_xz.c              \
 +      archive_write_set_format.c                      \
 +      archive_write_set_format_ar.c                   \
 +      archive_write_set_format_by_name.c              \
 +      archive_write_set_format_cpio.c                 \
 +      archive_write_set_format_cpio_newc.c            \
++      archive_write_set_format_mtree.c                \
 +      archive_write_set_format_pax.c                  \
 +      archive_write_set_format_shar.c                 \
 +      archive_write_set_format_ustar.c                \
 +      filter_fork.c
 +
 +MAN=  archive_entry.3                                 \
 +      archive_read.3                                  \
++      archive_read_disk.3                             \
 +      archive_util.3                                  \
 +      archive_write.3                                 \
 +      archive_write_disk.3                            \
 +      cpio.5                                          \
 +      libarchive.3                                    \
 +      libarchive-formats.5                            \
 +      libarchive_internals.3                          \
 +      mtree.5                                         \
 +      tar.5
 +
 +MLINKS+=      archive_entry.3 archive_entry_acl_add_entry.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_add_entry_w.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_clear.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_count.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_next.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_next_w.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_reset.3
 +MLINKS+=      archive_entry.3 archive_entry_acl_text_w.3
 +MLINKS+=      archive_entry.3 archive_entry_atime.3
 +MLINKS+=      archive_entry.3 archive_entry_atime_nsec.3
 +MLINKS+=      archive_entry.3 archive_entry_clear.3
 +MLINKS+=      archive_entry.3 archive_entry_clone.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_fflags_text.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_fflags_text_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_gname.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_gname_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_hardlink.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_hardlink_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_link.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_link_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_pathname_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_sourcepath.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_stat.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_symlink.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_symlink_w.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_uname.3
 +MLINKS+=      archive_entry.3 archive_entry_copy_uname_w.3
 +MLINKS+=      archive_entry.3 archive_entry_dev.3
 +MLINKS+=      archive_entry.3 archive_entry_devmajor.3
 +MLINKS+=      archive_entry.3 archive_entry_devminor.3
 +MLINKS+=      archive_entry.3 archive_entry_filetype.3
 +MLINKS+=      archive_entry.3 archive_entry_fflags.3
 +MLINKS+=      archive_entry.3 archive_entry_fflags_text.3
 +MLINKS+=      archive_entry.3 archive_entry_free.3
 +MLINKS+=      archive_entry.3 archive_entry_gid.3
 +MLINKS+=      archive_entry.3 archive_entry_gname.3
 +MLINKS+=      archive_entry.3 archive_entry_hardlink.3
 +MLINKS+=      archive_entry.3 archive_entry_ino.3
 +MLINKS+=      archive_entry.3 archive_entry_mode.3
 +MLINKS+=      archive_entry.3 archive_entry_mtime.3
 +MLINKS+=      archive_entry.3 archive_entry_mtime_nsec.3
 +MLINKS+=      archive_entry.3 archive_entry_new.3
 +MLINKS+=      archive_entry.3 archive_entry_nlink.3
 +MLINKS+=      archive_entry.3 archive_entry_pathname.3
 +MLINKS+=      archive_entry.3 archive_entry_pathname_w.3
 +MLINKS+=      archive_entry.3 archive_entry_rdev.3
 +MLINKS+=      archive_entry.3 archive_entry_rdevmajor.3
 +MLINKS+=      archive_entry.3 archive_entry_rdevminor.3
 +MLINKS+=      archive_entry.3 archive_entry_set_atime.3
 +MLINKS+=      archive_entry.3 archive_entry_set_ctime.3
 +MLINKS+=      archive_entry.3 archive_entry_set_dev.3
 +MLINKS+=      archive_entry.3 archive_entry_set_devmajor.3
 +MLINKS+=      archive_entry.3 archive_entry_set_devminor.3
 +MLINKS+=      archive_entry.3 archive_entry_set_filetype.3
 +MLINKS+=      archive_entry.3 archive_entry_set_fflags.3
 +MLINKS+=      archive_entry.3 archive_entry_set_gid.3
 +MLINKS+=      archive_entry.3 archive_entry_set_gname.3
 +MLINKS+=      archive_entry.3 archive_entry_set_hardlink.3
 +MLINKS+=      archive_entry.3 archive_entry_set_link.3
 +MLINKS+=      archive_entry.3 archive_entry_set_mode.3
 +MLINKS+=      archive_entry.3 archive_entry_set_mtime.3
 +MLINKS+=      archive_entry.3 archive_entry_set_pathname.3
 +MLINKS+=      archive_entry.3 archive_entry_set_rdevmajor.3
 +MLINKS+=      archive_entry.3 archive_entry_set_rdevminor.3
 +MLINKS+=      archive_entry.3 archive_entry_set_size.3
 +MLINKS+=      archive_entry.3 archive_entry_set_symlink.3
 +MLINKS+=      archive_entry.3 archive_entry_set_uid.3
 +MLINKS+=      archive_entry.3 archive_entry_set_uname.3
 +MLINKS+=      archive_entry.3 archive_entry_size.3
 +MLINKS+=      archive_entry.3 archive_entry_sourcepath.3
 +MLINKS+=      archive_entry.3 archive_entry_stat.3
 +MLINKS+=      archive_entry.3 archive_entry_symlink.3
 +MLINKS+=      archive_entry.3 archive_entry_uid.3
 +MLINKS+=      archive_entry.3 archive_entry_uname.3
 +MLINKS+=      archive_read.3 archive_read_close.3
 +MLINKS+=      archive_read.3 archive_read_data.3
 +MLINKS+=      archive_read.3 archive_read_data_block.3
 +MLINKS+=      archive_read.3 archive_read_data_into_buffer.3
 +MLINKS+=      archive_read.3 archive_read_data_into_fd.3
 +MLINKS+=      archive_read.3 archive_read_data_skip.3
 +MLINKS+=      archive_read.3 archive_read_extract.3
 +MLINKS+=      archive_read.3 archive_read_extract2.3
 +MLINKS+=      archive_read.3 archive_read_extract_set_progress_callback.3
 +MLINKS+=      archive_read.3 archive_read_finish.3
 +MLINKS+=      archive_read.3 archive_read_new.3
 +MLINKS+=      archive_read.3 archive_read_next_header.3
 +MLINKS+=      archive_read.3 archive_read_open.3
 +MLINKS+=      archive_read.3 archive_read_open2.3
 +MLINKS+=      archive_read.3 archive_read_open_FILE.3
 +MLINKS+=      archive_read.3 archive_read_open_fd.3
 +MLINKS+=      archive_read.3 archive_read_open_filename.3
 +MLINKS+=      archive_read.3 archive_read_open_memory.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_all.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_bzip2.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_compress.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_gzip.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_none.3
 +MLINKS+=      archive_read.3 archive_read_support_compression_program.3
 +MLINKS+=      archive_read.3 archive_read_support_format_all.3
 +MLINKS+=      archive_read.3 archive_read_support_format_cpio.3
 +MLINKS+=      archive_read.3 archive_read_support_format_empty.3
 +MLINKS+=      archive_read.3 archive_read_support_format_iso9660.3
 +MLINKS+=      archive_read.3 archive_read_support_format_tar.3
 +MLINKS+=      archive_read.3 archive_read_support_format_zip.3
++MLINKS+=      archive_read_disk.3 archive_read_close.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_entry_from_file.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_gname.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_new.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_gname_lookup.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_standard_lookup.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_symlink_hybrid.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_symlink_logical.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_symlink_physical.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_set_uname_lookup.3
++MLINKS+=      archive_read_disk.3 archive_read_disk_uname.3
++MLINKS+=      archive_read_disk.3 archive_read_finish.3
 +MLINKS+=      archive_util.3 archive_clear_error.3
 +MLINKS+=      archive_util.3 archive_compression.3
 +MLINKS+=      archive_util.3 archive_compression_name.3
 +MLINKS+=      archive_util.3 archive_errno.3
 +MLINKS+=      archive_util.3 archive_error_string.3
 +MLINKS+=      archive_util.3 archive_format.3
 +MLINKS+=      archive_util.3 archive_format_name.3
 +MLINKS+=      archive_util.3 archive_set_error.3
 +MLINKS+=      archive_write.3 archive_write_close.3
 +MLINKS+=      archive_write.3 archive_write_data.3
 +MLINKS+=      archive_write.3 archive_write_finish.3
 +MLINKS+=      archive_write.3 archive_write_finish_entry.3
 +MLINKS+=      archive_write.3 archive_write_get_bytes_per_block.3
 +MLINKS+=      archive_write.3 archive_write_header.3
 +MLINKS+=      archive_write.3 archive_write_new.3
 +MLINKS+=      archive_write.3 archive_write_open.3
 +MLINKS+=      archive_write.3 archive_write_open_FILE.3
 +MLINKS+=      archive_write.3 archive_write_open_fd.3
 +MLINKS+=      archive_write.3 archive_write_open_filename.3
 +MLINKS+=      archive_write.3 archive_write_open_memory.3
 +MLINKS+=      archive_write.3 archive_write_set_bytes_in_last_block.3
 +MLINKS+=      archive_write.3 archive_write_set_bytes_per_block.3
 +MLINKS+=      archive_write.3 archive_write_set_compression_bzip2.3
 +MLINKS+=      archive_write.3 archive_write_set_compression_compress.3
 +MLINKS+=      archive_write.3 archive_write_set_compression_gzip.3
 +MLINKS+=      archive_write.3 archive_write_set_compression_none.3
 +MLINKS+=      archive_write.3 archive_write_set_compression_program.3
 +MLINKS+=      archive_write.3 archive_write_set_format_cpio.3
 +MLINKS+=      archive_write.3 archive_write_set_format_pax.3
 +MLINKS+=      archive_write.3 archive_write_set_format_pax_restricted.3
 +MLINKS+=      archive_write.3 archive_write_set_format_shar.3
 +MLINKS+=      archive_write.3 archive_write_set_format_shar_binary.3
 +MLINKS+=      archive_write.3 archive_write_set_format_ustar.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_close.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_data.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_finish.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_finish_entry.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_header.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_new.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_set_group_lookup.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_set_options.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_set_skip_file.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_set_standard_lookup.3
 +MLINKS+=      archive_write_disk.3 archive_write_disk_set_user_lookup.3
 +MLINKS+=      libarchive.3 archive.3
 +
 +.include <bsd.lib.mk>
index 943f5e4,0000000..2995773
mode 100644,000000..100644
--- /dev/null
@@@ -1,523 -1,0 +1,679 @@@
- /* $DragonFly: src/lib/libarchive/config.h,v 1.14 2008/11/11 00:55:48 pavalos Exp $ */
 +/* config.h.  Generated from config.h.in by configure.  */
 +/* config.h.in.  Generated from configure.ac by autoheader.  */
 +
 +/* Version number of bsdcpio */
- #define BSDCPIO_VERSION_STRING "1.0.0"
++/* #undef BSDCPIO_VERSION_STRING */
 +
 +/* Version number of bsdtar */
 +/* #undef BSDTAR_VERSION_STRING */
 +
 +/* Define to 1 if you have the `acl_create_entry' function. */
 +/* #undef HAVE_ACL_CREATE_ENTRY */
 +
 +/* Define to 1 if you have the `acl_get_perm' function. */
 +/* #undef HAVE_ACL_GET_PERM */
 +
 +/* Define to 1 if you have the `acl_get_perm_np' function. */
 +/* #undef HAVE_ACL_GET_PERM_NP */
 +
 +/* Define to 1 if you have the `acl_init' function. */
 +/* #undef HAVE_ACL_INIT */
 +
++/* Define to 1 if you have the <acl/libacl.h> header file. */
++/* #undef HAVE_ACL_LIBACL_H */
++
 +/* Define to 1 if the system has the type `acl_permset_t'. */
 +/* #undef HAVE_ACL_PERMSET_T */
 +
 +/* Define to 1 if you have the `acl_set_fd' function. */
 +/* #undef HAVE_ACL_SET_FD */
 +
 +/* Define to 1 if you have the `acl_set_fd_np' function. */
 +/* #undef HAVE_ACL_SET_FD_NP */
 +
 +/* Define to 1 if you have the `acl_set_file' function. */
 +/* #undef HAVE_ACL_SET_FILE */
 +
 +/* True for systems with POSIX ACL support */
 +#define HAVE_ACL_USER 1
 +
 +/* Define to 1 if you have the <attr/xattr.h> header file. */
 +/* #undef HAVE_ATTR_XATTR_H */
 +
 +/* Define to 1 if you have the <bzlib.h> header file. */
 +#define HAVE_BZLIB_H 1
 +
 +/* Define to 1 if you have the `chflags' function. */
 +#define HAVE_CHFLAGS 1
 +
 +/* Define to 1 if you have the `chown' function. */
 +#define HAVE_CHOWN 1
 +
 +/* Define to 1 if you have the `chroot' function. */
 +#define HAVE_CHROOT 1
 +
++/* Define to 1 if you have the <ctype.h> header file. */
++#define HAVE_CTYPE_H 1
++
 +/* Define to 1 if you have the declaration of `INT64_MAX', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_INT64_MAX 1
 +
 +/* Define to 1 if you have the declaration of `INT64_MIN', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_INT64_MIN 1
 +
 +/* Define to 1 if you have the declaration of `optarg', and to 0 if you don't.
 +   */
 +#define HAVE_DECL_OPTARG 1
 +
 +/* Define to 1 if you have the declaration of `optind', and to 0 if you don't.
 +   */
 +#define HAVE_DECL_OPTIND 1
 +
 +/* Define to 1 if you have the declaration of `SIZE_MAX', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_SIZE_MAX 1
 +
++/* Define to 1 if you have the declaration of `SSIZE_MAX', and to 0 if you
++   don't. */
++#define HAVE_DECL_SSIZE_MAX 1
++
 +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_STRERROR_R 1
 +
 +/* Define to 1 if you have the declaration of `UINT32_MAX', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_UINT32_MAX 1
 +
 +/* Define to 1 if you have the declaration of `UINT64_MAX', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_UINT64_MAX 1
 +
 +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
 +   */
 +#define HAVE_DIRENT_H 1
 +
 +/* Define to 1 if you have the <dlfcn.h> header file. */
 +#define HAVE_DLFCN_H 1
 +
 +/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
 +/* #undef HAVE_DOPRNT */
 +
 +/* Define to 1 if nl_langinfo supports D_MD_ORDER */
 +#define HAVE_D_MD_ORDER 1
 +
 +/* A possible errno value for invalid file format errors */
 +#define HAVE_EFTYPE 1
 +
 +/* A possible errno value for invalid file format errors */
 +#define HAVE_EILSEQ 1
 +
 +/* Define to 1 if you have the <errno.h> header file. */
 +#define HAVE_ERRNO_H 1
 +
 +/* Define to 1 if you have the <ext2fs/ext2_fs.h> header file. */
 +/* #undef HAVE_EXT2FS_EXT2_FS_H */
 +
++/* Define to 1 if you have the `extattr_get_file' function. */
++#define HAVE_EXTATTR_GET_FILE 1
++
++/* Define to 1 if you have the `extattr_list_file' function. */
++/* #undef HAVE_EXTATTR_LIST_FILE */
++
++/* Define to 1 if you have the `extattr_set_fd' function. */
++/* #undef HAVE_EXTATTR_SET_FD */
++
++/* Define to 1 if you have the `extattr_set_file' function. */
++/* #undef HAVE_EXTATTR_SET_FILE */
++
 +/* Define to 1 if you have the `fchdir' function. */
 +#define HAVE_FCHDIR 1
 +
 +/* Define to 1 if you have the `fchflags' function. */
 +#define HAVE_FCHFLAGS 1
 +
 +/* Define to 1 if you have the `fchmod' function. */
 +#define HAVE_FCHMOD 1
 +
 +/* Define to 1 if you have the `fchown' function. */
 +#define HAVE_FCHOWN 1
 +
 +/* Define to 1 if you have the `fcntl' function. */
 +#define HAVE_FCNTL 1
 +
 +/* Define to 1 if you have the <fcntl.h> header file. */
 +#define HAVE_FCNTL_H 1
 +
 +/* Define to 1 if your system has a working POSIX `fnmatch' function. */
 +#define HAVE_FNMATCH 1
 +
 +/* Define to 1 if fnmatch(3) supports the FNM_LEADING_DIR flag */
 +#define HAVE_FNM_LEADING_DIR 1
 +
 +/* Define to 1 if you have the `fork' function. */
 +#define HAVE_FORK 1
 +
 +/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
 +#define HAVE_FSEEKO 1
 +
 +/* Define to 1 if you have the `fsetxattr' function. */
 +/* #undef HAVE_FSETXATTR */
 +
 +/* Define to 1 if you have the `fstat' function. */
 +#define HAVE_FSTAT 1
 +
 +/* Define to 1 if you have the `ftruncate' function. */
 +#define HAVE_FTRUNCATE 1
 +
 +/* Define to 1 if you have the `futimes' function. */
 +#define HAVE_FUTIMES 1
 +
 +/* Define to 1 if you have the `geteuid' function. */
 +#define HAVE_GETEUID 1
 +
- /* Define to 1 if you have the `getopt_long' function. */
- #define HAVE_GETOPT_LONG 1
 +/* Define to 1 if you have the `getpid' function. */
 +#define HAVE_GETPID 1
 +
 +/* Define to 1 if you have the `getxattr' function. */
 +/* #undef HAVE_GETXATTR */
 +
 +/* Define to 1 if you have the <grp.h> header file. */
 +#define HAVE_GRP_H 1
 +
 +/* Define to 1 if the system has the type `intmax_t'. */
 +#define HAVE_INTMAX_T 1
 +
 +/* Define to 1 if you have the <inttypes.h> header file. */
 +#define HAVE_INTTYPES_H 1
 +
 +/* Define to 1 if you have the <langinfo.h> header file. */
 +#define HAVE_LANGINFO_H 1
 +
 +/* Define to 1 if you have the `lchflags' function. */
 +#define HAVE_LCHFLAGS 1
 +
 +/* Define to 1 if you have the `lchmod' function. */
 +#define HAVE_LCHMOD 1
 +
 +/* Define to 1 if you have the `lchown' function. */
 +#define HAVE_LCHOWN 1
 +
 +/* Define to 1 if you have the `lgetxattr' function. */
 +/* #undef HAVE_LGETXATTR */
 +
 +/* Define to 1 if you have the `acl' library (-lacl). */
 +/* #undef HAVE_LIBACL */
 +
 +/* Define to 1 if you have the `attr' library (-lattr). */
 +/* #undef HAVE_LIBATTR */
 +
 +/* Define to 1 if you have the `bz2' library (-lbz2). */
 +#define HAVE_LIBBZ2 1
 +
++/* Define to 1 if you have the `lzma' library (-llzma). */
++/* #undef HAVE_LIBLZMA */
++
++/* Define to 1 if you have the `lzmadec' library (-llzmadec). */
++/* #undef HAVE_LIBLZMADEC */
++
 +/* Define to 1 if you have the `z' library (-lz). */
 +#define HAVE_LIBZ 1
 +
 +/* Define to 1 if you have the <limits.h> header file. */
 +#define HAVE_LIMITS_H 1
 +
 +/* Define to 1 if you have the <linux/fs.h> header file. */
 +/* #undef HAVE_LINUX_FS_H */
 +
 +/* Define to 1 if you have the `listxattr' function. */
 +/* #undef HAVE_LISTXATTR */
 +
 +/* Define to 1 if you have the `llistxattr' function. */
 +/* #undef HAVE_LLISTXATTR */
 +
 +/* Define to 1 if you have the <locale.h> header file. */
 +#define HAVE_LOCALE_H 1
 +
 +/* Define to 1 if the system has the type `long long int'. */
 +#define HAVE_LONG_LONG_INT 1
 +
 +/* Define to 1 if you have the `lsetxattr' function. */
 +/* #undef HAVE_LSETXATTR */
 +
 +/* Define to 1 if `lstat' has the bug that it succeeds when given the
 +   zero-length file name argument. */
 +/* #undef HAVE_LSTAT_EMPTY_STRING_BUG */
 +
 +/* Define to 1 if you have the `lutimes' function. */
 +#define HAVE_LUTIMES 1
 +
++/* Define to 1 if you have the <lzmadec.h> header file. */
++/* #undef HAVE_LZMADEC_H */
++
++/* Define to 1 if you have the <lzma.h> header file. */
++/* #undef HAVE_LZMA_H */
++
++/* Define to 1 if you have the `MD5' functions. */
++#define HAVE_MD5 1
++
++/* Define to 1 if you have the <md5.h> header file. */
++#define HAVE_MD5_H 1
++
 +/* Define to 1 if you have the `memmove' function. */
 +#define HAVE_MEMMOVE 1
 +
 +/* Define to 1 if you have the <memory.h> header file. */
 +#define HAVE_MEMORY_H 1
 +
 +/* Define to 1 if you have the `memset' function. */
 +#define HAVE_MEMSET 1
 +
 +/* Define to 1 if you have the `mkdir' function. */
 +#define HAVE_MKDIR 1
 +
 +/* Define to 1 if you have the `mkfifo' function. */
 +#define HAVE_MKFIFO 1
 +
 +/* Define to 1 if you have the `mknod' function. */
 +#define HAVE_MKNOD 1
 +
 +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
 +/* #undef HAVE_NDIR_H */
 +
 +/* Define to 1 if you have the `nl_langinfo' function. */
 +#define HAVE_NL_LANGINFO 1
 +
++/* Define to 1 if you have the <openssl/md5.h> header file. */
++#define HAVE_OPENSSL_MD5_H 1
++
++/* Define to 1 if you have the <openssl/ripemd.h> header file. */
++#define HAVE_OPENSSL_RIPEMD_H 1
++
++/* Define to 1 if you have the <openssl/sha.h> header file. */
++#define HAVE_OPENSSL_SHA_H 1
++
 +/* Define to 1 if you have the <paths.h> header file. */
 +#define HAVE_PATHS_H 1
 +
 +/* Define to 1 if you have the `pipe' function. */
 +#define HAVE_PIPE 1
 +
 +/* Define to 1 if you have the `poll' function. */
 +#define HAVE_POLL 1
 +
 +/* Define to 1 if you have the <poll.h> header file. */
 +#define HAVE_POLL_H 1
 +
 +/* Define to 1 if you have the <pwd.h> header file. */
 +#define HAVE_PWD_H 1
 +
++/* Define to 1 if you have the `readlink' function. */
++#define HAVE_READLINK 1
++
 +/* Define to 1 if you have the <regex.h> header file. */
 +#define HAVE_REGEX_H 1
 +
++/* Define to 1 if you have the <ripemd.h> header file. */
++#define HAVE_RIPEMD_H 1
++
++/* Define to 1 if you have the `RIPEMD160' functions. */
++#define HAVE_RMD160 1
++
++/* Define to 1 if you have the <rmd160.h> header file. */
++#define HAVE_RMD160_H 1
++
 +/* Define to 1 if you have the `select' function. */
 +#define HAVE_SELECT 1
 +
 +/* Define to 1 if you have the `setenv' function. */
 +#define HAVE_SETENV 1
 +
 +/* Define to 1 if you have the `setlocale' function. */
 +#define HAVE_SETLOCALE 1
 +
++/* Define to 1 if you have the `SHA1' functions. */
++#define HAVE_SHA1 1
++
++/* Define to 1 if you have the <sha1.h> header file. */
++/* #undef HAVE_SHA1_H */
++
++/* Define to 1 if you have the `SHA256' functions. */
++#define HAVE_SHA256 1
++
++/* Define to 1 if you have the <sha256.h> header file. */
++#define HAVE_SHA256_H 1
++
++/* Define to 1 if you have the <sha2.h> header file. */
++/* #undef HAVE_SHA2_H */
++
++/* Define to 1 if you have the `SHA384' functions. */
++#define HAVE_SHA384 1
++
++/* Define to 1 if you have the `SHA512' functions. */
++#define HAVE_SHA512 1
++
++/* Define to 1 if you have the <sha.h> header file. */
++#define HAVE_SHA_H 1
++
++/* Define to 1 if you have the <signal.h> header file. */
++#define HAVE_SIGNAL_H 1
++
 +/* Define to 1 if `stat' has the bug that it succeeds when given the
 +   zero-length file name argument. */
 +/* #undef HAVE_STAT_EMPTY_STRING_BUG */
 +
 +/* Define to 1 if you have the <stdarg.h> header file. */
 +#define HAVE_STDARG_H 1
 +
 +/* Define to 1 if you have the <stdint.h> header file. */
 +#define HAVE_STDINT_H 1
 +
 +/* Define to 1 if you have the <stdlib.h> header file. */
 +#define HAVE_STDLIB_H 1
 +
 +/* Define to 1 if you have the `strchr' function. */
 +#define HAVE_STRCHR 1
 +
 +/* Define to 1 if you have the `strdup' function. */
 +#define HAVE_STRDUP 1
 +
 +/* Define to 1 if you have the `strerror' function. */
 +#define HAVE_STRERROR 1
 +
 +/* Define to 1 if you have the `strerror_r' function. */
 +#define HAVE_STRERROR_R 1
 +
 +/* Define to 1 if you have the `strftime' function. */
 +#define HAVE_STRFTIME 1
 +
 +/* Define to 1 if you have the <strings.h> header file. */
 +#define HAVE_STRINGS_H 1
 +
 +/* Define to 1 if you have the <string.h> header file. */
 +#define HAVE_STRING_H 1
 +
 +/* Define to 1 if you have the `strrchr' function. */
 +#define HAVE_STRRCHR 1
 +
++/* Define to 1 if `st_birthtime' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */
++
++/* Define to 1 if `st_birthtimespec.tv_nsec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */
++
++/* Define to 1 if `st_blksize' is member of `struct stat'. */
++#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
++
++/* Define to 1 if `st_flags' is member of `struct stat'. */
++#define HAVE_STRUCT_STAT_ST_FLAGS 1
++
 +/* Define to 1 if `st_mtimespec.tv_nsec' is member of `struct stat'. */
 +#define HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 1
 +
++/* Define to 1 if `st_mtime_n' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_MTIME_N */
++
++/* Define to 1 if `st_mtime_usec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */
++
 +/* Define to 1 if `st_mtim.tv_nsec' is member of `struct stat'. */
 +/* #undef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC */
 +
++/* Define to 1 if `st_umtime' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_UMTIME */
++
 +/* Define to 1 if you have the <sys/acl.h> header file. */
 +#define HAVE_SYS_ACL_H 1
 +
 +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
 +   */
 +/* #undef HAVE_SYS_DIR_H */
 +
++/* Define to 1 if you have the <sys/extattr.h> header file. */
++#define HAVE_SYS_EXTATTR_H 1
++
 +/* Define to 1 if you have the <sys/ioctl.h> header file. */
 +#define HAVE_SYS_IOCTL_H 1
 +
++/* Define to 1 if you have the <sys/mkdev.h> header file. */
++/* #undef HAVE_SYS_MKDEV_H */
++
 +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
 +   */
 +/* #undef HAVE_SYS_NDIR_H */
 +
 +/* Define to 1 if you have the <sys/param.h> header file. */
 +#define HAVE_SYS_PARAM_H 1
 +
 +/* Define to 1 if you have the <sys/poll.h> header file. */
 +#define HAVE_SYS_POLL_H 1
 +
 +/* Define to 1 if you have the <sys/select.h> header file. */
 +#define HAVE_SYS_SELECT_H 1
 +
 +/* Define to 1 if you have the <sys/stat.h> header file. */
 +#define HAVE_SYS_STAT_H 1
 +
 +/* Define to 1 if you have the <sys/time.h> header file. */
 +#define HAVE_SYS_TIME_H 1
 +
 +/* Define to 1 if you have the <sys/types.h> header file. */
 +#define HAVE_SYS_TYPES_H 1
 +
 +/* Define to 1 if you have the <sys/utime.h> header file. */
 +/* #undef HAVE_SYS_UTIME_H */
 +
 +/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
 +#define HAVE_SYS_WAIT_H 1
 +
++/* Define to 1 if you have the <sys/xattr.h> header file. */
++/* #undef HAVE_SYS_XATTR_H */
++
 +/* Define to 1 if you have the `timegm' function. */
 +#define HAVE_TIMEGM 1
 +
 +/* Define to 1 if you have the <time.h> header file. */
 +#define HAVE_TIME_H 1
 +
 +/* Define to 1 if you have the `tzset' function. */
 +#define HAVE_TZSET 1
 +
 +/* Define to 1 if the system has the type `uintmax_t'. */
 +#define HAVE_UINTMAX_T 1
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#define HAVE_UNISTD_H 1
 +
 +/* Define to 1 if you have the `unsetenv' function. */
 +#define HAVE_UNSETENV 1
 +
 +/* Define to 1 if the system has the type `unsigned long long'. */
 +#define HAVE_UNSIGNED_LONG_LONG 1
 +
 +/* Define to 1 if the system has the type `unsigned long long int'. */
 +#define HAVE_UNSIGNED_LONG_LONG_INT 1
 +
 +/* Define to 1 if you have the `utime' function. */
 +#define HAVE_UTIME 1
 +
 +/* Define to 1 if you have the `utimes' function. */
 +#define HAVE_UTIMES 1
 +
 +/* Define to 1 if you have the <utime.h> header file. */
 +#define HAVE_UTIME_H 1
 +
 +/* Define to 1 if you have the `vfork' function. */
 +#define HAVE_VFORK 1
 +
 +/* Define to 1 if you have the `vprintf' function. */
 +#define HAVE_VPRINTF 1
 +
 +/* Define to 1 if you have the <wchar.h> header file. */
 +#define HAVE_WCHAR_H 1
 +
++/* Define to 1 if the system has the type `wchar_t'. */
++#define HAVE_WCHAR_T 1
++
++/* Define to 1 if you have the `wcrtomb' function. */
++#define HAVE_WCRTOMB 1
++
 +/* Define to 1 if you have the `wcscpy' function. */
 +#define HAVE_WCSCPY 1
 +
 +/* Define to 1 if you have the `wcslen' function. */
 +#define HAVE_WCSLEN 1
 +
 +/* Define to 1 if you have the `wctomb' function. */
 +#define HAVE_WCTOMB 1
 +
++/* Define to 1 if you have the <wctype.h> header file. */
++#define HAVE_WCTYPE_H 1
++
++/* Define to 1 if you have the <windows.h> header file. */
++/* #undef HAVE_WINDOWS_H */
++
 +/* Define to 1 if you have the `wmemcmp' function. */
 +#define HAVE_WMEMCMP 1
 +
 +/* Define to 1 if you have the `wmemcpy' function. */
 +#define HAVE_WMEMCPY 1
 +
 +/* Define to 1 if you have the <zlib.h> header file. */
 +#define HAVE_ZLIB_H 1
 +
 +/* Version number of libarchive as a single integer */
 +/* #undef LIBARCHIVE_VERSION */
 +
 +/* Version number of libarchive */
 +/* #undef LIBARCHIVE_VERSION_STRING */
 +
 +/* Define to 1 if `lstat' dereferences a symlink specified with a trailing
 +   slash. */
 +#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
 +
 +/* Define to 1 if `major', `minor', and `makedev' are declared in <mkdev.h>.
 +   */
 +/* #undef MAJOR_IN_MKDEV */
 +
 +/* Define to 1 if `major', `minor', and `makedev' are declared in
 +   <sysmacros.h>. */
 +/* #undef MAJOR_IN_SYSMACROS */
 +
++/* Define to the generates final MD5 hash function. */
++/* #undef MD5_Final */
++
++/* Define to the initializes MD5 context function. */
++/* #undef MD5_Init */
++
++/* Define to the updates MD5 context function. */
++/* #undef MD5_Update */
++
 +/* Define to 1 if your C compiler doesn't accept -c and -o together. */
 +/* #undef NO_MINUS_C_MINUS_O */
 +
 +/* Name of package */
 +#define PACKAGE "libarchive"
 +
 +/* Define to the address where bug reports for this package should be sent. */
 +#define PACKAGE_BUGREPORT "kientzle@freebsd.org"
 +
 +/* Define to the full name of this package. */
 +#define PACKAGE_NAME "libarchive"
 +
 +/* Define to the full name and version of this package. */
 +/* #undef PACKAGE_STRING */
 +
 +/* Define to the one symbol short name of this package. */
 +#define PACKAGE_TARNAME "libarchive"
 +
 +/* Define to the version of this package. */
 +/* #undef PACKAGE_VERSION */
 +
++/* Define to the generates final RIPEMD160 hash function. */
++/* #undef RIPEMD160_Final */
++
++/* Define to the initializes RIPEMD160 context function. */
++/* #undef RIPEMD160_Init */
++
++/* Define to the updates RIPEMD160 context function. */
++/* #undef RIPEMD160_Update */
++
++/* Define to the generates final SHA1 hash function. */
++/* #undef SHA1_Final */
++
++/* Define to the initializes SHA1 context function. */
++/* #undef SHA1_Init */
++
++/* Define to the updates SHA1 context function. */
++/* #undef SHA1_Update */
++
++/* The size of `wchar_t', as computed by sizeof. */
++#define SIZEOF_WCHAR_T 4
++
 +/* Define to 1 if you have the ANSI C header files. */
 +#define STDC_HEADERS 1
 +
 +/* Define to 1 if strerror_r returns char *. */
 +/* #undef STRERROR_R_CHAR_P */
 +
 +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
 +#define TIME_WITH_SYS_TIME 1
 +
 +/* Version number of package */
 +/* #undef VERSION */
 +
 +/* Number of bits in a file offset, on hosts where this is settable. */
 +/* #undef _FILE_OFFSET_BITS */
 +
 +/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
 +/* #undef _LARGEFILE_SOURCE */
 +
 +/* Define for large files, on AIX-style hosts. */
 +/* #undef _LARGE_FILES */
 +
 +/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
-    <pthread.h>, or <semaphore.h> is not used. If the typedef was allowed, the
++   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 +   #define below would cause a syntax error. */
 +/* #undef _UINT64_T */
 +
 +/* Define to empty if `const' does not conform to ANSI C. */
 +/* #undef const */
 +
 +/* Define to `int' if <sys/types.h> doesn't define. */
 +/* #undef gid_t */
 +
 +/* Define to `unsigned long' if <sys/types.h> does not define. */
 +/* #undef id_t */
 +
 +/* Define to the type of a signed integer type of width exactly 64 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef int64_t */
 +
 +/* Define to the widest signed integer type if <stdint.h> and <inttypes.h> do
 +   not define. */
 +/* #undef intmax_t */
 +
 +/* Define to `int' if <sys/types.h> does not define. */
 +/* #undef mode_t */
 +
 +/* Define to `long long' if <sys/types.h> does not define. */
 +/* #undef off_t */
 +
 +/* Define to `unsigned int' if <sys/types.h> does not define. */
 +/* #undef size_t */
 +
 +/* Define to `int' if <sys/types.h> doesn't define. */
 +/* #undef uid_t */
 +
 +/* Define to the type of an unsigned integer type of width exactly 64 bits if
 +   such a type exists and the standard includes do not define it. */
 +/* #undef uint64_t */
 +
 +/* Define to the widest unsigned integer type if <stdint.h> and <inttypes.h>
 +   do not define. */
 +/* #undef uintmax_t */
 +
 +/* Define to `unsigned int' if <sys/types.h> does not define. */
 +/* #undef uintptr_t */
index f10f5f6,0000000..0b3afd3
mode 100644,000000..100644
--- /dev/null
@@@ -1,16 -1,0 +1,23 @@@
- DPADD=        ${LIBARCHIVE} ${LIBBZ2} ${LIBZ}
- LDADD=        -larchive -lbz2 -lz
 +# $DragonFly: src/usr.bin/cpio/Makefile,v 1.2 2008/07/26 16:25:31 pavalos Exp $
 +
 +PROG= bsdcpio
 +SRCS= cmdline.c cpio.c err.c matching.c pathmatch.c
++DPADD=        ${LIBARCHIVE} ${LIBBZ2} ${LIBZ} ${LIBMD}
++LDADD=        -larchive -lbz2 -lz -lmd
++.if !defined(NO_OPENSSL)
++DPADD+=       ${LIBCRYPTO}
++LDADD+=       -lcrypto
++.endif
 +
 +CONTRIBDIR=   ${.CURDIR}/../../contrib/libarchive/cpio
 +.PATH: ${CONTRIBDIR}
++LIBARCHIVE_VERSION!=  cat ${CONTRIBDIR}/../build/version
++VERSION!=     echo $$((${LIBARCHIVE_VERSION} / 1000000)).$$((${LIBARCHIVE_VERSION} / 1000 % 1000)).$$((${LIBARCHIVE_VERSION} % 1000))
 +CFLAGS+=      -I${.OBJDIR} -I${.CURDIR}/../../lib/libarchive -I${CONTRIBDIR}
 +CFLAGS+=      -DPLATFORM_CONFIG_H=\"config.h\"
++CFLAGS+=      -DBSDCPIO_VERSION_STRING=\"${VERSION}\"
 +
 +SYMLINKS=     ${BINDIR}/bsdcpio ${BINDIR}/cpio
 +MLINKS=       bsdcpio.1 cpio.1
 +
 +.include <bsd.prog.mk>
index c88f414,0000000..9d9ca0e
mode 100644,000000..100644
--- /dev/null
@@@ -1,20 -1,0 +1,24 @@@
- SRCS= bsdtar.c getdate.y matching.c read.c siginfo.c subst.c \
 +# $DragonFly: src/usr.bin/tar/Makefile,v 1.16 2008/07/12 14:57:33 pavalos Exp $
 +
 +PROG= bsdtar
- DPADD=        ${LIBARCHIVE} ${LIBBZ2} ${LIBZ}
- LDADD=        -larchive -lbz2 -lz
++SRCS= bsdtar.c cmdline.c getdate.c matching.c read.c siginfo.c subst.c \
 +      tree.c util.c write.c
- LIBARCHIVE_VERSION!=  cat ${CONTRIBDIR}/../version
++DPADD=        ${LIBARCHIVE} ${LIBBZ2} ${LIBZ} ${LIBMD}
++LDADD=        -larchive -lbz2 -lz -lmd
++.if !defined(NO_OPENSSL)
++DPADD+=       ${LIBCRYPTO}
++LDADD+=       -lcrypto
++.endif
 +
 +CONTRIBDIR=   ${.CURDIR}/../../contrib/libarchive/tar
 +.PATH: ${CONTRIBDIR}
++LIBARCHIVE_VERSION!=  cat ${CONTRIBDIR}/../build/version
 +VERSION!=     echo $$((${LIBARCHIVE_VERSION} / 1000000)).$$((${LIBARCHIVE_VERSION} / 1000 % 1000)).$$((${LIBARCHIVE_VERSION} % 1000))
 +CFLAGS+=      -I${.OBJDIR} -I${.CURDIR}/../../lib/libarchive -I${CONTRIBDIR}
 +CFLAGS+=      -DPLATFORM_CONFIG_H=\"config.h\"
 +CFLAGS+=      -DBSDTAR_VERSION_STRING=\"${VERSION}\"
 +
 +SYMLINKS=     ${BINDIR}/bsdtar ${BINDIR}/tar
 +MLINKS=       bsdtar.1 tar.1
 +
 +.include <bsd.prog.mk>