setexec 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #!/bin/sh
  2. # ensure script files in this directory have correct permissions
  3. #
  4. # Note
  5. # most scripts here are intended to be executed from a target architecture
  6. # directory, via a command such as
  7. # ../util/boot37
  8. # but this one (setexec) and "makes.bat" should be executed with
  9. # this util directory current.
  10. # chmod +x setexec but hard to do while being executed?
  11. # makes.bat can be run after compiling "makemake.c" and rebuilds
  12. # system-specific Makefiles from the basic file "makebase"
  13. chmod +x makes.bat
  14. # full37 is the build script to use supposing that all the C code
  15. # (in directory csl-c) has already been built. It is the only rebuild
  16. # job needed in normal circumstances
  17. chmod +x full37
  18. # patchup arranges that the most recent patches (installed in the file
  19. # packages/support/patches.red within the top-level REDUCE directory)
  20. # get installed into the current REDUCE image.
  21. chmod +x patchup
  22. # testall called on its own runs all known test scripts.
  23. # If followed by a package name it just runs the test for that package.
  24. # testrest is similar, except that it only updates logs that seem out of
  25. # date.
  26. chmod +x testall
  27. chmod +x testrest
  28. # checkall produces a log (in log/checkall.log) of differences between
  29. # the logs creates by testall and reference ones. "checkall XXX" produces
  30. # a log that relates to just that one package.
  31. chmod +x checkall
  32. #
  33. # If (for any reason) you want to recompile just one package that forms
  34. # part of REDUCE you can go
  35. # ../util/package <packagename>
  36. # This will recompile such modules that are parts of the given package
  37. # and whose source files are newer than the compiled versions stored
  38. # within the REDUCE image file. This may be useful if you have updated
  39. # some of the source code. Note that if you add extra packages to REDUCE
  40. # you will need to update the "package.red" file in the REDUCE root
  41. # directory and follow the rukes about having a file for each package
  42. # that identifies all of the other relevant source files.
  43. #
  44. chmod +x package
  45. #
  46. # The next scripts are only needed if you want to rebuild everything
  47. # from scratch. "boot37" uses a "slowr37" executable and builds a
  48. # bootstrap version of REDUCE. "testslow" is like "testall" but tests this
  49. # version. "profile" collects profile data, and then "c-code37" compiles
  50. # the hot-spot functions into C. "clash" looks for places in the REDUCE
  51. # source where two packages each define a function with the same name.
  52. #
  53. chmod +x boot37
  54. chmod +x testslow
  55. chmod +x profile
  56. chmod +x c-code37
  57. chmod +x clash
  58. # the "makeall" script does all the above and provides a hands-free
  59. # utterly complete reconstruction and test.
  60. chmod +x makeall
  61. # For Linux the object files for REDUCE will be distributed. The "relink"
  62. # script makes executables out of them again. Those who have the
  63. # "professional" version of REDUCE will probably prefer to use "make"
  64. # to achieve this effect, but when source files are not avauilable the
  65. # dependancy information in the Makefile can cause pain - this small
  66. # free-standing script may avoid that.
  67. chmod +x relink
  68. # end of setexec script