home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / unix / bsd / 5747 < prev    next >
Encoding:
Text File  |  1992-09-15  |  3.8 KB  |  87 lines

  1. Newsgroups: comp.unix.bsd
  2. Path: sparky!uunet!gatech!news.byu.edu!ux1!fcom.cc.utah.edu!cs.weber.edu!terry
  3. From: terry@cs.weber.edu (A Wizard of Earth C)
  4. Subject: Re: 386BSD PARTIAL PATCH KIT NOW AVAILABLE
  5. Message-ID: <1992Sep15.175003.2628@fcom.cc.utah.edu>
  6. Sender: news@fcom.cc.utah.edu
  7. Organization: Weber State University  (Ogden, UT)
  8. References: <TRI.92Sep15004041@phantom.hut.fi> <1992Sep14.230426.6401@fcom.cc.utah.edu> <1992Sep15.142229.1832@rwwa.COM>
  9. Distribution: usa
  10. Date: Tue, 15 Sep 92 17:50:03 GMT
  11. Lines: 74
  12.  
  13. In article <1992Sep15.142229.1832@rwwa.COM> witr@rwwa.com writes:
  14. >Terry:
  15. >
  16. >It isn't obvious from what has already been posted, so I'll ask:
  17. >
  18. >Is the serialization of patches done using a ``pre-requsites DAG'' as in
  19. >``patch16 requires patch3, patch8, and patch9 to have been already
  20. >applied'' or is it done by requiring patch0--patchN-1 to be applied before
  21. >patchN?  Or some other way?
  22.  
  23. The serialization is based on conflict resoloution.  That is, if patch00001
  24. modifies /etc/ttys, patch00002 modifies /usr/include/sys/stdio.h, then
  25. patch00003, which modifies /etc/ttys (bringing it to patch level 2) requires
  26. patch00001 be installed.  In this case, patch00002 is optional.  The
  27. following table illustrates the advancement in patch level from the base
  28. distribution (represented by "-"):
  29.  
  30. Patches        ttys    stdio.h    foofile
  31. ----------    -------    -------    -------
  32. patch00001    1    -    -
  33. patch00002    -    1    -
  34. patch00003    2    -    -
  35. patch00004    -    2    1
  36. patch00005    3    -    2
  37. ----------    -------    -------    -------
  38.  
  39. Thus:
  40.  
  41.     patch00001 requires nothing
  42.     patch00002 requires nothing
  43.     patch00003 requires patch00001
  44.     patch00004 requires patch00002
  45.     patch00005 requires all patches (patch00002 is required by
  46.         patch00004, even if patch00005 diesn't require it directly)
  47.  
  48. patch00005 will *not* report the requirement of patch00002 if you attempt
  49. to install it before the other patches, since I only report the immediate
  50. prerequisites rather than building a directed graph for the available
  51. patches (something rather hard to do in shell script 8-)).  I have
  52. intentionally arranged the patches (you may notice that several of the
  53. X patches are represented, but not all of them are) so that they tended
  54. to avoid being "lumps" of "patch everything" so as to minimize dependencies.
  55.  
  56. This is only an example, and in reality the patch requirements aren't so
  57. nearly connected.  This is because the set of files is drastically larger
  58. than the set of patches.  Hopefully, 0.2 and subsequent releases will
  59. insure that this stays true.
  60.  
  61. In general, you can install all the patches, then deinstall the ones you
  62. don't like.  If there is a follow-on dependency, it won't let you
  63. deinstall, and will tell you what it is.
  64.  
  65. If you are asking this because you want to produce patches, *please* tell
  66. me; I have patch-production software I can reluctantly give you (reluctantly,
  67. because it put me in the position of librarian to insure that there aren't
  68. patch collisions, and elevates me to the undeserved post of patch number
  69. assignment god).  Any patches that use the "patches" program should be
  70. created with this software.  I also have accompanying documentation and
  71. tutorials, but I feel that if I were to just generally release it, we
  72. would end up in the same boat we wre in, with large number of incompatable
  73. patch kits divirging after patch00019.  This would be a bad thing.
  74.  
  75.  
  76.                     Terry Lambert
  77.                     terry_lambert@gateway.novell.com
  78.                     terry@icarus.weber.edu
  79. ---
  80. Any opinions in this posting are my own and not those of my present
  81. or previous employers.
  82. -- 
  83. -------------------------------------------------------------------------------
  84.                                         "I have an 8 user poetic license" - me
  85.  Get the 386bsd FAQ from agate.berkeley.edu:/pub/386BSD/386bsd-0.1/unofficial
  86. -------------------------------------------------------------------------------
  87.