Admin/polyml/README
author wenzelm
Sat, 30 Oct 2021 12:03:43 +0200
changeset 74635 b179891dd357
parent 73668 5e12dad8d09b
child 74721 38e5417910ab
permissions -rw-r--r--
updated for pre-5.9 testing;

Poly/ML for Isabelle
====================

This compilation of Poly/ML (https://www.polyml.org) is based on the
source distribution from
https://github.com/polyml/polyml/commit/960de0cd0795 (shortly before
official version 5.9).

The Isabelle repository provides an administrative tool "isabelle
build_polyml", which can be used in the polyml component directory as
follows.

* Linux:

  $ isabelle build_polyml -m32 -s sha1 src
  $ isabelle build_polyml -m64 -s sha1 src

* macOS:

  $ isabelle build_polyml -m32 -s sha1 src
  $ isabelle build_polyml -m64 -s sha1 src

* Windows (Cygwin shell)

  $ isabelle build_polyml -M /cygdrive/c/msys64 -m32 -s sha1 src
  $ isabelle build_polyml -M /cygdrive/c/msys64 -m64 -s sha1 src


Building libgmp on macOS
========================

The build_polyml invocations above implicitly use the GNU Multiple Precision
Arithmetic Library (libgmp), but that is not available on macOS by default.
Appending "--without-gmp" to the command-line omits this library. Building
libgmp properly from sources works as follows (library headers and binaries
will be placed in /usr/local).

* Download:

  $ curl https://gmplib.org/download/gmp/gmp-6.2.1.tar.bz2 | tar xjf -
  $ cd gmp-6.2.1

* build:

  $ make distclean

  #Intel
  $ ./configure --enable-cxx --build=core2-apple-darwin"$(uname -r)"

  #ARM
  $ ./configure --enable-cxx --build=aarch64-apple-darwin"$(uname -r)"

  $ make && make check
  $ sudo make install


        Makarius
        21-Oct-2021