<pre style='margin:0'>
Frank Schima (mf2k) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0960925f69ba5488fbfb8757f0cffaea85757d9b">https://github.com/macports/macports-ports/commit/0960925f69ba5488fbfb8757f0cffaea85757d9b</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 0960925 fricas: New port submitted by pietvo
</span>0960925 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 0960925f69ba5488fbfb8757f0cffaea85757d9b
</span>Author: Frank Schima <mf2k@macports.org>
AuthorDate: Thu Aug 10 08:48:36 2017 -0600
<span style='display:block; white-space:pre;color:#404040;'> fricas: New port submitted by pietvo
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/54573
</span>---
math/fricas/Portfile | 97 ++++++++++++++++++++++++++++++++
math/fricas/files/use-macports-gmp.patch | 26 +++++++++
2 files changed, 123 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/fricas/Portfile b/math/fricas/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..882b4a2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/fricas/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,97 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- 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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name fricas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 1.3.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories math
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@pietvo vanoostrum.org:piet}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs i386 x86_64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license BSD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description The Fricas computer algebra system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FriCAS is a computer algebra system. FriCAS is a fork of Axiom. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The basic goal of FriCAS is to create a free advanced \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ world-class CAS. FriCAS builds on the Axiom codebase. The FriCAS \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ algebra library is one of the largest and most advanced free \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ general purpose computer algebra systems -- this gives a good \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foundation to build on. Additionally, the FriCAS algebra library \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ is written in a high level strongly typed language (Spad), which \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ allows natural expression of mathematical algorithms. This makes \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FriCAS easier to understand and extend.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage http://fricas.sourceforge.net/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites sourceforge:${name}/${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname ${name}-${version}-full
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_bzip2 yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+worksrcdir ${name}-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 1ab5c148f0684c946c3b0831a5fe01fc21bbe83a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 798b123e61f3566e6b1b367c235f5b4599a9c737b938aa71f32d0aabb7db439d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ md5 0d3af65758ce93b1cc52c2511e73e674 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha1 8fc3e850a9890eac21cd9f391dd58000b3537067
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.dir ${workpath}/fricas-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cmd ${worksrcpath}/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-configure {file mkdir ${configure.dir}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.dir ${configure.dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args MAYBE_VIEWPORTS=viewports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant x11 description {Enable X11 support.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Without X11, Fricas does not support graphics and hyperdoc} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-x -x-includes=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -x-libraries=${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:xorg-libX11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xpm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libice \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libsm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+universal_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant sbcl conflicts ccl ecl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {Use SBCL as lisp implementation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:sbcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-lisp=sbcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if { ${configure.build_arch} eq "x86_64" } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set ccl_script ccl64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} elseif { ${configure.build_arch} eq "i386" } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set ccl_script ccl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant ccl conflicts gmp sbcl ecl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {Use CCL (Clozure) instead of SBCL as lisp implementation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:ccl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-lisp=${ccl_script}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant ecl conflicts gmp sbcl ccl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {Use ECL instead of SBCL as lisp implementation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:ecl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-lisp=ecl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fricas doesn't compile under GCL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fricas compiles under CLISP but doesn't run correctly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# So we leave these variants out until we get them working
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant gmp conflicts ccl ecl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {Use libgmp for faster calculations} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-gmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:gmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append use-macports-gmp.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libgmp.so|${prefix}/lib/libgmp.dylib|" ${worksrcpath}/src/lisp/num_gmp.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default_variants +x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if { ![variant_isset ccl] && ![variant_isset ecl] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +sbcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/fricas/files/use-macports-gmp.patch b/math/fricas/files/use-macports-gmp.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..77b8cb9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/fricas/files/use-macports-gmp.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/lib/Makefile.in.~1~ 2017-04-25 13:41:48.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/lib/Makefile.in 2017-07-13 21:58:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -69,7 +69,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CC) -g $(SOLIB_FLAGS) $(core_objects) $(fricas_c_runtime_extra) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(GMP_WRAP_SO): $(srcdir)/gmp_wrap.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- $(CC) -g -fPIC $(SOLIB_FLAGS) $< $(GMP_LIB) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ $(CC) $(CPPFLAGS) $(LDFLAGS) -g -fPIC $(SOLIB_FLAGS) $< $(GMP_LIB) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PRECIOUS: %.$(OBJEXT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/lisp/num_gmp.lisp.~1~ 2017-04-25 13:41:48.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/lisp/num_gmp.lisp 2017-07-14 17:43:37.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -819,7 +819,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (if (ignore-errors (|quiet_load_alien| "libgmp.so") t)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (if (ignore-errors
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (|quiet_load_alien| wrapper-lib) t)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- (install-gmp-multiplication)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- (setf *gmp-multiplication-initialized* t)))))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (progn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (install-gmp-multiplication)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (setf *gmp-multiplication-initialized* t))))))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>
</pre>