

% For a build-system implemented mostly in Lisp it can be
% read directly. When the build system uses scripts in some
% other notation a simple Lisp program can read this and re-print
% it in whatever form that other system requires, be that shell
% scripts, fragments of a Makefile or whatever.

% Each REDUCE package lines in a sub-directory of the "packages"
% directory. In many cases the name of this sub-directory is the same
% as the name of the package, but sometimes it makes sense to organise
% several packages in one directory or to use a sub-directory structure.
% The list here lists every REDUCE package and explicitly gives the
% location where its source files live.

% When REDUCE is built the first step is to create a "core" system that
% contains all those things needed to build later packages. In an ideal
% this core would be as small as possible, but it is also the case that
% the "core" represents the parts of REDUCE that are pre-loaded at the
% start of any run - and so for historical reasons the set of packages
% included in it give a system rather similar to a very very old version
% of the whole system.
% In this list, packages that are part of the core are tagged as such,
% and they appear in the list on the order they should be built in.

% Packages that are not tagged as "core" ought ideally to be independently
% builable using just the core system. At present this is not the case and
% while building some packages load others. But the list here is ordered
% so that no package should try to load anything that has not appeared
% earlier in the list.

% Many packages have a test script alongside their source. For a package
% called xxx the test script should be "xxx.tst" and a file "xxx.rlg"
% should be reference output from running it.

% In principle there could be modules that were only to be built on the
% CSL or only on the PSL version, and so I tag each with something that
% indicates which they are relevant for. But if you find a module which
% is NOT for use with both at least beware!

