# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 # $Id$ PortSystem 1.0 # Although mpfr builds without a custom universal variant, # it is not the same as building the archs differently # due to the variable HAVE_LDOUBLE_IEEE_EXT_LITTLE. PortGroup muniversal 1.0 PortGroup compiler_blacklist_versions 1.0 name mpfr # The actual version is generated below, after patchfiles is defined. set base_version 3.1.4 categories devel math platforms darwin license LGPL-3+ maintainers larryv openmaintainer description C library for multiple-precision floating-point \ computations long_description MPFR is a portable C library for arbitrary-precision \ binary floating-point computation with correct \ rounding, based on the GMP multiple-precision \ library. The computation is both efficient and \ has a well-defined semantics. It copies the good \ ideas from the ANSI/IEEE-754 standard for \ fixed-precision floating-point arithmetic. homepage http://www.mpfr.org/ depends_lib port:gmp distname ${name}-${base_version} master_sites http://www.mpfr.org/${distname} use_xz yes checksums ${distname}${extract.suffix} \ rmd160 39e7f7368110ea43a49bbe1007d9e9f67b4de64b \ sha256 761413b16d749c53e2bfd2b1dfaa3b027b0e793e404b90b5fbaeef60af6517f5 # Upstream patch names are not qualified with the base version. dist_subdir ${name}/${base_version} patch.args -p1 patchfiles {*}[lsearch -all -inline ${checksums} {patch[0-9][0-9]}] set patch_level [llength ${patchfiles}] if {${patch_level} > 0} { version ${base_version}-p${patch_level} } else { version ${base_version} } # Due to radr://10291355 (llvm.org PR11111), the new tls support enabled in clang with Xcode 4.2 # miscompiles mpfr. While this was fixed in Xcode 4.2.1, as the ttls support was never used prior to # Xcode 4.2, the generic fix is to pass --disable-thread-safe to configure, however this will break # any project that requires a thread-safe mpfr library, therefore the Xcode 4.2 compiler is # blacklisted here compiler.blacklist {clang == 211.10.1} test.run yes test.target check livecheck.version ${base_version} livecheck.url http://www.mpfr.org/mpfr-current/ livecheck.regex "mpfr-(\\d+(?:\\.\\d+)*)${extract.suffix}"