How_To 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. How to make a fresh distribution:
  2. For a distribution you need ".distr" files and RCS files.
  3. The EM home directory contains a file called ".distr". It contains
  4. the names of all the files and directories you want to have in the distribution.
  5. The directories should contain .distr files, the other files should
  6. be placed under RCS.
  7. The current RCS revision name is "distr4".
  8. The are files that derive from other files and yet should be placed
  9. in the distribution.
  10. These files should not be placed under RCS.
  11. The file "Exceptions" in this directory contains the current list of
  12. these files.
  13. When all this is correct, use the shell script mktree the extract
  14. the distribution from the EM tree.
  15. cd ~em/Repositories ; sh ../Work/distr/mktree destination_tree >../Work/distr/f.attf 2>&1
  16. Make sure that the destination tree exists and is empty!
  17. Failing to do that will almost certainly result in a welter of
  18. error messages.
  19. The file f.attf contains mktree error messages and should be compared
  20. to Exceptions.
  21. The actions of mktree are quite complicated. It starts in the current
  22. directory creating a version in the destination directory.
  23. Then it reads the .distr file.
  24. For each file mentioned there it performes certain actions:
  25. 1- Directory Change to that directory and call yourself recursively.
  26. 2- File
  27. a- Does a file LIST exist in this directory AND
  28. is the first line of LIST equal to the name of the
  29. destination file? If so, try to extract all the files
  30. named in the rest of the LIST file and call the program
  31. arch to create a library "arch cr `cat LIST`".
  32. In this manner libraries can be distributed whose members
  33. have their own RCS file!
  34. else
  35. b-
  36. give message that says "Missing entry" (or some such).
  37. Now you have the tree but not everything is kosher yet.
  38. Some files derive from other files in the tree, those derivations should
  39. be done with the use of an already installed distribution.
  40. The files Action and Action1 in this directory contain the actions
  41. we now take. (Confession: most of the time we use /usr/em)
  42. After running these re-derivation programs the distrubtion tree starts
  43. to look like the tree you need.
  44. There are too many files there though, especially the files created by
  45. the derivation process.
  46. That is why we now give the command:
  47. dtar cdf distr4 .
  48. The file distr4 is the one you should put on tape!
  49. But,.... before doing that: Try it out!
  50. Repeat the process described in the installation manual.
  51. Only if that succeeds you are sure that you included the files needed,
  52. and gave all other files the correct "distr4" RCS id.
  53. After you sent the tape away, forbid ANYBODY to touch the distr4 id
  54. in your RCS files.
  55. Good Luck,
  56. Ed Keizer, 85/4/15.
  57. Updated for 3rd distribution by Ceriel Jacobs, 87/3/11.
  58. And again,
  59. Good Luck!
  60. Updated for 4rd distribution by Ceriel Jacobs, 88/4/08.
  61. And again,
  62. Good Luck!