(
 (support       "support"     core                               psl)
 (rlisp         "rlisp"       core                           csl psl)
 (alg           "alg"         core      test                 csl psl)
 (poly          "poly"        core      test                 csl psl)
 (polydiv       "poly"        core      test                 csl psl)
 (arith         "arith"       core      test                 csl psl)
 (mathpr        "mathpr"      core                           csl psl)
 (ezgcd         "factor"      core                           csl psl)
 (factor        "factor"      core      test                 csl psl)
 (hephys        "hephys"      core                           csl psl)
 (int           "int"         core      test                 csl psl)
 (matrix        "matrix"      core      test                 csl psl)
 (rlisp88       "rlisp88"     core                           csl psl)
 (rprint        "rprint"      core                           csl psl)
 (fmprint       "rprint"      core                           csl psl)
 (pretty        "rprint"      core                           csl psl)
 (solve         "solve"       core      test                 csl psl)
 (desir         "solve"       core      test                 csl psl)
 (ineq          "solve"       core      test                 csl psl)
 (modsr         "solve"       core      test                 csl psl)
 (rsolve        "solve"       core      test                 csl psl)
 (algint        "algint"      core      test                 csl psl)
 (arnum         "arnum"       core      test                 csl psl)
 (assist        "assist"      core      test                 csl psl)
 (dummy         "assist"      core      test                 csl psl)
 (cantens       "assist"      core      test                 csl psl)
 (atensor       "atensor"     core      test                 csl psl)
 (avector       "avector"     core      test                 csl psl)
 (invbase       "invbase"     core      test                 csl psl)
 (misc          "misc"        core                           csl psl)
 (boolean       "misc"        core      test                 csl psl)
 (cedit         "misc"        core                           csl psl)
 (rcref         "misc"        core                           csl psl)
%(ftr           "misc"        core                           csl psl)
 (reset         "misc"        core                           csl psl)
 (cali          "cali"        core      test                 csl psl)
 (camal         "camal"       core      test                 csl psl)
 (changevr      "misc"        core      test                 csl psl)
 (compact       "misc"        core      test                 csl psl)
 (dfpart        "misc"        core      test                 csl psl)
 (lie           "misc"        core      test                 csl psl)
 (assert        "assert"                test                 csl psl)
 (odesolve      "odesolve"    noncore   test                 csl psl)
 (pf            "misc"                  test                 csl psl)
 (cvit          "hephys"                test                 csl psl)
 (noncom2       "hephys"                                     csl psl)
 (physop        "hephys"                test                 csl psl)
 (crack         "crack"                 test                 csl psl)
 (liepde        "crack"                 test                 csl psl)
 (applysym      "crack"                 test                 csl psl)
 (conlaw        "crack"                 test                 csl psl)
 (excalc        "excalc"                test                 csl psl)
 (gentran       "gentran"               test                 csl psl)
 (fide1         "fide"                                       csl psl)
 (fide          "fide"                  test                 csl psl)
 (numeric       "numeric"               test                 csl psl)
 (randpoly      "misc"                  test                 csl psl)
 (reacteqn      "misc"                  test                 csl psl)
 (roots         "roots"                 test                 csl psl)
 (rlfi          "misc"                  test                 csl psl)
 (roots2        "roots"                                      csl psl)
 (sets          "misc"                  test                 csl psl)
 (xideal        "xideal"                test                 csl psl)
 (eds           "eds"                   test                 csl psl)
 (dipoly        "dipoly"                                     csl psl)
 (groebner      "groebner"              test                 csl psl)
 (groebnr2      "groebner"                                   csl psl)
 (ideals        "groebner"              test                 csl psl)
 (linalg        "linalg"                test                 csl psl)
 (ncpoly        "ncpoly"                test                 csl psl)
 (normform      "normform"              test                 csl psl)
 (orthovec      "orthovec"              test                 csl psl)
 (plot          "plot"                                       csl psl)
 (gnuplot       "plot"                                       csl psl)
 (laplace       "laplace"               test                 csl psl)
 (pm            "pm"                    test                 csl psl)
 (qsum          "qsum"                  test                 csl psl)
 (scope         "scope"                 test                 csl psl)
 (sparse        "sparse"                test                 csl psl)
 (spde          "spde"                  test                 csl psl)
 (specfn        "specfn"                test                 csl psl)
 (specfn2       "specfn"                                     csl psl)
 (specfaux      "specfn"                                     csl psl)
 (specbess      "specfn"                                     csl psl)
 (sfgamma       "specfn"                                     csl psl)
 (tps           "tps"                   test                 csl psl)
 (limits        "misc"                  test                 csl psl)
 (defint        "defint"                test                 csl psl)
 (fps           "specfn"                test                 csl psl)
 (trigint       "trigint"               test                 csl psl)
 (ratint        "ratint"                test                 csl psl)
 (mathml        "mathml"                test                 csl psl)
 (mathmlom      "mathml"                test                 csl psl)
 (rltools       "redlog/rltools"                             csl psl)
 (redlog        "redlog/rl"             test                 csl psl)
 (cgb           "cgb"                   test                 csl psl)
 (cl            "redlog/cl"                                  csl psl)
 (ofsf          "redlog/ofsf"           test                 csl psl)
 (dvfsf         "redlog/dvfsf"                               csl psl)
 (acfsf         "redlog/acfsf"                               csl psl)
 (dcfsf         "redlog/dcfsf"                               csl psl)
 (geometry      "geometry"                                   csl psl)
 (ibalp         "redlog/ibalp"          test                 csl psl)
 (pasf          "redlog/pasf"           test                 csl psl)
 (qqe           "redlog/qqe"                                 csl psl)
 (qqe_ofsf      "redlog/qqe_ofsf"       test                 csl psl)
 (mri           "redlog/mri"                                 csl psl)
 (mri_ofsf      "redlog/mri"                                 csl psl)
 (mri_pasf      "redlog/mri"                                 csl psl)
 (redfront      "redfront"                                   csl psl)
 (reduce4       "reduce4"                                    csl psl)
 (tables        "reduce4"                                    csl psl)
 (talp          "redlog/talp"                                csl psl)
 (v3tools       "crack"                                      csl psl)
 (sum           "sum"                   test                 csl psl)
 (zeilberg      "sum"                   test                 csl psl)
 (symaux        "symmetry"                                   csl psl)
 (symmetry      "symmetry"              test                 csl psl)
 (taylor        "taylor"                test                 csl psl)
 (mrvlimit      "mrvlimit"              test                 csl psl)
 (residue       "residue"               test                 csl psl)
 (susy2         "susy2"                 test                 csl psl)
 (tri           "tri"                   test                 csl psl)
 (trigsimp      "trigsimp"              test                 csl psl)
 (xcolor        "xcolor"                test                 csl psl)
 (wu            "wu"                    test                 csl psl)
 (ztrans        "ztrans"                test                 csl psl)
 (geoprover     "geometry"              test                 csl psl)
 (rataprx       "rataprx"               test                 csl psl)
 (rtrace        "rtrace"                                     csl psl)
 (tmprint       "tmprint"                                    csl psl)
 (libreduce     "libreduce"                                  csl psl)
 (qepcad        "redlog/qepcad"                              csl psl)
 (utf8          "utf8"                                       csl psl)
 (lpdo          "lpdo"                  test                 csl psl)
 (mma           "redlog/mma"                                 csl psl)
 (guardian      "guardian"              test                 csl psl)
 (cdiff         "cdiff"                 test                 csl psl)
)

% End of configuration data
