home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / scheme / scheme2c / rec-28se.pat / tar.fix < prev    next >
Encoding:
Text File  |  1994-06-30  |  6.3 KB  |  175 lines

  1. #!/bin/sh
  2. #
  3. # Script to extract the 23feb90.tar.Z distribution of the
  4. # Scheme->C compiler on System V-ish systems with silly file
  5. # name length restrictions.
  6. #
  7. # The SysV.3.2 tar reports many bad extents when extracting
  8. # this archive, but it appears to extract everything correctly
  9. # anyway.
  10. #
  11. # Parameters that you should set according to your system
  12. # conventions and convenience.
  13. #
  14. archive=/home/archives/28sep90.tar.Z
  15. destdir=/home/s2c
  16. tempdir=/tmp
  17. #
  18. # Extract the archive.
  19. #
  20.  
  21. mkdir $destdir
  22. zcat $archive | (cd $destdir; tar xfo -)
  23.  
  24. #
  25. # Rename some files in place
  26. #
  27. mv $destdir/gnuemacs/s2c-gnuemacs.README $destdir/gnuemacs/s2c.README
  28. mv $destdir/gnuemacs/s2c-gnuemacs.el $destdir/gnuemacs/s2c.el
  29.  
  30. mv $destdir/scrt/scexpanders1.sc $destdir/scrt/scexpand1.sc
  31. mv $destdir/scrt/scexpanders2.sc $destdir/scrt/scexpand2.sc
  32. mv $destdir/scrt/scexpanders1.c $destdir/scrt/scexpand1.c
  33. mv $destdir/scrt/scexpanders2.c $destdir/scrt/scexpand2.c
  34. ed $destdir/scrt/makefile-tail << %
  35. g/scexpanders/s//scexpand/g
  36. w
  37. q
  38. %
  39.  
  40. mv $destdir/test/test20-input.sc $destdir/test/test20-in.sc
  41. ed $destdir/test/test20.sc << %
  42. g/test20-input.sc/s//test20-in.sc/g
  43. w
  44. q
  45. %
  46.  
  47. #
  48. # Can't figure any good thing to do with these two
  49. # files, and their truncated names are harmless.
  50. # mv $destdir/xlib/Xcursorfont.cdecl $destdir/xlib/...
  51. # mv $destdir/xlib/Xresource.cdecl $destdir/xlib/...
  52. #
  53. mv $destdir/xlib/xtextitem.c $destdir/xlib/xtext.c
  54. mv $destdir/xlib/xtextitem.sc $destdir/xlib/xtext.sc
  55. mv $destdir/xlib/xtextitem.sch $destdir/xlib/xtext.sch
  56.  
  57. #
  58. # Now comes the ugly part.
  59. #
  60. SCH="xlib/xcharstruct.sch xlib/xcomposestatus.sch xlib/xfontstruct.sch\
  61.  xlib/xhostaddress.sch xlib/xkeyboardcontrol.sch xlib/xkeyboardstate.sch\
  62.  xlib/xlibCONSTANTS.sch xlib/xmodifierkeymap.sch xlib/xrmoptiondescrec.sch\
  63.  xlib/xsetwindowattributes.sch xlib/xstandardcolormap.sch xlib/xtextitem16.sch\
  64.  xlib/xvisualinfo.sch xlib/xwindowattributes.sch xlib/xwindowchanges.sch"
  65. C="xlib/xcharstruct.c xlib/xcomposestatus.c xlib/xfontstruct.c\
  66.  xlib/xhostaddress.c xlib/xkeyboardcontrol.c xlib/xkeyboardstate.c\
  67.  xlib/xlibCONSTANTS.c xlib/xmodifierkeymap.c xlib/xrmoptiondescrec.c\
  68.  xlib/xsetwindowattributes.c xlib/xstandardcolormap.c xlib/xtextitem16.c\
  69.  xlib/xvisualinfo.c xlib/xwindowattributes.c xlib/xwindowchanges.c"
  70. SC="xlib/xcharstruct.sc xlib/xcomposestatus.sc xlib/xfontstruct.sc\
  71.  xlib/xhostaddress.sc xlib/xkeyboardcontrol.sc xlib/xkeyboardstate.sc\
  72.  xlib/xlibCONSTANTS.sc xlib/xmodifierkeymap.sc xlib/xrmoptiondescrec.sc\
  73.  xlib/xsetwindowattributes.sc xlib/xstandardcolormap.sc xlib/xtextitem16.sc\
  74.  xlib/xvisualinfo.sc xlib/xwindowattributes.sc xlib/xwindowchanges.sc"
  75.  
  76. #
  77. # Extract the overlong files into $tempdir.
  78. #
  79. mkdir $tempdir/xlib
  80. cd $tempdir/xlib
  81. zcat $archive | tar xfo - $SCH
  82. mv xlib sch
  83. zcat $archive | tar xfo - $SC
  84. mv xlib sc
  85. zcat $archive | tar xfo - $C
  86. mv xlib c
  87.  
  88. #
  89. # Remove the truncated file names from $destdir
  90. #
  91. cd $destdir
  92. rm -f $SCH
  93. rm -f $SC
  94. rm -f $C
  95.  
  96. #
  97. # Move files to new names.
  98. #
  99. mv $tempdir/xlib/c/xcharstruct.c $destdir/xlib/xcharstr.c
  100. mv $tempdir/xlib/sc/xcharstruct.sc $destdir/xlib/xcharstr.sc
  101. mv $tempdir/xlib/sch/xcharstruct.sch $destdir/xlib/xcharstr.sch
  102. mv $tempdir/xlib/c/xcomposestatus.c $destdir/xlib/xcomstat.c
  103. mv $tempdir/xlib/sc/xcomposestatus.sc $destdir/xlib/xcomstat.sc
  104. mv $tempdir/xlib/sch/xcomposestatus.sch $destdir/xlib/xcomstat.sch
  105. mv $tempdir/xlib/c/xfontstruct.c $destdir/xlib/xfontstr.c
  106. mv $tempdir/xlib/sc/xfontstruct.sc $destdir/xlib/xfontstr.sc
  107. mv $tempdir/xlib/sch/xfontstruct.sch $destdir/xlib/xfontstr.sch
  108. mv $tempdir/xlib/c/xhostaddress.c $destdir/xlib/xhostaddr.c
  109. mv $tempdir/xlib/sc/xhostaddress.sc $destdir/xlib/xhostaddr.sc
  110. mv $tempdir/xlib/sch/xhostaddress.sch $destdir/xlib/xhostaddr.sch
  111. mv $tempdir/xlib/c/xkeyboardcontrol.c $destdir/xlib/xkbdcont.c
  112. mv $tempdir/xlib/sc/xkeyboardcontrol.sc $destdir/xlib/xkbdcont.sc
  113. mv $tempdir/xlib/sch/xkeyboardcontrol.sch $destdir/xlib/xkbdcont.sch
  114. mv $tempdir/xlib/c/xkeyboardstate.c $destdir/xlib/xkbdstat.c
  115. mv $tempdir/xlib/sc/xkeyboardstate.sc $destdir/xlib/xkbdstat.sc
  116. mv $tempdir/xlib/sch/xkeyboardstate.sch $destdir/xlib/xkbdstat.sch
  117. mv $tempdir/xlib/c/xlibCONSTANTS.c $destdir/xlib/xlibCONST.c
  118. mv $tempdir/xlib/sc/xlibCONSTANTS.sc $destdir/xlib/xlibCONST.sc
  119. mv $tempdir/xlib/sch/xlibCONSTANTS.sch $destdir/xlib/xlibCONST.sch
  120. mv $tempdir/xlib/c/xmodifierkeymap.c $destdir/xlib/xmodmap.c
  121. mv $tempdir/xlib/sc/xmodifierkeymap.sc $destdir/xlib/xmodmap.sc
  122. mv $tempdir/xlib/sch/xmodifierkeymap.sch $destdir/xlib/xmodmap.sch
  123. mv $tempdir/xlib/c/xrmoptiondescrec.c $destdir/xlib/xrmoption.c
  124. mv $tempdir/xlib/sc/xrmoptiondescrec.sc $destdir/xlib/xrmoption.sc
  125. mv $tempdir/xlib/sch/xrmoptiondescrec.sch $destdir/xlib/xrmoption.sch
  126. mv $tempdir/xlib/c/xsetwindowattributes.c $destdir/xlib/xswinattr.c
  127. mv $tempdir/xlib/sc/xsetwindowattributes.sc $destdir/xlib/xswinattr.sc
  128. mv $tempdir/xlib/sch/xsetwindowattributes.sch $destdir/xlib/xswinattr.sch
  129. mv $tempdir/xlib/c/xstandardcolormap.c $destdir/xlib/xstdcmap.c
  130. mv $tempdir/xlib/sc/xstandardcolormap.sc $destdir/xlib/xstdcmap.sc
  131. mv $tempdir/xlib/sch/xstandardcolormap.sch $destdir/xlib/xstdcmap.sch
  132. mv $tempdir/xlib/c/xtextitem16.c $destdir/xlib/xtext16.c
  133. mv $tempdir/xlib/sc/xtextitem16.sc $destdir/xlib/xtext16.sc
  134. mv $tempdir/xlib/sch/xtextitem16.sch $destdir/xlib/xtext16.sch
  135. mv $tempdir/xlib/c/xvisualinfo.c $destdir/xlib/xvinfo.c
  136. mv $tempdir/xlib/sc/xvisualinfo.sc $destdir/xlib/xvinfo.sc
  137. mv $tempdir/xlib/sch/xvisualinfo.sch $destdir/xlib/xvinfo.sch
  138. mv $tempdir/xlib/c/xwindowattributes.c $destdir/xlib/xwinattr.c
  139. mv $tempdir/xlib/sc/xwindowattributes.sc $destdir/xlib/xwinattr.sc
  140. mv $tempdir/xlib/sch/xwindowattributes.sch $destdir/xlib/xwinattr.sch
  141. mv $tempdir/xlib/c/xwindowchanges.c $destdir/xlib/xwinchgs.c
  142. mv $tempdir/xlib/sc/xwindowchanges.sc $destdir/xlib/xwinchgs.sc
  143. mv $tempdir/xlib/sch/xwindowchanges.sch $destdir/xlib/xwinchgs.sch
  144.  
  145. #
  146. # Clean up $tempdir
  147. #
  148.  
  149. rm -fr $tempdir/xlib
  150.  
  151. #
  152. # Rewrite the makefile.
  153. #
  154. ed $destdir/xlib/makefile << %
  155. g/xcharstruct/s//xcharstr/g
  156. g/xcomposestatus/s//xcomstat/g
  157. g/xfontstruct/s//xfontstr/g
  158. g/xhostaddress/s//xhostaddr/g
  159. g/xkeyboardcontrol/s//xkbdcont/g
  160. g/xkeyboardstate/s//xkbdstat/g
  161. g/xlibCONSTANTS/s//xlibCONST/g
  162. g/xmodifierkeymap/s//xmodmap/g
  163. g/xrmoptiondescrec/s//xrmoption/g
  164. g/xsetwindowattributes/s//xswinattr/g
  165. g/xstandardcolormap/s//xstdcmap/g
  166. g/xtextitem16/s//xtext16/g
  167. g/xtextitem/s//xtext/g
  168. g/xvisualinfo/s//xvinfo/g
  169. g/xwindowattributes/s//xwinattr/g
  170. g/xwindowchanges/s//xwinchgs/g
  171. w
  172. q
  173. %
  174.  
  175.