home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / gnu / bash / bug / 700 < prev    next >
Encoding:
Text File  |  1992-12-12  |  36.4 KB  |  1,043 lines

  1. Newsgroups: gnu.bash.bug
  2. Path: sparky!uunet!cis.ohio-state.edu!netcom.com!maw
  3. From: maw@netcom.com (Martin Walker)
  4. Subject: Patches for SCO ODT 2.0.0 and Unix 3.2.4
  5. Message-ID: <1992Dec12.190159.9036@netcom.com>
  6. Sender: gnulists@ai.mit.edu
  7. Organization: Netcom - Online Communication Services  (408 241-9760 guest)
  8. Distribution: gnu
  9. Date: Sat, 12 Dec 1992 19:01:59 GMT
  10. Approved: bug-bash@prep.ai.mit.edu
  11. Lines: 1030
  12.  
  13. How to get BASH 1.12 working on SCO Unix 3.2.4 and SCO ODT 2.0.0
  14. ----------------------------------------------------------------
  15.  
  16. You will need:
  17. a) GCC 2.3.2 with sources
  18. b) GDB 4.7 with sources
  19. c) Bash 1.12 with sources (no kidding?)
  20.  
  21. How to do it:
  22. a) Unshar the shell archive below. This will result in 5 files:
  23.    1) i386sco4.h
  24.    2) bash.scodiff
  25.    3) readline.scodiff
  26.    4) include.scodiff
  27.    5) gdb47.scodiff
  28.  
  29. b) Copy the following header files from /usr/include to /usr/local/include, 
  30.    or where-ever your local include directory is for GCC:
  31.  
  32.    regex.h stdio.h string.h termios.h tinfo.h unistd.h sys/times.h sys/types.h
  33.  
  34.    Apply the patch in include.scodiff to these include files. This will
  35.    fix a few problems which I have encountered when using GCC. A new file
  36.    called sys/ptrace.h will be created. This is used for GDB. Read on ...
  37.  
  38. c) Make GCC using my replacement i386sco4.h. I know that RMS did not like
  39.    the patches that I made to this file, because it sets the __STDC__ value
  40.    directly. However, this file has worked perfectly for me, and I have
  41.    compiled just about every GNU product using it. Although it might not
  42.    be wise to have GCC working differently from one machine to another,
  43.    I *do* think it is wise to have it working at all. With this header file
  44.    I do not need to specify any weird and wonderful flags to GCC. I just
  45.    make all GNU products using gcc -O5 -s. I am busy trying to figure out
  46.    a more ideal solution to the SCO problem, and as soon as I have worked
  47.    around all of SCO's include file bugs and funnies, I will give RMS a
  48.    more suitable patch for GCC.
  49.    You are in a maze of pre-processor conditionals, all alike ...
  50.  
  51.    Use: ./configure i386-sco3.2v4
  52.  
  53. d) While you have GDB's source unpacked, apply the patch in gdb47.scodiff
  54.    and compile GDB. This patch adds SCO core file support, and the ability
  55.    to attach to processes. Next, apply readline.scodiff in the readline
  56.    directory.  This will enable the home/end keys in readline, which will
  57.    move to the beginning and end of the current line, respectively. It also 
  58.    maps C-x-R to and C-x-S to rl_reverse_search_history and 
  59.    rl_forward_search_history.  This is because the default for the forward 
  60.    search is C-s, which is the XOFF character, and stops input from your 
  61.    terminal.
  62.  
  63.    Use: ./configure i386-sco3.2v4
  64.  
  65. e) Copy the entire readline tree from GDB to where-ever the bash source is
  66.    installed. This is not strictly necessary, but the readline library in
  67.    GDB 4.7 is later than the one provided in bash, and has a few bugs fixed.
  68.    Copy glob.c, tilde.c and sysdep-sco.h to the lib/glob directory in bash.
  69.    This also updates the versions of these files. Move sysdep-sco.h to
  70.    sysdep.h. Be sure to remove all the files in the original readline
  71.    directory before you copy the new one from GDB across.
  72.  
  73. f) Apply the patch bash.scodiff in the bash source tree. Now simply do a
  74.    make, and everything should work.
  75.  
  76.    make CC="gcc -O5 -s"
  77.  
  78.    I personally stopped the make just after bash-Makefile was generated and
  79.    removed the -g from the compile command line. I don't need debugging
  80.    info in *my* shell thank you very much!
  81.  
  82. A note about the BASH patches:
  83. ------------------------------
  84. This patch is really very simple. All it does is enable job control in
  85. the shell, and modifies the prompt display format a little. I have always
  86. had my Korn shell set up to display PWD as part of my prompt. In the Korn
  87. shell, this is a bit difficult. However, it had one nice feature: if PWD
  88. was longer than 20 characters, it abbreviated the prompt to have ... in
  89. front of the path. This is especially nice if you have very deep directory
  90. structures. The way bash was handling this by default, meant that my prompt
  91. was longer than 60 characters at times, and then the rest of the command
  92. line becomes totally obfuscate by the prompt. This patch puts in a check
  93. for long prompts, and if the PWD is longer than 20 characters, it will
  94. chop off the excess characters and precede the prompt with ....
  95. If you don't want this "feature" enabled, simply copy general.c.orig
  96. back over general.c.
  97.  
  98. You do not have to use the GDB readline library if you don't want to. The
  99. one provided with BASH works, but has a few bugs (notably when processing
  100. .inputrc).
  101.  
  102. The only other mod made was to ensure that .bashrc DOES get executed on
  103. login, as the comments in the code say it should.
  104.  
  105. I hope these patches help all who are trying to use bash. If you are
  106. running SCO and you do NOT use bash, you should have your head read. It
  107. is very much better than any of the standard shells.
  108.  
  109. If you have any queries about these patches, please address them to me
  110. at maw@netcom.netcom.com, or phone me on:
  111. +27-12-342-1145 (W) GMT-2
  112. +27-12-803-7036 (H) GMT-2
  113.  
  114. Regards,
  115. Kean Johnston
  116.  
  117. ----------------------------> cut here < ---------------------------------
  118. #! /bin/sh
  119. # This is a shell archive.  Remove anything before this line, then feed it
  120. # into a shell via "sh file" or similar.  To overwrite existing files,
  121. # type "sh file -c".
  122. # The tool that generated this appeared in the comp.sources.unix newsgroup;
  123. # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
  124. # Contents:  bash.scodiff gdb47.scodiff i386sco4.h include.scodiff
  125. #   readline.scodiff
  126. # Wrapped by jkj@parst17 on Sat Dec 12 20:49:54 1992
  127. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  128. echo If this archive is complete, you will see the following message:
  129. echo '          "shar: End of archive."'
  130. if test -f 'bash.scodiff' -a "${1}" != "-c" ; then 
  131.   echo shar: Will not clobber existing file \"'bash.scodiff'\"
  132. else
  133.   echo shar: Extracting \"'bash.scodiff'\" \(3381 characters\)
  134.   sed "s/^X//" >'bash.scodiff' <<'END_OF_FILE'
  135. Xdiff -rc2 bash-1.12/config.h mybash/config.h
  136. X*** bash-1.12/config.h    Mon Nov  4 07:21:13 1991
  137. X--- mybash/config.h    Thu Dec 10 14:04:41 1992
  138. X***************
  139. X*** 64,70 ****
  140. X  /* Note that vanilla System V machines don't support BSD job control,
  141. X     although some do support Posix job control. */
  142. X- #if defined (USG) && !defined (_POSIX_JOB_CONTROL)
  143. X- #undef JOB_CONTROL
  144. X- #endif /* USG */
  145. X  
  146. X  /* Define ALIAS if you want the alias features. */
  147. X--- 64,67 ----
  148. X***************
  149. X*** 89,93 ****
  150. X  /* The default value of the PATH variable. */
  151. X  #define DEFAULT_PATH_VALUE \
  152. X!   ":/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:/etc:/usr/etc"
  153. X  
  154. X  /* The value for PATH when invoking `command -p'.  This is only used when
  155. X--- 86,90 ----
  156. X  /* The default value of the PATH variable. */
  157. X  #define DEFAULT_PATH_VALUE \
  158. X!   "/usr/local/bin:/bin:/usr/bin:/etc:/usr/bin/X11:"
  159. X  
  160. X  /* The value for PATH when invoking `command -p'.  This is only used when
  161. X***************
  162. X*** 94,98 ****
  163. X     the Posix.2 confstr () function, or CS_PATH define are not present. */
  164. X  #define STANDARD_UTILS_PATH \
  165. X!   "/bin:/usr/bin:/usr/ucb:/usr/sbin:/etc:/usr/etc"
  166. X  
  167. X  /* Define V9_ECHO if you want to give the echo builtin backslash-escape
  168. X--- 91,95 ----
  169. X     the Posix.2 confstr () function, or CS_PATH define are not present. */
  170. X  #define STANDARD_UTILS_PATH \
  171. X!   "/bin:/usr/bin:/etc"
  172. X  
  173. X  /* Define V9_ECHO if you want to give the echo builtin backslash-escape
  174. Xdiff -rc2 bash-1.12/general.c mybash/general.c
  175. X*** bash-1.12/general.c    Tue Jan 21 06:35:27 1992
  176. X--- mybash/general.c    Sat Dec 12 18:00:35 1992
  177. X***************
  178. X*** 796,799 ****
  179. X--- 796,800 ----
  180. X    char *home = get_string_value ("HOME");
  181. X    int l = home ? strlen (home) : 0;
  182. X+   char  *ret;
  183. X  
  184. X    if (l > 1 && strncmp (home, name, l) == 0 && (!name[l] || name[l] == '/'))
  185. X***************
  186. X*** 801,808 ****
  187. X        strcpy (tdir + 1, name + l);
  188. X        tdir[0] = '~';
  189. X!       return (tdir);
  190. X      }
  191. X    else
  192. X!     return (name);
  193. X  }
  194. X  
  195. X--- 802,818 ----
  196. X        strcpy (tdir + 1, name + l);
  197. X        tdir[0] = '~';
  198. X!       ret = tdir;
  199. X      }
  200. X    else
  201. X!       ret = name;
  202. X! 
  203. X!   /* If the displayed path length is > 20, put ... in front */
  204. X!   l = strlen(ret);
  205. X!   if (l > 20)
  206. X!       {
  207. X!       ret = ret+l-21;
  208. X!       ret[0] = ret[1] = ret[2] = '.';
  209. X!       }
  210. X!   return ret;
  211. X  }
  212. X  
  213. Xdiff -rc2 bash-1.12/jobs.c mybash/jobs.c
  214. X*** bash-1.12/jobs.c    Fri Jan 17 23:36:11 1992
  215. X--- mybash/jobs.c    Thu Dec 10 13:17:50 1992
  216. X***************
  217. X*** 1248,1251 ****
  218. X--- 1248,1252 ----
  219. X        ((job != NO_JOB) && (JOBSTATE (job) == JRUNNING)))
  220. X      {
  221. X+ #undef SCO
  222. X  #if !defined (SCO)
  223. X        sigset_t set;
  224. X***************
  225. X*** 1264,1268 ****
  226. X        sigaction (SIGCHLD, &oact, (struct sigaction *)NULL);
  227. X  #endif /* !SCO */
  228. X! 
  229. X        goto wait_loop;
  230. X      }
  231. X--- 1265,1269 ----
  232. X        sigaction (SIGCHLD, &oact, (struct sigaction *)NULL);
  233. X  #endif /* !SCO */
  234. X! #define SCO
  235. X        goto wait_loop;
  236. X      }
  237. Xdiff -rc2 bash-1.12/shell.c mybash/shell.c
  238. X*** bash-1.12/shell.c    Tue Jan 21 07:52:37 1992
  239. X--- mybash/shell.c    Thu Dec 10 14:29:07 1992
  240. X***************
  241. X*** 523,527 ****
  242. X      {
  243. X        /* We don't execute .bashrc for login shells. */
  244. X!       no_rc++;
  245. X  #if defined (NOTDEF)
  246. X        if (getenv ("POSIXLY_CORRECT"))
  247. X--- 523,527 ----
  248. X      {
  249. X        /* We don't execute .bashrc for login shells. */
  250. X!       /* no_rc++; */
  251. X  #if defined (NOTDEF)
  252. X        if (getenv ("POSIXLY_CORRECT"))
  253. X
  254. END_OF_FILE
  255.   if test 3381 -ne `wc -c <'bash.scodiff'`; then
  256.     echo shar: \"'bash.scodiff'\" unpacked with wrong size!
  257.   fi
  258.   # end of 'bash.scodiff'
  259. fi
  260. if test -f 'gdb47.scodiff' -a "${1}" != "-c" ; then 
  261.   echo shar: Will not clobber existing file \"'gdb47.scodiff'\"
  262. else
  263.   echo shar: Extracting \"'gdb47.scodiff'\" \(9065 characters\)
  264.   sed "s/^X//" >'gdb47.scodiff' <<'END_OF_FILE'
  265. Xdiff -r -c -N -C 2 gdb-4.7/bfd/config/i386-sco.mt gdb-4.7.new/bfd/config/i386-sco.mt
  266. X*** gdb-4.7/bfd/config/i386-sco.mt
  267. X--- gdb-4.7.new/bfd/config/i386-sco.mt    Mon Nov 16 18:15:05 1992
  268. X***************
  269. X*** 0 ****
  270. X--- 1,2 ----
  271. X+ # Target:  Intel 386 running SCO Unix 3.2.4.
  272. X+ TDEFAULTS = -DDEFAULT_VECTOR=i386coff_vec
  273. Xdiff -r -c -N -C 2 gdb-4.7/bfd/config/i386sco.mh gdb-4.7.new/bfd/config/i386sco.mh
  274. X*** gdb-4.7/bfd/config/i386sco.mh
  275. X--- gdb-4.7.new/bfd/config/i386sco.mh    Mon Nov 16 18:15:05 1992
  276. X***************
  277. X*** 0 ****
  278. X--- 1,4 ----
  279. X+ RANLIB = /bin/true
  280. X+ ALLOCA = 
  281. X+ HDEFINES=-DUSG -DSCO_CORE=1
  282. X+ HDEPFILES=sco-core.o
  283. Xdiff -r -c -N -C 2 gdb-4.7/bfd/configure.host gdb-4.7.new/bfd/configure.host
  284. X*** gdb-4.7/bfd/configure.host    Fri Oct  9 13:38:25 1992
  285. X--- gdb-4.7.new/bfd/configure.host    Mon Nov 16 18:15:06 1992
  286. X***************
  287. X*** 26,33 ****
  288. X  i[34]86-ncr*-sysv4*)    my_host=ncr3000 ;;
  289. X  i[34]86-*-go32)        my_host=go32 ;;
  290. X  i[34]86-*-sysv4*)    my_host=i386v4 ;;
  291. X  i[34]86-*-sysv*)    my_host=i386v ;;
  292. X  i[34]86-*-solaris*)    my_host=i386v ;;
  293. X- i[34]86-*-sco*)        my_host=i386v ;;
  294. X  i[34]86-*-mach*)    my_host=i386mach ;;
  295. X  i[34]86-*-msdos*)    my_host=dose ;;
  296. X--- 26,33 ----
  297. X  i[34]86-ncr*-sysv4*)    my_host=ncr3000 ;;
  298. X  i[34]86-*-go32)        my_host=go32 ;;
  299. X+ i[34]86-*-sco*)        my_host=i386sco ;;
  300. X  i[34]86-*-sysv4*)    my_host=i386v4 ;;
  301. X  i[34]86-*-sysv*)    my_host=i386v ;;
  302. X  i[34]86-*-solaris*)    my_host=i386v ;;
  303. X  i[34]86-*-mach*)    my_host=i386mach ;;
  304. X  i[34]86-*-msdos*)    my_host=dose ;;
  305. Xdiff -r -c -N -C 2 gdb-4.7/bfd/configure.in gdb-4.7.new/bfd/configure.in
  306. X*** gdb-4.7/bfd/configure.in    Fri Oct 23 10:39:13 1992
  307. X--- gdb-4.7.new/bfd/configure.in    Mon Nov 16 18:15:06 1992
  308. X***************
  309. X*** 48,52 ****
  310. X    i[34]86-*-sysv4*)    bfd_target=i386-elf ;;
  311. X    i[34]86-*-sysv*)    bfd_target=i386-coff ;;
  312. X!   i[34]86-*-sco*)    bfd_target=i386-coff ;;
  313. X    i[34]86-*-bsd*)    bfd_target=i386-bsd ;;
  314. X    i[34]86-none-*)    bfd_target=i386-coff ;;
  315. X--- 48,52 ----
  316. X    i[34]86-*-sysv4*)    bfd_target=i386-elf ;;
  317. X    i[34]86-*-sysv*)    bfd_target=i386-coff ;;
  318. X!   i[34]86-*-sco*)    bfd_target=i386-sco ;;
  319. X    i[34]86-*-bsd*)    bfd_target=i386-bsd ;;
  320. X    i[34]86-none-*)    bfd_target=i386-coff ;;
  321. X***************
  322. X*** 83,87 ****
  323. X    *-*-linux*)        bfd_target=${target_cpu}-linux ;;
  324. X    *-*-sysv*)        bfd_target=${target_cpu}-coff ;;
  325. X!   *-*-scosysv*)        bfd_target=${target_cpu}-coff ;;
  326. X  
  327. X    *-adobe-*)        bfd_target=adobe ;;
  328. X--- 83,87 ----
  329. X    *-*-linux*)        bfd_target=${target_cpu}-linux ;;
  330. X    *-*-sysv*)        bfd_target=${target_cpu}-coff ;;
  331. X!   *-*-sco*)        bfd_target=${target_cpu}-sco ;;
  332. X  
  333. X    *-adobe-*)        bfd_target=adobe ;;
  334. Xdiff -r -c -N -C 2 gdb-4.7/bfd/hosts/i386sco.h gdb-4.7.new/bfd/hosts/i386sco.h
  335. X*** gdb-4.7/bfd/hosts/i386sco.h
  336. X--- gdb-4.7.new/bfd/hosts/i386sco.h    Mon Nov 16 18:15:06 1992
  337. X***************
  338. X*** 0 ****
  339. X--- 1,55 ----
  340. X+ #include <fcntl.h>
  341. X+ #include <errno.h>
  342. X+ #include <stdio.h>
  343. X+ #include <sys/types.h>
  344. X+ #include <sys/stat.h>
  345. X+ #include <utime.h>
  346. X+ #include <ctype.h>
  347. X+ #include <string.h>
  348. X+ #include <unistd.h>
  349. X+ 
  350. X+ #ifndef O_ACCMODE
  351. X+ #define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
  352. X+ #endif
  353. X+ #ifndef SEEK_SET
  354. X+ #define SEEK_SET 0
  355. X+ #define SEEK_CUR 1
  356. X+ #endif
  357. X+ 
  358. X+ #define    POSIX_UTIME
  359. X+ 
  360. X+ /* Some things that need to be defined in order to make code written for
  361. X+    BSD Unix compile under System V Unix.  */
  362. X+ 
  363. X+ /*#include <memory.h>*/
  364. X+ #define bcmp(b1,b2,len)        memcmp(b1,b2,len)
  365. X+ #define bcopy(src,dst,len)    memcpy(dst,src,len)
  366. X+ #define bzero(s,n)        memset(s,0,n)
  367. X+ 
  368. X+ #include <string.h>
  369. X+ #define index(s,c)        strchr(s,c)
  370. X+ #define rindex(s,c)        strrchr(s,c)
  371. X+ 
  372. X+ #ifndef DONTDECLARE_MALLOC
  373. X+ extern PTR  EXFUN(malloc,(unsigned));
  374. X+ extern PTR  EXFUN(realloc, (PTR, unsigned));
  375. X+ extern void EXFUN(free,(PTR));
  376. X+ #endif
  377. X+ 
  378. X+ /* EXACT TYPES */
  379. X+ typedef char int8e_type;
  380. X+ typedef unsigned char uint8e_type;
  381. X+ typedef short int16e_type;
  382. X+ typedef unsigned short uint16e_type;
  383. X+ typedef int int32e_type;
  384. X+ typedef unsigned int uint32e_type;
  385. X+ 
  386. X+ /* CORRECT SIZE OR GREATER */
  387. X+ typedef char int8_type;
  388. X+ typedef unsigned char uint8_type;
  389. X+ typedef short int16_type;
  390. X+ typedef unsigned short uint16_type;
  391. X+ typedef int int32_type;
  392. X+ typedef unsigned int uint32_type;
  393. X+ 
  394. X+ #include "fopen-same.h"
  395. Xdiff -r -c -N -C 2 gdb-4.7/bfd/sco-core.c gdb-4.7.new/bfd/sco-core.c
  396. X*** gdb-4.7/bfd/sco-core.c    Fri Oct 16 21:16:09 1992
  397. X--- gdb-4.7.new/bfd/sco-core.c    Mon Nov 16 18:15:06 1992
  398. X***************
  399. X*** 270,273 ****
  400. X--- 270,274 ----
  401. X  
  402. X    (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC), /* section flags */
  403. X+     '_',                                                   /* symbol prefix */
  404. X      ' ',                           /* ar_pad_char */
  405. X      16,                               /* ar_max_namelen */
  406. Xdiff -r -c -N -C 2 gdb-4.7/bfd/targets.c gdb-4.7.new/bfd/targets.c
  407. X*** gdb-4.7/bfd/targets.c    Thu Oct  8 22:18:08 1992
  408. X--- gdb-4.7.new/bfd/targets.c    Mon Nov 16 18:15:07 1992
  409. X***************
  410. X*** 375,379 ****
  411. X--- 375,382 ----
  412. X  #define SELECT_VECS &DEFAULT_VECTOR
  413. X  #endif
  414. X+ #ifdef SCO_CORE
  415. X+ #define SELECT_VECS &DEFAULT_VECTOR,&sco_core_vec
  416. X  #endif
  417. X+ #endif
  418. X  
  419. X  /* All known xvecs.  They are listed a second time below, since
  420. X***************
  421. X*** 400,403 ****
  422. X--- 403,409 ----
  423. X  extern bfd_target i386linux_vec;
  424. X  extern bfd_target a29kcoff_big_vec;
  425. X+ #ifdef SCO_CORE
  426. X+ extern bfd_target sco_core_vec;
  427. X+ #endif
  428. X  extern bfd_target trad_core_vec;
  429. X  extern bfd_target rs6000coff_vec;
  430. X***************
  431. X*** 467,470 ****
  432. X--- 473,479 ----
  433. X  #ifdef    TRAD_CORE
  434. X      &trad_core_vec,
  435. X+ #endif
  436. X+ #ifdef SCO_CORE
  437. X+     &sco_core_vec,
  438. X  #endif
  439. X      NULL, /* end of list marker */
  440. Xdiff -r -c -N -C 2 gdb-4.7/config/mh-sco gdb-4.7.new/config/mh-sco
  441. X*** gdb-4.7/config/mh-sco    Thu Oct 22 09:59:45 1992
  442. X--- gdb-4.7.new/config/mh-sco    Mon Nov 16 18:15:07 1992
  443. X***************
  444. X*** 3,5 ****
  445. X  RANLIB = true
  446. X  BISON = yacc -Sm10400
  447. X! CC = gcc -D_POSIX_SOURCE=1
  448. X--- 3,5 ----
  449. X  RANLIB = true
  450. X  BISON = yacc -Sm10400
  451. X! CC = gcc -O2
  452. Xdiff -r -c -N -C 2 gdb-4.7/gdb/config/i386sco.mh gdb-4.7.new/gdb/config/i386sco.mh
  453. X*** gdb-4.7/gdb/config/i386sco.mh    Thu Oct 22 10:07:12 1992
  454. X--- gdb-4.7.new/gdb/config/i386sco.mh    Mon Nov 16 18:15:07 1992
  455. X***************
  456. X*** 1,13 ****
  457. X! # Host: Intel 386 running SCO Unix (pre-SVR4)
  458. X! XDEPFILES= i387-tdep.o
  459. X  XM_FILE= xm-i386sco.h
  460. X  NAT_FILE= nm-i386sco.h
  461. X  NATDEPFILES= infptrace.o inftarg.o fork-child.o coredep.o corelow.o i386v-nat.o
  462. X! XM_CLIBS= -lPW
  463. X  SYSV_DEFINE=-DSYSV
  464. X  REGEX=regex.o
  465. X  REGEX1=regex.o
  466. X- #msg The SCO C compiler cannot parse symtab.h when value.h has been included.
  467. X- #msg This is a bug in the compiler; the code is valid.
  468. X- #msg Therefore, you must use GCC to compile GDB on SCO machines.
  469. X- CC=gcc -D_POSIX_SOURCE=1
  470. X--- 1,9 ----
  471. X! # Host: Intel 386 running System V release 3.2
  472. X! XDEPFILES= 
  473. X  XM_FILE= xm-i386sco.h
  474. X  NAT_FILE= nm-i386sco.h
  475. X  NATDEPFILES= infptrace.o inftarg.o fork-child.o coredep.o corelow.o i386v-nat.o
  476. X! XM_CLIBS= 
  477. X  SYSV_DEFINE=-DSYSV
  478. X  REGEX=regex.o
  479. X  REGEX1=regex.o
  480. Xdiff -r -c -N -C 2 gdb-4.7/gdb/config/i386sco.mt gdb-4.7.new/gdb/config/i386sco.mt
  481. X*** gdb-4.7/gdb/config/i386sco.mt
  482. X--- gdb-4.7.new/gdb/config/i386sco.mt    Mon Nov 16 18:15:08 1992
  483. X***************
  484. X*** 0 ****
  485. X--- 1,3 ----
  486. X+ # Target: Intel 386 running System V
  487. X+ TDEPFILES= exec.o i386-tdep.o i386-pinsn.o i387-tdep.o
  488. X+ TM_FILE= tm-i386v.h
  489. Xdiff -r -c -N -C 2 gdb-4.7/gdb/configure.in gdb-4.7.new/gdb/configure.in
  490. X*** gdb-4.7/gdb/configure.in    Thu Oct 15 00:50:18 1992
  491. X--- gdb-4.7.new/gdb/configure.in    Mon Nov 16 18:15:08 1992
  492. X***************
  493. X*** 25,29 ****
  494. X  i[34]86-*-linux)    gdb_host=linux ;;
  495. X  i[34]86-*-mach)        gdb_host=i386mach ;;
  496. X! i[34]86-*-scosysv*)    gdb_host=i386sco ;;
  497. X  i[34]86-*-solaris*)    gdb_host=i386sol2 ;;
  498. X  i[34]86-*-sunos*)    gdb_host=sun386 ;;
  499. X--- 25,29 ----
  500. X  i[34]86-*-linux)    gdb_host=linux ;;
  501. X  i[34]86-*-mach)        gdb_host=i386mach ;;
  502. X! i[34]86-*-sco*)        gdb_host=i386sco ;;
  503. X  i[34]86-*-solaris*)    gdb_host=i386sol2 ;;
  504. X  i[34]86-*-sunos*)    gdb_host=sun386 ;;
  505. X***************
  506. X*** 86,90 ****
  507. X  esac
  508. X  
  509. X- 
  510. X  if [ ! -f ${srcdir}/config/${gdb_host}.mh ]; then
  511. X      echo '***' "Gdb does not support host ${host}" 1>&2
  512. X--- 86,89 ----
  513. X***************
  514. X*** 129,133 ****
  515. X  i[34]86-*-sunos*)    gdb_target=sun386 ;;
  516. X  i[34]86-*-sysv4*)    gdb_target=i386v4 ;;
  517. X! i[34]86-*-scosysv3*)    gdb_target=i386v ;;
  518. X  i[34]86-*-sysv*)    gdb_target=i386v ;;
  519. X  i[34]86-*-linux)    gdb_target=linux ;;
  520. X--- 128,132 ----
  521. X  i[34]86-*-sunos*)    gdb_target=sun386 ;;
  522. X  i[34]86-*-sysv4*)    gdb_target=i386v4 ;;
  523. X! i[34]86-*-sco*)        gdb_target=i386sco ;;
  524. X  i[34]86-*-sysv*)    gdb_target=i386v ;;
  525. X  i[34]86-*-linux)    gdb_target=linux ;;
  526. Xdiff -r -c -N -C 2 gdb-4.7/gdb/nm-i386sco.h gdb-4.7.new/gdb/nm-i386sco.h
  527. X*** gdb-4.7/gdb/nm-i386sco.h    Thu Oct 22 21:32:06 1992
  528. X--- gdb-4.7.new/gdb/nm-i386sco.h    Mon Nov 16 18:52:47 1992
  529. X***************
  530. X*** 40,42 ****
  531. X   * (why, I don't know), and we don't need it.
  532. X   */
  533. X- #define NO_PTRACE_H
  534. X--- 40,41 ----
  535. Xdiff -r -c -N -C 2 gdb-4.7/gdb/xm-i386sco.h gdb-4.7.new/gdb/xm-i386sco.h
  536. X*** gdb-4.7/gdb/xm-i386sco.h    Thu Oct 22 06:47:04 1992
  537. X--- gdb-4.7.new/gdb/xm-i386sco.h    Mon Nov 16 18:51:46 1992
  538. X***************
  539. X*** 41,42 ****
  540. X--- 41,43 ----
  541. X  /* Use setpgid instead of setpgrp on SCO */
  542. X  #define NEED_POSIX_SETPGID
  543. X+ #define ATTACH_DETACH
  544. END_OF_FILE
  545.   if test 9065 -ne `wc -c <'gdb47.scodiff'`; then
  546.     echo shar: \"'gdb47.scodiff'\" unpacked with wrong size!
  547.   fi
  548.   # end of 'gdb47.scodiff'
  549. fi
  550. if test -f 'i386sco4.h' -a "${1}" != "-c" ; then 
  551.   echo shar: Will not clobber existing file \"'i386sco4.h'\"
  552. else
  553.   echo shar: Extracting \"'i386sco4.h'\" \(5156 characters\)
  554.   sed "s/^X//" >'i386sco4.h' <<'END_OF_FILE'
  555. X/* Definitions for Intel 386 running SCO Unix System V 3.2v4.0
  556. X   Written by Kean Johnston.
  557. X   Copyright (C) 1992 Free Software Foundation, Inc.
  558. X
  559. XThis file is part of GNU CC.
  560. X
  561. XGNU CC is free software; you can redistribute it and/or modify
  562. Xit under the terms of the GNU General Public License as published by
  563. Xthe Free Software Foundation; either version 2, or (at your option)
  564. Xany later version.
  565. X
  566. XGNU CC is distributed in the hope that it will be useful,
  567. Xbut WITHOUT ANY WARRANTY; without even the implied warranty of
  568. XMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  569. XGNU General Public License for more details.
  570. X
  571. XYou should have received a copy of the GNU General Public License
  572. Xalong with GNU CC; see the file COPYING.  If not, write to
  573. Xthe Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  574. X
  575. X
  576. X/* Mostly it's like SCO UNIX 3.2v2.0 and 3.2v2.1.
  577. X
  578. XThe various flags which affect compatibility with the SCO C compiler from
  579. Xdevelopment system version 3.2v4.0 are:
  580. X
  581. X-scoxpg3 simulates the SCO -xpg3 flag
  582. X-scoplus simulates the SCO -xpg3+ flag
  583. X-posix, -ansi and -svid are the same as their SCO counterparts.
  584. X
  585. X-scointl will enable Internation Supplement features.
  586. X
  587. XPlease note that there is considerable duplication in this file. The oroginal
  588. Xspecs which were set up have been surrounded in comments, and more compact
  589. Xforms are the active definitions. This is to attempt to reduce the command
  590. Xline length, as SCO's brain-dead shells have a rediculously low length.
  591. XI have come across several applications which wont compile because the
  592. Xcommand line was too long.
  593. X
  594. XIf you wish to edit a spec, rather edit the commented one (which should be
  595. Xmore readable), then copy it down and remove all unnecessary whitespace.
  596. X*/
  597. X
  598. X#include "i386sco.h"
  599. X
  600. X/* Use crt1.o as a startup file and crtn.o as a closing file.  */
  601. X
  602. X#undef STARTFILE_SPEC
  603. X#define STARTFILE_SPEC \
  604. X"%{scoxpg3:%{p:mcrt1X.o%s}%{!p:crt1X.o%s}}%{!scoxpg3:%{scoplus:\
  605. X%{p:mcrt1X.o%s}%{!p:crt1X.o%s}}%{!scoplus:%{posix:%{p:mcrt1P.o%s}\
  606. X%{!p:crt1P.o%s}}%{!posix:%{svid:%{p:mcrt1P.o%s}%{!p:crt1P.o%s}}\
  607. X%{!svid:%{ansi:%{p:mcrt1A.o%s}%{!p:crt1A.o%s}}%{!ansi:%{pg:gcrt1.o%s}\
  608. X%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}}}}}} crtbegin.o%s"
  609. X  
  610. X/*
  611. X#define STARTFILE_SPEC \
  612. X"%{scoxpg3:%{p:mcrt1X.o%s}%{!p:crt1X.o%s}} \
  613. X  %{!scoxpg3:%{scoplus:%{p:mcrt1X.o%s}%{!p:crt1X.o%s}} \
  614. X   %{!scoplus:%{posix:%{p:mcrt1P.o%s}%{!p:crt1P.o%s}} \
  615. X    %{!posix:%{svid:%{p:mcrt1P.o%s}%{!p:crt1P.o%s}} \
  616. X     %{!svid:%{ansi:%{p:mcrt1A.o%s}%{!p:crt1A.o%s}} \
  617. X      %{!ansi:%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}}}}}} \
  618. X crtbegin.o%s"
  619. X*/
  620. X
  621. X#undef ENDFILE_SPEC
  622. X#define ENDFILE_SPEC \
  623. X "crtend.o%s %{scoxpg3:crtnX.o%s}%{!scoxpg3:%{scoplus:crtnX.o%s}\
  624. X%{!scoplus:%{posix:crtnP.o%s}%{!posix:%{svid:crtn.o%s}\
  625. X%{!svid:%{ansi:crtnA.o%s}%{!ansi:crtn.o%s}}}}}"
  626. X
  627. X/*
  628. X#define ENDFILE_SPEC \
  629. X "crtend.o%s \
  630. X  %{scoxpg3:crtnX.o%s} \
  631. X  %{!scoxpg3:%{scoplus:crtnX.o%s} \
  632. X   %{!scoplus:%{posix:crtnP.o%s} \
  633. X    %{!posix:%{svid:crtn.o%s} \
  634. X     %{!svid:%{ansi:crtnA.o%s} \
  635. X      %{!ansi:crtn.o%s}}}}}"
  636. X*/
  637. X
  638. X/* Library spec.  */
  639. X
  640. X#undef LIB_SPEC
  641. X#define LIB_SPEC \
  642. X "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} %{scoxpg3:-lcX -lcP -lcA}\
  643. X%{!scoxpg3:%{scoplus:-lcE -lcX -lcP -lcA}%{!scoplus:%{posix:-lcP -lcA}\
  644. X%{!posix:%{svid:-lc}%{!svid:%{ansi:-lcA}%{!ansi:-lc}}}}}"
  645. X
  646. X/*
  647. X#define LIB_SPEC \
  648. X "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} \
  649. X  %{scoxpg3:-lcX -lcP -lcA} \
  650. X  %{!scoxpg3:%{scoplus:-lcE -lcX -lcP -lcA} \
  651. X   %{!scoplus:%{posix:-lcP -lcA} \
  652. X    %{!posix:%{svid:-lc} \
  653. X     %{!svid:%{ansi:-lcA} \
  654. X      %{!ansi:-lc}}}}}"
  655. X*/
  656. X
  657. X/* Macros, macros everywhere:
  658. X   Specify predefined symbols in preprocessor.  */
  659. X
  660. X#undef CPP_PREDEFINES
  661. X#define CPP_PREDEFINES ""
  662. X
  663. X#undef CPP_SPEC
  664. X#define CPP_SPEC \
  665. X "-D__i386 -D_M_i386 -D_M_I86 -D_M_I86SM -D_M_SDATA -D_M_STEXT \
  666. X-D__unix -D_M_UNIX -D_M_XENIX -D_M_SYS5 -D_M_SYSV -D_M_SYS3 -D_M_SYSIII \
  667. X-D_M_COFF -D_M_BITFIELDS -D_M_WORDSWAP %{scoxpg3:-D_XOPEN_SOURCE \
  668. X-D_M_INTERNAT -D_STRICT_NAMES}%{!scoxpg3:%{scoplus:-D_STRICT_NAMES \
  669. X-D_M_INTERNAT -D__STDC__=0}%{!scoplus:%{posix:-D_POSIX_SOURCE \
  670. X-D_STRICT_NAMES}%{!posix:%{svid:-D_SVID -D__STDC__=0}%{!svid:\
  671. X%{ansi:-D_STRICT_NAMES}%{!ansi:-Di386 -DM_i386 -DM_I86 -DM_I86SM \
  672. X-DM_SDATA -DM_STEXT -Dunix -DM_UNIX -DM_XENIX -DM_SYS5 -DM_SYSV \
  673. X-DM_SYS3 -DM_SYSIII -DM_COFF -DM_BITFIELDS -DM_WORDSWAP -D__STDC__=0}}}}} \
  674. X%{scointl:-DM_INTERNAT %{!scoxpg3:%{!scoplus:-D_M_INTERNAT}}}"
  675. X
  676. X/*
  677. X#define CPP_SPEC \
  678. X "-D__i386 -D_M_i386 -D_M_I86 -D_M_I86SM -D_M_SDATA -D_M_STEXT \
  679. X  -D__unix -D_M_UNIX -D_M_XENIX -D_M_SYS5 -D_M_SYSV -D_M_SYS3 -D_M_SYSIII \
  680. X  -D_M_COFF -D_M_BITFIELDS -D_M_WORDSWAP \
  681. X  %{scoxpg3:-D_XOPEN_SOURCE -D_M_INTERNAT -D_STRICT_NAMES} \
  682. X   %{!scoxpg3:%{scoplus:-D_STRICT_NAMES -D_M_INTERNAT -D__STDC__=0} \
  683. X    %{!scoplus:%{posix:-D_POSIX_SOURCE -D_STRICT_NAMES} \
  684. X     %{!posix:%{svid:-D_SVID -D__STDC__=0} \
  685. X      %{!svid:%{ansi:-D_STRICT_NAMES} \
  686. X       %{!ansi:-Di386 -DM_i386 -DM_I86 -DM_I86SM -DM_SDATA -DM_STEXT\
  687. X         -Dunix -DM_UNIX -DM_XENIX -DM_SYS5 -DM_SYSV -DM_SYS3 -DM_SYSIII \
  688. X         -DM_COFF -DM_BITFIELDS -DM_WORDSWAP -D__STDC__=0}}}}} \
  689. X  %{scointl:-DM_INTERNAT %{!scoxpg3:%{!scoplus:-D_M_INTERNAT}}}"
  690. X*/
  691. END_OF_FILE
  692.   if test 5156 -ne `wc -c <'i386sco4.h'`; then
  693.     echo shar: \"'i386sco4.h'\" unpacked with wrong size!
  694.   fi
  695.   # end of 'i386sco4.h'
  696. fi
  697. if test -f 'include.scodiff' -a "${1}" != "-c" ; then 
  698.   echo shar: Will not clobber existing file \"'include.scodiff'\"
  699. else
  700.   echo shar: Extracting \"'include.scodiff'\" \(7977 characters\)
  701.   sed "s/^X//" >'include.scodiff' <<'END_OF_FILE'
  702. Xdiff -rc2N sco/stdio.h include/stdio.h
  703. X*** sco/stdio.h    Sat Dec 12 19:25:13 1992
  704. X--- include/stdio.h    Sat Dec 12 18:22:29 1992
  705. X***************
  706. X*** 225,229 ****
  707. X  #else    /* !_NO_PROTOTYPE */
  708. X  extern   int            remove(const char *);
  709. X! extern   int            rename(const char *, const char *);
  710. X  extern   FILE           *tmpfile(void);
  711. X  extern   char           *tmpnam(char *);
  712. X--- 225,229 ----
  713. X  #else    /* !_NO_PROTOTYPE */
  714. X  extern   int            remove(const char *);
  715. X! /* extern   int            rename(const char *, const char *); JKJ */
  716. X  extern   FILE           *tmpfile(void);
  717. X  extern   char           *tmpnam(char *);
  718. X***************
  719. X*** 277,281 ****
  720. X  extern   void           perror(const char *);
  721. X  #if !_STRICT_NAMES
  722. X! extern   int            unlink(const char *);
  723. X  extern   int            _filbuf(FILE *);
  724. X  extern   int            _flsbuf(unsigned char, FILE *);
  725. X--- 277,281 ----
  726. X  extern   void           perror(const char *);
  727. X  #if !_STRICT_NAMES
  728. X! /* extern   int            unlink(const char *); JKJ */
  729. X  extern   int            _filbuf(FILE *);
  730. X  extern   int            _flsbuf(unsigned char, FILE *);
  731. X***************
  732. X*** 282,286 ****
  733. X  extern   char           *ctermid(char *);
  734. X  extern   char           *cuserid(char *);
  735. X! extern   int            system(const char *);
  736. X  #else
  737. X  extern   int            __unlink(const char *);
  738. X--- 282,286 ----
  739. X  extern   char           *ctermid(char *);
  740. X  extern   char           *cuserid(char *);
  741. X! /* extern   int            system(const char *); JKJ */
  742. X  #else
  743. X  extern   int            __unlink(const char *);
  744. Xdiff -rc2N sco/string.h include/string.h
  745. X*** sco/string.h    Sat Dec 12 19:25:13 1992
  746. X--- include/string.h    Sat Dec 12 18:22:29 1992
  747. X***************
  748. X*** 116,120 ****
  749. X  
  750. X  #if !_STRICT_NAMES
  751. X! extern void perror(const char *);
  752. X  extern char *strdup(const char *);
  753. X  extern int sys_nerr;
  754. X--- 116,120 ----
  755. X  
  756. X  #if !_STRICT_NAMES
  757. X! /* extern void perror(const char *); */
  758. X  extern char *strdup(const char *);
  759. X  extern int sys_nerr;
  760. Xdiff -rc2N sco/sys/ptrace.h include/sys/ptrace.h
  761. X*** sco/sys/ptrace.h
  762. X--- include/sys/ptrace.h    Sat Dec 12 18:23:17 1992
  763. X***************
  764. X*** 0 ****
  765. X--- 1,38 ----
  766. X+ #ifndef _SYS_PTRACE
  767. X+ #define _SYS_PTRACE
  768. X+ 
  769. X+ /*
  770. X+ ** This header file defines the ptrace function, and the symbolic names
  771. X+ ** for the different requests which can be made to ptrace. This allows
  772. X+ ** programs like GDB to make use of ptrace for attached to and detaching
  773. X+ ** from a child process. Why SCO, in their wisdom(?) left this out of the
  774. X+ ** development system will remain a mystery for all time.
  775. X+ **
  776. X+ ** Thanks to the SunOS header file for ptrace. I have made the definition
  777. X+ ** and names as close to that original as possible.
  778. X+ **
  779. X+ ** The SCO documentation also says that you can use ptrace() to modify the
  780. X+ ** 80[34]86 debug registers. Maybe this can be put to good use by GDB.
  781. X+ ** I will look into this, and keep you posted. If you already know how
  782. X+ ** this can be used, then please leave me mail at maw@netcom.com.
  783. X+ */
  784. X+ 
  785. X+ enum ptracereq {
  786. X+     PTRACE_TRACEME = 0,        /* 0, by tracee to begin tracing */
  787. X+     PTRACE_CHILDDONE = 0,    /* 0, tracee is done with his half */
  788. X+     PTRACE_PEEKTEXT,        /* 1, read word from text segment */
  789. X+     PTRACE_PEEKDATA,        /* 2, read word from data segment */
  790. X+     PTRACE_PEEKUSER,        /* 3, read word from user struct */
  791. X+     PTRACE_POKETEXT,        /* 4, write word into text segment */
  792. X+     PTRACE_POKEDATA,        /* 5, write word into data segment */
  793. X+     PTRACE_POKEUSER,        /* 6, write word into user struct */
  794. X+     PTRACE_CONT,            /* 7, continue process */
  795. X+     PTRACE_KILL,            /* 8, terminate process */
  796. X+     PTRACE_SINGLESTEP,        /* 9, single step process */
  797. X+     PTRACE_ATTACH,            /* 10, attach to an existing process */
  798. X+     PTRACE_DETACH,            /* 11, detach from a process */
  799. X+ };
  800. X+ 
  801. X+ extern int ptrace (enum ptracereq request, int pid, char *addr, int data);
  802. X+ 
  803. X+ #endif /* _SYS_PTRACE */
  804. Xdiff -rc2N sco/sys/times.h include/sys/times.h
  805. X*** sco/sys/times.h    Sat Dec 12 19:25:33 1992
  806. X--- include/sys/times.h    Sat Dec 12 18:23:17 1992
  807. X***************
  808. X*** 52,56 ****
  809. X  extern clock_t times(struct tms *);
  810. X  #if !_STRICT_NAMES
  811. X! extern int utime(const char *, struct utimbuf *);
  812. X  #endif /* !_STRICT_NAMES */
  813. X  #ifdef __cplusplus
  814. X--- 52,56 ----
  815. X  extern clock_t times(struct tms *);
  816. X  #if !_STRICT_NAMES
  817. X! /* extern int utime(const char *, struct utimbuf *); */
  818. X  #endif /* !_STRICT_NAMES */
  819. X  #ifdef __cplusplus
  820. Xdiff -rc2N sco/sys/types.h include/sys/types.h
  821. X*** sco/sys/types.h    Sat Dec 12 19:25:33 1992
  822. X--- include/sys/types.h    Sat Dec 12 18:23:17 1992
  823. X***************
  824. X*** 45,49 ****
  825. X  #endif /* Eliminate name space pollution */
  826. X  
  827. X! #if !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE)
  828. X  typedef    struct { int r[1]; } *physadr;
  829. X  typedef    long        daddr_t;    /* <disk address> type */
  830. X--- 45,49 ----
  831. X  #endif /* Eliminate name space pollution */
  832. X  
  833. X! /* #if !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  834. X  typedef    struct { int r[1]; } *physadr;
  835. X  typedef    long        daddr_t;    /* <disk address> type */
  836. X***************
  837. X*** 69,77 ****
  838. X  #define    GETUCHAR(uc)    (uc)
  839. X  #define    GETULONG(ul)    (ul)
  840. X! #endif /* !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  841. X  
  842. X  typedef    unsigned short        ino_t;        /* <inode> type */
  843. X  
  844. X! #if !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE)
  845. X  #ifdef _M_UNIX                    /* Normal UNIX case */
  846. X      typedef short        cnt_t;        /* ?<count> type */
  847. X--- 69,77 ----
  848. X  #define    GETUCHAR(uc)    (uc)
  849. X  #define    GETULONG(ul)    (ul)
  850. X! /* #endif */ /* !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  851. X  
  852. X  typedef    unsigned short        ino_t;        /* <inode> type */
  853. X  
  854. X! /* #if !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  855. X  #ifdef _M_UNIX                    /* Normal UNIX case */
  856. X      typedef short        cnt_t;        /* ?<count> type */
  857. X***************
  858. X*** 79,83 ****
  859. X      typedef    char        cnt_t;        /* ?<count> type */
  860. X  #endif /* _M_UNIX */
  861. X! #endif /* !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  862. X  
  863. X  #ifndef    _TIME_T
  864. X--- 79,83 ----
  865. X      typedef    char        cnt_t;        /* ?<count> type */
  866. X  #endif /* _M_UNIX */
  867. X! /* #endif */ /* !defined(_XOPEN_SOURCE) && !defined(_POSIX_SOURCE) */
  868. X  
  869. X  #ifndef    _TIME_T
  870. Xdiff -rc2N sco/termios.h include/termios.h
  871. X*** sco/termios.h    Sat Dec 12 19:25:13 1992
  872. X--- include/termios.h    Sat Dec 12 18:22:29 1992
  873. X***************
  874. X*** 37,41 ****
  875. X   * file, the followign undefs are also necessary
  876. X   */
  877. X! 
  878. X  #undef tcsendbreak
  879. X  #undef tcdrain
  880. X--- 37,41 ----
  881. X   * file, the followign undefs are also necessary
  882. X   */
  883. X! #include <termio.h>  /* JKJ fix */
  884. X  #undef tcsendbreak
  885. X  #undef tcdrain
  886. Xdiff -rc2N sco/tinfo.h include/tinfo.h
  887. X*** sco/tinfo.h    Sat Dec 12 19:25:13 1992
  888. X--- include/tinfo.h    Sat Dec 12 18:22:28 1992
  889. X***************
  890. X*** 216,220 ****
  891. X          mvprintw(int, int, char *, ...),
  892. X          mvscanw(int, int, char *, ...),
  893. X!         mvwaddch(WINDOW *, int, int),
  894. X          mvwdelch(WINDOW *, int, int),
  895. X          mvwin(WINDOW *, int, int),
  896. X--- 216,220 ----
  897. X          mvprintw(int, int, char *, ...),
  898. X          mvscanw(int, int, char *, ...),
  899. X!         mvwaddch(WINDOW *, int, int,char),
  900. X          mvwdelch(WINDOW *, int, int),
  901. X          mvwin(WINDOW *, int, int),
  902. Xdiff -rc2N sco/unistd.h include/unistd.h
  903. X*** sco/unistd.h    Sat Dec 12 19:25:13 1992
  904. X--- include/unistd.h    Sat Dec 12 18:22:28 1992
  905. X***************
  906. X*** 102,106 ****
  907. X  extern pid_t      tcgetpgrp(int);
  908. X  extern int        tcsetpgrp(int, pid_t);
  909. X! extern char*        getcwd(char *, int);
  910. X  extern char*        getlogin(void);
  911. X  extern char*        ttyname(int);
  912. X--- 102,106 ----
  913. X  extern pid_t      tcgetpgrp(int);
  914. X  extern int        tcsetpgrp(int, pid_t);
  915. X! extern char*        getcwd(char *, size_t);
  916. X  extern char*        getlogin(void);
  917. X  extern char*        ttyname(int);
  918. X***************
  919. X*** 131,135 ****
  920. X  extern unsigned int sleep(unsigned int);
  921. X  extern long         sysconf(int);
  922. X! extern int          unlink(const char *);
  923. X  extern int          write(int, const void *, unsigned int);
  924. X  
  925. X--- 131,135 ----
  926. X  extern unsigned int sleep(unsigned int);
  927. X  extern long         sysconf(int);
  928. X! extern int unlink(const char *);
  929. X  extern int          write(int, const void *, unsigned int);
  930. X  
  931. END_OF_FILE
  932.   if test 7977 -ne `wc -c <'include.scodiff'`; then
  933.     echo shar: \"'include.scodiff'\" unpacked with wrong size!
  934.   fi
  935.   # end of 'include.scodiff'
  936. fi
  937. if test -f 'readline.scodiff' -a "${1}" != "-c" ; then 
  938.   echo shar: Will not clobber existing file \"'readline.scodiff'\"
  939. else
  940.   echo shar: Extracting \"'readline.scodiff'\" \(2610 characters\)
  941.   sed "s/^X//" >'readline.scodiff' <<'END_OF_FILE'
  942. X*** readline.orig/config/mh-sco    Fri Jun 19 21:54:57 1992
  943. X--- readline/config/mh-sco    Sat Dec 12 19:34:48 1992
  944. X***************
  945. X*** 1,4 ****
  946. X  # Define USG as -DUSG if you are using a System V operating system.
  947. X! USG = -DUSG -D_POSIX_SOURCE=1
  948. X  RANLIB = true
  949. X  INSTALL_PROG = cp
  950. X--- 1,4 ----
  951. X  # Define USG as -DUSG if you are using a System V operating system.
  952. X! USG = -DUSG
  953. X  RANLIB = true
  954. X  INSTALL_PROG = cp
  955. Xdiff -rc2N readline.orig/emacs_keymap.c readline/emacs_keymap.c
  956. X*** readline.orig/emacs_keymap.c    Fri Nov 22 00:43:03 1991
  957. X--- readline/emacs_keymap.c    Sat Dec 12 19:52:47 1992
  958. X***************
  959. X*** 412,417 ****
  960. X    { ISFUNC, rl_do_lowercase_version },    /* P */
  961. X    { ISFUNC, rl_do_lowercase_version },    /* Q */
  962. X!   { ISFUNC, rl_do_lowercase_version },    /* R */
  963. X!   { ISFUNC, rl_do_lowercase_version },    /* S */
  964. X    { ISFUNC, rl_do_lowercase_version },    /* T */
  965. X    { ISFUNC, rl_do_lowercase_version },    /* U */
  966. X--- 412,417 ----
  967. X    { ISFUNC, rl_do_lowercase_version },    /* P */
  968. X    { ISFUNC, rl_do_lowercase_version },    /* Q */
  969. X!   { ISFUNC, rl_reverse_search_history }, /* R */
  970. X!   { ISFUNC, rl_forward_search_history }, /* S */
  971. X    { ISFUNC, rl_do_lowercase_version },    /* T */
  972. X    { ISFUNC, rl_do_lowercase_version },    /* U */
  973. X***************
  974. X*** 448,453 ****
  975. X    { ISFUNC, (Function *)0x0 },        /* p */
  976. X    { ISFUNC, (Function *)0x0 },        /* q */
  977. X!   { ISFUNC, (Function *)0x0 },        /* r */
  978. X!   { ISFUNC, (Function *)0x0 },        /* s */
  979. X    { ISFUNC, (Function *)0x0 },        /* t */
  980. X    { ISFUNC, (Function *)0x0 },        /* u */
  981. X--- 448,453 ----
  982. X    { ISFUNC, (Function *)0x0 },        /* p */
  983. X    { ISFUNC, (Function *)0x0 },        /* q */
  984. X!   { ISFUNC, rl_reverse_search_history }, /* r */
  985. X!   { ISFUNC, rl_forward_search_history }, /* s */
  986. X    { ISFUNC, (Function *)0x0 },        /* t */
  987. X    { ISFUNC, (Function *)0x0 },        /* u */
  988. Xdiff -rc2N readline.orig/readline.c readline/readline.c
  989. X*** readline.orig/readline.c    Thu Oct 15 00:51:22 1992
  990. X--- readline/readline.c    Sat Dec 12 19:55:36 1992
  991. X***************
  992. X*** 2545,2549 ****
  993. X    tio.c_lflag &= ~(ICANON|ECHO);
  994. X  
  995. X!   if (otio.c_cc[VEOF] != _POSIX_VDISABLE)
  996. X      eof_char = otio.c_cc[VEOF];
  997. X  
  998. X--- 2545,2549 ----
  999. X    tio.c_lflag &= ~(ICANON|ECHO);
  1000. X  
  1001. X!   if (otio.c_cc[VEOF] != 255)
  1002. X      eof_char = otio.c_cc[VEOF];
  1003. X  
  1004. X***************
  1005. X*** 3054,3057 ****
  1006. X--- 3054,3073 ----
  1007. X      case 'D':
  1008. X        rl_backward (count);
  1009. X+       break;
  1010. X+ 
  1011. X+     case 'H':
  1012. X+       rl_beg_of_line ();
  1013. X+       break;
  1014. X+ 
  1015. X+     case 'F':
  1016. X+       rl_end_of_line ();
  1017. X+       break;
  1018. X+ 
  1019. X+     case 'I':
  1020. X+       rl_beginning_of_history ();
  1021. X+       break;
  1022. X+ 
  1023. X+     case 'G':
  1024. X+       rl_end_of_history ();
  1025. X        break;
  1026. X  
  1027. END_OF_FILE
  1028.   if test 2610 -ne `wc -c <'readline.scodiff'`; then
  1029.     echo shar: \"'readline.scodiff'\" unpacked with wrong size!
  1030.   fi
  1031.   # end of 'readline.scodiff'
  1032. fi
  1033. echo shar: End of archive.
  1034. exit 0
  1035. ----------------------------> cut here < ---------------------------------
  1036.  
  1037. -- 
  1038. Martin Walker               |  "One way to stop a runaway horse
  1039. ++27-12-344-3973 (w)        |   is to bet on him"
  1040. ++27-12-998-7263 (h)        |   maw@netcom.com
  1041. Pretoria, South Africa      |   martin@paradigm.CO.ZA
  1042.  
  1043.