summaryrefslogtreecommitdiff
path: root/libraries/integer-gmp/configure.ac
diff options
context:
space:
mode:
authorSylvain Henry <sylvain@haskus.fr>2019-09-19 16:26:52 +0200
committerBen Gamari <ben@smart-cactus.org>2020-06-17 16:22:03 -0400
commit9f96bc127d6231b5e76bbab442244eb303b08867 (patch)
tree3b40983164af5d78e7efe8cdb7e580ba36819f79 /libraries/integer-gmp/configure.ac
parent57db91d8ee501c7cf176c4bb1e2101d3092fd0f6 (diff)
downloadhaskell-9f96bc127d6231b5e76bbab442244eb303b08867.tar.gz
ghc-bignum library
ghc-bignum is a newer package that aims to replace the legacy integer-simple and integer-gmp packages. * it supports several backends. In particular GMP is still supported and most of the code from integer-gmp has been merged in the "gmp" backend. * the pure Haskell "native" backend is new and is much faster than the previous pure Haskell implementation provided by integer-simple * new backends are easier to write because they only have to provide a few well defined functions. All the other code is common to all backends. In particular they all share the efficient small/big number distinction previously used only in integer-gmp. * backends can all be tested against the "native" backend with a simple Cabal flag. Backends are only allowed to differ in performance, their results should be the same. * Add `integer-gmp` compat package: provide some pattern synonyms and function aliases for those in `ghc-bignum`. It is intended to avoid breaking packages that depend on `integer-gmp` internals. Update submodules: text, bytestring Metric Decrease: Conversions ManyAlternatives ManyConstructors Naperian T10359 T10547 T10678 T12150 T12227 T12234 T12425 T13035 T13719 T14936 T1969 T4801 T4830 T5237 T5549 T5837 T8766 T9020 parsing001 space_leak_001 T16190 haddock.base On ARM and i386, T17499 regresses (+6% > 5%). On x86_64 unregistered, T13701 sometimes regresses (+2.2% > 2%). Metric Increase: T17499 T13701
Diffstat (limited to 'libraries/integer-gmp/configure.ac')
-rw-r--r--libraries/integer-gmp/configure.ac115
1 files changed, 0 insertions, 115 deletions
diff --git a/libraries/integer-gmp/configure.ac b/libraries/integer-gmp/configure.ac
deleted file mode 100644
index 1ccd48e698..0000000000
--- a/libraries/integer-gmp/configure.ac
+++ /dev/null
@@ -1,115 +0,0 @@
-AC_PREREQ(2.69)
-AC_INIT([Haskell integer (GMP)], [1.0], [libraries@haskell.org], [integer])
-
-# Safety check: Ensure that we are in the correct source directory.
-AC_CONFIG_SRCDIR([cbits/wrappers.c])
-
-AC_CANONICAL_TARGET
-
-AC_PROG_CC
-dnl make extensions visible to allow feature-tests to detect them lateron
-AC_USE_SYSTEM_EXTENSIONS
-
-
-dnl--------------------------------------------------------------------
-dnl * Deal with arguments telling us gmp is somewhere odd
-dnl--------------------------------------------------------------------
-
-AC_ARG_WITH([gmp-includes],
- [AC_HELP_STRING([--with-gmp-includes],
- [directory containing gmp.h])],
- [GMP_INCLUDE_DIRS=$withval; CPPFLAGS="-I$withval"],
- [GMP_INCLUDE_DIRS=])
-
-AC_ARG_WITH([gmp-libraries],
- [AC_HELP_STRING([--with-gmp-libraries],
- [directory containing gmp library])],
- [GMP_LIB_DIRS=$withval; LDFLAGS="-L$withval"],
- [GMP_LIB_DIRS=])
-
-AC_ARG_WITH([gmp-framework-preferred],
- [AC_HELP_STRING([--with-gmp-framework-preferred],
- [on OSX, prefer the GMP framework to the gmp lib])],
- [GMP_PREFER_FRAMEWORK=YES],
- [GMP_PREFER_FRAMEWORK=NO])
-
-AC_ARG_WITH([intree-gmp],
- [AC_HELP_STRING([--with-intree-gmp],
- [force using the in-tree GMP])],
- [GMP_FORCE_INTREE=YES],
- [GMP_FORCE_INTREE=NO])
-
-dnl--------------------------------------------------------------------
-dnl * Detect gmp
-dnl--------------------------------------------------------------------
-
-HaveLibGmp=NO
-GMP_LIBS=
-HaveFrameworkGMP=NO
-GMP_FRAMEWORK=
-HaveSecurePowm=0
-
-if test "$GMP_FORCE_INTREE" != "YES"
-then
- if test "$GMP_PREFER_FRAMEWORK" = "YES"
- then
- LOOK_FOR_GMP_FRAMEWORK
- LOOK_FOR_GMP_LIB
- else
- LOOK_FOR_GMP_LIB
- LOOK_FOR_GMP_FRAMEWORK
- fi
-fi
-
-AC_MSG_CHECKING([whether to use in-tree GMP])
-if test "$HaveFrameworkGMP" = "YES" || test "$HaveLibGmp" = "YES"
-then
- AC_MSG_RESULT([no])
- UseIntreeGmp=0
- AC_CHECK_HEADER([gmp.h], , [AC_MSG_ERROR([Cannot find gmp.h])])
-
- AC_MSG_CHECKING([GMP version])
- AC_COMPUTE_INT(GhcGmpVerMj, __GNU_MP_VERSION, [#include <gmp.h>],
- AC_MSG_ERROR([Unable to get value of __GNU_MP_VERSION]))
- AC_COMPUTE_INT(GhcGmpVerMi, __GNU_MP_VERSION_MINOR, [#include <gmp.h>],
- AC_MSG_ERROR([Unable to get value of __GNU_MP_VERSION_MINOR]))
- AC_COMPUTE_INT(GhcGmpVerPl, __GNU_MP_VERSION_PATCHLEVEL, [#include <gmp.h>],
- AC_MSG_ERROR([Unable to get value of __GNU_MP_VERSION_PATCHLEVEL]))
- AC_MSG_RESULT([$GhcGmpVerMj.$GhcGmpVerMi.$GhcGmpVerPl])
-
-else
- AC_MSG_RESULT([yes])
- UseIntreeGmp=1
- HaveSecurePowm=1
-
- AC_MSG_CHECKING([GMP version])
- GhcGmpVerMj=5
- GhcGmpVerMi=0
- GhcGmpVerPl=4
- AC_MSG_RESULT([$GhcGmpVerMj.$GhcGmpVerMi.$GhcGmpVerPl])
-fi
-
-
-dnl--------------------------------------------------------------------
-dnl * Make sure we got some form of gmp
-dnl--------------------------------------------------------------------
-
-AC_SUBST(GMP_INCLUDE_DIRS)
-AC_SUBST(GMP_LIBS)
-AC_SUBST(GMP_LIB_DIRS)
-AC_SUBST(GMP_FRAMEWORK)
-AC_SUBST(HaveLibGmp)
-AC_SUBST(HaveFrameworkGMP)
-AC_SUBST(HaveSecurePowm)
-AC_SUBST(UseIntreeGmp)
-AC_SUBST(GhcGmpVerMj)
-AC_SUBST(GhcGmpVerMi)
-AC_SUBST(GhcGmpVerPl)
-
-AC_CONFIG_FILES([integer-gmp.buildinfo config.mk include/HsIntegerGmp.h])
-
-dnl--------------------------------------------------------------------
-dnl * Generate output files
-dnl--------------------------------------------------------------------
-
-AC_OUTPUT