Don't use fname to define functions
[maxima.git] / src / numerical / slatec / quadpack.system
blob7fab907950c628261570ee4e5c0c47a9229f35b2
1 ;;; -*- Mode: lisp -*-
2 ;;;
3 ;;; This system file is used to convert the Fortran files to Lisp
4 ;;; files for use with Maxima.
7 ;; You might have to bind *default-pathname-defaults* to #p"" when
8 ;; running this.  It seems that some part of defsystem wants to merge
9 ;; a pathname with *default-pathname-defaults* to produce the output
10 ;; file name, and that ends up going to the wrong place.
12 (eval-when (load eval compile)
13   ;; You need to define a logical pathname translation for maxima for
14   ;; this to work.
15   (setf (logical-pathname-translations "slatec")
16         `(("**;*.*.*" "maxima:src;numerical;slatec;**;*.*"))))
18 (mk:define-language :f2cl
19     :compiler #'f2cl:f2cl
20     :loader #'identity
21     :source-extension "f")
23 (mk:defsystem quadpack
24     :source-extension "f"
25     :binary-extension "lisp"
26     :source-pathname (logical-pathname "slatec:")
27     :binary-pathname (logical-pathname "slatec:")
28     :components
29     ((:module fortran
30               :language :f2cl
31               :compiler-options (:float-format double-float :package "SLATEC")
32               :compile-only t
33               :binary-pathname (logical-pathname "slatec:")
34               :binary-extension "lisp"
35               :components
36               (
37                ;; Support
38                (:file "dqwgtf")
39                (:file "dqcheb")
40                (:file "dqk15w")
41                (:file "dqwgts")
42                (:file "dqwgtc")
43                (:file "dgtsl"
44                       :compiler-options (:array-slicing nil :array-type :array
45                                                         :float-format double-float :package "SLATEC"))
46                ;;(:file "xerror")
47                
48                ;; Core integration routines
49                (:file "dqk15")
50                (:file "dqk31")
51                (:file "dqk41")
52                (:file "dqk51")
53                (:file "dqk61")
54                (:file "dqk21")
55                (:file "dqk15i")
56                (:file "dqelg")
57                (:file "dqpsrt")
58                (:file "dqc25s"
59                       :depends-on ("dqcheb" "dqk15w"))
60                (:file "dqmomo")
61                (:file "dqc25c"
62                       :depends-on ("dqcheb"
63                                    "dqk15w"))
64                (:file "dqc25f"
65                       :depends-on ("dgtsl"
66                                    "dqcheb"
67                                    "dqk15w"
68                                    "dqwgtf"))
69                ;; Basic integrators
70                (:file "dqage"
71                       :depends-on ("dqk15"
72                                    "dqk31"
73                                    "dqk41"
74                                    "dqk51"
75                                    "dqk61"
76                                    "dqk21"
77                                    "dqpsrt"))
78                (:file "dqagie"
79                       :depends-on ("dqelg"
80                                    "dqk15i"
81                                    "dqpsrt"))
82                (:file "dqagp"
83                       :depends-on ("dqagpe"))
84                (:file "dqagpe"
85                       :depends-on ("dqelg"
86                                    "dqpsrt"
87                                    "dqk21"
88                                    ))
89                (:file "dqagse"
90                       :depends-on ("dqk21"
91                                    "dqelg"
92                                    "dqpsrt"))
93                (:file "dqawfe"
94                       :depends-on ("dqagie"
95                                    "dqawoe"
96                                    "dqelg")
97                       ;; If your defsystem doesn't support :compiler-options, use this:
98                       ;; :language :f2cl-no-slice
99                       ;; If your defsystem does support :compiler-options, use this:
100                       :compiler-options (:array-slicing nil :array-type :array
101                                                         :float-format double-float :package "SLATEC")
102                       )
103                (:file "dqawoe"
104                       :depends-on ("dqc25f"
105                                    "dqpsrt"
106                                    "dqelg"))
107                (:file "dqawse"
108                       :depends-on ("dqc25s"
109                                    "dqmomo"
110                                    "dqpsrt"))
111                (:file "dqawce"
112                       :depends-on ("dqc25c"
113                                    "dqpsrt"))
114                ;; Simplified interface routines
115                (:file "dqng")
116                (:file "dqag"
117                       :depends-on ("dqage"))
118                (:file "dqags"
119                       :depends-on ("dqagse"))
120                (:file "dqagi"
121                       :depends-on ("dqagie"))
122                (:file "dqawf"
123                       :depends-on ("dqawfe"))
124                (:file "dqawo"
125                       :depends-on ("dqawoe"))
126                (:file "dqaws"
127                       :depends-on ("dqawse"))
128                (:file "dqawc"
129                       :depends-on ("dqawce"))))))