Files
haikuports/app-arch/lz4/lz4-1.8.2.recipe
2018-05-19 05:08:26 +00:00

116 lines
2.5 KiB
Bash

SUMMARY="Data compression utilities and libraries"
DESCRIPTION="LZ4 is a very fast lossless compression algorithm, providing \
compression speed at 400 MB/s per core, scalable with multi-core CPUs. It \
also features an extremely fast decoder, with speed in multiple GB/s per \
core, typically reaching RAM speed limits on multi-core systems."
HOMEPAGE="https://lz4.github.io/lz4/"
COPYRIGHT="2011-2018 Yann Collet"
LICENSE="BSD (2-clause)"
REVISION="2"
SOURCE_URI="https://github.com/lz4/lz4/archive/v$portVersion.tar.gz"
SOURCE_FILENAME="lz4-$portVersion.tar.gz"
CHECKSUM_SHA256="0963fbe9ee90acd1d15e9f09e826eaaf8ea0312e854803caf2db0a6dd40f4464"
PATCHES="lz4-$portVersion.patchset"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86 x86_gcc2"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
lz4$secondaryArchSuffix = $portVersion
lib:liblz4$secondaryArchSuffix = $libVersionCompat
"
if [ -z "$secondaryArchSuffix" ]; then
PROVIDES="$PROVIDES
cmd:lz4 = $portVersion
cmd:lz4c = $portVersion
cmd:lz4cat = $portVersion
cmd:unlz4 = $portVersion
"
fi
REQUIRES="
haiku$secondaryArchSuffix
"
PROVIDES_devel="
lz4${secondaryArchSuffix}_devel = $portVersion
devel:liblz4$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
lz4$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:ar
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
"
TEST_REQUIRES="
cmd:diff
cmd:find
cmd:python3
"
PATCH()
{
if [ "$effectiveTargetArchitecture" = x86_gcc2 ]; then
sed -i \
-e "s/-Wextra//" \
-e "s/-Wswitch-enum//" \
-e "s/-Wdeclaration-after-statement//" \
-e "s/-Wstrict-aliasing=1//" \
-e "s/-fvisibility=hidden//" \
lib/Makefile \
programs/Makefile \
tests/Makefile \
Makefile
fi
}
BUILD()
{
make -C lib $jobArgs
make -C programs $jobArgs lz4 lz4c
}
INSTALL()
{
make install LIBDIR="$libDir" INCLUDEDIR="$includeDir" BINDIR="$binDir"
if [ -n "$secondaryArchSuffix" ]; then
rm $binDir/lz4
rm $binDir/lz4c
rm $binDir/lz4cat
rm $binDir/unlz4
rmdir "$binDir"
fi
prepareInstalledDevelLibs liblz4
fixPkgconfig
packageEntries devel \
"$developDir"
}
TEST()
{
testTarget=test
if [ "$effectiveTargetArchitecture" = x86_gcc2 ]; then
# gcc2 can't build all tests, so let's run the basic set only
testTarget=check
fi
LIBRARY_PATH="$sourceDir/libs${LIBRARY_PATH:+:$LIBRARY_PATH}" \
make $testTarget
}