mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 04:00:05 +02:00
xz_utils-5.0.4: convert recipe to an actual recipe
This commit is contained in:
@@ -1,37 +1,108 @@
|
||||
DESCRIPTION="XZ Utils is data compression software for working with LZMA compressed files."
|
||||
SUMMARY="Free general-purpose data compression software"
|
||||
HOMEPAGE="http://tukaani.org/xz/"
|
||||
SRC_URI="http://tukaani.org/xz/xz-5.0.4.tar.bz2"
|
||||
CHECKSUM_MD5="741cd3a5f64b23b7bac56ec5b2258715"
|
||||
LICENSE="
|
||||
GNU LGPL v2.1
|
||||
GNU GPL v2
|
||||
GNU GPL v3
|
||||
"
|
||||
COPYRIGHT="2005-2012 Lasse Collin"
|
||||
REVISION="1"
|
||||
STATUS_HAIKU="stable"
|
||||
MESSAGE="This port only builds with gcc4."
|
||||
DEPEND=""
|
||||
ARCHITECTURES="x86"
|
||||
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
|
||||
# x86_gcc2 is fine as primary target architecture as long as we're building
|
||||
# for a different secondary architecture.
|
||||
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
|
||||
else
|
||||
ARCHITECTURES="$ARCHITECTURES !x86_gcc2"
|
||||
fi
|
||||
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="
|
||||
xz_utils$secondaryArchSuffix = $portVersion compat >= 5
|
||||
cmd:lzcat$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzcmp$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzdiff$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzegrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzfgrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzgrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzless$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzma$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzmadec$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzmainfo$commandSuffix = $portVersion compat >= 5
|
||||
cmd:lzmore$commandSuffix = $portVersion compat >= 5
|
||||
cmd:unlzma$commandSuffix = $portVersion compat >= 5
|
||||
cmd:unxz$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xz$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzcat$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzcmp$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzdec$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzdiff$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzegrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzfgrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzgrep$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzless$commandSuffix = $portVersion compat >= 5
|
||||
cmd:xzmore$commandSuffix = $portVersion compat >= 5
|
||||
lib:liblzma$secondaryArchSuffix = $portVersion compat >= 5
|
||||
devel:liblzma$secondaryArchSuffix = $portVersion compat >= 5
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix >= $haikuVersion
|
||||
"
|
||||
BUILD_REQUIRES="
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel >= $haikuVersion
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:libtoolize
|
||||
cmd:make
|
||||
"
|
||||
|
||||
SOURCE_DIR="xz-$portVersion"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cd xz-5.0.4
|
||||
touch po/t-cs.gmo
|
||||
libtoolize --force --copy --install
|
||||
COMMON_DOCS=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`
|
||||
./configure --prefix=`finddir B_COMMON_DIRECTORY` \
|
||||
--docdir=$COMMON_DOCS/doc/xz \
|
||||
--mandir=$COMMON_DOCS/man \
|
||||
--localedir=`finddir B_COMMON_DATA_DIRECTORY`/locale
|
||||
make
|
||||
runConfigure --omit-dirs binDir ./configure --bindir=$commandBinDir
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cd xz-5.0.4
|
||||
make install
|
||||
|
||||
expanderRulesDir=$dataDir/expander/rules
|
||||
mkdir -p $expanderRulesDir
|
||||
cp "$portDir/sources/xz_utils-expander-rules" "$expanderRulesDir/xz_utils"
|
||||
|
||||
prepareInstalledDevelLibs liblzma
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
cd xz-5.0.4
|
||||
make check
|
||||
}
|
||||
|
||||
LICENSE="GNU LGPL v2.1
|
||||
GNU GPL v2
|
||||
GNU GPL v3"
|
||||
COPYRIGHT="2005-2012 Lasse Collin"
|
||||
DESCRIPTION="XZ Utils is free general-purpose data compression software with high compression ratio. XZ Utils were written for POSIX-like systems, but also work on some not-so-POSIX systems. XZ Utils are the successor to LZMA Utils.
|
||||
|
||||
The core of the XZ Utils compression code is based on LZMA SDK, but it has been modified quite a lot to be suitable for XZ Utils. The primary compression algorithm is currently LZMA2, which is used inside the .xz container format. With typical files, XZ Utils create 30 % smaller output than gzip and 15 % smaller output than bzip2.
|
||||
|
||||
XZ Utils consist of several components:
|
||||
|
||||
* liblzma is a compression library with API similar to that of zlib.
|
||||
* xz is a command line tool with syntax similar to that of gzip.
|
||||
* xzdec is a decompression-only tool smaller than the full-featured xz tool.
|
||||
* A set of shell scripts (xzgrep, xzdiff, etc.) have been adapted from gzip to ease viewing, grepping, and comparing compressed files.
|
||||
* Emulation of command line tools of LZMA Utils eases transition from LZMA Utils to XZ Utils.
|
||||
|
||||
While liblzma has a zlib-like API, liblzma doesn't include any file I/O functions. A separate I/O library is planned, which would abstract handling of .gz, .bz2, and .xz files with an easy to use API."
|
||||
|
||||
Reference in New Issue
Block a user