Subject: [bug#38604] [WIP SWI-Prolog 3/3] gnu: Add swi-prolog.

From: Brett Gilio <[email-masked]>
Date: Fri, 13 Dec 2019 21:51:15 -0600

>From 08bee0ab7c3c67c6d3095e35bb734243bc93b217 Mon Sep 17 00:00:00 2001
From: Brett Gilio <[email-masked]>
Date: Fri, 13 Dec 2019 21:46:26 -0600
Subject: [WIP SWI-Prolog 3/3] gnu: Add swi-prolog.

* gnu/packages/gprolog.scm (swi-prolog): New variable.
---
 gnu/packages/gprolog.scm | 43 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/gprolog.scm b/gnu/packages/gprolog.scm
index 5046c91a84..2f1fac2449 100644
--- a/gnu/packages/gprolog.scm
+++ b/gnu/packages/gprolog.scm
@@ -66,3 +66,46 @@ manner.  It also features an interactive interpreter.")
     (supported-systems (fold delete
                              %supported-systems
                              '("armhf-linux" "mips64el-linux")))))
+
+;; TODO: This current version of SWI-PROLOG using the
+;; tarball from the official website is completely self-contained
+;; such that all submodules are provided. Eventually replace this
+;; and manually patch those submodules.
+(define-public swi-prolog
+  (package
+    (name "swi-prolog")
+    (version "8.0.3")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://www.swi-prolog.org/download/stable/src/swipl-"
+			    version ".tar.gz"))
+        (sha256
+         (base32
+          "1bnnwbdxnifb1qj42prsqhx8y0k2z596wgvh4bbnd0bw8w59rrff"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:parallel-build? #f
+       #:tests? #t)) ; FIXME: 
+       ;#:configure-flags
+	; (list "-DINSTALL_DOCUMENTATION=OFF"))) ; FIXME:
+    (native-inputs
+     `(("zlib" ,zlib)
+       ("gmp" ,gmp)
+       ("readline" ,readline)
+					;("texlive" ,texlive)
+       ("texinfo" ,texinfo)
+       ("libunwind" ,libunwind)
+       ("libjpeg", libjpeg)
+       ("libxft" ,libxft)
+       ("fontconfig" ,fontconfig)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("openssl" ,openssl)))
+    (home-page "https://www.swi-prolog.org/")
+    (synopsis "ISO/Edinburgh-style Prolog interpreter")
+    (description "SWI-Prolog is a fast and powerful ISO/Edinburgh-style Prolog 
+compiler with a rich set of built-in predicates. It offers a fast, robust and 
+small environment which enables substantial applications to be developed with 
+it.")
+    (license #f))) ; TODO:
-- 
2.24.1