summaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorasau <asau@pkgsrc.org>2012-04-01 20:48:39 +0000
committerasau <asau@pkgsrc.org>2012-04-01 20:48:39 +0000
commitcf008e639778ecdd6288e348a69b3ec4c5d00818 (patch)
tree4760fd159a063cef01a2b85764a85ba720afd4e3 /math
parent859ead242e238e6e145f8608f681ac28d6af2316 (diff)
downloadpkgsrc-cf008e639778ecdd6288e348a69b3ec4c5d00818.tar.gz
Ad hoc fix to make OpenAxiom build with CLISP on NetBSD/amd64.
It sounds like COMPILE-FILE is broken in CLISP on NetBSD/amd64. Silence warnings and suppress redefinition check in order to compile it without a single warning.
Diffstat (limited to 'math')
-rw-r--r--math/openaxiom/distinfo3
-rw-r--r--math/openaxiom/patches/patch-src_interp_patches.lisp77
2 files changed, 79 insertions, 1 deletions
diff --git a/math/openaxiom/distinfo b/math/openaxiom/distinfo
index 6e8e209a5a2..1e65d95b156 100644
--- a/math/openaxiom/distinfo
+++ b/math/openaxiom/distinfo
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.5 2012/03/23 21:20:47 asau Exp $
+$NetBSD: distinfo,v 1.6 2012/04/01 20:48:39 asau Exp $
SHA1 (open-axiom-1.4.1.tar.bz2) = 52a6791c31125507f33b48d4ea38e7a9c7918cb5
RMD160 (open-axiom-1.4.1.tar.bz2) = 172f21ce6bfde933a51e0fdfdeae19617a611d1e
Size (open-axiom-1.4.1.tar.bz2) = 10023493 bytes
SHA1 (patch-src_hyper_htadd.c) = 178409e3caca7bbdf02df2ff605ae44539e4f9b3
SHA1 (patch-src_hyper_lex.c) = 6b8ccab845defc78254c98f60adc8397acefc2c6
+SHA1 (patch-src_interp_patches.lisp) = ab826628fec7e234b7f3eed796664b4c4766ffb3
diff --git a/math/openaxiom/patches/patch-src_interp_patches.lisp b/math/openaxiom/patches/patch-src_interp_patches.lisp
new file mode 100644
index 00000000000..0359bde0f41
--- /dev/null
+++ b/math/openaxiom/patches/patch-src_interp_patches.lisp
@@ -0,0 +1,77 @@
+$NetBSD: patch-src_interp_patches.lisp,v 1.1 2012/04/01 20:48:39 asau Exp $
+
+Silence warnings to make it build with CLISP on NetBSD/amd64
+(perhaps on other amd64 systems too).
+
+--- src/interp/patches.lisp.orig 2011-07-07 19:04:13.000000000 +0000
++++ src/interp/patches.lisp
+@@ -33,11 +33,12 @@
+
+ (import-module "macros")
+ (import-module "g-timer")
++#+clisp (eval-when (:compile-toplevel :load-toplevel) (setf custom:*suppress-check-redefinition* t))
+ (import-module "sys-driver")
+ (in-package "BOOT")
+ ;;patches for now
+
+-(defun CATCHALL (a &rest b) a) ;; not correct but ok for now
++(defun CATCHALL (a &rest b) (declare (ignore b)) a) ;; not correct but ok for now
+ (defvar |$demoFlag| nil)
+
+ (define-function '|construct| #'list) ;; NEEDED , SPAD-COMPILER generated Lisp code
+@@ -58,7 +59,7 @@
+ ;; call lisp::unwind whereas it is defined (in this file) to be
+ ;; interned in the boot package. We've returned toplevel to its
+ ;; previous definition.
+-(defun toplevel (&rest foo) (throw '|top_level| '|restart|))
++(defun toplevel (&rest foo) (declare (ignore foo)) (throw '|top_level| '|restart|))
+ ;;(defun toplevel (&rest foo) (lisp::unwind))
+
+ (define-function 'top-level #'toplevel)
+@@ -69,15 +70,15 @@
+ #+(and :GCL :IEEE-FLOATING-POINT )
+ (setq system:*print-nans* T)
+
+-(defun /RF (&rest foo &aux (|$Echo| 'T))
++(defun /RF (&rest foo &aux (|$Echo| 'T)) (declare (ignore foo))
+ (declare (special |$Echo|))
+ (/RF-1 nil))
+
+-(defun /RQ (&rest foo &aux (|$Echo| nil))
++(defun /RQ (&rest foo &aux (|$Echo| nil)) (declare (ignore foo))
+ (declare (special |$Echo|))
+ (/RF-1 nil))
+
+-(defun |/RQ,LIB| (&rest foo &aux (|$Echo| nil) ($LISPLIB T))
++(defun |/RQ,LIB| (&rest foo &aux (|$Echo| nil) ($LISPLIB T)) (declare (ignore foo))
+ (declare (special |$Echo| $LISPLIB))
+ (/RF-1 nil))
+
+@@ -99,10 +100,10 @@
+ (|ncINTERPFILE| input-file |$Echo|))
+ (t (spad input-file)))))
+
+-(defun /EF (&rest foo)
++(defun /EF (&rest foo) (declare (ignore foo))
+ (|runCommand| (concat "vi " (namestring (make-input-filename /EDITFILE)))))
+
+-(defun SHAREDITEMS (x) T) ;;checked in history code
++(defun SHAREDITEMS (x) (declare (ignore x)) T) ;;checked in history code
+
+ (defun GETZEROVEC (n) (MAKE-ARRAY n :initial-element 0))
+
+@@ -116,11 +117,11 @@
+
+ ;; following are defined in spadtest.boot and stantest.boot
+ (defun |installStandardTestPackages| () ())
+-(defun |spadtestValueHook| (val type) ())
+-(defun |testError| (errotype erroValue) ())
++(defun |spadtestValueHook| (val type) (declare (ignore val type)) ())
++(defun |testError| (errotype erroValue) (declare (ignore errotype erroValue)) ())
+ (defvar |$TestOptions| ())
+ ;; following in defined in word.boot
+-(defun |bootFind| (word) ())
++(defun |bootFind| (word) (declare (ignore word)) ())
+
+ (defvar *msghash* nil "hash table keyed by msg number")
+