home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 1 / 1064 < prev    next >
Internet Message Format  |  1990-12-28  |  3KB

  1. From: adtaiwo@athena.mit.edu (Ademola Taiwo)
  2. Newsgroups: alt.sources,comp.unix.xenix
  3. Subject: Re: GCC/GAS Patches for SCO Xenix 386 (Patch 1 of 2)
  4. Message-ID: <1990Mar25.203949.2246@athena.mit.edu>
  5. Date: 25 Mar 90 20:39:49 GMT
  6.  
  7. Hi frustrated xenix user,
  8.     The above patch is genuine works great and less filling!
  9. So this is the real life experience of bringing xenix down on its
  10. knees and accepting GNU.
  11.  
  12. 0: Absolutely important.
  13.     Get the patches to GAS that was posted a few days ago on
  14. alt.sources and build gas.
  15.  
  16. 1. Building GCC from OLDCC (A very painful exercise)
  17.     A. Copy the files named below from the standard include directory.
  18. You will need to throw wrappers around the varaibles listed.
  19.  
  20.     stdarg.h:    *va_list
  21.     stdlib.h:    size_t
  22.     string.h:    size_t
  23.     stdio.h:    size_t, fpos_t, time_t, *va_list
  24.     time.h        size_t, clock_t, time_t
  25.     sys/types.h:    time_t
  26.  
  27. for example in stdarg.h modify the line 
  28.  
  29. typedef    char        *va_list;
  30.  
  31. to
  32. #ifndef    _VA_LIST
  33. #define    _VA_LIST
  34. typedef    char        *va_list;
  35. #endif
  36.  
  37. B. In your source directory.
  38.  
  39.    a. Apply the patches to GCC and do you config.gcc xenix386 as adviced.
  40.    b. Whimpy xenix preprocessor chokes n the following files, (the worst
  41. part of it is that it chokes quietly passing the uncompleted file to the
  42. compiler.) Anyway, the files are explow.c reload.c reload1.c recog.c
  43. for each of the files
  44.         mv file.c file.gnu
  45.    c. Xenix c compiler chokes on #ifndef __FILE__, around line 163, move
  46. the section into the comment above it.
  47.  
  48. C. In the directory you will be building gcc.
  49.  
  50.    a. Edit the Makefile. 
  51.     Remove all options that may temp OLDCC of thinking about optimization.
  52.     add -w to OLDCC options.
  53.     comment out the actions for config.status
  54.     Add a rule for making files that MSC chokes on. eg GNUmake groks
  55.  
  56. %.c:%.gnu
  57.     ./cpp -P -DM_XENIX -DM_I386 -DUSG ${INCLUDES} $< > $@
  58.     mv $< $*.c
  59.  
  60.    b. edit tm.h
  61.     change the 0 to 1 in TARGET_DEFAULT
  62.     #define TARGET_DEFAULT 1
  63.  
  64.    c. make cpp
  65.     You need to build the gnu preprocessor you will need later. If
  66. get scoping too deep message at this point, you have turned on the xenix
  67. cc optimizer, you may restart or ignore the message.
  68.  
  69.    c. make
  70.     You are now building gcc. Go and take a shower or grab dinner,
  71. on my machine this take 45 minutes!!!
  72.  
  73.     SIT BACK AND RELAX!!! FUN IS JUST STARTING.
  74.  
  75. 2. Building GCC with gcc (EASY street, and a lot of fun)
  76.  
  77. A.    Edit makefile and rmove all those things that talk about alloca
  78. B.    Type 'make bootstrap' and go for a walk
  79.  
  80.  
  81. Goodluck!
  82. I did this about 8 times, first few times to install gcc and
  83. later to install protoize. Protoize installation is not for weak minds.
  84. I am working on gcc groking -g on xenix. If you have questions 
  85.     e-mail adtaiwo@athena.mit.edu
  86.