0
0
Fork 0
haikuports/app-arch/libarchive/libarchive-3.5.1.recipe

109 lines
3.2 KiB
Bash

SUMMARY="C library and tools for working with many archive formats"
DESCRIPTION="The libarchive library features:
* Support for a variety of archive and compression formats.
* Robust automatic format detection, including archive/compression \
combinations such as tar.gz.
* Zero-copy internal architecture for high performance.
* Streaming architecture eliminates all limits on size of archive, limits on \
entry sizes depend on particular formats.
* Carefully factored code to minimize bloat when programs are statically linked.
* Growing test suite ? to verify correctness of new ports.
* Works on most POSIX-like systems
* Supports Windows, including Cygwin, MinGW, and Visual Studio.
The bsdtar and bscpio command-line utilities are feature- and \
performance-competitive with other tar and cpio implementations:
* Reads a variety of formats, including tar, pax, cpio, zip, xar, lha, ar, \
cab, mtree, rar, and ISO images.
* Writes tar, pax, cpio, zip, xar, ar, ISO, mtree, and shar archives
* Automatically handles archives compressed with gzip, bzip2, lzip, xz, lzma, \
or compress.
* Unique format conversion feature."
HOMEPAGE="http://www.libarchive.org/"
COPYRIGHT="2003-2013 Tim Kientzle"
LICENSE="BSD (2-clause)"
REVISION="1"
SOURCE_URI="http://www.libarchive.org/downloads/libarchive-$portVersion.tar.gz"
CHECKSUM_SHA256="9015d109ec00bb9ae1a384b172bf2fc1dff41e2c66e5a9eeddf933af9db37f5a"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/.
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
PROVIDES="
libarchive$secondaryArchSuffix = $portVersion compat >= 3.0
cmd:bsdcat$commandSuffix = $portVersion compat >= 3.0
cmd:bsdcpio$commandSuffix = $portVersion compat >= 3.0
cmd:bsdtar$commandSuffix = $portVersion compat >= 3.0
lib:libarchive$secondaryArchSuffix = 13.5.1 compat >= 13
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
libarchive${secondaryArchSuffix}_devel = $portVersion compat >= 3.0
devel:libarchive$secondaryArchSuffix = 13.5.1 compat >= 13
"
REQUIRES_devel="
libarchive$secondaryArchSuffix == $portVersion
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libbz2$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
devel:liblzma$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:gcc$secondaryArchSuffix
cmd:libtoolize
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:xml2_config$secondaryArchSuffix
"
BUILD()
{
autoreconf -fi
LDFLAGS="-lbsd" CFLAGS="-D_BSD_SOURCE" ac_cv_func_readpassphrase=yes \
runConfigure --omit-dirs binDir \
./configure --bindir=$commandBinDir
make $jobArgs
}
INSTALL()
{
make install
rm $libDir/libarchive.la
prepareInstalledDevelLibs libarchive
fixPkgconfig
packageEntries devel $developDir $manDir/man3
}
TEST()
{
make check
}