0
0
Fork 0
haikuports/dev-libs/gmp/gmp-6.2.1.recipe

91 lines
2.4 KiB
Bash

SUMMARY="The GNU multiple precision arithmetic library"
DESCRIPTION="The GNU Multiple Precision Arithmetic Library (GMP) is a free \
library for arbitrary-precision arithmetic, operating on signed integers, \
rational numbers, and floating point numbers.
There are no practical limits to the precision except the ones implied by \
the available memory in the machine GMP runs on (operand dimension limit is \
2^(32)-1 bits on 32-bit machines and 2^37 bits on 64-bit machines).
GMP has a rich set of functions, and the functions have a regular interface. \
The basic interface is for C but wrappers exist for other languages including \
Ada, C++, C#, OCaml, Perl, PHP, and Python."
HOMEPAGE="https://gmplib.org/"
COPYRIGHT="1991-2014 Free Software Foundation, Inc."
LICENSE="GNU GPL v3
GNU LGPL v3"
REVISION="2"
SOURCE_URI="https://gmplib.org/download/gmp/gmp-$portVersion.tar.xz"
CHECKSUM_SHA256="fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
portVersionCompat="$libVersion compat >= ${libVersion%%.*}"
libgmpVersion="10.4.1"
libgmpVersionCompat="$libgmpVersion compat >= ${libgmpVersion%%.*}"
libgmpxxVersion="4.6.1"
libgmpxxVersionCompat="$libgmpxxVersion compat >= ${libgmpxxVersion%%.*}"
PROVIDES="
gmp$secondaryArchSuffix = $portVersion compat >= 6.0
lib:libgmp$secondaryArchSuffix = $libgmpVersionCompat
lib:libgmpxx$secondaryArchSuffix = $libgmpxxVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
"
PROVIDES_devel="
gmp${secondaryArchSuffix}_devel = $portVersion
devel:libgmp$secondaryArchSuffix = $libgmpVersionCompat
devel:libgmpxx$secondaryArchSuffix = $libgmpxxVersionCompat
"
REQUIRES_devel="
gmp$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:autoconf
cmd:automake
cmd:gcc$secondaryArchSuffix
cmd:libtool
cmd:make
"
defineDebugInfoPackage gmp$secondaryArchSuffix \
$libDir/libgmp.so.$libgmpVersion \
$libDir/libgmpxx.so.$libgmpxxVersion
BUILD()
{
touch doc/*.info*
autoreconf -fi
runConfigure ./configure --enable-cxx
make $jobArgs
}
INSTALL()
{
make install includedir=$includeDir includeexecdir=$includeDir
# remove libtool files
rm $libDir/*.la
# prepare devel/lib
prepareInstalledDevelLibs libgmp libgmpxx
fixPkgconfig
# devel package
packageEntries devel \
$developDir
}
TEST()
{
make $jobArgs check
}