Makefile 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. #
  2. # Makefile for REDUCE User Contributed Library (PSL Version)
  3. #
  4. # Author: James H. Davenport <jhd@maths.bath.ac.uk>.
  5. #
  6. # Modified by: Anthony C. Hearn.
  7. #
  8. # This Makefile may be used to build fast loading versions of all the
  9. # PSL REDUCE User Contributed Library packages, or any particular
  10. # package. It assumes that the relevant source files are in the
  11. # $reduce/lib directory. It is specific to PSL, and of course those
  12. # systems (e.g. UNIX) that support a make mechanism. However, it can
  13. # be easily used with other systems with a make facility once a
  14. # suitable mkfasl script has been written.
  15. REDUCE= $(reduce)
  16. FASL = b
  17. BINDIR= $(REDUCE)/fasl
  18. SRCDIR= $(REDUCE)/lib
  19. TSTDIR= $(REDUCE)/lib
  20. MKFASL= $(REDUCE)/util/mkfasl2
  21. PACKAGES= assist changevar cvit desir fide laplace linineq physop \
  22. pm reacteqn reset rlfi showrules tri wu
  23. UNCOMPILEDPACKAGES= odeex
  24. TSTPACKAGES= assist changevar cvit desir fide laplace linineq physop \
  25. pmrules reacteqn rlfi tri wu
  26. all: $(PACKAGES)
  27. assist: $(BINDIR)/assist.$(FASL)
  28. $(BINDIR)/assist.$(FASL): $(SRCDIR)/assist.red
  29. $(MKFASL) assist lib
  30. changevar: $(BINDIR)/changevar.$(FASL)
  31. $(BINDIR)/changevar.$(FASL): $(SRCDIR)/changevar.red
  32. $(MKFASL) changevar lib
  33. cvit: $(BINDIR)/cvit.$(FASL)
  34. $(BINDIR)/cvit.$(FASL): $(SRCDIR)/cvit.red
  35. $(MKFASL) cvit lib
  36. desir: $(BINDIR)/desir.$(FASL)
  37. $(BINDIR)/desir.$(FASL): $(SRCDIR)/desir.red
  38. $(MKFASL) desir lib
  39. fide: $(BINDIR)/fide1.$(FASL) $(BINDIR)/fide.$(FASL)
  40. $(BINDIR)/fide1.$(FASL): $(SRCDIR)/fide1.red
  41. $(MKFASL) fide1 lib
  42. $(BINDIR)/fide.$(FASL): $(SRCDIR)/fide.red
  43. $(MKFASL) fide lib
  44. laplace: $(BINDIR)/laplace.$(FASL)
  45. $(BINDIR)/laplace.$(FASL): $(SRCDIR)/laplace.red
  46. $(MKFASL) laplace lib
  47. linineq: $(BINDIR)/linineq.$(FASL)
  48. $(BINDIR)/linineq.$(FASL): $(SRCDIR)/linineq.red
  49. $(MKFASL) linineq lib
  50. physop: $(BINDIR)/noncom2.$(FASL) $(BINDIR)/physop.$(FASL)
  51. $(BINDIR)/noncom2.$(FASL): $(SRCDIR)/noncom2.red
  52. $(MKFASL) noncom2 lib
  53. $(BINDIR)/physop.$(FASL): $(SRCDIR)/physop.red
  54. $(MKFASL) physop lib
  55. pm: $(BINDIR)/pm.$(FASL) $(BINDIR)/pmrules.$(FASL)
  56. # $(BINDIR)/pmrules2.$(FASL)
  57. $(BINDIR)/pm.$(FASL): $(SRCDIR)/pm.red
  58. $(MKFASL) pm lib
  59. $(BINDIR)/pmrules.$(FASL): $(SRCDIR)/pmrules.red
  60. $(MKFASL) pmrules lib
  61. # $(BINDIR)/pmrules2.$(FASL): $(SRCDIR)/pmrules2.red
  62. # $(MKFASL) pmrules2 lib
  63. reacteqn: $(BINDIR)/reacteqn.$(FASL)
  64. $(BINDIR)/reacteqn.$(FASL): $(SRCDIR)/reacteqn.red
  65. $(MKFASL) reacteqn lib
  66. reset: $(BINDIR)/reset.$(FASL)
  67. $(BINDIR)/reset.$(FASL): $(SRCDIR)/reset.red
  68. $(MKFASL) reset lib
  69. rlfi: $(BINDIR)/rlfi.$(FASL)
  70. $(BINDIR)/rlfi.$(FASL): $(SRCDIR)/rlfi.red
  71. $(MKFASL) rlfi lib
  72. showrules: $(BINDIR)/showrules.$(FASL)
  73. $(BINDIR)/showrules.$(FASL): $(SRCDIR)/showrules.red
  74. $(MKFASL) showrules lib
  75. tri: $(BINDIR)/tri.$(FASL)
  76. $(BINDIR)/tri.$(FASL): $(SRCDIR)/tri.red
  77. $(MKFASL) tri lib
  78. wu: $(BINDIR)/wu.$(FASL)
  79. $(BINDIR)/wu.$(FASL): $(SRCDIR)/wu.red
  80. $(MKFASL) wu lib
  81. test: $(PACKAGES)
  82. for i in $(TSTPACKAGES) ; do \
  83. rm -f $(REDUCE)/log/$$i.log ; \
  84. echo 'load_package '$$i';on errcont;in "'$(TSTDIR)/$$i'.tst"; bye;' \
  85. | reduce > $(REDUCE)/log/$$i.log ; \
  86. done
  87. check: $(PACKAGES)
  88. - for i in $(TSTPACKAGES) ; do \
  89. echo 'comparing '$$i'...' ; \
  90. diff $(REDUCE)/log/$$i.log $(TSTDIR) ; \
  91. done