Annotation of GNUtools/cc/README.APOLLO, revision 1.1.1.1

1.1       root        1: README.apollo
                      2: 
                      3: Building GCC 2.0 for 680x0 based Apollo systems requires the GNU
                      4: assembler (GAS) version 1.38.1, with John Vasta's patches applied.
                      5: 
                      6: If you haven't done so yet, get `gas-1.38.1.tar.Z' from your favourite
                      7: GNU distribution site.  Furthermore, get `apollo-gas-1.38.1.diffs'
                      8: from `labrea.stanford.edu:/pub/gnu', apply the patches, compile and
                      9: install gas (under the name as).  This should go through without any
                     10: problems.
                     11: 
                     12: After switching into the BSD environment, you can configure GCC 2.0
                     13: with the command 
                     14: 
                     15: % ./configure m68k-apollo-bsd
                     16: 
                     17: The Apollo's `/usr/include/setjmp.h' uses a nonstandard `#options()'
                     18: construct.  You should create a local copy of this file and remove
                     19: these constructs from the declarations of SIGSETJMP and SIGLONGJMP.
                     20: 
                     21: The Apollo's `/usr/include/sys/types.h' (BSD Version) doesn't allow
                     22: to test for the definition of `size_t'.  This should be fixed by
                     23: 
                     24:   #ifndef _SIZE_T
                     25:   #define _SIZE_T
                     26:   typedef      long    size_t;
                     27:   #endif
                     28: 
                     29: The script `patch-apollo-includes' fixes these two problems, but does
                     30: _not_ pretend to be a full fledged `fixincludes' for this system.
                     31: 
                     32: If you now follow the standard GCC installation instructions, building
                     33: GCC 2.0 (including G++ 2.0) should proceed without any problems.
                     34: 
                     35: NB: Debugging is not yet supported for the Apollo.  If someone wants
                     36:     to do a _big_ favour to the Apollo users, he/she should consider
                     37:     porting the Binary File Description library (BFD) to the Apollo.
                     38:     This library can be found in the gdb-4.x distributions or in the
                     39:     binutils-1.9x distributions.
                     40: 
                     41: 
                     42: 
                     43: 
                     44: #!/bin/sh
                     45: # patch-apollo-includes -- fix some (but not all!) Apollo brain damage.
                     46: 
                     47: FILES_TO_PATCH='sys/types.h setjmp.h'
                     48: 
                     49: mkdir sys
                     50: 
                     51: for i in $FILES_TO_PATCH;
                     52: do
                     53:   cp /bsd4.3/usr/include/$i ./$i
                     54: done
                     55: 
                     56: patch -b -apollo <<'EOP'
                     57: *** /bsd4.3/usr/include/sys/types.h    Fri Apr  8 20:29:06 1988
                     58: --- sys/types.h        Wed Feb 26 21:17:57 1992
                     59: ***************
                     60: *** 38,44 ****
                     61: --- 38,47 ----
                     62:   typedef      char *  caddr_t;
                     63:   typedef      u_long  ino_t;
                     64:   typedef      long    swblk_t;
                     65: + #ifndef _SIZE_T
                     66: + #define _SIZE_T
                     67:   typedef      long    size_t;
                     68: + #endif
                     69:   typedef      long    time_t;
                     70:   typedef      long    dev_t;
                     71:   typedef      long    off_t;
                     72: *** /bsd4.3/usr/include/setjmp.h       Fri Feb  3 21:40:21 1989
                     73: --- setjmp.h   Sun Feb 23 19:06:55 1992
                     74: ***************
                     75: *** 24,30 ****
                     76: --- 24,39 ----
                     77:   #endif
                     78:   
                     79:   
                     80: + #ifdef __GNUC__
                     81:   #ifdef _PROTOTYPES
                     82: + extern int sigsetjmp (sigjmp_buf env, int savemask);
                     83: + extern void siglongjmp (sigjmp_buf env, int val);
                     84: + #else
                     85: + extern int sigsetjmp();
                     86: + extern void siglongjmp();
                     87: + #endif /* _PROTOTYPES */
                     88: + #else /* not __GNUC__ */
                     89: + #ifdef _PROTOTYPES
                     90:   extern int sigsetjmp(
                     91:           sigjmp_buf env,
                     92:           int savemask
                     93: ***************
                     94: *** 37,43 ****
                     95:   extern int sigsetjmp() #options(abnormal);
                     96:   extern void siglongjmp() #options(noreturn);
                     97:   #endif /* _PROTOTYPES */
                     98: ! 
                     99:   #undef _PROTOTYPES
                    100:   
                    101:   #ifdef __cplusplus
                    102: --- 46,52 ----
                    103:   extern int sigsetjmp() #options(abnormal);
                    104:   extern void siglongjmp() #options(noreturn);
                    105:   #endif /* _PROTOTYPES */
                    106: ! #endif /* not __GNUC__ */
                    107:   #undef _PROTOTYPES
                    108:   
                    109:   #ifdef __cplusplus
                    110: EOP
                    111: 
                    112: exit 0

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.