xz_utils-5.0.1.recipe: Turn into an actual recipe

I tried a bit, but there's no easy way of building with gcc 2, as the
code makes heavy use of C99 features. Should we really need to build
it with gcc 2, we should at least deal with the local variable
declarations not at the beginning of a block in an automated fashion.
This commit is contained in:
Ingo Weinhold
2013-04-22 11:57:20 +02:00
parent 06e4e08103
commit 404e2f047d

View File

@@ -1,37 +1,87 @@
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.1.tar.bz2"
CHECKSUM_MD5="cb6c7a58cec4d663a395c54d186ca0c6"
REVISION="1"
STATUS_HAIKU="stable"
MESSAGE="This port only builds with gcc4."
DEPEND=""
LICENSE="
GNU LGPL v2.1
GNU GPL v2
GNU GPL v3
"
COPYRIGHT="2005-2011 Lasse Collin"
REVISION="2"
ARCHITECTURES="!x86_gcc2 ?x86"
PROVIDES="
xz_utils = $portVersion compat >= 5
cmd:lzcat = 5.0.1 compat >= 5
cmd:lzcmp = 5.0.1 compat >= 5
cmd:lzdiff = 5.0.1 compat >= 5
cmd:lzegrep = 5.0.1 compat >= 5
cmd:lzfgrep = 5.0.1 compat >= 5
cmd:lzgrep = 5.0.1 compat >= 5
cmd:lzless = 5.0.1 compat >= 5
cmd:lzma = 5.0.1 compat >= 5
cmd:lzmadec = 5.0.1 compat >= 5
cmd:lzmainfo = 5.0.1 compat >= 5
cmd:lzmore = 5.0.1 compat >= 5
cmd:unlzma = 5.0.1 compat >= 5
cmd:unxz = 5.0.1 compat >= 5
cmd:xz = 5.0.1 compat >= 5
cmd:xzcat = 5.0.1 compat >= 5
cmd:xzcmp = 5.0.1 compat >= 5
cmd:xzdec = 5.0.1 compat >= 5
cmd:xzdiff = 5.0.1 compat >= 5
cmd:xzegrep = 5.0.1 compat >= 5
cmd:xzfgrep = 5.0.1 compat >= 5
cmd:xzgrep = 5.0.1 compat >= 5
cmd:xzless = 5.0.1 compat >= 5
cmd:xzmore = 5.0.1 compat >= 5
lib:liblzma = 5.0.1 compat >= 5
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
cmd:gcc
cmd:ld
cmd:libtoolize
cmd:make
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
"
SOURCE_DIR="xz-5.0.1"
BUILD()
{
cd xz-5.0.1
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
./configure $configureDirArgs
# --localedir=$dataRootDir/locale
make
}
INSTALL()
{
cd xz-5.0.1
make install
}
TEST()
{
cd xz-5.0.1
make check
}
LICENSE="GNU LGPL v2.1
GNU GPL v2
GNU GPL v3"
COPYRIGHT="2005-2011 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."